summaryrefslogtreecommitdiffhomepage
path: root/include/rodeo/collision_t.h
diff options
context:
space:
mode:
authorrealtradam <[email protected]>2023-05-15 19:03:19 -0400
committerrealtradam <[email protected]>2023-05-15 19:03:19 -0400
commit4e404fc9a0c9afdb24164d6d054b0edae52a515c (patch)
tree10820cc90dc6c31c28501c23df344c7d51bde6b8 /include/rodeo/collision_t.h
parent5e935512696c55b5005e997cfc4dab88ecdf8141 (diff)
downloadRodeoKit-4e404fc9a0c9afdb24164d6d054b0edae52a515c.tar.gz
RodeoKit-4e404fc9a0c9afdb24164d6d054b0edae52a515c.zip
prototyping interfaces for 2d collision system
Diffstat (limited to 'include/rodeo/collision_t.h')
-rw-r--r--include/rodeo/collision_t.h31
1 files changed, 31 insertions, 0 deletions
diff --git a/include/rodeo/collision_t.h b/include/rodeo/collision_t.h
new file mode 100644
index 0000000..e51386c
--- /dev/null
+++ b/include/rodeo/collision_t.h
@@ -0,0 +1,31 @@
+#pragma once
+
+// -- system --
+#include <stdint.h>
+#include <stdbool.h>
+
+typedef
+struct
+{
+ uint32_t id;
+ float x;
+ float y;
+ float dx;
+ float dy;
+ bool is_circle;
+ float width;
+ float height;
+}
+rodeo_collision_2d_world_item_t;
+
+int rodeo_collision_2d_item_cmp(
+ const rodeo_collision_2d_world_item_t* a,
+ const rodeo_collision_2d_world_item_t* b
+);
+
+#define i_val rodeo_collision_2d_world_item_t
+#define i_cmp rodeo_collision_2d_item_cmp
+#define i_type cvec_collision_2d_world_item
+#include "stc/cvec.h"
+
+typedef cvec_collision_2d_world_item rodeo_collision_2d_world_t;