28 void SetMaterial(
const Material & material);
29 bool HasMaterial()
const;
30 const Material & GetMaterial()
const;
31 virtual void Draw() = 0;
39 virtual vc::Error __LoadMeshFromCurrentData() = 0;
43 std::vector<vcm::VertexPos> _positions;
44 std::vector<vcm::VertexNormal> _normals;
45 std::vector<vcm::VertexColor> _colors[8];
46 std::vector<vcm::VertexUV> _uvs[8];
47 std::vector<uint32_t> _indices;
48 std::vector<vcm::VertexTangent> _tangents;
49 std::vector<vcm::VertexBitangent> _bitangents;
66 _impl->As<
MeshImpl>()->SetMaterial(material);
74 return _impl->As<
MeshImpl>()->HasMaterial();
82 return _impl->As<
MeshImpl>()->GetMaterial();
Base class for graphics plugin objects.
Definition GraphicsPluginObject.h:80
Contains all the mesh's data and is the main high-level interface for the user.
Definition Mesh.h:56
void Draw() const
Draws the mesh.
Definition Mesh.h:88
bool HasMaterial() const
Checks if the mesh has a Material assigned.
Definition Mesh.h:73
const Material & GetMaterial() const
Returns the Material assigned to the mesh.
Definition Mesh.h:81
void SetMaterial(const Material &material)
Assigns Material to mesh.
Definition Mesh.h:65
Container for the PluginObjectImplWrapper Important to avoid it from loading the PluginObjectImpl if ...
Definition PluginObject.h:111
Interface for the PluginObject different implementations.
Definition PluginObject.h:56
Wrapper for the PluginObjectImpl, inherited by classes like Model or Mesh to make them usable as comp...
Definition PluginObject.h:76
Contains the entirety of the code of the VenomEngine project.
Definition Config.h:13