Fling Engine
0.00.1
Fling Engine is a game engine written in Vulkan
|
A model represents a 3D model (.obj files for now) with vertices and indecies. More...
#include <Model.h>
Inherits Fling::Resource.
Public Member Functions | |
Model (Guid t_ID) | |
Construct a new model object. More... | |
~Model () | |
FORCEINLINE Buffer * | GetVertexBuffer () const |
FORCEINLINE Buffer * | GetIndexBuffer () const |
FORCEINLINE const std::vector< Vertex > & | GetVerts () const |
FORCEINLINE const std::vector< UINT32 > & | GetIndices () const |
FORCEINLINE UINT32 | GetIndexCount () const |
FORCEINLINE UINT32 | GetVertexCount () const |
bool | CmdRender (const VkCommandBuffer &t_CmdBuf) const |
![]() | |
Resource (Fling::Guid t_ID) | |
virtual | ~Resource ()=default |
Fling::Guid_Handle | GetGuidHandle () const |
Get GUID handle (just an int) for this resources guid. More... | |
std::string | GetGuidString () const |
Get the human-readable string representation of this GUID. More... | |
std::string | GetFilepathReleativeToAssets () const |
Returns the full file path that is relative to the assets path based on the GUID of this resource. More... | |
Static Public Member Functions | |
static std::shared_ptr< Fling::Model > | Create (Guid t_ID) |
static VkIndexType | GetIndexType () |
Private Member Functions | |
void | LoadModel () |
Load this model from Tiny Obj loader. More... | |
Private Attributes | |
std::vector< Vertex > | m_Verts |
std::vector< UINT32 > | m_Indices |
Buffer * | m_VertexBuffer = nullptr |
Buffer * | m_IndexBuffer = nullptr |
Additional Inherited Members | |
![]() | |
Fling::Guid | m_Guid |
A model represents a 3D model (.obj files for now) with vertices and indecies.
A model has a vertex and index buffer and can be bound to a command buffer.
|
explicit |
Construct a new model object.
t_ID | The GUID that represents the file path to this model |
Fling::Model::~Model | ( | ) |
bool Fling::Model::CmdRender | ( | const VkCommandBuffer & | t_CmdBuf | ) | const |
|
static |
|
inline |
|
inline |
|
inlinestatic |
|
inline |
|
inline |
|
inline |
|
inline |
|
private |
Load this model from Tiny Obj loader.
|
private |
|
private |
|
private |
|
private |