Log inGet started
What it does

shockwaveRing

The pressure front a blast pushes out — a ring expanding across a surface from the point it went off, thinning and fading as it runs out to the radius it was given.

effects.play("@builtin::systems.effects.combat.shockwaveRing", {
    position = { 0, 0.05, 0 },
    params = { radius = 7, expansionRate = 22, normal = { 0, 1, 0 } },
})

The front is drawn on one plane the size of the widest the ring gets, lying across the normal it was given, and the ring's radius is a number on an instance-data lane. Nothing about the geometry grows: the expansion is a lane write per frame.

Parameters

ParameterTypeDefaultRangeWhat it changes
radiusnumber7.00.25 – 120.0How far the front runs before it has gone, in metres. Also the size of the card it is drawn on.
expansionRatenumber22.00.5 – 600.0How fast the front travels, in metres per second. The effect lasts radius / expansionRate.
thicknessnumber0.70.02 – 20.0Thickness of the front, in metres. It thins to 45% of this by the end.
colorcolor{1.0, 0.90, 0.72}linear 0..1Colour of the front. A blast wave runs pale gold, an energy pulse cyan.
normalvec3{0, 1, 0}world spaceThe normal of the surface the front runs across. The ring is drawn on the plane perpendicular to it.

Cost

<!-- cost: quoted verbatim from effect.yaml -->
gpuMsvramBytesmeasuredOn
0.010see effect.yaml

The size is what the effect's own backends report they hold at a representative instant — handle:stats().bytes — read identically on every engine, in every scene and on every repeat: the ring leases one piece of pooled geometry and holds no simulation state of its own, so it holds no bytes, and what it costs does not change with the radius. The span is the median of five interleaved idle/loaded windows of the frame's measured GPU pass sum, which read 0.000 ms with a spread of about 0.008 ms: the effect costs less GPU time than that instrument resolves, and 0.01 is the bound the reading supports.

What it draws with

AssetRole
combat/materials/combat_glowthe family's one additive material, drawing its ring form
combat/glowthe module that leases the card and writes its lanes

The annulus is a distance field in the card's own UV square and the wobble around its circumference is value noise from fx_noise, so no texture is sampled.

See also

  • @builtin::systems.effects.combat.explosion — the blast this is the front of.
  • guides { path: "topics/visual-effects" }.

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.

Sub-parts

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

0items
This part has no composite children. See the Files segment for its leaf payloads.
This part has no leaf payloads.

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.