summaryrefslogtreecommitdiff
path: root/include/kalmia.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/kalmia.h')
-rw-r--r--include/kalmia.h62
1 files changed, 62 insertions, 0 deletions
diff --git a/include/kalmia.h b/include/kalmia.h
index 20e5f4f..524072b 100644
--- a/include/kalmia.h
+++ b/include/kalmia.h
@@ -63,6 +63,68 @@ typedef float ka_real_t;
#endif
+/**************** geometry types ****************/
+
+struct ka_float_array_t {
+ char *id;
+ size_t count;
+ ka_real_t *data;
+};
+
+
+struct ka_param_t {
+ char *name;
+ char *type;
+};
+
+
+struct ka_accessor_t {
+ size_t count;
+ size_t offset;
+ char *source;
+ size_t stride;
+
+ struct ka_param_t *param;
+ size_t param_count;
+};
+
+
+struct ka_technique_common_t {
+ struct ka_accessor_t accessor;
+};
+
+
+struct ka_source_t {
+ char *id;
+ struct ka_float_array_t float_array;
+ struct ka_technique_common_t technique_common;
+};
+
+
+struct ka_vertices_t {
+};
+
+
+struct ka_triangles_t {
+};
+
+
+struct ka_mesh_t {
+ struct ka_source_t *source;
+ size_t source_count;
+
+ struct ka_vertices_t vertices;
+
+ struct ka_triangles_t *triangles;
+ size_t triangles_count;
+};
+
+
+struct ka_geometry_t {
+ struct ka_mesh_t mesh;
+};
+
+
typedef ka_real_t ka_matrix_t[16];