struct new in Git master
#include <Magnum/Shaders/MeshVisualizer.h>
MeshVisualizerDrawUniform2D Per-draw uniform for 2D mesh visualizer shaders.
Together with the generic TransformationProjectionUniform2D contains parameters that are specific to each draw call. Material-related properties are expected to be shared among multiple draw calls and thus are provided in a separate MeshVisualizerMaterialUniform structure, referenced by materialId.
Constructors, destructors, conversion operators
- MeshVisualizerDrawUniform2D(DefaultInitT = DefaultInit) explicit constexpr noexcept
- Construct with default parameters.
- MeshVisualizerDrawUniform2D(NoInitT) explicit noexcept
- Construct without initializing the contents.
Public variables
- UnsignedShort materialId
- Material ID.
- UnsignedInt objectId
- Object ID.
- UnsignedShort jointOffset
- Joint offset.
- UnsignedShort perInstanceJointCount
- Per-instance joint count.
Convenience setters
Provided to allow the use of method chaining for populating a structure in a single expression, otherwise equivalent to accessing the fields directly. Also guaranteed to provide backwards compatibility when packing of the actual fields changes.
- auto setMaterialId(UnsignedInt id) -> MeshVisualizerDrawUniform2D&
- Set the materialId field.
- auto setObjectId(UnsignedInt id) -> MeshVisualizerDrawUniform2D&
- Set the objectId field.
- auto setJointOffset(UnsignedInt offset) -> MeshVisualizerDrawUniform2D&
- Set the jointOffset field.
- auto setPerInstanceJointCount(UnsignedInt count) -> MeshVisualizerDrawUniform2D&
- Set the perInstanceJointCount field.
Function documentation
MeshVisualizerDrawUniform2D& Magnum:: Shaders:: MeshVisualizerDrawUniform2D:: setMaterialId(UnsignedInt id)
Set the materialId field.
Returns | Reference to self (for method chaining) |
---|
MeshVisualizerDrawUniform2D& Magnum:: Shaders:: MeshVisualizerDrawUniform2D:: setObjectId(UnsignedInt id)
Set the objectId field.
Returns | Reference to self (for method chaining) |
---|
MeshVisualizerDrawUniform2D& Magnum:: Shaders:: MeshVisualizerDrawUniform2D:: setJointOffset(UnsignedInt offset)
Set the jointOffset field.
Returns | Reference to self (for method chaining) |
---|
MeshVisualizerDrawUniform2D& Magnum:: Shaders:: MeshVisualizerDrawUniform2D:: setPerInstanceJointCount(UnsignedInt count)
Set the perInstanceJointCount field.
Returns | Reference to self (for method chaining) |
---|
Variable documentation
UnsignedShort Magnum:: Shaders:: MeshVisualizerDrawUniform2D:: materialId
Material ID.
References a particular material from a MeshVisualizerMaterialUniform array. Useful when an UBO with more than one material is supplied or in a multi-draw scenario. Should be less than the material count passed to MeshVisualizerGL2D::1
, this field is assumed to be 0
and isn't even read by the shader. Default value is 0
, meaning the first material gets used.
UnsignedInt Magnum:: Shaders:: MeshVisualizerDrawUniform2D:: objectId
Object ID.
Unlike materialId, this index is used only for the object ID visualization, not to access any other uniform data. Default value is 0
.
Used only if MeshVisualizerGL2D::
UnsignedShort Magnum:: Shaders:: MeshVisualizerDrawUniform2D:: jointOffset
Joint offset.
Offset added to joint IDs in the MeshVisualizerGL2D::0
, meaning no offset is added to joint IDs.
UnsignedShort Magnum:: Shaders:: MeshVisualizerDrawUniform2D:: perInstanceJointCount
Per-instance joint count.
Offset added to joint IDs in the MeshVisualizerGL2D::0
, meaning every instance will use the same joint matrices, setting it to a non-zero value causes the joint IDs to be interpreted as gl_InstanceID*count + jointId
.