Skip to content

MathieuKrdn/MKE_Tools

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MKE Tools

A comprehensive Houdini package providing utility tools and HDAs for VFX pipeline management and workflow optimization.

Table of Contents

Overview

MKE Tools is a production-ready package designed to streamline VFX workflows in SideFX Houdini. It includes project setup automation, texture conversion utilities, version control helpers, and specialized LOP (Lighting/USD) nodes for modern USD-based pipelines.

Installation

  1. Download/Clone the MKE_Tools package to your Houdini packages directory:

    $HOUDINI_USER_PREF_DIR/packages/MKE_Tools
    
  2. Package Configuration: The package automatically configures the following environment variables:

    • MKETOOLS_DIR: Points to the package directory
    • HOUDINI_TOOLBAR_PATH: Adds the toolbar directory
    • HOUDINI_PATH: Adds config/icons directory
    • PYTHONPATH: Adds scripts directory
  3. Restart Houdini to load the tools.

Tools

Python Scripts

🏗️ Project Setup (projectSetup.py)

Purpose: Automated project structure creation with industry-standard folder hierarchy.

Features:

  • Interactive GUI for project configuration
  • Customizable folder structure with presets for:
    • ASSET, CHARACTER, ENVIRONMENT, FX, RND projects
  • Automatic environment variable setup ($JOB, $HIP, $CACHE)
  • Initial .hip file creation with version naming
  • Configurable cache directory location

Typical Folder Structure Created:

ProjectName/
├── 3D/
│   ├── CACHES/
│   └── SCENES/
├── USD/
├── PIPELINE/
├── REFERENCES/
├── _DAILIES/
├── IN/
│   ├── ASSETS/
│   ├── PROPS/
│   ├── CHARACTERS/
│   ├── ENVIRONMENT/
│   ├── CAMERAS/
│   └── TEXTURES/
└── OUT/
    └── [PROJECT_TYPE]/

💾 Save Up (saveUp.py)

Purpose: Intelligent version increment for Houdini scene files.

Features:

  • Automatic version number detection (e.g., _v0001, _v0002)
  • Increments version and saves new file
  • Handles unsaved scenes gracefully
  • Maintains file naming conventions

🎨 RAT Converter (ratConverter.py)

Purpose: Batch conversion of texture files to Houdini's RAT format for optimized rendering.

Features:

  • Multi-threaded processing for fast conversion
  • Recursive subdirectory scanning
  • Progress tracking and cancellation support
  • Automatic thread count optimization
  • Support for common texture formats

🔗 Houdini VSCode Integration (houdiniVSC.py)

Purpose: Generates VSCode configuration for Houdini Python development.

Features:

  • Exports Python interpreter path
  • Configures Python analysis paths
  • Enables proper IntelliSense for Houdini modules
  • JSON output for direct VSCode settings integration

HDAs (Houdini Digital Assets)

All HDAs are LOP (Lighting/USD) nodes designed for modern USD workflows:

📦 MKE Import (lop_MKE.dev.mke_import.1.0.hdalc)

  • Specialized USD import node with enhanced pipeline integration
  • Supports development workflow features

💾 MKE File Cache (lop_MKE.mke_filecache.1.0.hdalc)

  • Enhanced USD file caching with pipeline-aware features
  • Optimized for production file management

🎭 MKE Preference Assign (lop_MKE.mke_pref_assign.1.0.hdalc)

  • USD preference and metadata assignment
  • Streamlined attribute management

🎬 MKE Render Layer (lop_MKE.mke_render_layer.1.0.hdalc)

  • Advanced render layer management for USD
  • Multi-layer rendering workflow support

🚀 MKE Submitter (lop_MKE.mke_submitter.1.1.hdalc)

  • Render farm submission integration
  • Batch processing and queue management

Environment Variables

The package sets up the following variables:

  • $CACHE: Cache files directory
  • $MKETOOLS_DIR: Package installation directory

Project Structure

MKE_Tools/
├── MKE_Tools.json          # Package configuration
├── README.md               # This file
├── config/
│   └── icons/             # UI icons and logos
├── otls/                  # Houdini Digital Assets (HDAs)
├── scripts/
│   └── python/            # Python utilities
│       └── ui/            # UI components
└── toolbar/
    └── mke_utils.shelf    # Houdini shelf definition

Requirements

  • Houdini 20.0+ (tested on Houdini 20.0 & 20.5)
  • Python 3.7+ (included with Houdini)
  • PySide2 (included with Houdini)

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make changes and test thoroughly
  4. Submit a pull request

License

This project is part of the MKE Tools pipeline package.

Support

For issues, feature requests, or questions:

  • Create an issue in the repository
  • Contact me

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages