Color & visual cues
Chroma
Apply Viewport and Outliner colors to the selection and keep your colors organized in palettes.
Open Chroma
Section titled “Open Chroma”In the Maya 2026.3 Python Script Editor:
from weSkel.src.ui import chroma
chroma.show_dockable(floating=True)chroma.show() opens a floating window. show_dockable() restores saved Maya state or starts floating by default. chroma.close() closes the tool; chroma.reset_dockable_state() explicitly clears saved docking state.
Apply a color
Section titled “Apply a color”| Step | Action | Result |
|---|---|---|
| 1 | Select objects in Maya. | Chroma resolves compatible targets for each operation. |
| 2 | Enable Viewport, Outliner, or both. | Viewport starts enabled; Outliner starts disabled. |
| 3 | Choose a color in Picker or a palette. | A click changes the current color without editing Maya. |
| 4 | Click Apply Color. | Applies the color to the current selection for the enabled operations. Double-clicking a swatch also applies it. |
| 5 | Read the status. | It distinguishes processed, skipped, blocked and failed targets. Partial success stays visible. |
Click the current color to open the advanced HEX/RGB/HSV selector. Its Apply button validates the picker’s local color; use Apply Color in Chroma to color the scene.
Which selection receives the color?
Section titled “Which selection receives the color?”| Maya selection | Viewport | Outliner |
|---|---|---|
| Transform with direct curve or mesh children | Compatible, non-intermediate shapes directly beneath it. | Selected transform. |
| Transform without compatible shapes | No Viewport target. | Selected transform. |
| Joint | Compatible direct shapes if present; otherwise the joint. | Selected joint. |
| Curve or mesh shape | Selected non-intermediate shape. | Its immediate parent. |
| Curve or mesh components | The whole shape, without per-component colors. | The shape’s immediate parent. |
| Non-DAG node or unsupported type | Skipped with a diagnostic. | Depends on DAG compatibility; non-DAG nodes are not targets. |
The tool does not recursively traverse a group’s descendants. Shared targets are deduplicated.
Read, reset and undo
Section titled “Read, reset and undo”| Command / status | Behavior |
|---|---|
| Get Color | Reads the selection and enabled operations; does not edit Maya. |
| A single color | Updates the current color. |
| mixed colors | Several colors exist; no average is invented. |
| Viewport / Outliner conflict | The two enabled operations disagree. |
| empty | No usable color was found in the requested scope. |
| Reset | Restores the default color state on compatible targets. |
| Maya Undo / Redo | Reverts or reapplies the Apply/Reset scene edit as one operation. |
Protected channels and incompatible targets are reported. Check the status before assuming the entire selection changed.
Manage palettes
Section titled “Manage palettes”Open Manage… from the palette list.
| Action | Result |
|---|---|
| Select a Factory · Read-only palette | View it; the resource shipped with weSkel stays protected. |
| + New Palette | Creates a custom palette, optionally from an existing one. |
| Rename, add/edit/delete or reorder custom swatches | Saves the user library changes. |
| Delete on a custom palette | Deletes its file after confirmation. |
| Reload | Reads the library again from disk. |
| Invalid custom file | Preserves the file and shows its diagnostic; editing is blocked. |
These file writes are separate from Maya scene Undo. Custom palettes are stored by default in user_data/chroma/palettes; factory palettes live under src/resources/chroma/palettes.