In general, Root and Vine actors are the main authoring tools. Barrier adds strand-based seal/barrier generation, Attraction adds deterministic attraction-point sampling, and Runtime Growth Actors consume exported growth data for playback.
Installation | What’s New in v2.0 | Quick Start | Workflow & Exports | PRG Editor Utility Tab | Materials & Data Encoding | Root Actor Reference | Vine Actor Reference | Barrier Actor Reference | Attraction Actor Reference | Runtime Growth Actor Reference | Troubleshooting
Use Static Mesh export when you want final environment geometry. This is the normal production path for non-animated results. Depending on actor type, you can export the full generated result or a selected scope such as a branch, tier, or strand subset.
Use runtime export when you want reveal, spread, regrowth, seal, or reverse-growth animation. The authoring actor exports growth data into UPRG_GrowthData, then spawns or updates a runtime playback actor that consumes that data.
Version 2.0 includes a dedicated PRG editor utility tab. The tab is selection-driven and changes its filters and details view based on the currently selected Root, Vine, or Barrier actor. It is meant to make day-to-day iteration faster than working from the full Details panel alone.
| Setting | Description |
|---|---|
| Selection-aware mode switching | The tab automatically swaps between Root, Vine, and Barrier layouts based on the currently selected actor. |
| Category filters | Quick, Mesh, Branch, Shape, Surface, Simulation, Animation, and Debug-style filters help you focus on one part of the tool at a time. |
| Shared workflow | The main build, mesh refresh, export, and documentation actions stay consistent across actor types. |
| Faster iteration | Useful when you are repeatedly tweaking presets, branch settings, or export options during look development. |
PRG-generated meshes are built for a flow-aligned material workflow. This is not the older triplanar setup. Instead, the mesh generator writes directional payload data that can be used by custom materials and custom texture sets for roots, vines, and barriers. The goal is to keep bark/vine flow aligned to the authored growth direction while preserving seam and twist continuity across curved branches and welded connections.
| Setting | Description |
|---|---|
| UV0 / UV1 | Primary tube mapping. These channels carry the usual radial and along-spline information used for the base material layout. |
| UV2 | High-precision encoded forward/flow direction used by flow-aligned material functions. |
| Vertex Color | Fallback directional and twist/orientation support for material graph decoding. |
| UV3 / Growth Payload | When growth export is enabled, authored animation/runtime data is baked for flow-aligned growth playback workflows. |
The included material workflow is intended for custom root, vine, and barrier textures. You can use the provided instances as a starting point, or build your own materials that decode the stored directional data for better along-growth texture flow.
The Root Actor is the main authoring tool for procedural root systems. It supports preset-driven setup, expert controls, multi-tier branching, mesh export, and runtime growth export.
| Setting | Description |
|---|---|
| Build All | Build all generated content from the current settings. |
| Build Mesh | Regenerate the generated mesh from existing spline points. |
| Generate Static Mesh | Generates a static mesh actor from the current procedural mesh |
| Generate Runtime Actor | Export spline data to a runtime growth actor for growth playback. |
| Open Documentation | Open the Procedural Root Generator documentation. |
| Reset to Defaults | Resets all settings to their default values |
| Overwrite Preset From Current Settings | Select an existing preset row and replace it with the current actor settings. If the preset table is missing, it will be created first. |
| Setting | Description |
|---|---|
| Root | Root scene component for the actor. <span class="w3-text-grey">(Read-only, Blueprint read-only)</span> |
| Parent Spline Container | Container component that owns generated or authored parent/root splines. <span class="w3-text-grey">(Read-only, Blueprint read-only)</span> |
| Generated Mesh Component | Primary dynamic mesh component used to display the generated result in-editor. <span class="w3-text-grey">(Read-only, Blueprint read-only)</span> |
| Primary Container | Container for generated primary branches. <span class="w3-text-grey">(Read-only, Blueprint read-only)</span> |
| Secondary Container | Container for generated secondary branches. <span class="w3-text-grey">(Read-only, Blueprint read-only)</span> |
| Tertiary Container | Container for generated tertiary branches. <span class="w3-text-grey">(Read-only, Blueprint read-only)</span> |
| Setting | Description |
|---|---|
| Preview Proc Mesh Component | Editor preview procedural mesh component used for preview and solo export visualization. <span class="w3-text-grey">(Read-only, Blueprint read-only)</span> |
| Setting | Description |
|---|---|
| Hub Debug Sphere | Editor/debug sphere used to visualize the hub or placement origin. <span class="w3-text-grey">(Read-only, Blueprint read-only)</span> |
| Placement Preview Billboard | Billboard used to show actor placement/orientation in the editor. <span class="w3-text-grey">(Read-only, Blueprint read-only)</span> |
| Setting | Description |
|---|---|
| Preset | Select a preset row from DT_RootPresets. Includes custom presets created with New. |
| Growth Type | Overall root growth behavior. Surface favors lateral spread, Buttress emphasizes flared roots, and Burrowing favors subterranean growth. |
| Expert Mode | Show advanced/expert controls throughout the root generator details panel. |
| Use External Spline | Use a spline from another actor as the parent root path instead of the built-in spline |
| External Spline Actor | The actor containing the spline component to use as the parent root |
| External Spline Component | The specific spline component from the external actor to use |
| Setting | Description |
|---|---|
| Root Presets Table | DataTable containing root presets (row type: FRootPresetData). |
| Apply Preset On Change | Automatically apply preset values when the preset selection changes |
| Auto Set Preset To Custom On Edit | Automatically set preset to 'Custom' when any parameter is manually edited |
| Setting | Description |
|---|---|
| Preview Mode | Choose which root hierarchy levels to preview: None, Parent only, Parent + Primary, or All. |
| Random Seed | Seed for random number generation. Change this to get different root patterns with the same settings |
| Master Scale | Global scale multiplier for the entire root system |
| Min Generated Radius | Minimum radius threshold for generating roots. Roots thinner than this will not be generated |
| Flat Hub Merge Diameter (cm) | Diameter of the hidden hub merge zone. Mesh geometry within this radius from the hub center will not be generated. Useful for creating a cleaner flat merge into a trunk or planter. |
| Setting | Description |
|---|---|
| Root Material | Material to apply to the generated root mesh |
| Setting | Description |
|---|---|
| Tube Axial Subdivisions | Multiplier for axial sample density along each root segment (1 = baseline) |
| RM Frames Max Samples Per Spline | Per-spline cap for rotation-minimizing frame samples used during meshing/debug sampling. Hard ceiling is 16384. |
| Tube Radial Segments | Number of radial subdivisions around the root tube |
| Cap Tube Ends | Close the ends of root tubes with cap geometry |
| Tube End Cap Taper | How much to taper/narrow the end caps |
| Tube Terminal Taper Length Scale | Length scale of the terminal taper stub ring appended before each non-welded cap. |
| Tube Terminal Taper Radius Scale | Radius scale of the terminal taper stub ring appended before each non-welded cap. |
| Setting | Description |
|---|---|
| Enable Single Point Kink Regularization | Run a local point-chain regularization pass before spline assembly to target single-point kinks (smooth/merge/average) without global smoothing. |
| Commit Guard Radius Scale | Commit-guard allowance scale applied to local crawl sphere radius. Higher values allow larger commit deviations on thick roots. |
| Commit Guard Root Radius Scale | Additional commit-guard allowance scale applied to start radius. Use for large-tier roots that need extra local commit freedom. |
| Enable Final Committed Step Clamp | Apply a separate post-commit clamp to final committed step distance so growth keeps intended step density even with looser commit guard tolerance. |
| Final Committed Step Length Scale | Multiplier on intended Step used by the final committed step-length cap. |
| Final Committed Step Length Max Cm | Optional absolute cap for final committed step distance in cm. 0 disables the absolute cap and uses Step scale only. |
| Use Directional Projection For Final Step Clamp | When final step clamp triggers, prefer the intended growth direction for projection when stable. |
| Always Run Broad Post Growth Smoothing | Always run a mild broad sharp-corner smoothing pass after single-point kink regularization. |
| Enable Adaptive Bend Subdivision | Enable local adaptive bend subdivision on the generated point chain before spline assembly. |
| Adaptive Bend Dot Threshold | Corner direction-dot threshold below which interior turns start receiving adaptive point subdivision. |
| Adaptive Bend Severe Dot Threshold | Severe corner direction-dot threshold used to increase inserted points for very tight bends. |
| Adaptive Bend Max Inserted Points | Maximum number of points inserted around a single sharp bend corner during adaptive subdivision. |
| Adaptive Bend Min Segment Length Scale | Minimum allowed local sub-segment length as a fraction of Step when inserting bend refinement points. |
| Adaptive Bend Arc Bias | How strongly inserted bend-refinement points bow toward a rounded arc target instead of linear corner interpolation. |
| Run Adaptive Bend Subdivision After Kink Pass | Run adaptive bend subdivision after kink cleanup (and broad post-growth smoothing) before spline assembly. |
| Broad Post Growth Smoothing Passes | Number of light broad post-growth smoothing passes over interior points. |
| Broad Post Growth Sharp Corner Dot Threshold | Segment-direction dot threshold below which interior points are treated as sharp for broad post-growth smoothing. |
| Broad Post Growth Blend Min | Minimum blend toward neighbor midpoint when broad post-growth smoothing detects a sharp interior corner. |
| Broad Post Growth Blend Max | Maximum blend toward neighbor midpoint for severe sharp interior corners in broad post-growth smoothing. |
| Setting | Description |
|---|---|
| Smoothing Type | Type of mesh smoothing algorithm to apply |
| Smoothing Iterations | Number of smoothing passes to apply |
| Smoothing Strength | Strength of the smoothing effect |
| Smooth Boundary Vertices | Apply smoothing to vertices on mesh boundaries |
| Preserve Junction Vertices | Protect vertices at branch junctions from smoothing |
| Setting | Description |
|---|---|
| Weld Branch Junctions | Merge vertices at branch connection points |
| Weld Tolerance | Distance threshold for welding vertices at junctions |
| Use Organic Junction Blend | After welding a child to its parent, reshape the junction into a softer collar. |
| Weld Coincident Edges | Weld vertices that lie on the same edge |
| Edge Weld Tolerance | Distance threshold for welding coincident edge vertices |
| Setting | Description |
|---|---|
| Enable Nanite | Enable Nanite virtualized geometry |
| Recenter Pivot To Bounds Center | Move the mesh pivot to the center of its bounding box |
| Place Static Mesh | Place the generated static mesh into the level |
| Export Scope | Selects which spline scope is used for export and solo preview. |
| Export Tier Selection | Tier used when export scope is set to Selected Tier. |
| Export Spline Selection | Optional single spline selection for export. 'All Splines' exports the full generated mesh. |
| Export Ancestor Chain As Combined Asset | When exporting branch + ancestors, also produce one combined asset for the full chain. |
| Export Ancestor Chain As Separate Assets | When exporting branch + ancestors, also produce one separate asset per spline in the chain. |
| Preview Selected Export Spline | If enabled, selecting a single spline for export will also preview only that spline in the editor viewport. |
| Show Non Selected Splines In Solo Preview | When solo export preview is active, keep non-selected splines visible as thin editor debug splines. |
| Generated Asset Folder | Folder path where generated static mesh assets will be saved |
| Setting | Description |
|---|---|
| Generate Collision | Generate collision geometry |
| Hull Count | Target number of convex hull pieces when generating collision for the exported static mesh. |
| Max Hull Verts | Maximum vertex count allowed per generated convex hull. Higher values preserve more shape detail but cost more collision complexity. |
| Hull Precision | Precision used by convex decomposition. Higher values improve fit at higher generation cost. |
| Setting | Description |
|---|---|
| Remove Interior Faces | Remove mesh triangles whose centroids are inside another root's tube volume. |
| Interior Removal Mode | RemoveAll: remove any face inside another tube. RemoveSmaller: only remove from the thinner root at intersections (preserves the dominant root's surface). |
| Interior Test Radius Scale | Scale factor for the containment test radius. 0.85 means a face must be within 85% of the enclosing tube's radius to be removed. |
| Preserve Junction Faces | Preserve faces near branch junction points even if they are technically inside another tube. |
| Junction Preserve Radius Multiplier | Radius around junction points within which faces are preserved, as a multiplier of the local root radius at the junction. |
| Interior Test Sample Spacing | Spacing (in cm) between centerline samples used for containment testing. |
| Junction Start Exclusion Fraction | Fraction of child spline length (from its start) where faces are NEVER removed. |
| Setting | Description |
|---|---|
| Parent Count | Number of synthetic parent splines generated in internal mode. |
| Parent Length | Target length (cm) of each synthetic internal parent spline. |
| Parent Thickness | Starting thickness/radius used for parent splines. |
| Parent Spread Angle Deg | Angular spread used when distributing synthetic internal parent launch directions around the hub. |
| Parent Launch Stub Length | Minimum launch stub length (cm) applied from the shared hub before synthetic parents are allowed to curve. |
| Parent Min Angular Separation Deg | Minimum angular separation between synthetic internal parent launch directions. |
| Parent Taper | Rate at which parent splines taper from base to tip. Lower values taper more gradually. |
| Parent Tip Taper Multiplier | Additional taper multiplier applied near the tip of parent splines. |
| Parent Target Segment Length | Target segment length used when processing parent splines. Smaller values increase detail. |
| Parent Spline Smoothing Passes | Smoothing passes applied when processing parent splines. |
| Parents Use Surface Projection | Project synthetic internal parent splines onto nearby surfaces while they are generated. |
| Parents Participate In Avoidance | Sample synthetic internal parent splines into shared avoidance state so other splines can react to them. |
| Loop Branch Side Constraint | Restrict which side of the parent spline branches can generate on. Useful for loop splines where you only want exterior or interior roots. |
| Setting | Description |
|---|---|
| Enable Primary | Enable generation of primary root branches |
| Primary per Parent | Number of primary branches generated per parent spline |
| Primary Length | Length of primary root branches |
| Primary Thickness | Starting thickness of primary branches |
| Primary Length Variation | How much branch length varies (0 = all same, 1 = wide range) |
| Setting | Description |
|---|---|
| Primary Spread Angle Deg | Maximum spread angle from parent direction |
| Primary Max Child Radius Frac | Maximum child radius as a fraction of the parent radius at the spawn point. Prevents children from being thicker than their parent. |
| Primary Taper | Rate at which primary branches taper |
| Primary Tip Taper Multiplier | Additional taper near the tip |
| Primary Target Segment Length | Target length for each mesh segment |
| Min Angle Between Consecutive | Minimum angle between consecutive primary branches |
| Primary Meander Strength | Amount of random winding/curvature |
| Primary Direction Preference | How much branches prefer their initial direction |
| Primary Spline Smoothing Passes | Smoothing passes for spline paths |
| Primary Thickness Variation Min | Min thickness variation |
| Primary Thickness Variation Max | Max thickness variation |
| Primary Taper Variation Min | Min taper variation |
| Primary Taper Variation Max | Max taper variation |
| Setting | Description |
|---|---|
| Enable Secondary | Enable secondary branches |
| Secondary Per Primary | Branches per primary |
| Secondary Length | Length of secondary branches |
| Secondary Thickness | Starting thickness |
| Secondary Length Variation | How much branch length varies (0 = all same, 1 = wide range) |
| Setting | Description |
|---|---|
| Secondary Spread Angle Deg | Maximum spread angle |
| Secondary Max Child Radius Frac | Maximum child radius as a fraction of the parent radius at the spawn point. |
| Secondary Taper | Rate at which secondary branches taper from base to tip. |
| Secondary Tip Taper Multiplier | Additional taper multiplier near the secondary branch tip. |
| Secondary Target Segment Length | Target segment length for secondary branch mesh generation. |
| Min Angle Between Consecutive Secondary | Minimum angle between consecutive secondary branches spawned from the same parent. |
| Secondary Meander Strength | Random meander strength for secondary branch paths. |
| Secondary Direction Preference | How strongly secondary branches keep their initial launch direction. |
| Secondary Spline Smoothing Passes | Smoothing passes applied to generated secondary spline paths. |
| Secondary Thickness Variation Min | Minimum multiplicative thickness variation for secondary branches. |
| Secondary Thickness Variation Max | Maximum multiplicative thickness variation for secondary branches. |
| Secondary Taper Variation Min | Minimum taper variation multiplier for secondary branches. |
| Secondary Taper Variation Max | Maximum taper variation multiplier for secondary branches. |
| Setting | Description |
|---|---|
| Enable Tertiary | Enable tertiary branches |
| Tertiary Per Secondary | Branches per secondary |
| Tertiary Length | Length of tertiary branches |
| Tertiary Thickness | Starting thickness |
| Tertiary Length Variation | How much branch length varies (0 = all same, 1 = wide range) |
| Setting | Description |
|---|---|
| Tertiary Spread Angle Deg | Maximum spread angle |
| Tertiary Max Child Radius Frac | Maximum child radius as a fraction of the parent radius at the spawn point. |
| Tertiary Taper | Rate at which tertiary branches taper from base to tip. |
| Tertiary Tip Taper Multiplier | Additional taper multiplier near the tertiary branch tip. |
| Tertiary Target Segment Length | Target segment length for tertiary branch mesh generation. |
| Min Angle Between Consecutive Tertiary | Minimum angle between consecutive tertiary branches spawned from the same parent. |
| Tertiary Meander Strength | Random meander strength for tertiary branch paths. |
| Tertiary Direction Preference | How strongly tertiary branches keep their initial launch direction. |
| Tertiary Spline Smoothing Passes | Smoothing passes applied to generated tertiary spline paths. |
| Tertiary Thickness Variation Min | Minimum multiplicative thickness variation for tertiary branches. |
| Tertiary Thickness Variation Max | Maximum multiplicative thickness variation for tertiary branches. |
| Tertiary Taper Variation Min | Minimum taper variation multiplier for tertiary branches. |
| Tertiary Taper Variation Max | Maximum taper variation multiplier for tertiary branches. |
| Setting | Description |
|---|---|
| Enable Variation | Enable random variation in branch thickness and taper |
| Variation Strength | Global strength multiplier for all variation effects |
| Setting | Description |
|---|---|
| Enable Junction Bulging | Add thickness bulges at branch junctions |
| Junction Bulge Strength | Radius multiplier at branch junctions. 1.0 = no bulge, 1.2 = subtle, 1.5 = pronounced. |
| Junction Bulge Distance | Falloff distance for junction bulge, as a multiplier of the local radius. Higher = wider bulge zone. |
| Setting | Description |
|---|---|
| Enable Organic Thickness Variation | Add procedural noise-based thickness variations |
| Organic Thickness Noise Strength | Amplitude of organic thickness noise applied along branches. |
| Organic Thickness Noise Frequency | Frequency of organic thickness noise along each root path. |
| Use Length Based Thickening | Make longer roots thicker |
| Length Thickness Scale | Strength of length-based thickening for longer roots. |
| Setting | Description |
|---|---|
| Use Advanced Taper Curve | Use power curve for taper instead of linear |
| Taper Curve Power | Power exponent for non-linear tapering. Values above 1 preserve thickness longer before narrowing near the tip. |
| Setting | Description |
|---|---|
| Enable Surface Ring Flattening | Flatten and widen surface-contacting root rings so roots are not perfectly circular. |
| Contact Flattening | Flattening amount for rings classified as surface-contacting. |
| Exposed Flattening | Flattening amount for rings classified as more exposed above-surface sections. |
| Cross Slope Widening | Width boost applied when roots traverse across steep surface slope changes. |
| Base Flare Strength | Strength of trunk-side base flare shaping near branch origins. |
| Base Flare Distance Cm | Distance from branch origin over which base flare shaping fades out. |
| Enable Buttress Lite Shaping | Enable supplemental buttress-fin shaping overlays for buttress growth mode. |
| Buttress Crest Pinch Strength | How strongly buttress ring crests pinch toward a narrower ridge profile. |
| Buttress Foot Spread Strength | How strongly buttress ring feet broaden toward the support-contact side. |
| Buttress Side Slope Strength | Outward side-slope shaping strength used to bias buttress rings toward wedge-like profiles. |
| Buttress Trunk Fan Distance Cm | Distance from branch origin over which buttress fan and fin shaping remains dominant. |
| Buttress Secondary Blend Strength | Blend strength used to merge buttress secondary branches into parent fin bodies near the trunk. |
| Bend Deformation Fade Start Deg | Local bend angle in degrees where geometry-side surface basis/deformation suppression starts fading in. |
| Bend Deformation Disable Deg | Local bend angle in degrees where geometry-side surface basis/deformation is fully neutralized for tight bends. |
| Setting | Description |
|---|---|
| Enable Hierarchical Flow Inheritance | Use a dedicated shading/UV flow frame and parent-attachment inheritance for bark continuity. |
| Junction Flow Blend Distance Cm | Distance from a child branch start over which shading orientation/phase eases from parent-aligned values into local branch values. |
| Shading Flow History Window | History window used only by the shading frame. Larger values produce calmer bark/grain flow. |
| Shading Flow Max Forward Delta Deg | Maximum shading-frame forward rotation per ring in degrees. Lower values reduce abrupt flow pivots. |
| Shading Flow Max Seam Delta Deg | Maximum seam-phase rotation per ring in degrees for the shading frame. |
| Shading Flow Surface Blend Strength | Support-normal blend strength for shading frame orientation. Keep low for stable bark flow. |
| Bias Seam Toward Underside | Bias seam placement toward the local underside direction for root shading/flow continuity. |
| Seam Underside Follow Strength | Per-ring blend factor from previous seam toward projected underside target. Lower values are more stable. |
| Seam Vertical Fallback Dot Threshold | If |dot(forward, world up)| is above this threshold, seam underside-follow is disabled and seam continuity is frozen. |
| Use Absolute Tree Flow UV | Encode UV1.y as absolute accumulated distance across the parent-child root hierarchy instead of restarting per branch. |
| Setting | Description |
|---|---|
| Ground Trace Channel | Collision channel for ground tracing |
| Snap To Ground | Snap root endpoints to ground/surfaces below them |
| Snap Parent To Ground | Snap the parent source spline to the ground. Disable this if you want the parent source spline to stay exactly where you placed it while children still snap. |
| Setting | Description |
|---|---|
| Surface Offset | Vertical offset for surface points |
| Fallback Ground Offset | Vertical offset for ground points - when radius-adaptive burial is not being used. |
| Use Radius-Adaptive Offset | Apply the output offset based on the local root radius at each point, maintaining a more consistent burial depth. |
| Render Burial | Render-only burial applied to the final mesh path relative to the authored spline path. This does not control spline snapping; use Snap To Ground for surface snapping. |
| Trace Distance | Maximum trace distance for ground/surface detection in centimeters. |
| Use Secondary Ground Trace Channel | Enable a second trace channel fallback when the primary ground trace misses. |
| Secondary Ground Trace Channel | Secondary collision channel used when fallback ground tracing is enabled. |
| Setting | Description |
|---|---|
| Use Surface Crawling | Enable surface crawling to follow terrain contours |
| Trace Complex For Surface | Trace against complex collision geometry for crawl surface queries. |
| Crawl Sphere Radius Multiplier | Radius multiplier for crawl contact tests relative to local root radius. |
| Max Crawl Iterations Per Step | Maximum crawl solve iterations used per generated step. |
| Conform Parent Spline To Surface | Conform parent spline points to detected surfaces during crawl evaluation. |
| Post Snap After Crawl | Apply an additional post-crawl snap to improve final surface adherence. |
| Line Trace First For Crawling | Attempt a cheaper line trace before sphere crawl traces for each step. |
| Fast Surface Reacquire | Use a fast local reacquire pass to recover surface contact after misses. |
| Fast Reacquire Distance | Maximum distance in centimeters for fast surface reacquire checks. |
| Use Separate Query Offset | Use an explicit query offset separate from the output surface offset during crawl traces. |
| Crawl Query Offset | Vertical query offset used only for surface crawl traces when separate query offset is enabled. |
| Setting | Description |
|---|---|
| Enable Edge Rounding | Round sharp flat-to-wall and wall-to-flat transitions by inserting a point on the angle bisector. |
| Edge Detection Threshold | When the surface normal changes by more than this threshold between surface contexts, insert a bisector rounding point instead of cutting sharply through the corner. |
| Edge Search Iterations | Number of binary search iterations used to find the edge location for edge rounding. |
| Edge Roundness Scale | Scales how far the inserted edge-rounding point is pushed along the corner bisector. |
| Wall Child Spawn Probability | Probability of allowing child branches (secondary/tertiary) to spawn on wall-like surfaces when encountered. |
| Setting | Description |
|---|---|
| Enable Surface Attraction | Enable surface attraction to move roots towards the surface. |
| Attraction Actors | Optional attraction actors whose distributed points can pull generated roots toward them during spline growth. |
| Attraction Strength | How strongly attraction points influence the next growth direction. 0 disables the system. |
| Attraction Radius | Maximum distance from a point at which attraction can influence growth. |
| Attraction Falloff Exponent | Falloff exponent for attraction weighting. Higher values make the pull more local around each point. |
| Setting | Description |
|---|---|
| Downward Bias | Bias toward downward growth direction |
| Max Upward Angle Deg | Maximum upward angle roots can grow |
| Parent Wall Preference | Bias for parent roots toward vertical wall-like surfaces versus flatter surfaces. |
| Use Direction-Aware Child Surface Selection | Use parent direction context when selecting crawl surfaces for child branches. |
| Child Wall Preference | Bias for child branches toward vertical wall-like surfaces during hinted surface selection. |
| Setting | Description |
|---|---|
| Curvature Response | Controls curvature sensitivity in current adaptive/detail behavior. Higher values respond more strongly to curvature changes. |
| Setting | Description |
|---|---|
| Enable Gravitropic Behavior | Simulate gravitropic response |
| Gravitropic Strength | Strength of gravitropic steering toward downward growth. |
| Gravitropic Multiplier | Multiplier applied to overall gravitropic turning response. |
| Setting | Description |
|---|---|
| Enable Root Avoidance | Prevent roots from growing too close to each other |
| Avoidance Radius | Local neighborhood radius used when evaluating nearby roots for avoidance. |
| Avoidance Strength | Steering strength used to push growth away from nearby roots. |
| Setting | Description |
|---|---|
| Enable Organic Candidate Growth | Use field-scored candidate growth so roots react to concavity, relief, crease, and exposure. |
| Organic Growth Blend | Blend between the original direction logic and the organic field-scored candidate logic. |
| Organic Candidate Count | Number of candidate directions scored at each growth step for organic field selection. |
| Organic Concavity Probe Distance Cm | Probe distance used for concavity sampling around the current growth point. |
| Organic Relief Probe Distance Cm | Probe distance used for relief/height-variation sampling around the growth point. |
| Organic Selection Sharpness | Sharpness of candidate score weighting. Higher values favor the best-scoring direction more strongly. |
| Organic Tip Memory Strength | Directional memory retained between steps to keep trajectories coherent. |
| Organic Termination Frustration Threshold | Frustration threshold above which a tip may terminate when no suitable organic direction is found. |
| Organic Field Weights | Relative weights for concavity, relief, crease, verticality, and exposure in organic candidate scoring. |
| Use Parent Area Budget | Conserve local parent cross-sectional area when spawning child roots. |
| Area Conservation Exponent | Exponent controlling how aggressively child area usage is conserved relative to the parent budget. |
| Parent Budget Resolution Cm | Sampling resolution along parent roots used for local area budget accounting. |
| Parent Budget Influence Distance Cm | Distance around a spawn location used when applying parent area budget influence. |
| Setting | Description |
|---|---|
| Burrow Ceiling Traverse Distance Cm | Minimum travel distance a burrow trunk spends spreading along a ceiling before committing to descent unless very strong wall/interior support appears. |
| Burrow Wall Descent Strength | Strength multiplier for descent steering once a burrow branch commits to wall descent. |
| Burrow Lateral Weave Strength | Stable lateral shaping applied during burrow wall descent to avoid visually straight vertical drops. |
| Burrow Floor Runner Chance | Chance to assign eligible secondary/tertiary burrow children to floor-runner roles when local floor support is strong. |
| Burrow Re Burrow Strength | Bias strength that keeps burrow branches re-entering enclosed interior support after touching floor-like surfaces. |
| Burrow Interior Search Radius Cm | Search radius used by burrow support classification and continuity checks for interior cave/tunnel support. |
| Setting | Description |
|---|---|
| Enable Spawn Density Check | Check density at spawn locations and skip branches in crowded areas |
| Spawn Density Radius Multiplier | Neighbor search radius multiplier used for spawn density checks. |
| Spawn Density Max Count | Maximum nearby branch count allowed before skipping a new spawn. |
| Primary Spawn Dead Zone Cm | Minimum spacing along parent root before allowing another primary spawn. |
| Secondary Spawn Dead Zone Cm | Minimum spacing along primary roots before allowing another secondary spawn. |
| Tertiary Spawn Dead Zone Cm | Minimum spacing along secondary roots before allowing another tertiary spawn. |
| Setting | Description |
|---|---|
| Enable Enhanced Root Noise | Replace the default sine meander with a multi-layer noise system tuned for root behavior. When disabled, the original sine-based meander is used. |
| Root Noise Primary Wavelength | Primary undulation wavelength in cm. Controls the main side-to-side sweep. Longer = gentler curves. |
| Root Noise Secondary Wavelength | Secondary undulation wavelength in cm. Adds medium-frequency variation on top of the primary sweep. |
| Root Noise Tertiary Wavelength | Tertiary (long-range drift) wavelength in cm. Prevents roots from looking perfectly periodic. |
| Root Noise Forward Wavelength Scale | Forward-axis undulation wavelength multiplier. Higher = longer forward waves. |
| Root Noise Amplitude Modulation | How much Perlin amplitude modulation affects the meander. 0 = constant (mechanical), 1 = fully modulated (organic). |
| Root Noise Asymmetric Bias | Roots in soil tend to favor one side over long distances before switching. 0 = symmetric, 1 = strong one-sided preference. |
| Root Noise Asymmetric Wavelength | Wavelength of the asymmetric bias oscillation. Controls how often the root switches its preferred side. |
| Root Noise Distance Decay | How much meander amplitude decreases along the root's length. Simulates increasing soil resistance. 0 = no decay, 1 = fades to zero at tip. |
| Root Noise Thickness Correlation | How much root thickness affects meander amplitude. Thicker roots meander less (more structural). 0 = no effect, 1 = strong correlation. |
| Root Noise Depth Seeking Strength | Subtle downward perturbation that increases with distance. Simulates roots seeking deeper soil layers. 0 = none, 1 = strong downward drift at tips. |
| Root Noise White Noise Strength | White noise contribution for irregularity. 0 = pure sine waves, higher = more randomized. |
| Setting | Description |
|---|---|
| Enable Concavity Resistance | Detect terrain concavities and steer roots along contour lines |
| Concavity Resistance Strength | Strength of lateral steering away from concavity traps. |
| Concavity Detection Threshold | Concavity level required before anti-piling steering engages. |
| Enable Adaptive Downward Bias | Reduce downward bias when root has been consistently descending |
| Adaptive Descent Lookback | History window length used to detect sustained downward motion. |
| Adaptive Min Bias Multiplier | Minimum fraction of base downward bias retained after adaptive reduction. |
| Enable Dip Escape | Detect when root is trapped at terrain minimum and force lateral escape |
| Dip Escape Lookback | History window used to determine when the tip is trapped in a dip. |
| Dip Escape Z Threshold Multiplier | Vertical change threshold (relative to radius) used to classify dip trapping. |
| Dip Escape Max Up Angle Deg | Maximum upward steering angle allowed while executing dip escape. |
| Dip Escape Lateral Strength | Lateral steering strength applied during dip escape maneuvers. |
| Setting | Description |
|---|---|
| Enable Child Orientation Sanity Validation | Validate child branch orientation against sampled surface normals before accepting the branch. |
| Child Orientation Validation Min Samples | Minimum number of orientation-validation samples taken along each child spline. |
| Child Orientation Validation Max Samples | Maximum number of orientation-validation samples taken along each child spline. |
| Child Orientation Validation Reject Fraction | Reject child spline when the fraction of failed orientation samples exceeds this threshold. |
| Child Orientation Up Surface Min Dot | A sample is considered suspicious when abs(dot(Frame.Up, SupportNormal)) is below this threshold. |
| Child Orientation Right Surface Max Dot | A sample is considered suspicious when abs(dot(Frame.Right, SupportNormal)) is above this threshold. |
| Setting | Description |
|---|---|
| Enable Anti Double Back | Prevent roots from doubling back or coiling |
| Max Turn Angle Per Segment Deg | Maximum allowed turn angle per segment before anti-coiling correction triggers. |
| Min Forward Progress Dot | Minimum forward progress dot-product required to consider movement valid. |
| Terminate On Angle Violation | Terminate a branch if repeated angle violations occur. |
| Min Segments Before Termination | Minimum generated segments required before angle-violation termination is allowed. |
| Post Crawl Angle Validation | Run angle validation again after surface crawl adjustments. |
| Post Crawl Angle Leniency Multiplier | Extra leniency multiplier for post-crawl angle validation. |
| Angle Check Smoothing Window | Smoothing window size used when evaluating recent turn angles. |
| Setting | Description |
|---|---|
| Enable Surface Climbing | Allow roots to crawl up vertical and overhanging surfaces |
| Climbing Surface Threshold | Minimum surface steepness needed to switch into climbing behavior. |
| Max Climb Height Above Start | Maximum climb height above the branch start in centimeters. Use -1 for unlimited. |
| Stop Climbing At Top | Stop climbing when the root reaches a flatter top surface. |
| Top Detection Threshold | Flatness threshold used to detect top-out surfaces during climbing. |
| Climbing Max Upward Angle Deg | Maximum upward growth angle allowed while in climbing mode. |
| Setting | Description |
|---|---|
| Bake Growth Animation Data | Bake Growth Animation data into UV3 for use with Flow-Aligned material |
| Runtime Export Quality | Controls authored-frame sample density in runtime export data. Full keeps all authored samples. |
| Parent Growth Fraction | Fraction of the [0,1] timeline allocated to the parent root growing. The remaining time is split among child tiers. |
| Primary Growth Fraction | Fraction of the [0,1] timeline allocated to primary branches growing. |
| Secondary Growth Fraction | Fraction of the [0,1] timeline allocated to secondary branches growing. |
| Tertiary Growth Fraction | Fraction of the [0,1] timeline allocated to tertiary branches growing. Computed as remainder if 0. |
| Setting | Description |
|---|---|
| Auto Rebuild In Editor | Automatically regenerate roots in the editor when settings change. |
| Hide Disabled Settings | Hides all settings that can only be modified when expert mode is enabled. |
| Auto Rebuild Debounce Seconds | Delay in seconds before auto-rebuild triggers after an editable change. |
| Draw Debug Frames | Draw debug frames/axes along generated spline points in the editor viewport. |
| Draw Rejected Child Validation | Draw red reject markers and labels for child splines rejected by branch validation. |
| Draw Debug Shading Flow | Draw shading-flow diagnostics (forward/up vectors plus seam/twist/flow labels) from the authored flow cache. |
| Shading Flow Debug Label Stride | Label stride for shading-flow debug text. Lower values draw more labels. |
| Setting | Description |
|---|---|
| Enable Generation Logging | Master toggle for generation logging. When disabled, all per-log toggles are ignored. |
| Log Generation Stats | Log high-level generation statistics after each build. |
| Log Spline Creation Details | Log detailed per-segment decisions during spline generation. WARNING: Very verbose. |
| Log Mesh Generation Details | Log mesh-generation stage details, including attach/weld diagnostics and per-stage timing. |
| Log Generation QC Details | Log post-mesh quality-control diagnostics (QC pass warnings). |
| Setting | Description |
|---|---|
| Log Burrow Phase Diagnostics | Log per-segment burrow phase/state diagnostics, support-class scores, phase transitions, and role assignments. |
| Draw Burrow Support Debug | Draw lightweight burrow support-class debug vectors/colors at runtime-selected support points during generation. |
| Log Buttress Diagnostics | Log buttress-lite branch classification and shaping diagnostics during generation and mesh ring preparation. |
| Draw Buttress Shape Debug | Draw buttress local deformation frame axes for sampled rings during mesh preparation. |
| Debug Disable All Shape Settings | Debug override: disable geometry-side shape modifiers (advanced taper curve, organic thickness variation, length-based thickening, junction bulging, and surface-ring shaping). |
| Debug Use Base Taper Only For Radius | Debug override: compute radius from base taper only (StartRadius * Lerp(1,Taper,Alpha), then clamp to MinGeneratedRadius). Disables advanced taper, tip taper, length thickening, organic noise, and junction bulging. |
| Debug Hard Bypass Ring Phase Continuity | Debug override: hard-bypass ring phase continuity. Forces SeamAngleRadians=0, TwistOffset=0, and UV1WrapPhaseOffset=0 so UV1 uses plain cylindrical wrap (UV1.x=BaseU, UV1.y=FlowDistance/100). |
| Debug Log Ring Continuity Scalars | Debug logging: print ring continuity scalar deltas for the same representative spline per tier used by step-point pipeline reporting (Parent/Primary/Secondary/Tertiary). |
| Debug Log Step Point Pipeline | Debug logging: for a single representative spline in each generated tier (Parent/Primary/Secondary/Tertiary), print per-step point pipeline stages (raw crawl reacquire, post-edge-rounding, post-angle-validation, post-surface-offset, final committed). |
| Debug Disable Append Turn Clamp | Debug override: disable final append-time per-point turn clamp in TryAppendPointWithSegmentHardCap. |
| Debug Disable Segment Hard Cap Clamp | Debug override: disable append-time segment hard-cap clamp/termination in TryAppendPointWithSegmentHardCap. |
| Debug Disable Edge Rounding Point Insertion | Debug override: disable insertion of intermediate edge-rounding points while keeping edge detection active. |
| Debug Disable Wall Traversal Point Insertion | Debug override: disable insertion of wall-traversal intermediate points while keeping wall traversal detection active. |
| Debug Disable Per Step Surface Offset Adjustment | Debug override: disable per-step surface/ground adaptive offset adjustment used by crawl/non-crawl point state. |
| Debug Disable Start Surface Snap | Debug override: disable start-surface acquisition and initial crawl start snap. |
| Debug Disable Direction Computation | Debug override: disable per-step direction recomputation (ComputeNextGrowthDirection). |
| Debug Disable Organic Candidate Direction Blend | Debug override: disable organic candidate direction blending and organic frustration termination branch. |
| Debug Disable Airborne Gravity Bias | Debug override: disable persistent airborne gravity bias on desired direction. |
| Debug Disable Collision Avoidance Deflection | Debug override: disable collision-avoidance deflection of desired direction. |
| Debug Disable Pre Crawl Anti Double Back | Debug override: disable pre-crawl anti-double-back termination check. |
| Debug Disable Post Crawl Anti Double Back | Debug override: disable post-crawl anti-double-back termination checks (crawl and non-crawl paths). |
| Debug Disable Non Crawl Surface Snap | Debug override: disable non-crawl surface snap traces and related airborne accounting. |
| Debug Disable Crawl Edge Seeking | Debug override: disable crawl edge-seeking directional bias. |
| Debug Disable Concavity Resistance | Debug override: disable concavity-resistance lateral escape adjustments. |
| Debug Disable Forward Edge Detection | Debug override: disable forward edge detection/lip handling stage before crawl iterations. |
| Debug Disable Wall Traversal Detection | Debug override: disable wall traversal detection/execution while leaving other miss handling active. |
| Debug Disable Surface Reacquire | Debug override: disable surface reacquire branches after crawl miss cases. |
| Debug Disable Air Snap Recovery | Debug override: disable air-snap recovery branches after crawl miss/penetration events. |
| Debug Disable Airborne Surface Validation Snap | Debug override: disable airborne surface-validation snap block. |
| Debug Disable Final Ground Check | Debug override: disable final ground-check block (recovery plus drift evaluation). |
| Debug Disable Spawn Density Anti Pile | Debug override: disable wall-base anti-pile deflection/termination logic. |
| Debug Disable Post Crawl Snap Adjustments | Debug override: disable post-crawl snap adjustments (both immediate post-snap-after-crawl and later drift-snap correction). |
| Debug Disable Under Surface Correction | Debug override: disable final under-surface correction before pre-append vertical lift/noise and append. |
| Debug Disable Pre Append Vertical Lift | Debug override: disable the pre-append crawl vertical-lift micro-noise mutation (CurrOutW.Z lift before append). |
| Debug Disable Parent Crossing Plane Enforcement | Debug override: disable parent crossing plane enforcement during spline growth. |
| Debug Disable Lip Stop Point Insertion | Debug override: disable lip-stop point insertion while preserving lip detection and termination behavior. |
| Debug Disable Commit Guard | Debug override: disable commit-guard clamp that snaps committed point back toward crawl result. |
| Debug Disable Final Point Smoothing | Debug override: disable authored point smoothing pass before final path freeze. |
| Debug Disable Final Point Deduplication | Debug override: disable point deduplication pass before final path freeze. |
| Debug Disable Final Surface Conformance Pass | Debug override: disable final surface-conformance offset pass on authored points. |
| Debug Disable Single Point Kink Regularization | Debug override: disable single-point kink regularization pass before final path freeze. |
| Debug Disable Legacy Sharp Corner Smoothing | Debug override: disable legacy sharp-corner smoothing fallback pass. |
| Debug Use UV0 For Tangent Computation | Debug override: compute mesh tangents from UV0 instead of UV1 flow unwrap. |
| Debug Bypass Final Normals Tangents Generation | Debug override: bypass final mesh normal/tangent generation and use authored ring-frame vectors (UV2 encoded forward + color RG encoded surface normal) for preview shading vectors. |
| Use Legacy Preview Payload Mode | Debug preview mode: use legacy preview-only payload rewrite/material flags instead of production payload/material contract. |
| Debug Disable Geometry Surface Ring Flattening | Temporary debug toggle: keep ring basis construction enabled but disable geometry-side width/bottom/top surface-ring deformation. |
| Debug Disable Geometry Ring Transition Easing | Debug override: disable geometry-side ring transition easing during pre-mesh frame refinement. |
| Debug Disable Adaptive Ring Resampling | Debug override: disable adaptive pre-mesh ring resampling/refinement pass. |
| Debug Disable Geometry Spike Repair | Debug override: disable geometry-side spike repair inside rotation-minimizing frame generation. |
| Debug Use Linearized Centerline For Meshing | Debug override: build mesh RM frames from a temporary linearized centerline sampled from authored spline points (bypasses spline interpolation tangents and tangent smoothing/clamping). |
| Debug Use Raw Central Difference Tangents For Meshing | Debug override: for authored-path meshing, use raw central-difference tangents with no extra angular clamp instead of the default tangent smoothing/clamp path. |
| Debug Disable Geometry History Averaging After RM Frames | Debug override: disable geometry ring-basis history averaging after RM frame generation. |
| Debug Disable Curvature Weighted Distance Redistribution | Debug override: disable curvature-weighted distance redistribution inside pre-mesh frame refinement. |
| Debug Disable Tiny Step Suppression | Debug override: disable tiny-step suppression inside pre-mesh frame refinement. |
| Debug Disable Neighbor Tangent Recompute | Debug override: disable tangent recompute from neighboring points inside pre-mesh frame refinement. |
| Debug Disable Late Pass Pruning | Debug override: disable late-pass child pruning before final meshing. |
The Vine Actor is the dedicated authoring tool for climbing and wrapping vine systems. It follows the same general workflow as the Root Actor, but adds vine-specific surface, hanging, and wrap-around controls.
| Setting | Description |
|---|---|
| Build All | Build all generated content from the current settings. |
| Build Mesh | Regenerate the generated mesh from existing spline points. |
| Generate Static Mesh | Generates a static mesh actor from the current procedural mesh |
| Generate Runtime Actor | Export spline data to a runtime growth actor for growth playback. |
| Open Documentation | Open the Procedural Vine Generator documentation. |
| Reset to Defaults | Resets all settings to their default values |
| Overwrite Preset From Current Settings | Select an existing preset row and replace it with the current actor settings. If the preset table is missing, it will be created first. |
| Setting | Description |
|---|---|
| Root | Root scene component for the vine generator actor <span class="w3-text-grey">(Read-only, Blueprint read-only)</span> |
| Parent Vine Spline | Guide spline used as the parent path for vine generation <span class="w3-text-grey">(Read-only, Blueprint read-only)</span> |
| Generated Mesh Component | Primary dynamic mesh component that displays generated vine geometry <span class="w3-text-grey">(Read-only, Blueprint read-only)</span> |
| Preview Proc Mesh Component | Editor preview procedural mesh component used during generation previews <span class="w3-text-grey">(Read-only, Blueprint read-only)</span> |
| Placement Preview Billboard | Billboard used to preview placement/orientation in the editor <span class="w3-text-grey">(Read-only, Blueprint read-only)</span> |
| Primary Container | Scene component parent for generated primary branch splines <span class="w3-text-grey">(Read-only, Blueprint read-only)</span> |
| Parent Container | Scene component parent for generated synthetic parent splines <span class="w3-text-grey">(Read-only, Blueprint read-only)</span> |
| Secondary Container | Scene component parent for generated secondary branch splines <span class="w3-text-grey">(Read-only, Blueprint read-only)</span> |
| Tertiary Container | Scene component parent for generated tertiary branch splines <span class="w3-text-grey">(Read-only, Blueprint read-only)</span> |
| Setting | Description |
|---|---|
| Preset | Select a preset row from DT_VinePresets. Includes custom presets created with New. |
| Growth Type | Overall vine growth behavior. Climbing favors upward surface growth, Wrapping favors surface wrap-around, and Hanging favors sagging aerial vines. |
| Expert Mode | Show advanced/expert controls throughout the vine generator details panel. |
| Use External Spline | Use a spline from another actor as the parent vine path instead of the built-in spline |
| External Spline Actor | The actor containing the spline component to use as the parent vine |
| External Spline Component | The specific spline component from the external actor to use |
| Setting | Description |
|---|---|
| Vine Presets Table | DataTable containing vine presets (row type: FVinePresetData) |
| Apply Preset On Change | Automatically apply preset values when the preset selection changes |
| Auto Set Preset To Custom On Edit | Automatically set preset to 'Custom' when any parameter is manually edited |
| Setting | Description |
|---|---|
| Preview Mode | Choose which vine hierarchy levels to preview: None, Parent only, Parent + Primary, or All. |
| Random Seed | Seed for random number generation. Change this to get different vine patterns |
| Advance Seed On Build Now | If enabled, each Build Now uses RandomSeed plus a transient build counter to reroll topology without mutating RandomSeed. |
| Last Build Seed Used | Debug/readback of the exact seed used by the most recent Build Now invocation. |
| Master Scale | Global scale multiplier for the entire vine system |
| Min Generated Radius | Minimum radius threshold. Vines thinner than this will not be generated |
| Setting | Description |
|---|---|
| Vine Material | Material to apply to the generated vine mesh |
| Setting | Description |
|---|---|
| Enable Nanite | Enable Nanite virtualized geometry |
| Setting | Description |
|---|---|
| Tube Radial Segments | Number of radial subdivisions around the vine tube |
| Tube Axial Subdivisions | Multiplier for axial sample density along each vine segment (1 = baseline) |
| Cap Tube Ends | Close the ends of vine tubes with cap geometry |
| Tube End Cap Taper | How much to taper/narrow the end caps |
| Tube Terminal Taper Length Scale | Length scale of the terminal taper stub ring appended before each non-welded cap. |
| Tube Terminal Taper Radius Scale | Radius scale of the terminal taper stub ring appended before each non-welded cap. |
| Setting | Description |
|---|---|
| Smoothing Type | Type of mesh smoothing algorithm to apply |
| Enable Single Point Kink Regularization | Run a local point-chain regularization pass before spline assembly to target single-point kinks (smooth/merge/average) without global smoothing. |
| Smoothing Iterations | Number of smoothing passes to apply |
| Smoothing Strength | Strength of the smoothing effect |
| Smooth Boundary Vertices | Apply smoothing to vertices on mesh boundaries |
| Preserve Junction Vertices | Protect vertices at branch junctions from smoothing |
| Setting | Description |
|---|---|
| Weld Branch Junctions | Merge vertices at branch connection points |
| Weld Coincident Edges | Weld vertices that lie on the same edge |
| Setting | Description |
|---|---|
| Weld Tolerance | Distance threshold for welding vertices at junctions |
| Edge Weld Tolerance | Distance threshold for welding coincident edge vertices |
| Setting | Description |
|---|---|
| Generate Collision | Generate collision geometry |
| Hull Count | Target number of convex hull pieces when generating collision for the exported static mesh. |
| Max Hull Verts | Maximum vertex count allowed per generated convex hull. Higher values preserve more shape detail but cost more collision complexity. |
| Hull Precision | Precision used by convex decomposition. Higher values improve fit at higher generation cost. |
| Setting | Description |
|---|---|
| Generated Asset Folder | Folder path where generated static mesh assets will be saved |
| Setting | Description |
|---|---|
| Recenter Pivot To Bounds Center | Move the mesh pivot to the center of its bounding box |
| Place Static Mesh | Place the generated static mesh into the level |
| Export Scope | Selects which spline scope is used for export and solo preview. |
| Export Tier Selection | Tier used when export scope is set to Selected Tier. |
| Export Spline Selection | Optional single spline selection for export. 'All Splines' exports the full generated mesh. |
| Export Ancestor Chain As Combined Asset | When exporting branch + ancestors, also produce one combined asset for the full chain. |
| Export Ancestor Chain As Separate Assets | When exporting branch + ancestors, also produce one separate asset per spline in the chain. |
| Preview Selected Export Spline | If enabled, selecting a single spline for export will also preview only that spline in the editor viewport. |
| Show Non Selected Splines In Solo Preview | When solo export preview is active, keep non-selected splines visible as thin editor debug splines. |
| Setting | Description |
|---|---|
| Runtime Export Quality | Controls authored-frame sample density in runtime export data. Full keeps all authored samples. |
| Bake Growth Animation Data | Bake Animation data into UV3 for runtime growth playback |
| Parent Growth Fraction | Fraction of the [0,1] timeline allocated to parent/guide vine growth. |
| Primary Growth Fraction | Fraction of the [0,1] timeline allocated to primary branches growing. |
| Secondary Growth Fraction | Fraction of the [0,1] timeline allocated to secondary branches growing. |
| Tertiary Growth Fraction | Fraction of the [0,1] timeline allocated to tertiary branches growing. Computed as remainder if 0. |
| Setting | Description |
|---|---|
| Remove Interior Faces | Remove mesh triangles whose centroids are inside another vine's tube volume |
| Setting | Description |
|---|---|
| Interior Removal Mode | RemoveAll: remove any face inside another tube. RemoveSmaller: only remove from the thinner vine |
| Interior Test Radius Scale | Scale factor for the containment test radius |
| Preserve Junction Faces | Preserve faces near branch junction points |
| Junction Preserve Radius Multiplier | Radius around junction points within which faces are preserved |
| Interior Test Sample Spacing | Spacing between centerline samples used for containment testing |
| Junction Start Exclusion Fraction | Fraction of child spline length from start where faces are never removed |
| Setting | Description |
|---|---|
| Vine Base Thickness | Starting thickness/radius of the Parent vine at its base |
| Parent Count | Number of synthetic parent splines generated from the guide stub in internal mode. |
| Parent Length | Target length (cm) of each synthetic internal parent spline. |
| Parent Thickness | Starting thickness/radius of synthetic internal parent splines at their base. |
| Parent Spread Angle Deg | Angular spread used when distributing synthetic internal parent launch directions around the guide hub. |
| Parent Target Segment Length | Target segment length (cm) used when building synthetic internal parent splines. |
| Parent Spline Smoothing Passes | Smoothing passes applied when assembling synthetic internal parent splines. |
| Parent Launch Stub Length | Sprout-length hint (cm) near the guide hub. Higher values slightly extend the soft start region, but do not enforce a rigid straight launch segment. |
| Parent Min Angular Separation Deg | Minimum angular separation between synthetic internal parent launch directions. |
| Parents Use Surface Projection | Project synthetic internal parents toward nearby support surfaces while preserving the guide-stub hub origin. |
| Parents Participate In Avoidance | When disabled, synthetic internal parent splines are excluded from shared avoidance sample state. |
| Min Segment Fraction | Minimum fraction of each branch length that must be represented by crawl/generation segments. |
| Setting | Description |
|---|---|
| Wall Child Spawn Probability | Probability that a child branch spawns when the parent vine is on a wall surface. |
| Transition Zone Lookahead | Distance in centimeters used to evaluate dominant surface context near flat-to-wall transitions. |
| Transition Detection Threshold | Dot threshold used to detect a surface transition zone between adjacent samples. |
| Setting | Description |
|---|---|
| Enable Primary | Enable generation of primary vine branches |
| Primary per Parent | Number of primary branches generated per parent spline. |
| Primary Length | Length of primary vine branches |
| Primary Thickness | Starting thickness of primary branches |
| Setting | Description |
|---|---|
| Primary Density | Deprecated legacy primary density control kept for backward compatibility. |
| Setting | Description |
|---|---|
| Primary Max Child Radius Frac | Maximum child radius as a fraction of the parent radius at the spawn point. |
| Primary Taper | Rate at which primary branches taper |
| Primary Tip Taper Multiplier | Additional taper near the tip |
| Primary Target Segment Length | Target length for each mesh segment |
| Primary Meander Strength | Amount of random winding/curvature |
| Primary Direction Preference | How much branches prefer their initial direction |
| Primary Spline Smoothing Passes | Smoothing passes for spline paths |
| Primary Length Variation | Random length variation for primary branches as a normalized fraction of base length. |
| Primary Thickness Variation Min | Minimum multiplicative thickness variation for primary branches |
| Primary Thickness Variation Max | Maximum multiplicative thickness variation for primary branches |
| Primary Taper Variation Min | Minimum taper variation multiplier for primary branches |
| Primary Taper Variation Max | Maximum taper variation multiplier for primary branches |
| Setting | Description |
|---|---|
| Enable Secondary | Enable secondary branches |
| Secondary Per Primary | Number of secondary branches to attempt per primary branch |
| Secondary Length | Length of secondary branches |
| Secondary Thickness | Starting thickness of secondary branches |
| Setting | Description |
|---|---|
| Secondary Spread Angle Deg | Maximum spread angle from the parent direction |
| Secondary Max Child Radius Frac | Maximum child radius as a fraction of the parent radius at the spawn point. |
| Secondary Taper | Rate at which secondary branches taper from base to tip. |
| Secondary Tip Taper Multiplier | Additional taper multiplier near the secondary branch tip. |
| Secondary Target Segment Length | Target segment length for secondary branch mesh generation. |
| Secondary Meander Strength | Random meander strength for secondary branch paths. |
| Secondary Direction Preference | How strongly secondary branches keep their initial launch direction. |
| Secondary Spline Smoothing Passes | Smoothing passes applied to generated secondary spline paths. |
| Secondary Length Variation | Random length variation for secondary branches as a normalized fraction of base length. |
| Min Angle Between Consecutive Secondary | Minimum angle in degrees between consecutive secondary branch launch directions around the same parent. |
| Secondary Thickness Variation Min | Minimum multiplicative thickness variation for secondary branches. |
| Secondary Thickness Variation Max | Maximum multiplicative thickness variation for secondary branches. |
| Secondary Taper Variation Min | Minimum taper variation multiplier for secondary branches. |
| Secondary Taper Variation Max | Maximum taper variation multiplier for secondary branches. |
| Setting | Description |
|---|---|
| Enable Tertiary | Enable tertiary branches |
| Tertiary Per Secondary | Number of tertiary branches to attempt per secondary branch |
| Tertiary Length | Length of tertiary branches |
| Tertiary Thickness | Starting thickness of tertiary branches |
| Setting | Description |
|---|---|
| Tertiary Spread Angle Deg | Maximum spread angle from the parent direction |
| Tertiary Max Child Radius Frac | Maximum child radius as a fraction of the parent radius at the spawn point. |
| Tertiary Taper | Rate at which tertiary branches taper from base to tip. |
| Tertiary Tip Taper Multiplier | Additional taper multiplier near the tertiary branch tip. |
| Tertiary Target Segment Length | Target segment length for tertiary branch mesh generation. |
| Tertiary Meander Strength | Random meander strength for tertiary branch paths. |
| Tertiary Direction Preference | How strongly tertiary branches keep their initial launch direction. |
| Tertiary Spline Smoothing Passes | Smoothing passes applied to generated tertiary spline paths. |
| Tertiary Length Variation | Random length variation for tertiary branches as a normalized fraction of base length. |
| Min Angle Between Consecutive Tertiary | Minimum angle in degrees between consecutive tertiary branch launch directions around the same parent. |
| Tertiary Thickness Variation Min | Minimum multiplicative thickness variation for tertiary branches. |
| Tertiary Thickness Variation Max | Maximum multiplicative thickness variation for tertiary branches. |
| Tertiary Taper Variation Min | Minimum taper variation multiplier for tertiary branches. |
| Tertiary Taper Variation Max | Maximum taper variation multiplier for tertiary branches. |
| Setting | Description |
|---|---|
| Enable Variation | Enable random variation in branch thickness and taper |
| Variation Strength | Global strength multiplier for all variation effects |
| Setting | Description |
|---|---|
| Enable Organic Thickness Variation | Add procedural noise-based thickness variations |
| Organic Thickness Noise Strength | Strength of procedural noise-based thickness variation along vines. |
| Organic Thickness Noise Frequency | Frequency of procedural noise used for thickness variation. |
| Use Advanced Taper Curve | Use a power curve for taper instead of linear interpolation. |
| Taper Curve Power | Exponent used by the advanced taper curve. Higher values keep vines thicker for longer. |
| Use Length Based Thickening | Scale thickness based on branch length. |
| Length Thickness Scale | Strength of length-based thickness scaling. |
| Setting | Description |
|---|---|
| Enable Hierarchical Flow Inheritance | Use a dedicated shading/UV flow frame and parent-attachment inheritance for bark continuity. |
| Junction Flow Blend Distance Cm | Distance from a child branch start over which shading orientation/phase eases from parent-aligned values into local branch values. |
| Shading Flow History Window | History window used only by the shading frame. Larger values produce calmer bark/grain flow. |
| Shading Flow Max Forward Delta Deg | Maximum shading-frame forward rotation per ring in degrees. Lower values reduce abrupt flow pivots. |
| Shading Flow Max Seam Delta Deg | Maximum seam-phase rotation per ring in degrees for the shading frame. |
| Shading Flow Surface Blend Strength | Support-normal blend strength for shading frame orientation. Keep low for stable bark flow. |
| Use Absolute Tree Flow UV | Encode UV1.y as absolute accumulated distance across the parent-child vine hierarchy instead of restarting per branch. |
| Curvature Adaptive Threshold | Curvature-adaptive sampling threshold used for authored frame and ring placement. Lower values increase samples in curved areas. |
| Setting | Description |
|---|---|
| Trace Channel | Collision channel for surface tracing |
| Use Secondary Trace Channel | Use a secondary trace channel as fallback |
| Secondary Trace Channel | Secondary collision trace channel used when the primary trace does not hit |
| Trace Complex | Use complex collision for surface tracing |
| Trace Distance | Maximum trace distance in centimeters used to find surfaces during crawling. |
| Surface Seek Radius | Radius to search for nearby surfaces |
| Surface Offset | Offset from the surface to place spline - This is applied uniformly across all the points regardless of tube radius |
| Use Radius-Adaptive Offset | Apply a radius-adaptive offset at each point to maintain consistent burial depth. |
| Surface Burial Depth (cm) | Surface burial depth offset in centimeters when radius-adaptive offset is enabled. |
| Setting | Description |
|---|---|
| Wall Climb Vertical Bias | Balance between vertical climbing and lateral spreading on wall surfaces. |
| Wall Lateral Attenuation | Multiplier for lateral spread on wall surfaces. Lower values suppress sideways drift. |
| Wall Meander Attenuation | Multiplier for meander strength while vines are on wall surfaces. |
| Wall Seeking Bias | Bias toward nearby walls when launching growth from flat surfaces. |
| Wall Seeking Search Radius | Maximum wall-search distance used when biasing vine spawn direction toward walls. |
| Floor Phase Wall Seek Segments | Number of early flat-surface segments that actively steer toward the nearest wall. |
| Floor Phase Wall Seek Strength | Steering strength for floor-phase wall seeking. |
| Setting | Description |
|---|---|
| Enable Edge Rounding | Insert an edge-rounding point on sharp surface transitions so vines wrap around corners instead of cutting through them. |
| Setting | Description |
|---|---|
| Edge Detection Threshold | Normal-delta threshold used to detect an edge transition between crawl steps. Lower values detect gentler edges. |
| Edge Search Iterations | Binary search iterations used to locate the edge point more precisely. |
| Edge Rounding Bisector Scale | Scale applied to bisector displacement when placing rounded edge points. |
| Setting | Description |
|---|---|
| Enable Anti Double Back | Prevent vines from reversing direction or looping back on themselves during crawl growth. |
| Anti Double Back Max Turn Angle Deg | Maximum turn angle in degrees allowed per segment before anti-double-back logic intervenes. |
| Anti Double Back Min Progress Dot | Minimum forward progress dot threshold for anti-double-back validation. |
| Anti Double Back Terminate On Violation | Terminate spline generation when anti-double-back rules are violated instead of clamping direction. |
| Anti Double Back Min Segments Before Termination | Minimum number of segments that must be generated before termination-on-violation can occur. |
| Anti Double Back Smoothing Window | Window size used to smooth direction history for anti-double-back checks. |
| Anti Double Back Post Crawl Validation | Run anti-double-back validation after crawl adjustments as an additional safety check. |
| Anti Double Back Post Crawl Leniency | Leniency multiplier applied to post-crawl anti-double-back validation. |
| Setting | Description |
|---|---|
| Enable Self Avoidance During Growth | Enable self-avoidance steering so vines deflect away from their earlier segments. |
| Self Avoidance Radius | Radius multiplier used when testing proximity to previous segments for self-avoidance. |
| Self Avoidance Strength | Strength of self-avoidance steering force applied during growth. |
| Setting | Description |
|---|---|
| Crawl Sphere Radius Multiplier | Multiplier for the crawl sphere radius relative to vine thickness |
| Max Crawl Iterations Per Step | Maximum crawl iterations per growth step |
| Use Separate Query Offset | Use a separate query offset for crawl sweeps |
| Crawl Query Offset | Offset distance for crawl query sweeps |
| Use Curvature-Aware Crawling | Shortens crawl step size as the surface normal changes more sharply, producing rounder wall/ledge transitions on faceted collision. |
| Curvature Crawl Min Step Scale | Minimum crawl step scale used on high-curvature transitions. Lower values hug corners more tightly. |
| Curvature Normal Blend | Blend factor used when interpolating normal estimates for curvature-aware crawling. |
| Curvature Normal Sample Radius Scale | Probe radius scale used when sampling nearby normals for curvature-aware crawling. |
| Curvature Normal Samples Per Side | Number of normal probes sampled per side for curvature-aware interpolation. |
| Setting | Description |
|---|---|
| Upward Bias | Bias toward upward growth. Higher values make vines climb more aggressively |
| Max Upward Angle Deg | Maximum upward angle vines can grow |
| Max Climb Height | Maximum climb height above start point. -1 = unlimited |
| Top Behavior | Behavior when a vine reaches the top of a surface |
| Top Detection Threshold | Threshold for detecting top surfaces (dot product with up vector) |
| Tip Droop Strength | Strength of downward droop near vine tips |
| Droop Start Fraction | Fraction along vine length where droop begins |
| Lateral Spread | Amount of lateral spread/wandering |
| Vine Meander Strength | Strength of random meandering in vine paths |
| Stagnation Lookback | If the vine hasn't moved more than StagnationDistanceThreshold in this many consecutive segments, terminate or attempt to climb over |
| Stagnation Distance Threshold | Minimum distance the vine must travel over StagnationLookback segments. If less, the vine is considered stagnant. 0 = auto (based on step size) |
| Max Climb Over Attempts | Number of attempts to climb over an obstacle before terminating |
| Setting | Description |
|---|---|
| Enable Junction Bulging | Add thickness bulges at branch junctions |
| Junction Bulge Strength | Radius multiplier at branch junctions. 1.0 = no bulge, 1.2 = subtle, 1.5 = pronounced. |
| Junction Bulge Distance | Falloff distance for junction bulge, as a multiplier of the local radius. Higher = wider bulge zone. |
| Setting | Description |
|---|---|
| Enable Avoidance | Prevent vines from growing too close to each other |
| Avoidance Radius | Distance multiplier used for inter-vine avoidance checks. |
| Avoidance Strength | Strength of directional deflection applied by inter-vine avoidance. |
| Setting | Description |
|---|---|
| Allow Aerial Growth | Allow vines to continue growing when no surface is found |
| Max Aerial Segments | Maximum consecutive segments without surface contact |
| Setting | Description |
|---|---|
| Hanging Anchor Traverse Distance | Distance budget (cm) used to establish initial hanging anchor traversal before committing to edge seeking. |
| Hanging Edge Seek Strength | Strength of edge/lip seeking while hanging support is still surface-adhered. |
| Hanging Span Gravity Strength | Gravity dominance during detached hanging span phase. |
| Hanging Underside Preference | Preference for underside/ceiling supports when classifying and reacquiring hanging contact. |
| Hanging Reattach Search Radius Scale | Multiplier applied to hanging support search radius while detached and seeking reattach. |
| Hanging Lateral Swing Strength | Stable low-frequency lateral swing strength applied during hanging spans. |
| Hanging Initial Anchor Max Distance | Maximum distance from the actor placement that the initial hanging anchor search may move the first committed spline point. |
| Setting | Description |
|---|---|
| Allow Surface Wrap Around | Allow vines to wrap around convex surfaces instead of stopping at the top |
| Wrap Around Smoothness | Smoothness threshold for wrap-around detection. Higher = more permissive wrapping |
| Wrap Orbit Strength | Strength of circumferential orbit intent while wrapping around support geometry. |
| Wrap Inward Adherence | How strongly wrapping pulls inward toward the detected support during orbit. |
| Wrap Forward Carry | Forward carry blended into orbit movement to prevent static looping. |
| Wrap Support Search Radius | Multiplier for support-frame search radius relative to current crawl seek radius. |
| Wrap Desired Coverage Turns | Desired number of turns to cover before reducing strict orbit dominance. |
| Wrap Corner Commit Strength | How strongly wrapping commits across convex support transitions and edge turns. |
| Use Wrapping Topology Overrides | Apply wrapping-only runtime topology and contact overrides without changing stored preset values. |
| Wrap Parent Count Scale | Runtime scale for internally generated parent count in wrapping mode. |
| Wrap Primary Count Scale | Runtime scale for primary child count in wrapping mode. |
| Wrap Secondary Count Scale | Runtime scale for secondary child count in wrapping mode. |
| Wrap Target Segment Length Scale | Runtime scale for parent/primary/secondary target segment length in wrapping mode. |
| Wrap Meander Scale | Runtime meander scale in wrapping mode to keep wraps tighter. |
| Wrap Surface Burial Depth Override | Wrapping-only runtime burial-depth target when burial override is active. |
| Wrap Disable Burial Depth | When enabled, wrapping forces effective burial depth to zero for tighter visible support contact. |
| Wrap Crawl Radius Scale | Runtime scale for crawl/support search radius in wrapping mode. |
| Wrap Extra Edge Search Iterations | Additional edge-search refinement iterations for wrapping mode. |
| Setting | Description |
|---|---|
| Enable Spawn Density Check | Check density at spawn locations and skip branches in crowded areas |
| Spawn Density Radius Multiplier | Radius multiplier used when counting nearby splines to determine crowding. |
| Spawn Density Max Count | Maximum nearby spline count allowed at a spawn location before the spawn is skipped. |
| Setting | Description |
|---|---|
| Enable Child Orientation Sanity Validation | Validate child branch orientation against sampled support normals before accepting the branch. |
| Child Orientation Validation Min Samples | Minimum number of orientation-validation samples taken along each child spline. |
| Child Orientation Validation Max Samples | Maximum number of orientation-validation samples taken along each child spline. |
| Child Orientation Validation Reject Fraction | Reject child spline when the fraction of failed orientation samples exceeds this threshold. |
| Child Orientation Up Surface Min Dot | A sample is considered suspicious when abs(dot(Frame.Up, SupportNormal)) is below this threshold. |
| Child Orientation Right Surface Max Dot | A sample is considered suspicious when abs(dot(Frame.Right, SupportNormal)) is above this threshold. |
| Setting | Description |
|---|---|
| Auto Rebuild In Editor | Automatically regenerate vines in the editor when settings change. |
| Hide Disabled Settings | Hides all settings that can only be modified when expert mode is enabled. |
| Auto Rebuild Debounce Seconds | Delay in seconds before auto-rebuild triggers after an editable change. |
| Draw Debug Frames | Draw debug frames/axes along generated spline points in the editor viewport. |
| Draw Debug Shading Flow | Draw shading-flow diagnostics (forward/up vectors plus seam/twist/flow labels) from the authored flow cache. |
| Shading Flow Debug Label Stride | Label stride for shading-flow debug text. Lower values draw more labels. |
| Setting | Description |
|---|---|
| Log Generation Stats | Log high-level generation statistics after each build. |
| Log Spline Creation Details | Log detailed per-segment decisions during CreateSpline. WARNING: Very verbose. |
| Setting | Description |
|---|---|
| Debug Use Linearized Centerline For Meshing | Debug override: build mesh RM frames from a temporary linearized centerline sampled from authored spline points (bypasses spline interpolation tangents and tangent smoothing/clamping). |
| Debug Use Base Taper Only For Radius | Debug override: compute radius from base taper only (StartRadius * Lerp(1,Taper,Alpha), then clamp to MinGeneratedRadius). Disables advanced taper, tip taper, length thickening, organic noise, and junction bulging. |
| Debug Hard Bypass Ring Phase Continuity | Debug override: hard-bypass ring phase continuity. Forces SeamAngleRadians=0, TwistOffset=0, and UV1WrapPhaseOffset=0 so UV1 uses plain cylindrical wrap (UV1.x=BaseU, UV1.y=FlowDistance/100). |
| Debug Use UV0 For Tangent Computation | Debug override: compute mesh tangents from UV0 instead of UV1 flow unwrap. |
| Debug Bypass Final Normals Tangents Generation | Debug override: bypass final mesh normal/tangent generation and use authored ring-frame vectors (UV2 encoded forward + color RG encoded surface normal) for preview shading vectors. |
| Use Legacy Preview Payload Mode | Debug preview mode: use legacy preview-only payload rewrite/material flags instead of production payload/material contract. |
| Debug Disable Append Turn Clamp | Debug override: disable final append-time per-point turn clamp in TryAppendVinePointWithSegmentHardCap. |
| Debug Disable Segment Hard Cap Clamp | Debug override: disable append-time segment hard-cap clamp/termination in TryAppendVinePointWithSegmentHardCap. |
| Debug Disable Final Vine Point Smoothing | Debug override: disable authored vine-point smoothing pass before final path freeze. |
| Debug Disable Final Vine Point Deduplication | Debug override: disable authored vine-point deduplication pass before final path freeze. |
| Debug Disable Final Vine Surface Conformance Pass | Debug override: disable final surface-conformance pass on authored vine points. |
| Debug Disable Final Vine Kink Regularization | Debug override: disable final single-point kink regularization pass on authored vine points. |
| Debug Bypass Final Vine Authored QC Rejection | Debug override: bypass final authored-point QC rejection and accept splines that would otherwise fail late-stage authored checks. |
| Debug Disable Late Pass Pruning | Debug override: run post-mesh QC analysis and logging, but do not prune child splines during the late pass. |
| Log Wrap Diagnostics | Log wrap runtime diagnostics including phase, confidence, orbit sign, and support reacquire/corner events. |
| Draw Wrap Support Frames | Draw detected wrapping support frames (axis/normal/tangent) with phase color coding. |
| Log Hanging Diagnostics | Log hanging runtime diagnostics including support classification, phase transitions, detach/reattach reasons, and edge-seek confidence. |
| Draw Hanging Support Debug | Draw hanging support normals, edge-seek direction, detach/reattach points, and per-phase debug colors. |
| Setting | Description |
|---|---|
| Attraction Actors | Optional attraction actors whose distributed points can pull generated vines toward them during growth. |
| Attraction Strength | How strongly attraction points influence vine growth. 0 disables the system. |
| Attraction Radius | Maximum distance from an attraction point at which vines are influenced. |
| Setting | Description |
|---|---|
| Attraction Falloff Exponent | Falloff exponent for attraction weighting. Higher values make the pull more localized. |
| Attraction Affects Guide Spline | Allow attraction to influence the guide/parent vine during growth in addition to child tiers. |
The Barrier Actor generates strand-based organic barriers across openings. It includes pattern, anchor, shaping, flow, export, and editor visualization controls.
| Setting | Description |
|---|---|
| Build Now | Build the generated mesh from the current settings. |
| Regenerate Mesh | Regenerate the generated mesh from existing barrier spline points. |
| Clear | Clears all generated barrier splines and mesh. |
| Create Runtime Growth Actor | Export barrier spline data to a runtime growth actor for seal and unseal playback. |
| Open Documentation | Open the Procedural Barrier Generator documentation. |
| Setting | Description |
|---|---|
| Root | Root scene component for the actor. <span class="w3-text-grey">(Read-only, Blueprint read-only)</span> |
| Opening Volume | Defines the opening or region used by the barrier generator. <span class="w3-text-grey">(Read-only, Blueprint read-only)</span> |
| Generated Mesh Component | Primary dynamic mesh component used to display the generated result in-editor. <span class="w3-text-grey">(Read-only, Blueprint read-only)</span> |
| Strands Container | Container for generated barrier strand splines. <span class="w3-text-grey">(Read-only, Blueprint read-only)</span> |
| Setting | Description |
|---|---|
| Preview Proc Mesh Component | Editor preview procedural mesh component used for preview and solo export visualization. <span class="w3-text-grey">(Read-only, Blueprint read-only)</span> |
| Setting | Description |
|---|---|
| Placement Preview Billboard | Billboard used to show actor placement/orientation in the editor. <span class="w3-text-grey">(Read-only, Blueprint read-only)</span> |
| Setting | Description |
|---|---|
| Pattern | Barrier strand generation style. Curtain = mostly vertical, Lattice = adds lateral links, Organic = irregular web. |
| Anchor Mode | Where primary strands are anchored around the opening. |
| Endpoint Mode | How primary strands choose their targets in the opening. |
| Expert Mode | Show advanced controls throughout the barrier details panel. |
| Setting | Description |
|---|---|
| Random Seed | Random seed for deterministic barrier generation. |
| Setting | Description |
|---|---|
| Seal Coverage | Overall blocked coverage. Lower values intentionally leave larger holes. |
| Setting | Description |
|---|---|
| Gap Noise | Randomly perturbs strand spacing to create uneven openings and gaps. |
| Sag Amount | Downward sag in cm applied to generated strands. |
| Strand Noise | Random point jitter in cm for each generated strand point. |
| Setting | Description |
|---|---|
| Strand Count | Base number of primary strands before coverage filtering. |
| Setting | Description |
|---|---|
| Cross Link Density | Controls how many cross-links connect nearby strands. |
| Target Segment Length | Target spacing in cm between generated spline points. |
| Setting | Description |
|---|---|
| Strand Thickness | Starting strand radius in cm. |
| Setting | Description |
|---|---|
| Strand Taper | Per-strand taper from base to tip. |
| Strand Tip Taper Multiplier | Additional taper multiplier at strand tips. |
| Cross Link Thickness Scale | Thickness multiplier for cross-link strands relative to primaries. |
| Min Generated Radius | Global minimum radius clamp in cm. |
| Use Advanced Taper Curve | Enable advanced taper curve shaping. |
| Taper Curve Power | Power for advanced taper shaping. |
| Enable Organic Thickness Variation | Enable organic thickness variation along strands. |
| Organic Thickness Noise Strength | Strength of organic thickness noise. |
| Organic Thickness Noise Frequency | Frequency of organic thickness noise along strands. |
| Use Length Based Thickening | Scale strand thickness based on strand length. |
| Length Thickness Scale | How much longer strands thicken relative to shorter strands. |
| Enable Junction Bulging | Enable localized bulging near authored junction distances. |
| Junction Bulge Strength | Bulge multiplier around junction zones. |
| Junction Bulge Distance | Distance in normalized spline space over which bulging fades. |
| Setting | Description |
|---|---|
| Enable Hierarchical Flow Inheritance | Use a dedicated shading/UV flow frame and parent-attachment inheritance for strand continuity. |
| Use Absolute Tree Flow UV | Encode UV1.y as absolute accumulated distance across the parent-child strand hierarchy instead of restarting per strand. |
| Setting | Description |
|---|---|
| Junction Flow Blend Distance Cm | Distance from a child strand start over which shading orientation/phase eases from parent-aligned values into local strand values. |
| Shading Flow History Window | History window used only by the shading frame. Larger values produce calmer flow. |
| Shading Flow Max Forward Delta Deg | Maximum shading-frame forward rotation per ring in degrees. Lower values reduce abrupt flow pivots. |
| Shading Flow Max Seam Delta Deg | Maximum seam-phase rotation per ring in degrees for the shading frame. |
| Shading Flow Surface Blend Strength | Support-normal blend strength for shading frame orientation. Keep low for stable flow. |
| Curvature Adaptive Threshold | Curvature-adaptive sampling threshold used for authored frame and ring placement. Lower values increase samples in curved areas. |
| Setting | Description |
|---|---|
| Barrier Material | Material assigned to generated barrier mesh. |
| Setting | Description |
|---|---|
| Tube Radial Segments | Radial subdivisions per tube ring. |
| Tube Axial Subdivisions | Multiplier for axial sample density per authored spline segment (1 = baseline). |
| Cap Tube Ends | Close strand start/end with cap geometry. |
| Tube End Cap Taper | Tip cap taper amount. |
| Smoothing Type | Optional smoothing for generated barrier mesh. |
| Smoothing Iterations | Smoothing iteration count. |
| Smoothing Strength | Smoothing strength. |
| Smooth Boundary Vertices | Allow smoothing to move mesh boundary vertices. |
| Preserve Junction Vertices | Preserve attachment/junction vertices during smoothing. |
| Setting | Description |
|---|---|
| Bake Growth Animation Data | Bake per-vertex growth timing into UV3 for runtime seal/unseal playback. |
| Runtime Export Quality | Controls authored-frame sample density in runtime export data. Full keeps all authored samples. |
| Setting | Description |
|---|---|
| Primary Growth Fraction | Fraction of timeline allocated to primary strands. |
| Cross Link Growth Fraction | Fraction of timeline allocated to cross-link strands. |
| Setting | Description |
|---|---|
| Generated Asset Folder | Folder path where generated growth data assets will be saved. |
| Export Scope | Selects which strand scope is used for runtime export. |
| Export Tier Selection | Tier used when export scope is set to Selected Tier. |
| Export Spline Selection | Optional single strand selection for export. 'All Splines' exports the full generated barrier. |
| Export Ancestor Chain As Combined Asset | When exporting branch + ancestors, also include one combined runtime export chain. |
| Export Ancestor Chain As Separate Assets | Reserved for parity with root/vine export controls. |
| Setting | Description |
|---|---|
| Auto Rebuild In Editor | Automatically regenerate the barrier in the editor when settings change. |
| Auto Rebuild Debounce Seconds | Delay in seconds before auto-rebuild triggers after an editable change. |
| Draw Debug Frames | Draw debug frames/axes along generated spline points in the editor viewport. |
| Show Generated Strand Splines After Build | Keep generated strand splines visually emphasized after build for debugging. |
| Draw Debug Shading Flow | Draw shading-flow diagnostics (forward/up vectors plus seam/twist/flow labels) from the authored flow cache. |
| Shading Flow Debug Label Stride | Label stride for shading-flow debug text. Lower values draw more labels. |
| Setting | Description |
|---|---|
| Log Generation Stats | Logs branch/mesh counts after each build. |
| Log Spline Creation Details | Log detailed per-strand flow continuity values during mesh generation. WARNING: Very verbose. |
| Setting | Description |
|---|---|
| Debug Use Linearized Centerline For Meshing | Debug override: build mesh RM frames from a temporary linearized centerline sampled from authored spline points (bypasses spline interpolation tangents and tangent smoothing/clamping). |
| Debug Use Base Taper Only For Radius | Debug override: compute radius from base taper only (StartRadius * Lerp(1,Taper,Alpha), then clamp to MinGeneratedRadius). Disables advanced taper, tip taper, length thickening, organic noise, and junction bulging. |
| Debug Hard Bypass Ring Phase Continuity | Debug override: hard-bypass ring phase continuity. Forces SeamAngleRadians=0, TwistOffset=0, and UV1WrapPhaseOffset=0 so UV1 uses plain cylindrical wrap (UV1.x=BaseU, UV1.y=FlowDistance/100). |
| Debug Use UV0 For Tangent Computation | Debug override: compute mesh tangents from UV0 instead of UV1 flow unwrap. |
The Attraction Actor scatters attraction points either inside a box volume or across a target actor surface. Root and Vine actors can use those points to bias growth.
| Setting | Description |
|---|---|
| Distribute Attraction Points | Generate or refresh attraction points using the current scatter settings. |
| Clear Attraction Points | Remove all generated attraction points from this actor. |
| Get Attraction Points | Get the generated world-space attraction points. |
| Setting | Description |
|---|---|
| Root | Root scene component for the actor. <span class="w3-text-grey">(Read-only, Blueprint read-only)</span> |
| Scatter Bounds | Box component used by the Attraction Actor for area scattering. <span class="w3-text-grey">(Read-only, Blueprint read-only)</span> |
| Setting | Description |
|---|---|
| Placement Preview Billboard | Billboard used to show actor placement/orientation in the editor. <span class="w3-text-grey">(Read-only, Blueprint read-only)</span> |
| Point Preview Component | Editor preview component used to display generated attraction points. <span class="w3-text-grey">(Read-only, Blueprint read-only)</span> |
| Setting | Description |
|---|---|
| Scatter Mode | How attraction points are generated: inside this actor's box bounds or sampled from a target actor surface. |
| Target Actor | Actor whose static mesh surfaces will be sampled for attraction points. |
| Point Count | If greater than zero, use this exact point count instead of deriving it from point density. |
| Point Density Per10k Sq Cm | Fallback density used when PointCount is zero. Units are points per 10,000 cm^2 of sampled surface area. |
| Box Extent | Half extents of the box area used by Area / Water Surface mode. |
| Project Area Points Downward | When enabled, random XY samples from the box are projected downward onto the world using line traces. Useful for water bodies and terrain surfaces. |
| Projection Trace Distance | Trace distance used when projecting area-box points downward. |
| Surface Offset Cm | Offset applied along the sampled surface normal after the point is generated. |
| Random Seed | Seed used for deterministic point distribution. |
| Attraction Points | Current world-space attraction points used by PRG generators that reference this actor. |
Runtime Growth Actors consume exported Growth Data and play authored growth forward or backward in game or in editor preview.
| Setting | Description |
|---|---|
| Play Growth | Start growing forward from current progress. |
| Play Growth From Start | Start growing forward from 0.0. |
| Reverse Growth | Start shrinking (reversing) from current progress toward 0.0. |
| Reverse Growth From End | Start shrinking from 1.0 toward 0.0. |
| Stop Growth | Pause playback at the current progress. |
| Reset Growth | Reset progress to 0.0 and stop playback. Mesh becomes invisible. |
| Set Fully Grown | Instantly set growth to 1.0 (fully visible). Stops playback. |
| Set Growth Progress | Directly set the growth progress. Stops playback. |
| Play In Direction | Play in the specified direction from the current progress. |
| Build | Rebuild runtime preview mesh from GrowthData now, even when automatic editor preview rebuilds are disabled. |
| Setting | Description |
|---|---|
| Mesh Component | Primary runtime dynamic mesh component for committed grown geometry. <span class="w3-text-grey">(Read-only, Blueprint read-only)</span> |
| Proc Mesh Component | ProceduralMesh runtime render path for committed grown geometry. <span class="w3-text-grey">(Read-only, Blueprint read-only)</span> |
| Tip Mesh Component | Secondary runtime dynamic mesh component used for the active growth tip. <span class="w3-text-grey">(Read-only, Blueprint read-only)</span> |
| Tip Proc Mesh Component | ProceduralMesh runtime render path for the active growth tip. <span class="w3-text-grey">(Read-only, Blueprint read-only)</span> |
| Proximity Trigger | Sphere trigger used for proximity-driven playback. <span class="w3-text-grey">(Read-only, Blueprint read-only)</span> |
| Setting | Description |
|---|---|
| Placement Preview Billboard | Billboard used to show actor placement/orientation in the editor. <span class="w3-text-grey">(Read-only, Blueprint read-only)</span> |
| Setting | Description |
|---|---|
| Growth Data | The exported growth data asset from the authoring actor (Root, Vine, or Barrier). |
| Source Type | Whether this growth data was authored from a Root, Vine, or Barrier actor. |
| Source Actor Name | Name of the authoring actor that produced the currently assigned growth data. |
| Total Branches | Read-only branch count contained in the currently assigned growth data. |
| Setting | Description |
|---|---|
| Growth Duration | Total seconds for the full growth animation from 0%% to 100%%. |
| Playback Rate | Speed multiplier applied on top of GrowthDuration. 2.0 = twice as fast. |
| Easing | Easing function applied to the growth timeline. |
| Custom Easing Curve | Custom easing curve. X axis = raw progress (0-1), Y axis = eased progress (0-1). |
| Start Delay | Seconds to wait before the animation begins after PlayGrowth is called. |
| Auto Play On Begin Play | Automatically start growth animation on BeginPlay. |
| Loop | Automatically restart growth when it finishes. |
| Ping Pong | When looping, reverse direction each cycle (grow then shrink then grow...). |
| Growth Direction | Direction of growth when using AutoPlay or editor preview scrubbing. |
| Setting | Description |
|---|---|
| Use Hierarchical Runtime Branch Scheduling | Enable runtime-derived hierarchical branch timing. When disabled, playback uses authored BranchSpawnDelay/BranchGrowthDuration from GrowthData. |
| Log Runtime Branch Scheduling | Log authored and runtime branch scheduling values when playback caches are rebuilt. |
| Setting | Description |
|---|---|
| Log Branch Schedule Diagnostics | Log per-branch authored, attachment, and scheduled timing diagnostics after rebuilding runtime schedule. |
| Setting | Description |
|---|---|
| Editor Preview Progress | Preview the growth state in the editor. 1.0 = fully visible. Adjusting this in the editor will update the mesh preview. |
| Enable Editor Preview Rebuilds | Enable expensive editor preview mesh rebuilds in construction/property edits. Keep disabled for normal editing and enable only when intentionally previewing GrowthData. |
| Setting | Description |
|---|---|
| Use Proximity Trigger | Enable the built-in proximity sphere trigger. Disable this if you want to trigger growth from your own Blueprint/code. |
| Trigger Radius | Radius of the proximity trigger sphere (in cm). |
| Only Play Once | Only allow the growth animation to trigger once. |
| Trigger Direction | Direction to play when triggered by proximity. |
| Setting | Description |
|---|---|
| Growth Progress | Current growth progress from 0.0 (invisible) to 1.0 (fully grown). |
| Is Playing | Enables or disables this feature. |
| Is Reversing | Enables or disables this feature. |
| Has Completed | Enables or disables this feature. |
| Has Reversed | Enables or disables this feature. |
| Setting | Description |
|---|---|
| On Growth Finished | Fired when forward growth reaches 1.0. |
| On Growth Reversed | Fired when reverse growth reaches 0.0. |
| On Growth Started | Fired when playback starts (forward or reverse). |
| On Growth Stopped | Fired when playback is stopped via StopGrowth(). |
| On Growth Progress Changed | Fired every tick while playing. Passes current progress. |
| Setting | Description |
|---|---|
| Max Displacement Cm | Max displacement magnitude in cm. Must match your material's WPO displacement range. |
| Animation Shadow Mode | Shadow update mode during growth animation. |
| Shadow Update Interval | Minimum interval between shadow map updates during animation. |
| Cast Shadows | Whether this mesh casts shadows. Disable for best animation quality. |
| Cast Two Sided Shadows | Two-sided shadows reduce self-shadowing on thin tube geometry. |
| Disable Indirect Shadows During Animation | Disable indirect shadow casting to reduce Lumen shadow artifacts during animation. |