8#include "components/PathUtils.hpp"
9#include "components/AssetTypes.hpp"
15#define SDL_MAIN_HANDLED
29 glm::vec2
uv = glm::vec2(-100000.0f);
34 std::vector<Vertex> vertices;
35 std::vector<uint32_t> indices;
37 std::vector<glm::vec3> triangleCenters;
42 std::vector<Submesh> submeshes;
66 void processScene(
const aiScene* scene,
const std::string& textureBaseDir);
This class provides abstraction of file system needed for loading packed and unpacked assets.
Mesh data structure for loading and managing mesh data.
void loadFromFile(const std::string &path, VirtualFileSystem *vfs)
Loads mesh data from a file using the Virtual File System.
void processScene(const aiScene *scene, const std::string &textureBaseDir)
Internal helper to convert an Assimp aiScene into VEX Submesh structures.
void loadFromRawFile(const std::string &relativePath)
Loads a mesh directly from the physical disk, bypassing the VFS.
Submesh structure for mesh data, its made like this cause some file formats hold multiple meshes in o...
Vertex structure for mesh data.
glm::vec2 uv
UV coordinates for texture mapping but initialized to (-100000, -100000) for shader use....
Specific wrapper for Meshes.
Specific wrapper for Textures.