libmx2 2.2.1
C++20 multimedia and game-engine library (SDL2 / OpenGL / Vulkan)
Loading...
Searching...
No Matches
vk_model.hpp File Reference

Vulkan 3-D model loader and GPU buffer manager. More...

#include "config.h"
#include <vulkan/vulkan.h>
#include "exception.hpp"
#include <vector>
#include <string>
#include <fstream>
#include <sstream>
#include <stdexcept>
#include <cstring>
#include <unordered_map>
#include <functional>
#include <iostream>
#include "util.hpp"
Include dependency graph for vk_model.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  mx::VKVertex
 Per-vertex data uploaded to the Vulkan vertex buffer. More...
struct  mx::VKVertexHash
 Hash functor for VKVertex, suitable for use in unordered_map. More...
struct  mx::SubMesh
 A range of indices within the shared index buffer, with its own texture. More...
struct  mx::MXMaterial
 Parsed Wavefront MTL material properties. More...
class  mx::MXModel
 Vulkan mesh loader and GPU resource manager. More...

Namespaces

namespace  mx

Detailed Description

Vulkan 3-D model loader and GPU buffer manager.

Parses a Wavefront OBJ-format mesh, uploads vertex and index data to device-local Vulkan buffers, and provides a draw call that records bind/draw commands into a command buffer.

Definition in file vk_model.hpp.