summaryrefslogtreecommitdiff
path: root/src/render_assets.h
diff options
context:
space:
mode:
authorChuyan Zhang <chuyan@ucsb.edu>2024-10-03 19:49:47 -0700
committerChuyan Zhang <chuyan@ucsb.edu>2024-10-03 19:49:47 -0700
commite59529d3f55b9128f798a7f02a7288f96bdaf9a4 (patch)
treeabdbb571e1dfa46ea85921135434bdfc6a6d11b9 /src/render_assets.h
parent4bb8fd5ac5c07e8756ae097e7f5d7f34697bc914 (diff)
downloadiris-e59529d3f55b9128f798a7f02a7288f96bdaf9a4.tar.gz
iris-e59529d3f55b9128f798a7f02a7288f96bdaf9a4.zip
use xmake build & scene load wip
Diffstat (limited to 'src/render_assets.h')
-rw-r--r--src/render_assets.h38
1 files changed, 38 insertions, 0 deletions
diff --git a/src/render_assets.h b/src/render_assets.h
new file mode 100644
index 0000000..763bf76
--- /dev/null
+++ b/src/render_assets.h
@@ -0,0 +1,38 @@
+#pragma once
+
+#include <cstdint>
+#include <string>
+#include <vector>
+#include <glm/glm.hpp>
+
+namespace iris {
+
+template<typename T>
+struct Mesh {
+ std::string name;
+ std::vector<T> vertices;
+ std::vector<uint32_t> indices;
+};
+
+struct Material {
+
+};
+
+struct Texture {
+};
+
+struct Camera {
+ glm::vec3 position;
+ glm::vec3 direction;
+ glm::vec3 up;
+};
+
+struct Scene {
+ std::vector<Mesh<float>> meshes;
+ std::vector<Material> materials;
+ std::vector<Texture> textures;
+
+ Camera camera_position;
+};
+
+} // namespace iris \ No newline at end of file