• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

djeedai / bevy_hanabi
58%

Build:
DEFAULT BRANCH: main
Repo Added 18 Feb 2022 08:39PM UTC
Files 32
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

LAST BUILD ON BRANCH main
branch: SELECT
CHANGE BRANCH
x
  • No branch selected
  • another-pad
  • bevy16-binned-phase-items
  • buffer_id_invalid
  • event-count-expr
  • fix/billboard-example
  • gradient-fix
  • hidden-on-first-frame
  • hotfix/0.12.2
  • init-fill-dynamic-offsets
  • init-fill-source-offset
  • lightning-example
  • main
  • mark-cached-parent-info-as-changed
  • multiple-effects-in-one-buffer
  • on-spawn
  • orient-docs
  • resize-init-fill-dispatch
  • retry-if-effect-not-loaded
  • side-effecting-binary-operators
  • u/as-asset-id
  • u/b18
  • u/bevy16
  • u/bevy17
  • u/bgl
  • u/buffers
  • u/cargo
  • u/ci-examples
  • u/clamp
  • u/color-blend-mask
  • u/create-pipeline
  • u/debug-settings
  • u/demo
  • u/depth-stencil
  • u/dispatch-indirect-args
  • u/doc
  • u/drawargs
  • u/extract
  • u/fill-ready
  • u/firework
  • u/ifda
  • u/indirect-buffer
  • u/init
  • u/mesh-location
  • u/metadata
  • u/no-bundle
  • u/no-rand
  • u/no-z-layer-2d
  • u/ops
  • u/parent
  • u/prng_seed
  • u/prop-spawn-full
  • u/prop-vec3
  • u/properties
  • u/readme
  • u/reapply-444
  • u/retain
  • u/retain-mesh
  • u/revert-444
  • u/rgi
  • u/rustc189
  • u/sim-bind-group
  • u/slab-batch
  • u/sort-bind-off
  • u/spawner-index
  • u/spawner-loop
  • u/tex-bind
  • u/transitive-attrs
  • u/unused-field
  • u/warn
  • u/wasm
  • u/wasm-atomic
  • u/wi16
  • u/xtract

07 Mar 2026 02:04PM UTC coverage: 57.546% (-0.2%) from 57.75%
22800469877

push

github

web-flow
Batch spawners and properties (#525)

Bind the entire spawner and property arrays in all passes, instead of a
single entry. This removes the need to pad those structures. Access them
via an offset in the effect's own metadata.

Add a new `BatchInfo` struct holding the per-batch data. This clarifies
the responsibilites between this and `EffectMetadata`, the latter
holding per-effect (not per-batch) data.

Remove the `DispatchBufferIndices` component, which was used to track
the allocated entry for indirect compute dispatch. Instead, align those
allocations 1:1 with the GPU batch info allocations, which are
re-computed each frame.

Add a prefix sum pass before the update pass, which computes the prefix
sum of alive particles after the init pass. This is used to enable
batched update compute dispatch, where the number of compute threads
maps to the total number of alive particles in the batch. In that case,
we need to find which thread updates which particle of which batch,
using that prefix sum. Note that in this change, due to other
limitations still present, each effect instance is still in its own
batch (there's effectively no batching). Enabling full batching requires
more work, notably on the sort pass for ribbons, and the GPU-based init
pass with GPU events.

Change the allocation of spawners to occur after sorting. This ensures
all effects in a same batch have sequential allocations, which enables
accessing those spawners with a simple {offset + index} strategy.

Change the render pass to use the same bind group "spawner@2" than other
passes. This binds the property buffer, although in this change the
metadata buffer is still not available, so properties can't be used yet
in the render pass. The bind groups should be reviewed anyway because,
with batching approaching, and with the current change, assumptions
about frequency of changes is now wrong, and individual bindings should
be re-grouped in more suitable frequency-based groups.

Finally, the... (continued)

193 of 404 new or added lines in 7 files covered. (47.77%)

26 existing lines in 3 files now uncovered.

4793 of 8329 relevant lines covered (57.55%)

198.51 hits per line

Relevant lines Covered
Build:
Build:
8329 RELEVANT LINES 4793 COVERED LINES
198.51 HITS PER LINE
Source Files on main
  • Tree
  • List 32
  • Changed 10
  • Source Changed 0
  • Coverage Changed 10
Coverage ∆ File Lines Relevant Covered Missed Hits/Line

Recent builds

Builds Branch Commit Type Ran Committer Via Coverage
22800469877 main Batch spawners and properties (#525) Bind the entire spawner and property arrays in all passes, instead of a single entry. This removes the need to pad those structures. Access them via an offset in the effect's own metadata. Add a new `BatchInf... push 07 Mar 2026 02:14PM UTC web-flow github
57.55
22800193808 u/prop-spawn-full Merge 03943ec8f into 2103829dd Pull #525 07 Mar 2026 01:52PM UTC web-flow github
57.55
22798556496 u/prop-spawn-full Merge 811edc141 into 2103829dd Pull #525 07 Mar 2026 12:03PM UTC web-flow github
57.79
22798486531 u/prop-spawn-full Merge 9ec6a7dd3 into 2103829dd Pull #525 07 Mar 2026 11:55AM UTC web-flow github
57.79
22264614914 main feat(lightning): add vertical lightning example (#515) hello peoples in the discord seemed to like it https://discord.com/channels/691052431525675048/1036006050526142514/1452071425983905932 first time using hanabi, some things might not be opti... push 21 Feb 2026 09:30PM UTC web-flow github
57.75
22263909674 main Clean-up bind groups with Bevy utils (#524) Use the Bevy utils to shorten the bind group layout and bind group creation and make the code more readable. Rename all bind group GPU resources to `bg` and the layout ones to `bgl` to make them shorte... push 21 Feb 2026 08:44PM UTC web-flow github
57.75
22263661484 u/bgl Merge 8c2b17889 into db782db43 Pull #524 21 Feb 2026 08:26PM UTC web-flow github
57.75
21566577471 main v0.18.0 push 01 Feb 2026 04:56PM UTC djeedai github
58.35
21565652705 lightning-example Merge 3fbb7f85c into ea57ad23b Pull #515 01 Feb 2026 03:56PM UTC web-flow github
58.35
21565578469 main Update to Bevy v0.18 (#521) Thanks to @morgenthum for the original work. push 01 Feb 2026 03:48PM UTC web-flow github
58.35
See All Builds (899)
  • Repo on GitHub
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc