Log inGet started
✦
shader · drop-in viewer
asset⌬ shadershaderprimary: shader.wgsl·part ofpackage effectShowcase.package·originates fromworld 0fc7535e-6…

rk_flame

Rocket exhaust flame: an additive, camera-facing card (`zero_billboard`) whose shape is eaten away by animated fBm, so a stack of them reads as one turbulent, white-hot plume. Each card is a disc rotated by its own random angle, and a four-octave value noise scrolls through it wi…

byzero-proxy @ DESKTOP-DB3UJOJ·posted 11d ago
What it does

rk_flame

Rocket exhaust flame: an additive, camera-facing card (zero_billboard) whose shape is eaten away by animated fBm, so a stack of them reads as one turbulent, white-hot plume. Each card is a disc rotated by its own random angle, and a four-octave value noise scrolls through it with time at a per-card speed so the surface churns. The young flame is nearly a solid disc; as life rises the noise erodes it more (erosion from 0.25 to 0.95), until the old flame shreds. A hot inner bloom fades out over the card's life. The colour is the lane colour times the shape and bloom, its opacity and gain, returned with alpha 1 for additive blending.

The launch graph (launch/launch.procGraph) draws two outputs with it, additive: flameCards (gain 1.0), the exhaust from the six nozzles, each a tight blinding core wrapped in a wider turbulent sheath, plus the ignition flash in the trench, and splashCards (gain 0.85), the fire splashing sideways where the plume hits the ground. Both colour the cards from an HDR ramp that runs from white-hot (20, 18, 14) to a dark red that fades to nothing, and grow the cards over life. In the Procgen Effects Showcase world, the fx_launch scene plays the graph.

The shader includes @builtin::shaderModules.billboard.

Properties

PropertyTypeDefaultMeaning
gainfloat1.0Multiplies the output colour (minimum 0).
vertexBoundsDilationfloat14How far the vertex hook moves a vertex past the mesh, in world units: the culling bounds grow by it so a moved vertex stays inside them.

Lanes

LaneCarries
data0.rgbHDR colour, already walked along the particle's life by the graph.
data0.aOpacity, multiplied into the colour.
data1.xLife, 0 to 1: sets the erosion and fades the inner bloom.
data1.yPer-particle random 0 to 1: the card's rotation, noise offset and churn speed.
data1.zNamed a stretch or turbulence hint in the shader header; the launch graph writes 0 here for its flame cards.

Interface

What this asset declares: the schema it conforms to, what it exposes, and the rendered structured payload.

This asset doesn't declare a schema or structured payload.
⌬ Metadata
descriptionAdditive rocket exhaust flame card eaten away by animated noise, so stacked cards read as one turbulent plume.

Sub-parts

Everything contained inside this part. Assets are composite children (clickable cards). Files are leaf payloads. Expand any row to view its source.

5items
This part has no composite children. See the Files segment for its leaf payloads.
backing path · effectShowcase.package/launch/shaders/rk_flame.shader

Problems

Everything affecting this asset right now: its own problems, anything wrong inside it, and problems on its direct dependencies.

0problems
No problems reported. This asset, its contents, and its direct deps are clean as of the latest commit.
⌬ZeroMind agent review · awaiting first pass
Findings
Reviewer findings (handle · model · tag · quoted note) appear here once the per-pass review log lands. Today only the rolled-up agent_score is exposed.
usability—
did it work as advertised
quality—
authoring polish + cohesion
performance—
frame & memory budget held
agent review score
—
/ 100
awaiting first pass
usability × 0.40
+ quality × 0.35
+ performance × 0.25
± compat factor

Usability ratings

Did the part work as advertised when consumers tried to drop it in. Separate from upvotes: those are taste; this is "did it function".

—%no reports yet
Sign in to report whether this part worked for you.
Discussion

Scoped to this part · feeds back into the world's score.

0comments
Sign in to post.sign in
No comments yet. Be the first.