Skip to content

Leaf Generation#17

Merged
GoodPie merged 23 commits intomasterfrom
leaf-generator
Feb 18, 2026
Merged

Leaf Generation#17
GoodPie merged 23 commits intomasterfrom
leaf-generator

Conversation

@GoodPie
Copy link
Owner

@GoodPie GoodPie commented Feb 11, 2026

WIP - Exploring

@GoodPie GoodPie self-assigned this Feb 11, 2026
Copilot AI review requested due to automatic review settings February 11, 2026 13:46
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds procedural leaf generation and leaf-aware export/distribution features across the C++ core, Python bindings, and Blender add-on.

Changes:

  • Introduces C++ leaf generation (shape, venation, presets, LOD) with pybind11 bindings and tests.
  • Adds Blender Leaf Shape node + leaf presets + upgraded leaves distribution node group (phyllotaxis, LOD, culling, billboards, normal transfer).
  • Extends Pivot Painter (Unreal) export to optionally emit leaf attachment/facing textures when leaf attributes are present.

Reviewed changes

Copilot reviewed 32 out of 35 changed files in this pull request and generated 14 comments.

Show a summary per file
File Description
tests/unit/test_leaf_shape_generator.py Adds Python integration tests for C++ leaf generator bindings.
tests/unit/test_leaf_presets.py Adds unit tests for Blender-side leaf preset data.
python_classes/resources/node_groups.py Implements v2 leaves distribution node group + procedural default leaf creation.
python_classes/presets/leaf_presets.py Adds Blender UI leaf species preset data structure.
python_classes/presets/init.py Re-exports leaf presets/helpers.
python_classes/pivot_painter/formats/unreal.py Adds optional leaf attachment/facing EXR export path.
python_classes/pivot_painter/exporter.py Detects leaf attributes and enables leaf data export.
python_classes/pivot_painter/core.py Adds computation + pixel packing helpers for leaf attachment/facing textures.
python_classes/pivot_painter/init.py Documents new leaf textures in package docstring.
python_classes/operators.py Adds leaves distribution options + new leaf node operators.
python_classes/nodes/tree_function_nodes/tree_mesher_node.py Adds guard for missing trunk function.
python_classes/nodes/tree_function_nodes/leaf_shape_node.py Adds Leaf Shape node with generation + preset application behavior.
python_classes/nodes/tree_function_nodes/init.py Registers LeafShapeNode.
python_classes/nodes/node_categories.py Adds Leaf category for node editor.
python_classes/mesh_utils.py Adds support for leaf meshes + vein_distance attribute.
pyproject.toml Bumps add-on version to 5.4.0.
m_tree/tests/main.cpp Replaces placeholder with a custom C++ test runner + extensive leaf tests.
m_tree/source/tree/Tree.cpp Throws when executing a tree without a trunk function.
m_tree/source/meshers/manifold_mesher/ManifoldMesher.hpp Adds phyllotaxis_angle attribute name.
m_tree/source/meshers/manifold_mesher/ManifoldMesher.cpp Emits phyllotaxis_angle per cross-section (golden angle progression).
m_tree/source/leaf/VenationGenerator.hpp Adds venation generator API and spatial hash types.
m_tree/source/leaf/VenationGenerator.cpp Implements venation generation + vein_distance attribute computation.
m_tree/source/leaf/LeafShapeGenerator.hpp Adds leaf shape generator API (superformula/margin/venation/deformation).
m_tree/source/leaf/LeafShapeGenerator.cpp Implements contour sampling, triangulation, UVs, venation, deformation.
m_tree/source/leaf/LeafPresets.hpp Adds C++ leaf preset struct and enums.
m_tree/source/leaf/LeafPresets.cpp Adds C++ preset fixtures and lookup helpers.
m_tree/source/leaf/LeafLODGenerator.hpp Adds LOD generator API.
m_tree/source/leaf/LeafLODGenerator.cpp Implements card mesh, billboard cloud, and impostor view directions.
m_tree/python_bindings/main.cpp Exposes leaf APIs + mesh float-attribute helpers to Python.
m_tree/pyproject.toml Bumps core library version to 5.4.0.
blender_manifest.toml Bumps Blender manifest version to 5.4.0.
VERSION Bumps repo VERSION to 5_4_0.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 39 out of 42 changed files in this pull request and generated 5 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@GoodPie GoodPie added documentation Improvements or additions to documentation enhancement New feature or request labels Feb 18, 2026
@GoodPie GoodPie merged commit c349df4 into master Feb 18, 2026
13 checks passed
@GoodPie GoodPie deleted the leaf-generator branch February 18, 2026 11:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants