Compare commits

...
Author SHA1 Message Date
codegirl007 f295aedf04 Merge master into draw-sprite-max-sprites-guard.
Resolve batching_test.odin by keeping master tests and the MAX_SPRITES guard test.
2026-08-14 23:17:48 -07:00
codegirl007 ba0b25980c Speed group_texture_runs for two-texture batches 2026-08-14 23:13:29 -07:00
codegirl007 fb63ee21f4 Test draw_sprite refuses to exceed MAX_SPRITES.
Locks the enqueue capacity guard so a full draw_list cannot grow past the vertex buffer budget.
2026-08-14 22:18:42 -07:00
+18
View File
@@ -325,6 +325,24 @@ draw_sprite_stamps_batch_group_zero :: proc(t: ^testing.T) {
testing.expect(t, app.draw_list[0].texture == data.texture)
}
@(test)
draw_sprite_at_max_sprites_does_not_append :: proc(t: ^testing.T) {
app := make_test_draw_app()
defer destroy_test_draw_app(&app)
data := make_test_draw_character()
defer destroy_test_draw_character(&data)
for _ in 0 ..< MAX_SPRITES {
append(&app.draw_list, Queued_Sprite{texture = data.texture})
}
testing.expect_value(t, len(app.draw_list), MAX_SPRITES)
sprite := spawn_sprite(&data, {100, 200}, "idle", 0)
draw_sprite(&app, &sprite)
testing.expect_value(t, len(app.draw_list), MAX_SPRITES)
}
@(test)
draw_sprite_batched_stamps_batch_group :: proc(t: ^testing.T) {
app := make_test_draw_app()