#pragma once #include #include "animation.h" #include "util.h" #include "util_image.h" struct mesh_asset { uint asset_size; uint num_vertices; uint num_indices; mesh_asset* next; glm::mat4 model_transform; glm::vec3* vertices; uint* indices; glm::vec3* texture_coords; }; #define MAX_PATH_SIZE 256 struct render_asset { uint total_size; uint num_meshes; uint name_len; render_asset* next; char* filepath; mesh_asset* meshes; // NOTE: fixed sized array // NOTE: pointer to a texture in render_state->textures util_image* diffuse_texture; // FIXME: node_animation has a pointer to a render_object. need to decouple // that somehow //node_animation* node_anim; }; render_asset* assetLoadFromFile(const char* filename);