| U3D
    Open-source, cross-platform 2D and 3D game engine built in C++ | 
Material rendering pass, which defines shaders and render state. More...
#include </var/dev/u3d/stable/Source/Urho3D/Graphics/Technique.h>
| Public Member Functions | |
| Pass (const String &name) | |
| Construct. | |
| ~Pass () override | |
| Destruct. | |
| void | SetBlendMode (BlendMode mode) | 
| void | SetCullMode (CullMode mode) | 
| void | SetDepthTestMode (CompareMode mode) | 
| void | SetLightingMode (PassLightingMode mode) | 
| void | SetDepthWrite (bool enable) | 
| void | SetAlphaToCoverage (bool enable) | 
| void | SetIsDesktop (bool enable) | 
| void | SetVertexShader (const String &name) | 
| void | SetPixelShader (const String &name) | 
| void | SetVertexShaderDefines (const String &defines) | 
| void | SetPixelShaderDefines (const String &defines) | 
| void | SetVertexShaderDefineExcludes (const String &excludes) | 
| void | SetPixelShaderDefineExcludes (const String &excludes) | 
| void | ReleaseShaders () | 
| Reset shader pointers. | |
| void | MarkShadersLoaded (unsigned frameNumber) | 
| Mark shaders loaded this frame. | |
| const 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 | 
| PassLightingMode | GetLightingMode () const | 
| unsigned | GetShadersLoadedFrameNumber () const | 
| Return last shaders loaded frame number. | |
| bool | GetDepthWrite () const | 
| bool | GetAlphaToCoverage () const | 
| bool | IsDesktop () const | 
| const String & | GetVertexShader () const | 
| const String & | GetPixelShader () const | 
| const String & | GetVertexShaderDefines () const | 
| const String & | GetPixelShaderDefines () const | 
| const String & | GetVertexShaderDefineExcludes () const | 
| const String & | GetPixelShaderDefineExcludes () const | 
| Vector< SharedPtr< ShaderVariation > > & | GetVertexShaders () | 
| Return vertex shaders. | |
| Vector< SharedPtr< ShaderVariation > > & | GetPixelShaders () | 
| Return pixel shaders. | |
| Vector< SharedPtr< ShaderVariation > > & | GetVertexShaders (const StringHash &extraDefinesHash) | 
| Return vertex shaders with extra defines from the renderpath. | |
| Vector< SharedPtr< ShaderVariation > > & | GetPixelShaders (const StringHash &extraDefinesHash) | 
| Return pixel shaders with extra defines from the renderpath. | |
| String | GetEffectiveVertexShaderDefines () const | 
| Return the effective vertex shader defines, accounting for excludes. Called internally by Renderer. | |
| String | GetEffectivePixelShaderDefines () const | 
| Return the effective pixel shader defines, accounting for excludes. Called internally by Renderer. | |
|  Public Member Functions inherited from Urho3D::RefCounted | |
| 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. | |
| void | AddRef () | 
| void | ReleaseRef () | 
| int | Refs () const | 
| int | WeakRefs () const | 
| RefCount * | RefCountPtr () | 
| Return pointer to the reference count structure. | |
| Private Attributes | |
| unsigned | index_ | 
| Pass index. | |
| BlendMode | blendMode_ | 
| Blend mode. | |
| CullMode | cullMode_ | 
| Culling mode. | |
| CompareMode | depthTestMode_ | 
| Depth compare mode. | |
| PassLightingMode | lightingMode_ | 
| Lighting mode. | |
| unsigned | shadersLoadedFrameNumber_ | 
| Last shaders loaded frame number. | |
| bool | depthWrite_ | 
| Depth write mode. | |
| bool | alphaToCoverage_ | 
| Alpha-to-coverage mode. | |
| bool | isDesktop_ | 
| Require desktop level hardware flag. | |
| String | vertexShaderName_ | 
| Vertex shader name. | |
| String | pixelShaderName_ | 
| Pixel shader name. | |
| String | vertexShaderDefines_ | 
| Vertex shader defines. | |
| String | pixelShaderDefines_ | 
| Pixel shader defines. | |
| String | vertexShaderDefineExcludes_ | 
| Vertex shader define excludes. | |
| String | pixelShaderDefineExcludes_ | 
| Pixel shader define excludes. | |
| Vector< SharedPtr< ShaderVariation > > | vertexShaders_ | 
| Vertex shaders. | |
| Vector< SharedPtr< ShaderVariation > > | pixelShaders_ | 
| Pixel shaders. | |
| HashMap< StringHash, Vector< SharedPtr< ShaderVariation > > > | extraVertexShaders_ | 
| Vertex shaders with extra defines from the renderpath. | |
| HashMap< StringHash, Vector< SharedPtr< ShaderVariation > > > | extraPixelShaders_ | 
| Pixel shaders with extra defines from the renderpath. | |
| String | name_ | 
| Pass name. | |
Material rendering pass, which defines shaders and render state.
| 
 | inline | 
Return alpha-to-coverage mode.
| 
 | inline | 
Return blend mode.
| 
 | inline | 
Return culling mode override. If pass is not overriding culling mode (default), the illegal mode MAX_CULLMODES is returned.
| 
 | inline | 
Return depth compare mode.
| 
 | inline | 
Return depth write mode.
| 
 | inline | 
Return pass lighting mode.
| 
 | inline | 
Return pixel shader name.
| 
 | inline | 
Return pixel shader define excludes.
| 
 | inline | 
Return pixel shader defines.
| 
 | inline | 
Return vertex shader name.
| 
 | inline | 
Return vertex shader define excludes.
| 
 | inline | 
Return vertex shader defines.
| 
 | inline | 
Return whether requires desktop level hardware.
| void Urho3D::Pass::SetAlphaToCoverage | ( | bool | enable | ) | 
Set alpha-to-coverage on/off.
| void Urho3D::Pass::SetBlendMode | ( | BlendMode | mode | ) | 
Set blend mode.
| void Urho3D::Pass::SetCullMode | ( | CullMode | mode | ) | 
Set culling mode override. By default culling mode is read from the material instead. Set the illegal culling mode MAX_CULLMODES to disable override again.
| void Urho3D::Pass::SetDepthTestMode | ( | CompareMode | mode | ) | 
Set depth compare mode.
| void Urho3D::Pass::SetDepthWrite | ( | bool | enable | ) | 
Set depth write on/off.
| void Urho3D::Pass::SetIsDesktop | ( | bool | enable | ) | 
Set whether requires desktop level hardware.
| void Urho3D::Pass::SetLightingMode | ( | PassLightingMode | mode | ) | 
Set pass lighting mode, affects what shader variations will be attempted to be loaded.
| void Urho3D::Pass::SetPixelShader | ( | const String & | name | ) | 
Set pixel shader name.
| void Urho3D::Pass::SetPixelShaderDefineExcludes | ( | const String & | excludes | ) | 
Set pixel shader define excludes. Use to mark defines that the shader code will not recognize, to prevent compiling redundant shader variations.
| void Urho3D::Pass::SetPixelShaderDefines | ( | const String & | defines | ) | 
Set pixel shader defines. Separate multiple defines with spaces.
| void Urho3D::Pass::SetVertexShader | ( | const String & | name | ) | 
Set vertex shader name.
| void Urho3D::Pass::SetVertexShaderDefineExcludes | ( | const String & | excludes | ) | 
Set vertex shader define excludes. Use to mark defines that the shader code will not recognize, to prevent compiling redundant shader variations.
| void Urho3D::Pass::SetVertexShaderDefines | ( | const String & | defines | ) | 
Set vertex shader defines. Separate multiple defines with spaces.