unreal.PVGrowerParams

class unreal.PVGrowerParams

Bases: StructBase

PVGrower Params

C++ Source:

  • Plugin: ProceduralVegetationEditor

  • Module: ProceduralVegetation

  • File: PVGrowerParams.h

Editor Properties: (see get_editor_property/set_editor_property)

  • age_senescence (PVAgeSenescenceParams): [Read-Write]

  • auxin (PVAuxinParams): [Read-Write]

  • bifurcation (PVGrowerBifurcationParams): [Read-Write]

  • branch_auxin (PVAuxinParams): [Read-Write]

  • branch_auxin_condition_same_as_trunk (bool): [Read-Write] Use the trunk’s auxin for side branches.

  • branch_bifurcation (PVGrowerBifurcationParams): [Read-Write]

  • branch_directional (PVDirectionalParams): [Read-Write]

  • branch_directional_same_as_trunk (bool): [Read-Write] Use the trunk’s directional jitter for side branches.

  • branch_phototropism (PVPhototropismParams): [Read-Write]

  • branch_phototropism_same_as_trunk (bool): [Read-Write] Use the trunk’s phototropism for side branches.

    Turn off to configure side-branch phototropism independently.

  • branch_phyllotaxy (PVGrowerPhyllotaxyParams): [Read-Write]

  • branch_phyllotaxy_same_as_trunk (bool): [Read-Write] Use the trunk’s phyllotaxy for side branches.

    When on, side branches inherit the trunk’s phyllotaxy settings. Turn off to configure side-branch phyllotaxy independently — useful for species like spruce (whorled trunk, opposite branches).

  • collider_settings (Array[PVColliderParams]): [Read-Write] List of colliders that interact with growth (avoid, trim inside, trim outside).

    Each entry defines a collider shape (box, sphere, capsule) and a CollisionType. Growth either avoids the collider, is trimmed where it enters the collider, or is trimmed where it leaves the collider.

  • directional (PVDirectionalParams): [Read-Write]

  • foliage (PVFoliageParams): [Read-Write]

  • foliage_mesh (StaticMesh): [Read-Write] Mesh used as the per-leaf light occluder.

    A simple static mesh representing one leaf, used to ray-trace light occlusion in DetectLight. The default lightweight the default mesh is recommended unless you need accurate shadowing from custom leaf shapes (which costs more per cycle).

  • gravity_params (PVGrowerGravityParams): [Read-Write]

  • growth_cycles (uint32): [Read-Write] How many growing iterations to simulate.

    Each cycle can be considered one growing season, but certain plants can have multiple cycles each season. Higher counts produce larger, more complex plants with more visible aging effects. Start with 5-10 for typical trees; use 20-45 for very mature plants. Note that simulation cost grows roughly linearly with cycle count.

  • leaf_phyllotaxy (PVGrowerPhyllotaxyParams): [Read-Write]

  • leaf_phyllotaxy_same_as_branch (bool): [Read-Write] Use the branch phyllotaxy for leaf placement.

    When on, leaves use the same arrangement pattern as side branches. Turn off to give leaves their own phyllotaxy — useful when you want branches in a whorled pattern but leaves in a spiral, for example.

  • light_senescence (PVLightSenescenceParams): [Read-Write]

  • phototropism (PVPhototropismParams): [Read-Write]

  • phyllotaxy (PVGrowerPhyllotaxyParams): [Read-Write]

  • random_seed (uint32): [Read-Write] Random seed for all stochastic choices.

    Controls every random decision in the simulation: which buds activate, axillary angle jitter, bifurcation timing, etc. Same seed + same settings = identical plant. Change to explore natural variations of the same configuration.

  • senescence (bool): [Read-Write] Master toggle for age and light senescence.

    When on, branches can die from old age (FPVAgeSenescenceParams) or sustained shade (FPVLightSenescenceParams). When off, both senescence panels are inactive and branches never die naturally. Turn off only for short-cycle test plants or stylized art direction.

  • trunk_growth (PVTrunkGrowthParams): [Read-Write]