|
| Pass (const ea::string &name) |
| Construct.
|
|
| ~Pass () override |
| Destruct.
|
|
void | SetBlendMode (BlendMode mode) |
|
void | SetCullMode (CullMode mode) |
|
void | SetDepthTestMode (CompareMode mode) |
|
void | SetDepthWrite (bool enable) |
|
void | SetColorWrite (bool enable) |
|
void | SetAlphaToCoverage (bool enable) |
|
void | SetVertexShader (const ea::string &name) |
|
void | SetPixelShader (const ea::string &name) |
|
void | SetVertexShaderDefines (const ea::string &defines) |
|
void | SetPixelShaderDefines (const ea::string &defines) |
|
void | SetVertexShaderDefineExcludes (const ea::string &excludes) |
|
void | SetPixelShaderDefineExcludes (const ea::string &excludes) |
|
void | SetVertexTextureDefines (const StringVector &textures) |
|
void | SetPixelTextureDefines (const StringVector &textures) |
|
void | ReleaseShaders () |
| Reset shader pointers.
|
|
void | MarkShadersLoaded (unsigned frameNumber) |
| Mark shaders loaded this frame.
|
|
const ea::string & | GetName () const |
| Return pass name.
|
|
unsigned | GetIndex () const |
| Return pass index. This is used for optimal render-time pass queries that avoid map lookups.
|
|
BlendMode | GetBlendMode () const |
|
CullMode | GetCullMode () const |
|
CompareMode | GetDepthTestMode () const |
|
unsigned | GetShadersLoadedFrameNumber () const |
| Return last shaders loaded frame number.
|
|
bool | GetColorWrite () const |
|
bool | GetDepthWrite () const |
|
bool | GetAlphaToCoverage () const |
|
bool | IsAlphaMask () const |
| Return whether the pass uses cutout transparency via ALPHAMASK.
|
|
const ea::string & | GetVertexShader () const |
|
const ea::string & | GetPixelShader () const |
|
const ea::string & | GetVertexShaderDefines () const |
|
const ea::string & | GetPixelShaderDefines () const |
|
const ea::string & | GetVertexShaderDefineExcludes () const |
|
const ea::string & | GetPixelShaderDefineExcludes () const |
|
ea::vector< SharedPtr< ShaderVariation > > & | GetVertexShaders () |
| Return vertex shaders.
|
|
ea::vector< SharedPtr< ShaderVariation > > & | GetPixelShaders () |
| Return pixel shaders.
|
|
const StringVector & | GetVertexTextureDefines () const |
| Return names of textures to be reported as defines in vertex shader code.
|
|
const StringVector & | GetPixelTextureDefines () const |
| Return names of textures to be reported as defines in pixel shader code.
|
|
ea::vector< SharedPtr< ShaderVariation > > & | GetVertexShaders (const StringHash &extraDefinesHash) |
| Return vertex shaders with extra defines from the renderpath.
|
|
ea::vector< SharedPtr< ShaderVariation > > & | GetPixelShaders (const StringHash &extraDefinesHash) |
| Return pixel shaders with extra defines from the renderpath.
|
|
ea::string | GetEffectiveVertexShaderDefines () const |
| Return the effective vertex shader defines, accounting for excludes. Called internally by Renderer.
|
|
ea::string | GetEffectivePixelShaderDefines () const |
| Return the effective pixel shader defines, accounting for excludes. Called internally by Renderer.
|
|
| RefCounted () |
| Construct. Allocate the reference count structure and set an initial self weak reference.
|
|
virtual | ~RefCounted () |
| Destruct. Mark as expired and also delete the reference count structure if no outside weak references exist.
|
|
| RefCounted (const RefCounted &rhs)=delete |
| Prevent copy construction.
|
|
RefCounted & | operator= (const RefCounted &rhs)=delete |
| Prevent assignment.
|
|
int | AddRef () |
|
int | ReleaseRef () |
|
int | Refs () const |
|
int | WeakRefs () const |
|
RefCount * | RefCountPtr () const |
| Return pointer to the reference count structure.
|
|
bool | HasScriptObject () const |
| Return true if script runtime object wrapping this native object exists.
|
|
bool | IsScriptStrongRef () const |
| Return true if script reference is strong.
|
|
virtual | ~PipelineStateTracker () |
| Destruct.
|
|
unsigned | GetPipelineStateHash () const |
| Return (partial) pipeline state hash. Save to call from multiple threads as long as the object is not changing.
|
|
void | MarkPipelineStateHashDirty () |
| Mark pipeline state hash as dirty.
|
|
|
unsigned | index_ |
| Pass index.
|
|
BlendMode | blendMode_ |
| Blend mode.
|
|
CullMode | cullMode_ |
| Culling mode.
|
|
CompareMode | depthTestMode_ |
| Depth compare mode.
|
|
unsigned | shadersLoadedFrameNumber_ |
| Last shaders loaded frame number.
|
|
bool | colorWrite_ |
| Color write mode.
|
|
bool | depthWrite_ |
| Depth write mode.
|
|
bool | alphaToCoverage_ |
| Alpha-to-coverage mode.
|
|
bool | isAlphaMask_ {} |
| Whether the pass uses cutout transparency via ALPHAMASK.
|
|
ea::string | vertexShaderName_ |
| Vertex shader name.
|
|
ea::string | pixelShaderName_ |
| Pixel shader name.
|
|
ea::string | vertexShaderDefines_ |
| Vertex shader defines.
|
|
ea::string | pixelShaderDefines_ |
| Pixel shader defines.
|
|
ea::string | vertexShaderDefineExcludes_ |
| Vertex shader define excludes.
|
|
ea::string | pixelShaderDefineExcludes_ |
| Pixel shader define excludes.
|
|
ea::vector< SharedPtr< ShaderVariation > > | vertexShaders_ |
| Vertex shaders.
|
|
ea::vector< SharedPtr< ShaderVariation > > | pixelShaders_ |
| Pixel shaders.
|
|
ea::unordered_map< StringHash, ea::vector< SharedPtr< ShaderVariation > > > | extraVertexShaders_ |
| Vertex shaders with extra defines from the renderpath.
|
|
ea::unordered_map< StringHash, ea::vector< SharedPtr< ShaderVariation > > > | extraPixelShaders_ |
| Pixel shaders with extra defines from the renderpath.
|
|
StringVector | vertexTextureDefines_ |
|
StringVector | pixelTextureDefines_ |
|
ea::string | name_ |
| Pass name.
|
|
Material rendering pass, which defines shaders and render state.