DLG
v1.3.0Summary
DLG (Differential Line Growth) is a GPU-accelerated simulation that creates organic branching line patterns through iterative edge subdivision based on neighbor proximity. This operator generates complex, brain coral-like structures by splitting edges when vertices become too crowded, allowing the line to grow and fold upon itself in intricate ways. The algorithm checks each vertex against its neighbors within a maximum distance, and subdivides edges when density thresholds are exceeded, creating natural-looking growth patterns.
The simulation operates on line strips (open or closed loops) and can optionally use curvature information to influence growth direction, creating more varied branching behavior. You control growth characteristics through parameters like growth strength (subdivision rate), max distance (neighbor search radius), max neighbors (crowding threshold), and vertex limits to cap complexity. The line is smoothed each iteration using gaussian or other filter types to maintain organic curves, with adjustable edge distance and smoothing effect controlling the final aesthetic.
DLG supports constraint systems to guide growth within specific regions: geometry constraints project vertices onto surfaces (creating growth confined to objects), while volume constraints use 2D/3D textures to define allowed growth spaces with force-based repulsion. Optional noise can replace the Mass attribute to create more varied growth patterns, with full control over perlin noise parameters including harmonics, amplitude, and animation. Bounding limits allow clamping growth to specific XYZ ranges, making DLG ideal for organic decoration, procedural lace patterns, coral structures, brain-like forms, and abstract linear art.
Parameters
LineupdatepopMaxvertsGrowthstrengthMassMaxdistanceDistributionNumhashbucketsMaxneighborsLinestripscloselinestripsOpenopenlinestripsFiltertypeFilterdistEffectInitializepulseStartpulsePlaySteppulseMintypeoffClampclampLooploopZig ZagzigzagMaxtypeoffClampclampLooploopZig ZagzigzagMinMin1Minimum ValueMin2Minimum ValueMin3MaxMax1Maximum ValueMax2Maximum ValueMax3CollisiontypenonePOP (Windows Only)popBoxboxPlaneplaneSpheresphereTorustorus3D SDF3dsdfT3Dt3d2D SDF2dsdfT2Dt2dCollisiondampingSolidProjectCollisionpopCollisionoffsetSizeSizexSizeSizeySizeSizezRadiusRadiusxRadiusRadiusyRadiusRadiuszCornerradiusCollisontopUsecustomboundsLowerboundsLowerboundsxLower BoundsLowerboundsyLower BoundsLowerboundszUpperboundsUpperboundsxUpper BoundsUpperboundsyUpper BoundsUpperboundszXordsrtScale Translate RotatestrRotate Scale TranslaterstRotate Translate ScalertsTranslate Scale RotatetsrTranslate Rotate ScaletrsRordxyzRx Rz RyxzyRy Rx RzyxzRy Rz RxyzxRz Rx RyzxyRz Ry RxzyxTTxTranslateTyTranslateTzRRxRotateRyRotateRzSSxScaleSyScaleSzPPxPivotPyPivotPzScaleDisplaygeoDisplaycolorDisplaycolorrDisplay ColorDisplaycolorgDisplay ColorDisplaycolorbApplynoiseTypeperlin2dPerlin 3D (GPU)perlin3dPerlin 4D (GPU)perlin4dSimplex 2D (GPU)simplex2dSimplex 3D (GPU)simplex3dSimplex 4D (GPU)simplex4dSeedPeriodHarmonSpreadGainAmpExpOffsetAnimateFreeextragpumemInputs
POPPOPTOPOutputs
POP