Infinity Engine v0.6.20
C++ API Documentation
Loading...
Searching...
No Matches
Renderable.hpp
1#pragma once
2
3#include <Infinity/Types/Core/Data.hpp>
4#include <Infinity/Types/Core/Value.hpp>
5#include <Infinity/Types/Containers/Array.hpp>
6#include <Infinity/Types/Rendering/Mesh.hpp>
7#include <Infinity/Types/Rendering/Material.hpp>
8#include <Infinity/Types/Spatial/Transform.hpp>
9
11{
126 class INFINITY_API_PUBLIC Renderable : public Core::Data
127 {
128 public:
136
147
163
170
174 virtual ~Renderable();
175
176 std::unique_ptr<Core::Base> clone() const override;
177
183 const Infinity::Types::TypeID& typeId() const override;
184 };
185}
186
Dynamic contiguous container for homogeneous elements in the Infinity type system.
Definition Array.hpp:77
Base class for complex data types with memory wrapping and property support.
Definition Data.hpp:49
Complete 3D geometry definition with vertices, indices, and material partitioning.
Definition Mesh.hpp:135
Complete renderable object combining geometry, materials, and instancing.
Definition Renderable.hpp:127
Mesh mesh
Mesh geometry for this renderable.
Definition Renderable.hpp:135
Containers::Array< Material > materials
Array of materials applied to the mesh.
Definition Renderable.hpp:146
std::unique_ptr< Core::Base > clone() const override
Containers::Array< Spatial::Transform > instances
Array of transform instances for instanced rendering.
Definition Renderable.hpp:162
const Infinity::Types::TypeID & typeId() const override
Gets the TypeID for Renderable.
Definition IndexBuffer.hpp:9
Runtime type identifier for the Infinity type system.
Definition TypeID.hpp:71