splat
The step that draws every agent into the shared canvas, one variant per kind of agent.
splat: { orientedWorld, pointWorld, volume, relief }
Import sim from shaders/std and use sim.agentRender.splat.
renderAgents pairs each with its resolve; reach for splat alone when you need another pairing.
Example
splat: {kernel: splat.orientedWorld(simLayout, {shape: 'arrow', res: 1024, splatRCap: 16, heading: 'velocity', agitation: 'buffer', comet: true, name: 'boidsSplat'}), threads: 'agents'}
Tip.
reliefdispatches over a 2D grid (threads: 'grid'); the other three dispatch overagents.
Members
splat.orientedWorld— Agents with a heading: arrows, streaks, squares, dots or comets drawn along the way they point.splat.pointWorld— Round motes with a live softness, placed, brightened and sized bypointSlotparts.splat.volume— A 3D swarm in perspective, recording speed for the ramp resolve.splat.relief— Particles standing on an image, drawn in the child's color through a camera.
See also
resolve— The step that turns the shared canvas into the output picture and clears it for the next frame.renderAgents— How the agents are drawn, as one declared part: a splat (each agent stamps its shape into a shared canvas) paired with the matching resolve (the canvas becomes the output picture).pointSlot— The three parts a round mote is drawn with: where it sits (orbitalPlace), how bright it is (twinkleBrightness) and how big it is (presenceRadius).