41 class GraphicsUpdateArguments;
The equivelent of std::vector but with a bit more control. The basic array unit of the library.
Definition Buffer.hpp:56
Provides a constant, unmodifiable pointer that has shared ownership of a dynamically allocated object...
Definition GraphicsPipeline.h:42
Provides a modifiable pointer that has shared ownership of a dynamically allocated object.
Definition Pointer.hpp:320
Structure responsible for handling the OpenGL data surrounding a particular Material object.
Definition GLESMaterialManager.h:102
bool m_is_wireframe
Definition GLESMaterialManager.h:180
bool m_has_image_opacity
Definition GLESMaterialManager.h:176
void addMaterial(const Material &material)
bool hasOpacity() const
Definition GLESMaterialManager.h:118
bool m_use_model_color
Definition GLESMaterialManager.h:184
const GLESVertexUniformObject & vertexUniform() const
Definition GLESMaterialManager.h:112
bool m_needs_to_commit_vert_buffer
Definition GLESMaterialManager.h:172
GLESVertexUniformObject m_vert_uniform
Definition GLESMaterialManager.h:155
Time lastDependencyUpdate() const
Definition GLESMaterialManager.h:135
void updateShader(const Material &mat, const GraphicsUpdateArguments &args, DynamicPointer< GLESShaderManager > &shader_manager)
String getColorByChannel(GraphicsUpdateArguments &args) const
bool useNormalForTexture() const
Definition GLESMaterialManager.h:140
String getExtraPropertyChannel() const
Definition GLESMaterialManager.h:131
bool m_write_to_depth
Definition GLESMaterialManager.h:187
bool usesLayerColor() const
Definition GLESMaterialManager.h:123
static UUID MaterialID(const Material &material)
bool usesModelColor() const
Definition GLESMaterialManager.h:122
fltp04 fadeDistance() const
void setUniformVariables(const DynamicPointer< GLESShader > &shader)
Time m_last_push_update_time
Definition GLESMaterialManager.h:159
bool m_smooth_normals
Definition GLESMaterialManager.h:179
UUID m_id
Definition GLESMaterialManager.h:189
bool m_has_grid
Definition GLESMaterialManager.h:182
String m_image_address[cast< uint04 >(UVType::e_uv_size)]
Definition GLESMaterialManager.h:161
bool m_needs_to_commit_frag_buffer
Definition GLESMaterialManager.h:171
bool m_ignore_depth
Definition GLESMaterialManager.h:186
uint04 m_layer_number
Definition GLESMaterialManager.h:188
Vector< 3, Material::TileTextureMode > m_texture_tile_mode
Definition GLESMaterialManager.h:164
Buffer< Material > m_materials
Definition GLESMaterialManager.h:151
GLESVertexUniformObject getVertexUniformObject(const Material &material, const GraphicsUpdateArguments &args) const
bool m_needs_pipeline_update
Definition GLESMaterialManager.h:173
bool isDynamic() const
Definition GLESMaterialManager.h:121
Time m_last_updated_time
Definition GLESMaterialManager.h:157
bool needsToUpdateShader(const Material &material)
QOpenGLTexture * m_texture
Definition GLESMaterialManager.h:169
void updateUniformBuffer(GraphicsUpdateArguments &args)
GLESMaterialManager(const GLESMaterialManager &m_pipeline)=delete
uint04 getNumberOfImages(const GraphicsUpdateArguments &args) const
bool hasGrid() const
Definition GLESMaterialManager.h:109
bool m_has_opacity
Definition GLESMaterialManager.h:174
String m_extra_channel
Definition GLESMaterialManager.h:163
fltp04 m_depth_bias
Definition GLESMaterialManager.h:168
bool m_use_layer_color
Definition GLESMaterialManager.h:185
bool ignoreDepth() const
Definition GLESMaterialManager.h:119
bool m_is_dynamic
Definition GLESMaterialManager.h:181
bool isWireframe() const
Definition GLESMaterialManager.h:138
fltp04 depthBias() const
Definition GLESMaterialManager.h:125
bool needsToUpdateImage(const Material &material)
bool overrideCamera() const
Definition GLESMaterialManager.h:139
ConstPointer< GLESGraphicsDevice > m_device
Definition GLESMaterialManager.h:152
DynamicPointer< GLESShaderManager > m_shader_manager
Definition GLESMaterialManager.h:166
DynamicPointer< OpenGLBuffer > m_frag_uniform_buffer
Definition GLESMaterialManager.h:154
bool writeToDepth() const
Definition GLESMaterialManager.h:120
bool m_use_normal_for_texture
Definition GLESMaterialManager.h:183
FragUniformObject getFragUniformObject(const Material &material) const
bool m_is_two_sided
Definition GLESMaterialManager.h:177
DynamicPointer< GLESShader > getShader(PrimitiveMode property, bool is_integer) const
DynamicPointer< OpenGLBuffer > m_vertex_uniform_buffer
Definition GLESMaterialManager.h:153
void createPipeline(GraphicsUpdateArguments &args, DynamicPointer< GLESShaderManager > &shader_manager)
bool smoothNormals() const
Material::ShadingModel m_shade_model
Definition GLESMaterialManager.h:167
bool m_override_camera
Definition GLESMaterialManager.h:178
bool m_has_image
Definition GLESMaterialManager.h:175
GLESMaterialManager(const DynamicPointer< GLESGraphicsDevice > &device)
FragUniformObject m_frag_uniform
Definition GLESMaterialManager.h:156
bool isTwoSided() const
Definition GLESMaterialManager.h:137
uint04 getLayerNumber(const Material &material) const
Options that are used for performing an update on a Graphics Engine call.
Definition GraphicsUpdateArguments.h:43
Container responsible for storing and setting the appearance of a Model or Geometry within the NDEVR ...
Definition Material.h:51
ShadingModel
Definition Material.h:54
TextureCoordMode
Definition Material.h:104
Definition Matrix.hpp:176
Represents a color in the RGB space with optional alpha transparency.
Definition RGBColor.h:54
The core String class for the NDEVR API.
Definition String.h:69
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:60
A fixed-size array with better performance compared to dynamic containers.
Definition Vector.hpp:60
float fltp04
Defines an alias representing a 4 byte floating-point number Bit layout is as follows: -Sign: 1 bit a...
Definition BaseValues.hpp:127
uint8_t uint01
-Defines an alias representing a 1 byte, unsigned integer -Can represent exact integer values 0 throu...
Definition BaseValues.hpp:80
PrimitiveMode
Used with Geometry to describe how vertices and indices are used to form shapes.
Definition DesignObjectBase.h:116
uint32_t uint04
-Defines an alias representing a 4 byte, unsigned integer -Can represent exact integer values 0 throu...
Definition BaseValues.hpp:96
constexpr t_to cast(const Angle< t_from > &value)
Definition Angle.h:375
Defines for a given type (such as sint04, fltp08, UUID, etc) a maximum, minimum, and reserved 'invali...
Definition BaseValues.hpp:233