aboutsummaryrefslogtreecommitdiff
path: root/src/phys/world.odin
diff options
context:
space:
mode:
authoriamcheeseman <[hidden email]>2026-01-15 13:51:07 -0500
committeriamcheeseman <[hidden email]>2026-01-15 13:51:07 -0500
commit4563dfa077e029fbefd192f087338d186155ebfc (patch)
tree4af1101f408081e74fc12cb372824b7e2d3e70d4 /src/phys/world.odin
parent3c640e0d8244f87fec9518a60c7e5e95713d7f78 (diff)
Debug mode; displays collision shapes
Diffstat (limited to 'src/phys/world.odin')
-rw-r--r--src/phys/world.odin11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/phys/world.odin b/src/phys/world.odin
index 189f0b0..15e7826 100644
--- a/src/phys/world.odin
+++ b/src/phys/world.odin
@@ -110,6 +110,17 @@ _get_body :: proc(h: Body_Handle, location := #caller_location) -> ^Body {
return &world.bodies[h.idx]
}
+iterate_bodies :: proc(it: ^int) -> (Body_Handle, bool) {
+ for it^ < len(world.bodies) {
+ if world.bodies[it^].handle.uses > 0 {
+ it^ += 1
+ return world.bodies[it^ - 1].handle, true
+ }
+ it^ += 1
+ }
+ return {}, false
+}
+
add_body :: proc(b: Body) -> Body_Handle {
handle: Body_Handle