34 lines
2.3 KiB
Markdown
34 lines
2.3 KiB
Markdown
# Plan to Resolve ISSUE-011: Blender nodegroup script creates empty assets for skipped items
|
|
|
|
**Issue:** The Blender nodegroup creation script (`blenderscripts/create_nodegroups.py`) creates empty asset entries in the target .blend file for assets belonging to categories that the script is designed to skip, even though it correctly identifies them as skippable.
|
|
|
|
**Root Cause:** The script creates the parent node group, marks it as an asset, and applies tags *before* checking if the asset category is one that should be skipped for full nodegroup generation.
|
|
|
|
**Plan:**
|
|
|
|
1. **Analyze `blenderscripts/create_nodegroups.py` (Completed):** Confirmed that parent group creation and asset marking occur before the asset category skip check.
|
|
2. **Modify `blenderscripts/create_nodegroups.py`:**
|
|
* Relocate the code block responsible for creating/updating the parent node group, marking it as an asset, and applying tags (currently lines 605-645) to *after* the conditional check `if asset_category not in CATEGORIES_FOR_NODEGROUP_GENERATION:` (line 646).
|
|
* This ensures that if an asset's category is in the list of categories to be skipped, the `continue` statement will be hit before any actions are taken to create the parent asset entry in the Blender file.
|
|
|
|
3. **Testing:**
|
|
* Use test assets that represent both categories that *should* and *should not* result in full nodegroup generation based on the `CATEGORIES_FOR_NODEGROUP_GENERATION` list.
|
|
* Run the asset processor with these test assets, ensuring the Blender script is executed.
|
|
* Inspect the resulting `.blend` file to confirm:
|
|
* No `PBRSET_` node groups are created for assets belonging to skipped categories.
|
|
* `PBRSET_` node groups are correctly created and populated for assets belonging to categories in `CATEGORIES_FOR_NODEGROUP_GENERATION`.
|
|
|
|
4. **Update Ticket Status:**
|
|
* Once the fix is implemented and verified, update the `Status` field in `Tickets/ISSUE-011-blender-nodegroup-empty-assets.md` to `Resolved`.
|
|
|
|
**Logic Flow:**
|
|
|
|
```mermaid
|
|
graph TD
|
|
A[create_nodegroups.py] --> B{Load Asset Metadata};
|
|
B --> C{Determine Asset Category};
|
|
C --> D{Is Category Skipped?};
|
|
D -- Yes --> E[Exit Processing for Asset];
|
|
D -- No --> F{Create/Update Parent Group};
|
|
F --> G{Mark as Asset & Add Tags};
|
|
G --> H{Proceed with Child Group Creation etc.}; |