summaryrefslogtreecommitdiff
path: root/scene.hpp
diff options
context:
space:
mode:
authorquou <quou@disroot.org>2025-01-18 16:19:41 +1100
committerquou <quou@disroot.org>2025-01-18 16:19:41 +1100
commitcf2abfcfe34a9b3e4cf5af193d1f320374416267 (patch)
treec0f209ac730fa8a8b4564c818b3ce44fec59ffeb /scene.hpp
parent025510f2928e123d12a7d6d3574ca70fdd9d7717 (diff)
convert models and editor to use ecs
Diffstat (limited to 'scene.hpp')
-rw-r--r--scene.hpp39
1 files changed, 39 insertions, 0 deletions
diff --git a/scene.hpp b/scene.hpp
new file mode 100644
index 0000000..31f1cab
--- /dev/null
+++ b/scene.hpp
@@ -0,0 +1,39 @@
+#ifndef scene_hpp
+#define scene_hpp
+
+#include "maths.hpp"
+#include "video.hpp"
+#include "world.hpp"
+
+#include <tuple>
+
+struct Arena;
+struct Camera;
+struct Model_Instance;
+struct Model_Scene;
+struct World;
+
+struct Transform {
+ m4f mat;
+};
+
+struct C_Model {
+ Model_Instance* i;
+};
+
+void update_scene(
+ Model_Scene& ms,
+ Device* dev,
+ const Camera& cam,
+ World& w
+);
+std::pair<Entity_Id, int> scene_pick(
+ World& world,
+ const Camera& cam,
+ int w,
+ int h,
+ int mx,
+ int my
+);
+
+#endif