Material
Materials, shaders and related functionality.
Classes
-
ShaderDefines— Allows you to specify defines that can control shader compilation. -
ShaderVariationParameters— Contains information about a single variation of a Shader. -
ShaderVariations— A container for all variations of a single Shader. -
Variation— Variation is a set of shading passes bindable to the GPU pipeline. -
Material— Material that controls how objects are rendered. -
Shader— Contains definitions of GPU programs used for rendering, as well as a set of global parameters to control those programs. -
ShaderMetaData— Shader specific resource meta-data containing information about referenced include files. -
Pass— Class defining a single pass of a variation (of a material).
Structs
-
ShaderVariationParameter— Name, type and value of a variation parameter. -
FindVariationInformation— Structure used when searching for a specific variation in a Material. -
ShaderParameterInformation— Information about a shader parameter. -
ShaderDataParameterInformation— Describes a single data (int, Vector2, etc.) shader parameter. -
ShaderObjectParameterInformation— Describes a single object (texture, sampler state, etc.) shader parameter. -
ShaderUniformBufferInformation— Describes a shader uniform buffer. -
ShaderParameterAttribute— Optional attribute that can be applied to a shader parameter. -
ShaderVariationParameterValue— Represents a single potential value of a shader variation parameter and optionally its name. -
ShaderVariationParameterInformation— Represents a single shader variation parameter and a set of all possible values. -
PassCreateInformation— Descriptor structure used for initializing a shader pass.
Enums
-
ShaderFlag— Flags that may be assigned to a shader that let the renderer know how to interpret the shader. -
ShaderVariationParameterType— Possible types of a variation parameter. -
ShaderParamAttributeType— Available attribute types that can be assigned to Shader parameters.
Internal
Symbols intended for engine-internal use. Not part of the public API.
Classes
-
TMaterialDataCommon— Common functionality for all material data params. -
TMaterialParameterPrimitive— A handle that allows you to set a Material parameter. -
TMaterialParameterCurve— A handle that allows you to set a Material parameter. -
TMaterialParameterColorGradient— A handle that allows you to set a Material parameter. -
TMaterialParameterStruct— A handle that allows you to set a Material parameter. -
TMaterialParameterSampledTexture— A handle that allows you to set a Material parameter. -
TMaterialParamSpriteImage— A handle that allows you to set a Material parameter. -
TMaterialParameterStorageTexture— A handle that allows you to set a Material parameter. -
TMaterialParameterBuffer— A handle that allows you to set a Material parameter. -
TMaterialParameterSampler— A handle that allows you to set a Material parameter. -
MaterialParametersBase— Common functionality for MaterialParameters and render::MaterialParameters. -
MaterialParamTextureDataRenderProxy— Data for a single texture parameter. -
MaterialParamTextureData— Data for a single texture parameter. -
MaterialParamBufferDataRenderProxy— Data for a single buffer parameter. -
MaterialParamBufferData— Data for a single buffer parameter. -
MaterialParamSamplerStateDataRenderProxy— Data for a single sampler state parameter. -
MaterialParamSamplerStateData— Data for a single sampler state parameter. -
TMaterialParameters— Common code that may be specialized for both MaterialParams and render::MaterialParams. -
MaterialParameters— Contains all parameter values set in a Material. -
render::MaterialParameters— Render thread version of MaterialParams. -
VariationBase— Base class that is used for implementing both main and render thread versions of Variation. -
TVariation— Templated class that is used for implementing both main and render thread versions of Variation. -
render::Variation— Render thread version of Variation. -
render::Material— Material that controls how objects are rendered. -
render::Shader— Render thread version of Shader. -
TPass— Contains common functionality used by both main and render thread counterparts of Pass. -
render::Pass— Render thread counterpart of Pass. -
IShaderCompiler— Interface used for compilers that transform a source file written in a higher level shading language into a Shader and shader variations usable by the engine. -
ShaderCompilers— Keeps track of all available shader compilers. -
TMaterialParameterAdapter— Shared code between render and main thread versions of MaterialParameterAdapter. -
MaterialParameterAdapter— Used for transferring material parameters to GpuParameterSet. -
render::MaterialParameterAdapter— Render thread version of MaterialParameterAdapter. -
IShaderIncludeHandler— Interface that provides a method for finding a shader include resource based on the name of the include that was provided in a shader file. -
DefaultShaderIncludeHandler— Implements shader include finding by converting the shader include name into a path that the resource will be loaded from. -
ShaderManager— A global manager that handles various shader specific operations.
Structs
-
MaterialParametersBase::ParamData— Meta-data about a parameter. -
MaterialParametersBase::DataParamInfo— Information about a single data parameter in a material. -
MaterialParametersBase::StructParameterMetaData— Meta data for a single struct parameter. -
TMaterialParamsTypes— Helper typedefs that reference types used by either render or main thread implementation of TMaterialParams <IsRenderProxy >. -
TPrecompiledVariationData— Data that may be passed to Variation on creation to initialize it with precompiled set of passes (rather than requiring on-demand compilation). -
ShaderInformationBase— Structure used for initializing a shader. -
render::ShaderInformation— Structure used for initializing a shader. -
render::ShaderCreateInformation— Descriptor structure used for initialization of a Shader. -
ShaderInformation— Structure used for initializing a shader. -
ShaderCompilerResult— Contains the results of shader parsing or compilation. -
ShaderCompilerMetaData— Meta-data for a shader. -
TMaterialParameterAdapter::DataParamInfo— Information about how a data parameter maps from a material parameter into a uniform buffer. -
TMaterialParameterAdapter::ObjectParamInfo— Information about how an object parameter maps from a material parameter to a GPU stage slot. -
TMaterialParameterAdapter::StageParamInfo— Information about all object parameters for a specific GPU programmable stage. -
TMaterialParameterAdapter::PassParamInfo— Information about all object parameters for a specific pass. -
TMaterialParameterAdapter::UniformBufferBinding— Binding location for a single GPU uniform buffer. -
TMaterialParameterAdapter::PassUniformBufferBindings— All bindings for GPU uniform buffers, for a single pass. -
TMaterialParameterAdapter::UniformBufferInfo— Information about a uniform buffer.
Enums
-
MateralParamTextureType— Types of textures that can be assigned to a material texture parameter. -
MaterialParametersBase::ParamType— Type of material parameter. -
MaterialParametersBase::GetParamResult— Result codes for getParam method. -
ShaderVariationDirtyFlag— Flags that signal which part of ShaderVariation changed. -
MaterialDirtyFlags— Flags that signal in what way did the Material change. -
ShaderDefaultTextureType— Built-in texture types that can be assigned as default values for shader texture inputs. -
ShadingLanguageFlag— Supported types of low-level shading languages.