Visual3D Game EngineAPI Documentation for XNA, C#, VB, and .NET
Class defining a single pass of a Technique (of a Material), ie a single rendering call.

Namespace: Visual3D.Graphics3D
Assembly: Visual3D.Engine (in Visual3D.Engine.dll) Version: 1.0.0.0 (1.0.0.0)

Syntax

      
 C#  Visual Basic 
public class OgreRenderPass : RenderPass
Public Class OgreRenderPass _
	Inherits RenderPass

Members

            
 All Members  Constructors   Properties   Methods  
 Public

 Protected
 Instance

 Static 
 Declared

 Inherited
 XNA Framework Only 

 .NET Compact Framework Only 

 MemberDescription
OgreRenderPass()()()()
Initializes a new instance of the OgreRenderPass class
OgreRenderPass(OgreRenderTechnique)
Default constructor.
AddTextureUnitState(TextureReference)
Adds the passed in TextureUnitState, to the existing Pass.
AlphaBlendEnable (Inherited from RenderPass.)
AlphaRejectFunction (Inherited from RenderPass.)
AlphaRejectValue (Inherited from RenderPass.)
AmbientColor
Sets the ambient color reflectance properties of this pass.
BeginPass(RenderContext) (Overrides RenderPass..::..BeginPass(RenderContext).)
Clone(OgreRenderTechnique)
Method for cloning a Pass object.
ColorWriteChannels
Gets/sets mask of channels (red/green/blue/alpha) used while rendering of this pass. Default is ColorWriteChannels.All
(Inherited from RenderPass.)
CreateTextureUnitState()()()()
CreateTextureUnitState(String)
CreateTextureUnitState(String, Int32)
Inserts a new TextureUnitState object into the Pass, on top of all previous texture units.
CullMode
Sets the culling mode for this pass based on the 'vertex winding'.
(Inherited from RenderPass.)
DepthBias
Sets the depth bias to be used for this Pass.
(Inherited from RenderPass.)
DepthFunction
Gets/Sets function used to compare depth values when depth checking is on.
(Inherited from RenderPass.)
DestBlendFactor
Retrieves destination blending factor for the material (as set using SetSceneBlending).
(Inherited from RenderPass.)
DiffuseColor
Sets the diffuse color reflectance properties of this pass.
EmissiveColor
EndPass(RenderContext) (Inherited from RenderPass.)
FogColorOverride
Gets/Sets the fog color for the scene. NOTE: Only valid if FogOverride is true.
(Inherited from RenderPass.)
FogDensityOverride
Gets/Sets the fog density for this pass. NOTE: Only valid if FogOverride is true.
(Inherited from RenderPass.)
FogEndOverride
Gets/Sets the fog end distance for this pass. NOTE: Only valid if FogOverride is true.
(Inherited from RenderPass.)
FogModeOverride
Gets/Sets the fog mode for this pass. NOTE: Only valid if FogOverride is true.
(Inherited from RenderPass.)
FogStartOverride (Inherited from RenderPass.)
FogTechniqueOverride
Gets/Sets the fog technique for this pass. NOTE: Only valid if FogOverride is true.
(Inherited from RenderPass.)
ForceOwnFillMode
If set to true, RenderMode will be forcibly applied regardless of current Camera fill mode (wireframe etc). Default is false.
(Inherited from RenderPass.)
FragmentParameters
Gets/Sets the fragment program parameters used by this pass.
FragmentProgramName
Gets/Sets the name of the fragment program to use.
GetTextureUnitState(Int32)
Gets reference to the TextureUnitState for this pass at specified indx.
HasFragmentProgram
Is True if this Pass uses the programmable fragment pipeline.
HasVertexProgram
Is True if this Pass uses the programmable vertex pipeline.
IsAmbientOnly
Gets a flag indicating whether this pass is ambient only.
IsDepthOnlyPass
Sets whether or not color buffer writing is disabled for this Pass (depth-only pass).
(Inherited from RenderPass.)
IsFogOverriden
Gets/Sets flag indicate that this pass is to override the scene fog settings.
(Inherited from RenderPass.)
IsLightingEnabled
Sets whether or not dynamic lighting is enabled.
IsLoaded
Returns true if this pass is loaded.
IsProgrammable
Is true if this pass is programmable (has either vertex or fragment program).
Load()()()()
Internal method for loading this pass.
MaxLights
Sets the maximum number of lights to be used by this pass.
NumTextureUnitStages
Gets number of fixed function texture unit states for this Pass.
OnlyLightType
Gets the single light type this pass runs for if RunOncePerLight and RunOnlyForOneLightType are both true.
ParentTechnique
Gets a reference to the Technique that owns this pass.
PixelShader
Gets the vertex program used by this pass. NOTE: Only available after Load() has been called.
PointSpriteEnable
Gets/sets flag indicate whether point sprites are being drawn with texture. In case if this flag is set to false and PrimitiveType.Point is being rendered, each point sprite is filled by flat color.
(Inherited from RenderPass.)
PointSpriteSize
Size of point sprites.
(Inherited from RenderPass.)
ReferenceStencil
Specifies a reference value to use for the stencil test. The default is 0.
(Inherited from RenderPass.)
RemoveAllTextureUnitStates()()()()
Removes all texture unit settings from this pass.
RemoveTextureUnitState(Int32)
Removes the specified TextureUnitState from this pass.
RemoveTextureUnitState(TextureReference)
Removes the specified TextureUnitState from this pass.
RenderMode
Optional override of wireframe/solid render mode.
(Inherited from RenderPass.)
ResetRenderStates()()()()
Resets render state values to their defaults.
(Inherited from RenderPass.)
RunOncePerLight
Does this pass run once for every light in range?
RunOnlyOncePerLightType
Does pass run only for a single light type (if RunOncePerLight is true).
SetAlphaRejectSettings(CompareFunction, Byte)
Sets way the pass will use alpha to totally reject pixels from the pipeline.
(Inherited from RenderPass.)
SetFog(Boolean) (Inherited from RenderPass.)
SetFog(Boolean, FogMode) (Inherited from RenderPass.)
SetFog(Boolean, FogMode, VColor) (Inherited from RenderPass.)
SetFog(Boolean, FogMode, VColor, Single) (Inherited from RenderPass.)
SetFog(Boolean, FogMode, VColor, Single, Single, Single)
Sets the fogging mode applied to this pass.
(Inherited from RenderPass.)
SetFogOverride(Boolean) (Inherited from RenderPass.)
SetFragmentProgram(String)
SetFragmentProgram(String, Boolean)
SetRunOncePerLight(Boolean)
SetRunOncePerLight(Boolean, Boolean)
SetRunOncePerLight(Boolean, Boolean, LightType)
Sets whether or not this pass should be run once per light which can affect the object being rendered.
SetSceneBlending(SceneBlendType)
Sets the kind of blending this pass has with the existing contents of the scene.
(Inherited from RenderPass.)
SetSceneBlending(Blend, Blend)
Allows very fine control of blending this Pass with the existing contents of the scene.
(Inherited from RenderPass.)
SetVertexProgram(String)
SetVertexProgram(String, Boolean)
ShadingMode
Sets the type of light shading required. NOTE: The default shading method is Gouraud shading.
(Inherited from RenderPass.)
Shininess
Sets shininess of pass, affecting the size of specular highlights.
SourceBlendFactor
Retrieves the source blending factor for the material (as set using SetSceneBlending).
(Inherited from RenderPass.)
SpecularColor
Sets the specular color reflectance properties of this pass.
StencilDepthBufferFail
Gets or sets the stencil operation to perform if the stencil test passes and the depth-test fails. The default is StencilOperation.Keep.
(Inherited from RenderPass.)
StencilDepthBufferFailCCW
Gets or sets the stencil operation to perform if the stencil test passes and the depth-buffer test fails for a counterclockwise triangle. The default is StencilOperation.Keep.
(Inherited from RenderPass.)
StencilEnable
Gets or sets stencil enabling. The default is false.
(Inherited from RenderPass.)
StencilFail
Gets or sets the stencil operation to perform if the stencil test fails. The default is StencilOperation.Keep.
(Inherited from RenderPass.)
StencilFailCCW
Gets or sets the stencil operation to perform if the stencil test fails for a counterclockwise triangle. The default is StencilOperation.Keep.
(Inherited from RenderPass.)
StencilFunction
Gets or sets the comparison function for the stencil test. The default is CompareFunction.Always.
(Inherited from RenderPass.)
StencilFunctionCCW
Gets or sets the comparison function to use for counterclockwise stencil tests. The default is CompareFunction.Always.
(Inherited from RenderPass.)
StencilMask
Gets or sets the mask applied to the reference value and each stencil buffer entry to determine the significant bits for the stencil test. The default mask is Int32.MaxValue.
(Inherited from RenderPass.)
StencilPass
Gets or sets the stencil operation to perform if the stencil test passes. The default is StencilOperation.Keep.
(Inherited from RenderPass.)
StencilPassCCW
Gets or sets the stencil operation to perform if the stencil and z-tests pass for a counterclockwise triangle. The default is StencilOperation.Keep.
(Inherited from RenderPass.)
StencilWriteMask
Gets or sets the write mask applied to values written into the stencil buffer. The default mask is Int32.MaxValue.
(Inherited from RenderPass.)
TextureAnisotropy
Sets the anisotropy level to be used for all textures.
TextureFiltering
Set texture filtering for every texture unit.
TextureUnits
Returns list of texture units (for easy access, rather than NumTextureUnitStates and GetTextureUnitState).
ToString()()()() (Overrides Object..::..ToString()()()().)
TransparencyMode
Simplified version of SetSceneBlending method, with limited set of predefined blending modes. Able to return one of TransparencyMode enum values, based on current combination of source/dest blend modes. Returns Opaque mode for any unrecognized source/dest blending.
(Inherited from RenderPass.)
TwoSidedStencil
Enables or disables two-sided stenciling. The default is false.
(Inherited from RenderPass.)
UseDepthCheck
Gets/Sets if pass renders with depth-buffer checking on or not.
(Inherited from RenderPass.)
UseDepthWrite
Gets/Sets if pass renders with depth-buffer writing on or not.
(Inherited from RenderPass.)
UVW2TextureColor
Gets/sets color amplification for UVW2 texture (detail, lightmap etc).
VertexParameters
Gets/Sets the vertex program parameters used by this pass.
VertexProgramName
Gets/Sets the name of the vertex program to use.
VertexShader
Gets the vertex program used by this pass. NOTE: Only available after Load() has been called.

Remarks

Rendering can be repeated with many passes for more complex effects. Each pass is either a fixed-function pass (meaning it does not use a vertex or fragment program) or a programmable pass (meaning it does use either a vertex or a fragment program, or both).

Programmable passes are complex to define, because they require custom programs and you have to set all constant inputs to the programs (like the position of lights, any base material colors you wish to use etc), but they do give you much total flexibility over the algorithms used to render your pass, and you can create some effects which are impossible with a fixed-function pass. On the other hand, you can define a fixed-function pass in very little time, and you can use a range of fixed-function effects like environment mapping very easily, plus your pass will be more likely to be compatible with older hardware. There are pros and cons to both, just remember that if you use a programmable pass to create some great effects, allow more time for definition and testing.

Inheritance Hierarchy

System..::..Object
  Visual3D.Graphics3D.MaterialRendering..::..RenderPass
    Visual3D.Graphics3D..::..OgreRenderPass

See Also