39 class GraphicsUpdateArguments;
A bitset that stores 8 bits (elements with only two possible values: 0 or 1, true or false,...
Definition BitFlag.hpp:62
The equivelent of std::vector but with a bit more control. The basic array unit of the library.
Definition Buffer.hpp:59
Provides a constant, unmodifiable pointer that has shared ownership of a dynamically allocated object...
Definition GraphicsPipeline.h:42
A hash-based key-value store, useful for quick associative lookups.
Definition Dictionary.h:59
Provides a modifiable pointer that has shared ownership of a dynamically allocated object.
Definition Pointer.hpp:319
Manages vertex buffers for the OpenGL engine.
Definition GLESBufferManager.h:44
DynamicPointer< GraphicsBuffer > m_index_buffer
Definition GLESBufferManager.h:71
void updateBuffer(const Scene &scene, GraphicsUpdateArguments &args)
Definition GLESBufferManager.cpp:20
DynamicPointer< GraphicsBuffer > indexBuffer() const
Definition GLESBufferManager.cpp:332
GLESVertexManager(const GLESVertexManager &m_pipeline)=delete
void updateVertexBuffer(const Scene &scene, GraphicsUpdateArguments &args, VertexProperty property)
Definition GLESBufferManager.cpp:73
ConstPointer< GraphicsBuffer > getRenderBuffer(const Scene &scene, const String &channel) const
Definition GLESBufferManager.cpp:351
void createPipeline(GraphicsUpdateArguments &args)
Definition GLESBufferManager.cpp:343
Time lastDependencyUpdate() const
Definition GLESBufferManager.h:49
void updateExtraBuffer(GraphicsUpdateArguments &args, const String &extra_property)
Definition GLESBufferManager.cpp:208
DynamicPointer< GraphicsBuffer > m_vertex_buffer[cast< uint04 >(VertexProperty::BitFlag)+1]
Definition GLESBufferManager.h:73
Time m_last_push_update_time
Definition GLESBufferManager.h:77
void updateIndexBuffer(const Scene &scene, GraphicsUpdateArguments &args)
Definition GLESBufferManager.cpp:43
BitFlag vertexFlags() const
Definition GLESBufferManager.h:60
bool m_needs_pipeline_update
Definition GLESBufferManager.h:79
DynamicPointer< GLESGraphicsDevice > m_device
Definition GLESBufferManager.h:70
Time m_last_updated_time
Definition GLESBufferManager.h:76
void updateUniformBuffer(GraphicsUpdateArguments &args)
Definition GLESBufferManager.cpp:112
Buffer< DynamicPointer< OpenGLBuffer > > getRenderBuffers(GraphicsUpdateArguments &args, const String &extra_property) const
Definition GLESBufferManager.cpp:283
UUID m_scene
Definition GLESBufferManager.h:75
UUID scene() const
Definition GLESBufferManager.h:64
GLESVertexManager(const DynamicPointer< GLESGraphicsDevice > &device)
Definition GLESBufferManager.cpp:6
BitFlag m_vertex_flags
Definition GLESBufferManager.h:78
bool m_needs_index_buffer_update
Definition GLESBufferManager.h:80
Time lastUpdateTime() const
Definition GLESBufferManager.h:50
DynamicPointer< GraphicsBuffer > m_vertex_flags_buffer
Definition GLESBufferManager.h:72
void commit()
Definition GLESBufferManager.cpp:205
void setScene(const Scene &scene)
Definition GLESBufferManager.cpp:200
uint04 vertexSize() const
Definition GLESBufferManager.h:63
Dictionary< String, DynamicPointer< GraphicsBuffer > > m_extra_properties
Definition GLESBufferManager.h:74
~GLESVertexManager()
Definition GLESBufferManager.cpp:14
Definition GraphicsUpdateArguments.h:40
The core String class for the software.
Definition String.h:47
Represents a timestamp with utilities for manipulation and conversion.
Definition Time.h:54
A universally unique identifier (UUID) is a 128-bit number used to identify information in computer s...
Definition UUID.h:62
VertexProperty
Definition DesignObjectBase.h:52
uint32_t uint04
-Defines an alias representing a 4 byte, unsigned integer -Can represent exact integer values 0 throu...
Definition BaseValues.hpp:115
constexpr t_to cast(const Angle< t_from > &value)
Definition Angle.h:510