XII Release 0.1.0
Loading...
Searching...
No Matches
xiiMaterialParameterBlock Class Reference

Copyright (c) Theophilus Eriata. All Rights Reserved. More...

#include <MaterialParameterBlock.h>

Public Member Functions

xiiResult Initialize (xiiSharedPtr< const xiiMaterialSchema > pSchema)
void Clear ()
const xiiSharedPtr< const xiiMaterialSchema > & GetSchema () const
xiiArrayPtr< const xiiUInt8 > GetData () const
xiiArrayPtr< const xiiVariant > GetValues () const
xiiUInt32 GetRevision () const
bool IsDirty () const
xiiArrayPtr< const xiiUInt8 > GetDirtyData () const
xiiUInt32 GetDirtyOffset () const
xiiResult SetValue (xiiMaterialParameterId id, const xiiVariant &value)
xiiResult SetValue (const xiiTempHashedString &sName, const xiiVariant &value)
const xiiVariant * GetValue (xiiMaterialParameterId id) const
const xiiVariant * GetValue (const xiiTempHashedString &sName) const
void ClearDirtyRange ()
 Marks the current bytes as consumed by a frame snapshot or GPU upload.

Detailed Description

Copyright (c) Theophilus Eriata. All Rights Reserved.

Dense CPU representation of a material's typed values.

The byte block follows the schema's canonical GPU layout and can therefore be copied directly into structured or constant-buffer storage. Variants are retained for editor inspection and serialization, but never need to be searched by name during rendering.


The documentation for this class was generated from the following files:
  • /home/runner/work/XII/XII/Source/Engine/GraphicsCore/Material/MaterialParameterBlock.h
  • /home/runner/work/XII/XII/Source/Engine/GraphicsCore/Material/Implementation/MaterialParameterBlock.cpp