2025-04-16 13:44:06 +10:00
2025-04-16 13:44:06 +10:00
2025-04-16 13:44:06 +10:00
2025-04-16 13:44:06 +10:00
2025-04-16 13:44:06 +10:00
2025-04-16 13:44:06 +10:00
2025-04-16 13:44:06 +10:00
2025-04-16 13:44:06 +10:00
2025-04-16 13:44:06 +10:00
2025-04-16 13:44:06 +10:00

ComfyUI-GameDev

A custom ComfyUI node pack for game development workflows. Currently includes depth-to-layers color mapping and grid-based sprite/frame slicing.

Features

  • Adds a node named Depth to Layers (depth to layers internally)
  • Maps grayscale/depth ranges to color layers using editable intervals
  • Interactive in-node editor with histogram, preview, add/drag/remove handles, and reset button
  • Adds a node named Grid Slice (grid slice internally)
  • Splits a sprite sheet or atlas into a batch of equally sized frames
  • Supports optional skip of the last grid column for irregular sheets

Requirements

  • ComfyUI
  • Python dependencies:
    • torch>=2.6.0
    • numpy
    • pillow

Installation

  1. Clone or copy this folder into your ComfyUI custom nodes directory:
ComfyUI/custom_nodes/ComfyUI-GameDev
  1. Install this package (dependencies are defined in pyproject.toml):
pip install .
  1. Restart ComfyUI.

Node Info

Depth to Layers Node

  • Display name: Depth to Layers
  • Class key: depth to layers
  • Category: Game Development/Image Adjustments
  • Function: transform
  • Inputs:
    • all_intervals_json (required STRING, multiline JSON)
    • image (optional IMAGE)
    • node_id (hidden UNIQUE_ID, used for UI preview messaging)
  • Output:
    • IMAGE (image)

Grid Slice Node

  • Display name: Grid Slice
  • Class key: grid slice
  • Category: Game Development/Image Adjustments
  • Function: slice_image
  • Inputs:
    • image (IMAGE)
    • columns (INT)
    • rows (INT)
    • ignore_last_column (BOOLEAN)
  • Output:
    • IMAGE batch (all sliced frames)

Usage

Using Depth to Layers

  1. Add Depth to Layers to your workflow.
  2. Connect an image output to the image input.
  3. Run once to populate preview and histogram.
  4. Click in the histogram to add intervals.
  5. Drag start/end handles to adjust intervals.
  6. Use Shift + click on an interval/handle to remove it.
  7. Click Reset to restore defaults.
  8. Run again to bake the updated output image.

Using Grid Slice

  1. Add Grid Slice to your workflow.
  2. Connect a sprite sheet image to image.
  3. Set columns and rows to match the sheet layout.
  4. Optionally set ignore_last_column to true if the last column should be skipped.
  5. Run to produce a batch of tiles/frames.

How It Works

  • Backend processing lives in depth_to_layers.py and grid_slice.py.
  • Frontend UI logic for Depth to Layers lives in js/depth_to_layers.js.
  • The Depth to Layers UI previews interval changes locally in the node editor.

Notes

  • Depth to Layers stores intervals in all_intervals_json.
  • Depth to Layers outputs an RGB colorized image based on interval mapping.
  • Grid Slice divides image dimensions using integer grid steps (width // columns, height // rows).
  • If no image is provided to Depth to Layers, the node returns the input unchanged.

License

See LICENSE.

S
Description
No description provided
Readme GPL-3.0
4.5 MiB
Languages
JavaScript 74.9%
Python 25.1%