mesh class specifically defined with vulkan implementations for specific primitives TODO: Whenever we load in a texture that will be laucnhed asyncronously More...
#include <mesh.hpp>
Public Member Functions | |
| mesh (std::span<::vk::vertex_input > p_vertices, std::span< uint32_t > p_indices) | |
| mesh (const std::filesystem::path &p_filename, bool p_flip=false) | |
| void | reload_mesh (const std::filesystem::path &p_path) |
| Reload mesh vertices and indices when requested. | |
| void | draw (const VkCommandBuffer &p_command_buffer) |
| void | destroy () |
| void | add_diffuse (const std::filesystem::path &p_path) |
| Loading single texture with specified std::filesystem::path. | |
| void | add_specular (const std::filesystem::path &p_path) |
| ::vk::sample_image | diffuse () const |
| ::vk::sample_image | specular () const |
| bool | loaded () const |
| bool | diffuse_loaded () const |
| bool | specular_loaded () const |
| void | set_flip (bool p_flip) |
mesh class specifically defined with vulkan implementations for specific primitives TODO: Whenever we load in a texture that will be laucnhed asyncronously
mesh class will contain metadata needed by vulkan specifications Ways to communicate through vulkan by only supplying information needed to update this mesh
Represents a renderable object – supporting various material types, etc TODO - For now we have a map<name: string, material_source>, this should be expanded to a proper material system for blending various materials
|
inline |