POPX

Mesh Fill

v1.3.0
Simulations

Summary

Mesh Fill is a GPU-accelerated simulation that drives particles to move through mesh volumes or surfaces using a density-guided algorithm. The simulation guides particles through density fields generated from input geometry, creating organic movement patterns as particles navigate the space.

Supports both mesh-based and volume-based inputs with automatic voxelization for mesh geometry. You can control whether particles move through the entire interior volume or along the surface boundary, with adjustable radius controlling movement constraints. Filtering parameters allow smoothing of the velocity field for more uniform or organic particle motion. The Seed page controls optional particle spawning from density regions when enabled.

Mesh Fill outputs the moving point cloud and optionally generates trail geometry showing particle movement paths through the volume. The trails visualize the exploration patterns as particles navigate the density field over time. The simulation includes standard playback controls (initialize, start, play) for controlling the fill progression. This makes Mesh Fill ideal for creating organic growth animations, volumetric exploration effects, particle flow visualizations, or animated particle-based mesh representations.

Parameters

Switch to Volume InputSwitchtovol
Use 3D texture input instead of mesh geometry for density field.
Display BoundsDisplaybounds
Visualize the voxelization volume bounds as a bounding box.
Max Axis ResolutionMaxaxisres
Voxel grid resolution for mesh-to-volume conversion (higher = more detail).
Normalize Input MeshNormalizeinputmesh
Scale input mesh to unit size before voxelization.
Lower BoundsLowerbounds
Minimum XYZ coordinates of the voxelization volume.
Lower BoundsLowerboundsxLower BoundsLowerboundsyLower BoundsLowerboundsz
Upper BoundsUpperbounds
Maximum XYZ coordinates of the voxelization volume.
Upper BoundsUpperboundsxUpper BoundsUpperboundsyUpper BoundsUpperboundsz
MarginMargin
Additional padding around the geometry bounds.
Get BoundsGetbounds
Automatically calculate bounds from input geometry.
Ray Direction ModeRaydirmode
Method for determining ray direction during voxelization.
Axis AlignedaxisCustom Directioncustom
Ray DirectionRaydir
Direction vector for ray casting when Ray Direction Mode is set to Constant.
Ray DirectionRaydirxRay DirectionRaydiryRay DirectionRaydirz
PrecisionPrecision
Texture precision for density field.
16-bit float32-bit float
Fill Surface OnlyFillsurface
Restricts particles to surface boundary instead of filling entire volume.
RadiusRadius
Particle spacing radius controlling packing density (smaller = tighter packing).
Filter SizeSize
Blur kernel size for density field smoothing.
Filter ScaleFilterscale
Multiplier for density field filtering iterations.
Continuous SimulationContinuoussim
Enables continuous simulation mode where particles keep moving after initial fill completes.
RetentionRetention
Amount of density retained between frames during continuous simulation.
Stop ThresholdStopthreshold
Density threshold below which the simulation stops filling.
Time StepTimestep
Controls simulation speed per frame (higher values = faster filling).
InitializeInitializepulse
Pulse to reset simulation and prepare density field.
StartStartpulse
Pulse to begin filling simulation from initialized state.
PlayPlay
Toggle continuous simulation playback.
Spawn From DensitySpawn
Enables spawning new particles from density field during simulation.
Seed CountSeedcount
Number of seed particles to spawn per frame when spawning enabled.
SeedSeed
Random seed for particle spawn positions.
Max AttemptsMaxattempts
Maximum spawn position attempts before giving up (prevents infinite loops).
Enable TrailsEnabletrails
Enables trail geometry generation showing particle movement paths.
LengthLength
Maximum trail length in frames (history buffer size).
Filter TypeFiltertype
Smoothing filter for trail curve (gaussian, catmull-rom, etc.).
Edge DistanceFilterdist
Distance metric for edge filtering along trail curves.
EffectEffect
Smoothing effect strength (0 = no smoothing, 1 = full effect).
End Points FixedEndpointsfixed
Prevents smoothing from moving trail endpoints.
Lookup TrailsLookuptrails
Samples the trails texture onto input geometry.
Apply BlurApplyblurtrails
Applies blur filtering to the trails texture before sampling.
Pre-ShrinkPreshrinktrials
Resolution reduction before applying blur for trails texture.
Filter SizeSizetrials
Blur kernel size for trails texture smoothing.
Lookup Filled VolumeLookupfilledvol
Samples the filled volume texture onto input geometry.
Output InvertedOutputinverted
Also outputs the inverted filled volume texture.
Apply BlurApplyblurvol
Applies blur filtering to the filled volume texture before sampling.
Pre-ShrinkPreshrinkvol
Resolution reduction before applying blur for filled volume texture.
Filter SizeSizevol
Blur kernel size for filled volume texture smoothing.
Lookup OffsetLookupoffset
Offset applied to lookup coordinates when sampling textures.
Lookup OffsetLookupoffsetxLookup OffsetLookupoffsetyLookup OffsetLookupoffsetz
Lookup ScaleLookupscale
Scale applied to lookup coordinates when sampling textures.
Lookup ScaleLookupscalexLookup ScaleLookupscaleyLookup ScaleLookupscalez
DebugDebug
Selects which texture to visualize for debugging.
NonenoneTrailstrailsFilled VolumefilledInverted Filled Volumeinverted
Free Extra GPU MemoryFreeextragpumem
Free memory that has accumulated when output memory has grown and shrunk.

Inputs

Input 0POP
Mesh to Fill
Input 1TOP
Volume to Fill
Input 2POP
Seed

Outputs

Output 0TOP
Trails
Output 1TOP
Filled Volume
Output 2TOP
Inverted Filled Volume
Output 3TOP
Velocity
Output 4TOP
Volume
Output 5POP
Seed
Output 6POP
Trails
Output 7POP
Mesh