C# 클래스 Axiom.Core.SceneManager

Manages the organization and rendering of a 'scene' i.e. a collection of objects and potentially world geometry.
This class defines the interface and the basic behaviour of a 'Scene Manager'. A SceneManager organizes the culling and rendering of the scene, in conjunction with the RenderQueue. This class is designed to be extended through subclassing in order to provide more specialized scene organization structures for particular needs. The default SceneManager culls based on a hierarchy of node bounding boxes, other implementations can use an octree (), a BSP tree (), and many other options. New SceneManager implementations can be added at runtime by plugins, see SceneManagerEnumerator for the interfaces for adding new SceneManager types.

There is a distinction between 'objects' (which subclass MovableObject, and are movable, discrete objects in the world), and 'world geometry', which is large, generally static geometry. World geometry tends to influence the SceneManager organizational structure (e.g. lots of indoor static geometry might result in a spatial tree structure) and as such world geometry is generally tied to a given SceneManager implementation, whilst MovableObject instances can be used with any SceneManager. Subclasses are free to define world geometry however they please.

Multiple SceneManager instances can exist at one time, each one with a distinct scene. Which SceneManager is used to render a scene is dependent on the Camera, which will always call back the SceneManager which created it to render the scene.

상속: DisposableObject
파일 보기 프로젝트 열기: mono-soc-2011/axiom 1 사용 예제들

보호된 프로퍼티들

프로퍼티 타입 설명
_activeCompositorChain CompositorChain
_lightsDirtyCounter ulong
ambientColor ColorEx
animationList AnimationCollection
animationStateList AnimationStateSet
autoParamDataSource AutoParamDataSource
autoTrackingSceneNodes SceneNodeCollection
cameraInProgress Camera
cameraList CameraCollection
currentViewport Viewport
defaultRootNode SceneNode
displayNodes bool
findVisibleObjects bool
finiteExtrusionParams GpuProgramParameters
fogColor ColorEx
fogDensity float
fogEnd float
fogMode FogMode
fogStart float
fullScreenQuad Rectangle2D
hasCameraChanged bool
illuminationStage IlluminationRenderStage
infiniteExtrusionParams GpuProgramParameters
isSkyBoxDrawnFirst bool
isSkyBoxEnabled bool
isSkyDomeDrawnFirst bool
isSkyDomeEnabled bool
isSkyPlaneDrawnFirst bool
isSkyPlaneEnabled bool
lastFrameNumber ulong
lastNumTexUnitsUsed int
lastPolyMode PolygonMode
lastProjectionWasIdentity bool
lastUsedFallback bool
lastViewWasIdentity bool
lightsAffectingFrustum LightList
localLightList LightList
movableObjectCollectionMap MovableObjectCollection>.Dictionary
name string
normalizeNormals bool
nullLightList LightList
nullShadowTexture Texture
oldFogColor ColorEx
oldFogDensity float
oldFogEnd float
oldFogMode FogMode
oldFogStart float
op RenderOperation
optionList AxiomCollection
regionList List
renderQueue RenderQueue
renderingMainGroup bool
renderingNoShadowQueue bool
rootSceneNode SceneNode
sceneNodeList SceneNodeCollection
shadowCameraLightMapping Light>.Dictionary
shadowCasterAABBQuery AxisAlignedBoxRegionSceneQuery
shadowCasterList List
shadowCasterPlainBlackPass Pass
shadowCasterQueryListener ShadowCasterSceneQueryListener
shadowCasterSphereQuery SphereRegionSceneQuery
shadowColor ColorEx
shadowDebugPass Pass
shadowDirLightExtrudeDist float
shadowFarDistance float
shadowFarDistanceSquared float
shadowIndexBuffer HardwareIndexBuffer
shadowIndexBufferSize int
shadowMaterialInitDone bool
shadowModulativePass Pass
shadowReceiverPass Pass
shadowStencilPass Pass
shadowTechnique ShadowTechnique
shadowTextureCameras List
shadowTextureCasterMaterial string
shadowTextureConfigDirty bool
shadowTextureConfigList List
shadowTextureCount ushort
shadowTextureCustomCasterFPParams GpuProgramParameters
shadowTextureCustomCasterFragmentProgram string
shadowTextureCustomCasterPass Pass
shadowTextureCustomCasterVPParams GpuProgramParameters
shadowTextureCustomCasterVertexProgram string
shadowTextureCustomReceiverFPParams GpuProgramParameters
shadowTextureCustomReceiverFragmentProgram string
shadowTextureCustomReceiverPass Pass
shadowTextureCustomReceiverVPParams GpuProgramParameters
shadowTextureCustomReceiverVertexProgram string
shadowTextureFadeEnd float
shadowTextureFadeStart float
shadowTextureFormat PixelFormat
shadowTextureOffset float
shadowTextureReceiverMaterial string
shadowTextureSelfShadow bool
shadowTextureSize ushort
shadowTextures List
shadowUseInfiniteFarPlane bool
showBoundingBoxes bool
showDebugShadows bool
skyBoxEntities Entity[]
skyBoxNode SceneNode
skyBoxOrientation Quaternion
skyDomeEntities Entity[]
skyDomeNode SceneNode
skyDomeOrientation Quaternion
skyPlane Plane
skyPlaneEntity Entity
skyPlaneNode SceneNode
specialCaseRenderQueueList SpecialCaseRenderQueue
staticGeometryList StaticGeometry>.Dictionary
suppressRenderStateChanges bool
suppressShadows bool
targetRenderSystem RenderSystem
visibilityMask ulong
worldGeometryRenderQueueId RenderQueueGroupID
xform Matrix4[]

공개 메소드들

메소드 설명
ClearScene ( ) : void

Empties the entire scene, inluding all SceneNodes, Entities, Lights, BillboardSets etc. Cameras are not deleted at this stage since they are still referenced by viewports, which are not destroyed during this process.

CreateAABBRegionQuery ( ) : AxisAlignedBoxRegionSceneQuery

Creates a AxisAlignedBoxRegionSceneQuery for this scene manager.

This method creates a new instance of a query object for this scene manager, for querying for objects within a AxisAlignedBox region.

CreateAABBRegionQuery ( AxisAlignedBox box ) : AxisAlignedBoxRegionSceneQuery

Creates a AxisAlignedBoxRegionSceneQuery for this scene manager.

This method creates a new instance of a query object for this scene manager, for querying for objects within a AxisAlignedBox region.

CreateAABBRegionQuery ( AxisAlignedBox box, uint mask ) : AxisAlignedBoxRegionSceneQuery

Creates a AxisAlignedBoxRegionSceneQuery for this scene manager.

This method creates a new instance of a query object for this scene manager, for querying for objects within a AxisAlignedBox region.

CreateAnimation ( string name, float length ) : Animation

Creates an animation which can be used to animate scene nodes.

An animation is a collection of 'tracks' which over time change the position / orientation of Node objects. In this case, the animation will likely have tracks to modify the position / orientation of SceneNode objects, e.g. to make objects move along a path.

You don't need to use an Animation object to move objects around - you can do it yourself using the methods of the Node in your application. However, when you need relatively complex scripted animation, this is the class to use since it will interpolate between keyframes for you and generally make the whole process easier to manage.

A single animation can affect multiple Node objects (each AnimationTrack affects a single Node). In addition, through animation blending a single Node can be affected by multiple animations, although this is more useful when performing skeletal animation (see Skeleton.CreateAnimation).

CreateAnimationState ( string animationName ) : AnimationState

Create an AnimationState object for managing application of animations.

You can create Animation objects for animating SceneNode obejcts using the CreateAnimation method. However, in order to actually apply those animations you have to call methods on Node and Animation in a particular order (namely Node.ResetToInitialState and Animation.Apply). To make this easier and to help track the current time position of animations, the AnimationState object is provided.

So if you don't want to control animation application manually, call this method, update the returned object as you like every frame and let SceneManager apply the animation state for you.

Remember, AnimationState objects are disabled by default at creation time. Turn them on when you want them using their Enabled property.

Note that any SceneNode affected by this automatic animation will have it's state reset to it's initial position before application of the animation. Unless specifically modified using Node.SetInitialState the Node assumes it's initial state is at the origin. If you want the base state of the SceneNode to be elsewhere, make your changes to the node using the standard transform methods, then call SetInitialState to 'bake' this reference position into the node.

CreateBillboardSet ( string name ) : BillboardSet

Overloaded method.

CreateBillboardSet ( string name, int poolSize ) : BillboardSet

Creates a billboard set which can be uses for particles, sprites, etc.

CreateCamera ( string name ) : Camera

Creates a camera to be managed by this scene manager.

This camera can be added to the scene at a later time using the AttachObject method of the SceneNode class.

CreateEntity ( string name, Axiom.Core.Mesh mesh ) : Entity

Create an Entity (instance of a discrete mesh).

CreateEntity ( string name, PrefabEntity prefab ) : Entity

Create an Entity (instance of a discrete mesh).

CreateEntity ( string name, string meshName ) : Entity

Create an Entity (instance of a discrete mesh).

CreateIntersectionQuery ( ) : IntersectionSceneQuery

Creates an IntersectionSceneQuery for this scene manager.

This method creates a new instance of a query object for locating intersecting objects. See SceneQuery and IntersectionSceneQuery for full details.

CreateIntersectionQuery ( uint mask ) : IntersectionSceneQuery

Creates an IntersectionSceneQuery for this scene manager.

This method creates a new instance of a query object for locating intersecting objects. See SceneQuery and IntersectionSceneQuery for full details.

CreateLight ( string name ) : Light

Creates a light that will be managed by this scene manager.

Lights can either be in a fixed position and independent of the scene graph, or they can be attached to SceneNodes so they derive their position from the parent node. Either way, they are created using this method so that the SceneManager manages their existence.

CreateManualObject ( string name ) : ManualObject

Create a ManualObject, an object which you populate with geometry manually through a GL immediate-mode style interface.

CreateMovableObject ( string name, string typeName, NamedParameterList para ) : Axiom.Core.MovableObject
CreateMovableText ( string name, string caption, string fontName ) : MovableText

Create MovableText, 3D floating text which can me moved around your scene

CreateOverlay ( string name, int zorder ) : Overlay

Creates a new Overlay.

Overlays can be used to render heads-up-displays (HUDs), menu systems, cockpits and any other 2D or 3D object you need to appear above the rest of the scene. See the Overlay class for more information.

NOTE: after creation, the Overlay is initially hidden. You can create as many overlays as you like ready to be displayed whenever. Just call Overlay.Show to display the overlay.

CreatePlaneBoundedVolumeQuery ( ) : PlaneBoundedVolumeListSceneQuery

Creates a PlaneBoundedVolumeListSceneQuery for this scene manager.

This method creates a new instance of a query object for this scene manager, for querying for objects within a PlaneBoundedVolumes region.

CreatePlaneBoundedVolumeQuery ( PlaneBoundedVolumeList volumes ) : PlaneBoundedVolumeListSceneQuery

Creates a PlaneBoundedVolumeListSceneQuery for this scene manager.

This method creates a new instance of a query object for this scene manager, for querying for objects within a PlaneBoundedVolumes region.

CreatePlaneBoundedVolumeQuery ( PlaneBoundedVolumeList volumes, uint mask ) : PlaneBoundedVolumeListSceneQuery

Creates a PlaneBoundedVolumeListSceneQuery for this scene manager.

This method creates a new instance of a query object for this scene manager, for querying for objects within a PlaneBoundedVolumes region.

CreateRayQuery ( ) : RaySceneQuery

Creates a query to return objects found along the ray.

CreateRayQuery ( Ray ray ) : RaySceneQuery

Creates a query to return objects found along the ray.

CreateRayQuery ( Ray ray, uint mask ) : RaySceneQuery

Creates a query to return objects found along the ray.

CreateRibbonTrail ( string name ) : RibbonTrail
CreateSceneNode ( ) : SceneNode

Creates an instance of a SceneNode.

Note that this does not add the SceneNode to the scene hierarchy. This method is for convenience, since it allows an instance to be created for which the SceneManager is responsible for allocating and releasing memory, which is convenient in complex scenes.

To include the returned SceneNode in the scene, use the AddChild method of the SceneNode which is to be it's parent.

Note that this method takes no parameters, and the node created is unnamed (it is actually given a generated name, which you can retrieve if you want). If you wish to create a node with a specific name, call the alternative method which takes a name parameter.

CreateSceneNode ( string name ) : SceneNode

Creates an instance of a SceneNode with a given name.

Note that this does not add the SceneNode to the scene hierarchy. This method is for convenience, since it allows an instance to be created for which the SceneManager is responsible for allocating and releasing memory, which is convenient in complex scenes.

To include the returned SceneNode in the scene, use the AddChild method of the SceneNode which is to be it's parent.

Note that this method takes a name parameter, which makes the node easier to retrieve directly again later.

CreateSphereRegionQuery ( ) : SphereRegionSceneQuery

Creates a SphereRegionSceneQuery for this scene manager.

This method creates a new instance of a query object for this scene manager, for querying for objects within a spherical region.

CreateSphereRegionQuery ( Sphere sphere ) : SphereRegionSceneQuery

Creates a SphereRegionSceneQuery for this scene manager.

This method creates a new instance of a query object for this scene manager, for querying for objects within a spherical region.

CreateSphereRegionQuery ( Sphere sphere, uint mask ) : SphereRegionSceneQuery

Creates a SphereRegionSceneQuery for this scene manager.

This method creates a new instance of a query object for this scene manager, for querying for objects within a spherical region.

CreateStaticGeometry ( string name, int logLevel ) : StaticGeometry

Creates a StaticGeometry instance suitable for use with this SceneManager.

StaticGeometry is a way of batching up geometry into a more efficient form at the expense of being able to move it. Please read the StaticGeometry class documentation for full information.

DestroyAllAnimationStates ( ) : void

Removes all AnimationStates created using this SceneManager.

DestroyAllAnimations ( ) : void

Removes all animations created using this SceneManager.

DestroyAllCameras ( ) : void

Destroy all cameras managed by this SceneManager Method added with MovableObject Factories.

DestroyAllMovableObjects ( ) : void
DestroyAllMovableObjectsByType ( string typeName ) : void
DestroyAllOverlays ( ) : void

Destroys all the overlays.

DestroyAllStaticGeometry ( ) : void

Destroy all StaticGeometry instances.

DestroyAnimation ( string name ) : void

Destroys an Animation.

DestroyAnimationState ( string name ) : void

Destroys an AnimationState.

DestroyCamera ( Camera camera ) : void
DestroyMovableObject ( Axiom.Core.MovableObject m ) : void
DestroyMovableObject ( string name, string typeName ) : void
DestroyOverlay ( string name ) : void

Destroys the named Overlay.

DestroySceneNode ( SceneNode node ) : void

Destroys and removes a node from the scene.

DestroySceneNode ( string name ) : void

Destroys and removes a node from the scene.

DestroyStaticGeometry ( StaticGeometry geom ) : void

Remove & destroy a StaticGeometry instance.

DestroyStaticGeometry ( string name ) : void

Remove & destroy a StaticGeometry instance.

EstimateWorldGeometry ( Stream stream ) : int

Estimate the number of loading stages required to load the named world geometry.

Operates just like the version of this method which takes a filename, but operates on a stream instead. Note that since the stream is updated, you'll need to reset the stream or reopen it when it comes to loading it for real.

EstimateWorldGeometry ( Stream stream, string typeName ) : int

Estimates the world geometry.

Operates just like the version of this method which takes a filename, but operates on a stream instead. Note that since the stream is updated, you'll need to reset the stream or reopen it when it comes to loading it for real.

EstimateWorldGeometry ( string fileName ) : int

Estimate the number of loading stages required to load the named world geometry.

This method should be overridden by SceneManagers that provide custom world geometry that can take some time to load. They should return from this method a count of the number of stages of progress they can report on whilst loading. During real loading (setWorldGeomtry), they should call exactly that number of times when loading the geometry for real.

ExtractAllMovableObjectsByType ( string typeName ) : void
ExtractMovableObject ( Axiom.Core.MovableObject m ) : void
ExtractMovableObject ( string name, string typeName ) : void
FindVisibleObjects ( Camera camera, bool onlyShadowCasters ) : void

Internal method which parses the scene to find visible objects to render.

If you're implementing a custom scene manager, this is the most important method to override since it's here you can apply your custom world partitioning scheme. Once you have added the appropriate objects to the render queue, you can let the default SceneManager objects RenderVisibleObjects handle the actual rendering of the objects you pick.

Any visible objects will be added to a rendering queue, which is indexed by material in order to ensure objects with the same material are rendered together to minimise render state changes.

GetAnimation ( string name ) : Animation

Retreives the animation with the specified name.

GetAnimationState ( string name ) : AnimationState

Retreives the AnimationState with the specified name.

GetBillboardSet ( string name ) : BillboardSet

Retreives the BillboardSet with the specified name.

GetCamera ( string name ) : Camera

Retreives the camera with the specified name.

GetEntity ( string name ) : Entity

Retreives the scene node with the specified name.

GetLight ( string name ) : Light

Retreives the light with the specified name.

GetManualObject ( string name ) : ManualObject

Retrieves the named ManualObject.

GetMaterial ( System.UInt64 handle ) : Material

Returns the material with the specified handle.

GetMaterial ( string name ) : Material

Returns the material with the specified name.

GetMovableObject ( string name, string typeName ) : Axiom.Core.MovableObject
GetMovableObjectCollection ( string typeName ) : Axiom.Collections.MovableObjectCollection
GetMovableText ( string name ) : MovableText

Retrieves the named MovableText.

GetOverlay ( string name ) : Overlay

Gets a the named Overlay, previously created using CreateOverlay.

GetRenderQueue ( ) : RenderQueue

Retrieves the internal render queue.

GetRibbonTrail ( string name ) : RibbonTrail
GetSceneNode ( string name ) : SceneNode

Retreives the scene node with the specified name.

GetStaticGeometry ( string name ) : StaticGeometry

Retrieve a previously created StaticGeometry instance.

GetSuggestedViewpoint ( bool random ) : ViewPoint

Asks the SceneManager to provide a suggested viewpoint from which the scene should be viewed.

Typically this method returns the origin unless a) world geometry has been loaded using SceneManager.LoadWorldGeometry and b) that world geometry has suggested 'start' points. If there is more than one viewpoint which the scene manager can suggest, it will always suggest the first one unless the random parameter is true.

HasMovableObject ( string name, string typeName ) : bool
HasStaticGeometry ( string name ) : bool

Returns whether a static geometry instance with the given name exists. */

InjectMovableObject ( MovableObject m ) : void
InjectRenderWithPass ( Pass pass, IRenderable rend ) : void
InjectRenderWithPass ( Pass pass, IRenderable rend, bool shadowDerivation ) : void

Render something as if it came from the current queue.

LoadWorldGeometry ( string fileName ) : void

Loads the source of the 'world' geometry, i.e. the large, mainly static geometry making up the world e.g. rooms, landscape etc.

Depending on the type of SceneManager (subclasses will be specialized for particular world geometry types) you have requested via the Root or SceneManagerEnumerator classes, you can pass a filename to this method and it will attempt to load the world-level geometry for use. If you try to load an inappropriate type of world data an exception will be thrown. The default SceneManager cannot handle any sort of world geometry and so will always throw an exception. However subclasses like BspSceneManager can load particular types of world geometry e.g. "q3dm1.bsp".

ManualRender ( RenderOperation op, Pass pass, Viewport vp, Matrix4 worldMatrix, Matrix4 viewMatrix, Matrix4 projMatrix ) : void
ManualRender ( RenderOperation op, Pass pass, Viewport vp, Matrix4 worldMatrix, Matrix4 viewMatrix, Matrix4 projMatrix, bool doBeginEndFrame ) : void

Manual rendering method, for advanced users only.

This method allows you to send rendering commands through the pipeline on demand, bypassing any normal world processing. You should only use this if you really know what you're doing; the engine does lots of things for you that you really should let it do. However, there are times where it may be useful to have this manual interface, for example overlaying something on top of the scene.

Because this is an instant rendering method, timing is important. The best time to call it is from a RenderTarget event handler.

Don't call this method a lot, it's designed for rare (1 or 2 times per frame) use. Calling it regularly per frame will cause frame rate drops!

OverrideRootSceneNode ( SceneNode node ) : void

If set, only the selected node is rendered. To render all nodes, set to null.

PopulateLightList ( Vector3 position, float radius, LightList destList ) : void

Populate a light list with an ordered set of the lights which are closest

Note that since directional lights have no position, they are always considered closer than any point lights and as such will always take precedence.

Subclasses of the default SceneManager may wish to take into account other issues such as possible visibility of the light if that information is included in their data structures. This basic scenemanager simply orders by distance, eliminating those lights which are out of range.

The number of items in the list max exceed the maximum number of lights supported by the renderer, but the extraneous ones will never be used. In fact the limit will be imposed by Pass::getMaxSimultaneousLights.

PrepareWorldGeometry ( Stream stream, string typeName ) : void

Sets the source of the 'world' geometry, i.e. the large, mainly static geometry making up the world e.g. rooms, landscape etc. This function can be called before setWorldGeometry in a background thread, do to some slow tasks (e.g. IO) that do not involve the backend render system.

Depending on the type of SceneManager (subclasses will be specialised for particular world geometry types) you have requested via the Root or SceneManagerEnumerator classes, you can pass a stream to this method and it will attempt to load the world-level geometry for use. If the manager can only handle one input format the typeName parameter is not required. The stream passed will be read (and it's state updated).

PrepareWorldGeometry ( string filename ) : void

Sets the source of the 'world' geometry, i.e. the large, mainly static geometry making up the world e.g. rooms, landscape etc. This function can be called before setWorldGeometry in a background thread, do to some slow tasks (e.g. IO) that do not involve the backend render system.

Depending on the type of SceneManager (subclasses will be specialised for particular world geometry types) you have requested via the Root or SceneManagerEnumerator classes, you can pass a filename to this method and it will attempt to load the world-level geometry for use. If you try to load an inappropriate type of world data an exception will be thrown. The default SceneManager cannot handle any sort of world geometry and so will always throw an exception. However subclasses like BspSceneManager can load particular types of world geometry e.g. "q3dm1.bsp".

RekeySceneNode ( string oldName, SceneNode node ) : void
RemoveAllBillboardSets ( ) : void

Removes all billboardsets from the scene.

RemoveAllCameras ( ) : void

Removes all cameras from the scene.

RemoveAllEntities ( ) : void

Removes all entities from the scene.

RemoveAllLights ( ) : void

Removes all lights from the scene.

RemoveAllRibonTrails ( ) : void
RemoveBillboardSet ( BillboardSet billboardSet ) : void

Removes the specified BillboardSet from the scene.

This method removes a previously added BillboardSet from the scene.

RemoveBillboardSet ( string name ) : void

Removes a BillboardSet from the scene with the specified name.

This method removes a previously added BillboardSet from the scene.

RemoveCamera ( Camera camera ) : void

Removes the specified camera from the scene.

This method removes a previously added camera from the scene.

RemoveCamera ( string name ) : void

Removes a camera from the scene with the specified name.

This method removes a previously added camera from the scene.

RemoveEntity ( Entity entity ) : void

Removes the specified entity from the scene.

RemoveEntity ( string name ) : void

Removes the entity with the specified name from the scene.

RemoveLight ( Light light ) : void

Removes the specified light from the scene.

This method removes a previously added light from the scene.

RemoveLight ( string name ) : void

Removes a light from the scene with the specified name.

This method removes a previously added light from the scene.

RemoveRibbonTrail ( RibbonTrail ribbonTrail ) : void
RemoveRibbonTrail ( string name ) : void
ResetViewProjectionMode ( ) : void
RestoreRootSceneNode ( ) : void
SceneManager ( string name ) : System
SetFog ( FogMode mode, ColorEx color, float density ) : void

SetFog ( FogMode mode, ColorEx color, float density, float linearStart, float linearEnd ) : void

Sets the fogging mode applied to the scene.

This method sets up the scene-wide fogging effect. These settings apply to all geometry rendered, UNLESS the material with which it is rendered has it's own fog settings (see Material.SetFog).

SetPass ( Pass pass ) : Pass

If only the first parameter is supplied

SetPass ( Pass pass, bool evenIfSuppressed ) : Pass

If only the first two parameters are supplied

SetPass ( Pass pass, bool evenIfSuppressed, bool shadowDerivation ) : Pass

Internal method for setting up the renderstate for a rendering pass.

SetShadowTextureSettings ( ushort size, ushort count ) : void
SetShadowTextureSettings ( ushort size, ushort count, PixelFormat format ) : void

Sets the size and count of textures used in texture-based shadows.

See ShadowTextureSize and ShadowTextureCount for details, this method just allows you to change both at once, which can save on reallocation if the textures have already been created.

SetSkyBox ( bool enable, string materialName, float distance ) : void

Overloaded method.

SetSkyBox ( bool enable, string materialName, float distance, bool drawFirst, Quaternion orientation, string groupName ) : void

Enables / disables a 'sky box' i.e. a 6-sided box at constant distance from the camera representing the sky.

You could create a sky box yourself using the standard mesh and entity methods, but this creates a plane which the camera can never get closer or further away from - it moves with the camera. (you could create this effect by creating a world box which was attached to the same SceneNode as the Camera too, but this would only apply to a single camera whereas this skybox applies to any camera using this scene manager).

The material you use for the skybox can either contain layers which are single textures, or they can be cubic textures, i.e. made up of 6 images, one for each plane of the cube. See the TextureLayer class for more information.

SetSkyDome ( bool isEnabled, string materialName, float curvature, float tiling ) : void

SetSkyDome ( bool isEnabled, string materialName, float curvature, float tiling, float distance, bool drawFirst, Quaternion orientation, string groupName ) : void

SetSkyPlane ( bool enable, Plane plane, string materialName ) : void

Overload.

SetSkyPlane ( bool enable, Plane plane, string materialName, float scale, float tiling, bool drawFirst, float bow, string groupName ) : void

Enables / disables a 'sky plane' i.e. a plane at constant distance from the camera representing the sky.

SetWorldGeometry ( Stream stream ) : void
SetWorldGeometry ( Stream stream, string typeName ) : void
SetWorldGeometry ( string filename ) : void

보호된 메소드들

메소드 설명
CreateShadowTextures ( ushort size, ushort count, PixelFormat format ) : void

Internal method for creating shadow textures (texture-based shadows).

CreateSkyDomePlane ( BoxPlane plane, float curvature, float tiling, float distance, Quaternion orientation, string groupName ) : Axiom.Core.Mesh

CreateSkyboxPlane ( BoxPlane plane, float distance, Quaternion orientation, string groupName ) : Axiom.Core.Mesh

Utility method for creating the planes of a skybox.

DeriveShadowCasterPass ( Pass pass ) : Pass

Internal method for turning a regular pass into a shadow caster pass.

This is only used for texture shadows, basically we're trying to ensure that objects are rendered solid black. This method will usually return the standard solid black pass for all fixed function passes, but will merge in a vertex program and fudge the AutpoParamDataSource to set black lighting for passes with vertex programs.

DeriveShadowReceiverPass ( Pass pass ) : Pass

Internal method for turning a regular pass into a shadow receiver pass.

This is only used for texture shadows, basically we're trying to ensure that objects are rendered with a projective texture. This method will usually return a standard single-texture pass for all fixed function passes, but will merge in a vertex program for passes with vertex programs.

DestroyShadowTextures ( ) : void
EnsureShadowTexturesCreated ( ) : void
FindLightsAffectingFrustum ( Camera camera ) : void

Internal method for locating a list of lights which could be affecting the frustum.

Custom scene managers are encouraged to override this method to make use of their scene partitioning scheme to more efficiently locate lights, and to eliminate lights which may be occluded by word geometry.

FindShadowCastersForLight ( Light light, Camera camera ) : IList

Internal method for locating a list of shadow casters which could be affecting the frustum for a given light.

Custom scene managers are encouraged to override this method to add optimizations, and to add their own custom shadow casters (perhaps for world geometry)

InitRenderQueue ( ) : void

Internal method for initializing the render queue.

Subclasses can use this to install their own RenderQueue implementation.

InitShadowVolumeMaterials ( ) : void

Internal method for setting up materials for shadows.

NotifyLightsDirty ( ) : void

Advance method to increase the lights dirty counter due lights changed.

Scene manager tracking lights that affecting the frustum, if changes detected (the changes includes light list itself and the light's position and attenuation range), then increase the lights dirty counter. For some reason, you can call this method to force whole scene objects re-populate their light list. But near in mind, call to this method will harm performance, so should avoid if possible.

OnRenderQueueEnded ( RenderQueueGroupID group, string invocation ) : bool

Used to first the QueueEnded event.

OnRenderQueueStarted ( RenderQueueGroupID group, string invocation ) : bool

Used to first the QueueStarted event.

PrepareShadowTextures ( Camera camera, Viewport viewPort ) : void

Internal method for preparing shadow textures ready for use in a regular render

RenderAdditiveStencilShadowedQueueGroupObjects ( RenderQueueGroup group ) : void

Render a group with the added complexity of additive stencil shadows.

RenderBasicQueueGroupObjects ( RenderQueueGroup group ) : void

Render a group in the ordinary way

RenderModulativeStencilShadowedQueueGroupObjects ( RenderQueueGroup group ) : void

Render a group with the added complexity of modulative stencil shadows.

RenderModulativeTextureShadowedQueueGroupObjects ( RenderQueueGroup group ) : void

Render a group with the added complexity of modulative texture shadows.

RenderQueueGroupObjects ( RenderQueueGroup group ) : void

Render the objects in a given queue group.

RenderScene ( Camera camera, Viewport viewport, bool showOverlays ) : void

Prompts the class to send its contents to the renderer.

This method prompts the scene manager to send the contents of the scene it manages to the rendering pipeline, possibly preceded by some sorting, culling or other scene management tasks. Note that this method is not normally called directly by the user application; it is called automatically by the engine's rendering loop.

RenderShadowVolumesToStencil ( Light light, Camera camera ) : void

Internal method for rendering all the objects for a given light into the stencil buffer.

RenderSingleObject ( IRenderable renderable, Pass pass, bool doLightIteration ) : void
RenderSingleObject ( IRenderable renderable, Pass pass, bool doLightIteration, LightList manualLightList ) : void

Internal utility method for rendering a single object.

RenderSingleShadowVolumeToStencil ( ShadowRenderable sr, bool zfail, bool stencil2sided, LightList manualLightList, bool isSecondPass ) : void

Render a single shadow volume to the stencil buffer.

RenderSolidObjects ( System list, bool doLightIteration ) : void
RenderSolidObjects ( System list, bool doLightIteration, LightList manualLightList ) : void

Renders a set of solid objects.

RenderTextureShadowCasterQueueGroupObjects ( RenderQueueGroup group ) : void

Render a group rendering only shadow casters.

RenderTextureShadowReceiverQueueGroupObjects ( RenderQueueGroup group ) : void

Render a group rendering only shadow receivers.

RenderTransparentObjects ( List list, bool doLightIteration ) : void
RenderTransparentObjects ( List list, bool doLightIteration, LightList manualLightList ) : void

Renders a set of transparent objects.

RenderTransparentShadowCasterObjects ( List list, bool doLightIteration, LightList manualLightList ) : void

Render those objects in the transparent pass list which have shadow casting forced on

This function is intended to be used to render the shadows of transparent objects which have transparency_casts_shadows set to 'on' in their material

RenderVisibleObjects ( ) : void

Sends visible objects found in FindVisibleObjects to the rendering engine.

SetShadowVolumeStencilState ( bool secondPass, bool zfail, bool twoSided ) : void

Internal utility method for setting stencil state for rendering shadow volumes.

SetViewport ( Viewport viewport ) : void

Internal method for setting the destination viewport for the next render.

UpdateSceneGraph ( Camera camera ) : void

Internal method for updating the scene graph ie the tree of SceneNode instances managed by this class.

This must be done before issuing objects to the rendering pipeline, since derived transformations from parent nodes are not updated until required. This SceneManager is a basic implementation which simply updates all nodes from the root. This ensures the scene is up to date but requires all the nodes to be updated even if they are not visible. Subclasses could trim this such that only potentially visible nodes are updated.

UseRenderableViewProjection ( IRenderable renderable ) : void

Protected method used by RenderVisibleObjects to deal with renderables which override the camera's own view / projection materices.

ValidatePassForRendering ( Pass pass ) : bool

Internal method to validate whether a Pass should be allowed to render.

Called just before a pass is about to be used for rendering a group to allow the SceneManager to omit it if required. A return value of false skips this pass.

ValidateRenderableForRendering ( Pass pass, IRenderable renderable ) : bool

Internal method to validate whether a Renderable should be allowed to render.

Called just before a pass is about to be used for rendering a Renderable to allow the SceneManager to omit it if required. A return value of false skips it.

dispose ( bool disposeManagedResources ) : void

비공개 메소드들

메소드 설명
ApplySceneAnimations ( ) : void

Internal method for applying animations to scene nodes.

Uses the internally stored AnimationState objects to apply animation to SceneNodes.

CheckShadowCasters ( IList casters, PlaneBoundedVolume nearClipVol, Light light, bool extrudeInSoftware, bool finiteExtrude, bool zfailAlgo, Camera camera, float extrudeDistance, bool stencil2sided, LightList tmpLightList ) : void
DestroySceneNode ( SceneNode node, bool removeFromParent ) : void

Internal method to destroy and remove a node from the scene. Do not remove from parent by option.

EnableHardwareShadowExtrusion ( Light light, bool finiteExtrude ) : void
InitShadowCasterPass ( ) : void
InitShadowDebugPass ( ) : void
InitShadowModulativePass ( ) : void
InitShadowReceiverPass ( ) : void
InitShadowStencilPass ( ) : void
NotifyAutoTrackingSceneNode ( SceneNode node, bool autoTrack ) : void

Internal method for notifying the manager that a SceneNode is autotracking.

PrepareRenderQueue ( ) : void
QueueSkiesForRendering ( Camera camera ) : void

Internal method for queueing the sky objects with the params as previously set through SetSkyBox, SetSkyPlane and SetSkyDome.

RenderAdditiveTextureShadowedQueueGroupObjects ( RenderQueueGroup group ) : void

Render a group with the added complexity of additive texture shadows.

UpdateGpuProgramParameters ( Pass pass ) : void
UpdateRenderQueueGroupSplitOptions ( RenderQueueGroup group, bool suppressShadows, bool suppressRenderState ) : void
UpdateRenderQueueSplitOptions ( ) : void

메소드 상세

ClearScene() 공개 메소드

Empties the entire scene, inluding all SceneNodes, Entities, Lights, BillboardSets etc. Cameras are not deleted at this stage since they are still referenced by viewports, which are not destroyed during this process.
public ClearScene ( ) : void
리턴 void

CreateAABBRegionQuery() 공개 메소드

Creates a AxisAlignedBoxRegionSceneQuery for this scene manager.
This method creates a new instance of a query object for this scene manager, for querying for objects within a AxisAlignedBox region.
public CreateAABBRegionQuery ( ) : AxisAlignedBoxRegionSceneQuery
리턴 AxisAlignedBoxRegionSceneQuery

CreateAABBRegionQuery() 공개 메소드

Creates a AxisAlignedBoxRegionSceneQuery for this scene manager.
This method creates a new instance of a query object for this scene manager, for querying for objects within a AxisAlignedBox region.
public CreateAABBRegionQuery ( AxisAlignedBox box ) : AxisAlignedBoxRegionSceneQuery
box Axiom.Math.AxisAlignedBox AxisAlignedBox to use for the region query.
리턴 AxisAlignedBoxRegionSceneQuery

CreateAABBRegionQuery() 공개 메소드

Creates a AxisAlignedBoxRegionSceneQuery for this scene manager.
This method creates a new instance of a query object for this scene manager, for querying for objects within a AxisAlignedBox region.
public CreateAABBRegionQuery ( AxisAlignedBox box, uint mask ) : AxisAlignedBoxRegionSceneQuery
box Axiom.Math.AxisAlignedBox AxisAlignedBox to use for the region query.
mask uint Custom user defined flags to use for the query.
리턴 AxisAlignedBoxRegionSceneQuery

CreateAnimation() 공개 메소드

Creates an animation which can be used to animate scene nodes.
An animation is a collection of 'tracks' which over time change the position / orientation of Node objects. In this case, the animation will likely have tracks to modify the position / orientation of SceneNode objects, e.g. to make objects move along a path.

You don't need to use an Animation object to move objects around - you can do it yourself using the methods of the Node in your application. However, when you need relatively complex scripted animation, this is the class to use since it will interpolate between keyframes for you and generally make the whole process easier to manage.

A single animation can affect multiple Node objects (each AnimationTrack affects a single Node). In addition, through animation blending a single Node can be affected by multiple animations, although this is more useful when performing skeletal animation (see Skeleton.CreateAnimation).

public CreateAnimation ( string name, float length ) : Animation
name string
length float
리턴 Axiom.Animating.Animation

CreateAnimationState() 공개 메소드

Create an AnimationState object for managing application of animations.

You can create Animation objects for animating SceneNode obejcts using the CreateAnimation method. However, in order to actually apply those animations you have to call methods on Node and Animation in a particular order (namely Node.ResetToInitialState and Animation.Apply). To make this easier and to help track the current time position of animations, the AnimationState object is provided.

So if you don't want to control animation application manually, call this method, update the returned object as you like every frame and let SceneManager apply the animation state for you.

Remember, AnimationState objects are disabled by default at creation time. Turn them on when you want them using their Enabled property.

Note that any SceneNode affected by this automatic animation will have it's state reset to it's initial position before application of the animation. Unless specifically modified using Node.SetInitialState the Node assumes it's initial state is at the origin. If you want the base state of the SceneNode to be elsewhere, make your changes to the node using the standard transform methods, then call SetInitialState to 'bake' this reference position into the node.

public CreateAnimationState ( string animationName ) : AnimationState
animationName string
리턴 AnimationState

CreateBillboardSet() 공개 메소드

Overloaded method.
public CreateBillboardSet ( string name ) : BillboardSet
name string
리턴 BillboardSet

CreateBillboardSet() 공개 메소드

Creates a billboard set which can be uses for particles, sprites, etc.
public CreateBillboardSet ( string name, int poolSize ) : BillboardSet
name string
poolSize int
리턴 BillboardSet

CreateCamera() 공개 메소드

Creates a camera to be managed by this scene manager.
This camera can be added to the scene at a later time using the AttachObject method of the SceneNode class.
public CreateCamera ( string name ) : Camera
name string
리턴 Camera

CreateEntity() 공개 메소드

Create an Entity (instance of a discrete mesh).
public CreateEntity ( string name, Axiom.Core.Mesh mesh ) : Entity
name string The name to be given to the entity (must be unique).
mesh Axiom.Core.Mesh The mesh to use.
리턴 Entity

CreateEntity() 공개 메소드

Create an Entity (instance of a discrete mesh).
public CreateEntity ( string name, PrefabEntity prefab ) : Entity
name string The name to be given to the entity (must be unique).
prefab PrefabEntity The name of the mesh to load. Will be loaded if not already.
리턴 Entity

CreateEntity() 공개 메소드

Create an Entity (instance of a discrete mesh).
public CreateEntity ( string name, string meshName ) : Entity
name string The name to be given to the entity (must be unique).
meshName string The name of the mesh to load. Will be loaded if not already.
리턴 Entity

CreateIntersectionQuery() 공개 메소드

Creates an IntersectionSceneQuery for this scene manager.
This method creates a new instance of a query object for locating intersecting objects. See SceneQuery and IntersectionSceneQuery for full details.
public CreateIntersectionQuery ( ) : IntersectionSceneQuery
리턴 IntersectionSceneQuery

CreateIntersectionQuery() 공개 메소드

Creates an IntersectionSceneQuery for this scene manager.
This method creates a new instance of a query object for locating intersecting objects. See SceneQuery and IntersectionSceneQuery for full details.
public CreateIntersectionQuery ( uint mask ) : IntersectionSceneQuery
mask uint The query mask to apply to this query; can be used to filter out certain objects.
리턴 IntersectionSceneQuery

CreateLight() 공개 메소드

Creates a light that will be managed by this scene manager.
Lights can either be in a fixed position and independent of the scene graph, or they can be attached to SceneNodes so they derive their position from the parent node. Either way, they are created using this method so that the SceneManager manages their existence.
public CreateLight ( string name ) : Light
name string Name of the light to create.
리턴 Light

CreateManualObject() 공개 메소드

Create a ManualObject, an object which you populate with geometry manually through a GL immediate-mode style interface.
public CreateManualObject ( string name ) : ManualObject
name string /// The name to be given to the object (must be unique). ///
리턴 ManualObject

CreateMovableObject() 공개 메소드

public CreateMovableObject ( string name, string typeName, NamedParameterList para ) : Axiom.Core.MovableObject
name string
typeName string
para NamedParameterList
리턴 Axiom.Core.MovableObject

CreateMovableText() 공개 메소드

Create MovableText, 3D floating text which can me moved around your scene
public CreateMovableText ( string name, string caption, string fontName ) : MovableText
name string /// The name to be given to the object (must be unique). ///
caption string /// The text tyo display ///
fontName string /// The font to use for the text, must be already loaded as a resource. ///
리턴 MovableText

CreateOverlay() 공개 메소드

Creates a new Overlay.

Overlays can be used to render heads-up-displays (HUDs), menu systems, cockpits and any other 2D or 3D object you need to appear above the rest of the scene. See the Overlay class for more information.

NOTE: after creation, the Overlay is initially hidden. You can create as many overlays as you like ready to be displayed whenever. Just call Overlay.Show to display the overlay.

public CreateOverlay ( string name, int zorder ) : Overlay
name string The name to give the overlay, must be unique.
zorder int The zorder of the overlay relative to it's peers, higher zorders appear on top of lower ones.
리턴 Axiom.Overlays.Overlay

CreatePlaneBoundedVolumeQuery() 공개 메소드

Creates a PlaneBoundedVolumeListSceneQuery for this scene manager.
This method creates a new instance of a query object for this scene manager, for querying for objects within a PlaneBoundedVolumes region.
public CreatePlaneBoundedVolumeQuery ( ) : PlaneBoundedVolumeListSceneQuery
리턴 PlaneBoundedVolumeListSceneQuery

CreatePlaneBoundedVolumeQuery() 공개 메소드

Creates a PlaneBoundedVolumeListSceneQuery for this scene manager.
This method creates a new instance of a query object for this scene manager, for querying for objects within a PlaneBoundedVolumes region.
public CreatePlaneBoundedVolumeQuery ( PlaneBoundedVolumeList volumes ) : PlaneBoundedVolumeListSceneQuery
volumes PlaneBoundedVolumeList PlaneBoundedVolumeList to use for the region query.
리턴 PlaneBoundedVolumeListSceneQuery

CreatePlaneBoundedVolumeQuery() 공개 메소드

Creates a PlaneBoundedVolumeListSceneQuery for this scene manager.
This method creates a new instance of a query object for this scene manager, for querying for objects within a PlaneBoundedVolumes region.
public CreatePlaneBoundedVolumeQuery ( PlaneBoundedVolumeList volumes, uint mask ) : PlaneBoundedVolumeListSceneQuery
volumes PlaneBoundedVolumeList PlaneBoundedVolumeList to use for the region query.
mask uint Custom user defined flags to use for the query.
리턴 PlaneBoundedVolumeListSceneQuery

CreateRayQuery() 공개 메소드

Creates a query to return objects found along the ray.
public CreateRayQuery ( ) : RaySceneQuery
리턴 RaySceneQuery

CreateRayQuery() 공개 메소드

Creates a query to return objects found along the ray.
public CreateRayQuery ( Ray ray ) : RaySceneQuery
ray Axiom.Math.Ray Ray to use for the intersection query.
리턴 RaySceneQuery

CreateRayQuery() 공개 메소드

Creates a query to return objects found along the ray.
public CreateRayQuery ( Ray ray, uint mask ) : RaySceneQuery
ray Axiom.Math.Ray Ray to use for the intersection query.
mask uint
리턴 RaySceneQuery

CreateRibbonTrail() 공개 메소드

public CreateRibbonTrail ( string name ) : RibbonTrail
name string
리턴 RibbonTrail

CreateSceneNode() 공개 메소드

Creates an instance of a SceneNode.
Note that this does not add the SceneNode to the scene hierarchy. This method is for convenience, since it allows an instance to be created for which the SceneManager is responsible for allocating and releasing memory, which is convenient in complex scenes.

To include the returned SceneNode in the scene, use the AddChild method of the SceneNode which is to be it's parent.

Note that this method takes no parameters, and the node created is unnamed (it is actually given a generated name, which you can retrieve if you want). If you wish to create a node with a specific name, call the alternative method which takes a name parameter.

public CreateSceneNode ( ) : SceneNode
리턴 SceneNode

CreateSceneNode() 공개 메소드

Creates an instance of a SceneNode with a given name.
Note that this does not add the SceneNode to the scene hierarchy. This method is for convenience, since it allows an instance to be created for which the SceneManager is responsible for allocating and releasing memory, which is convenient in complex scenes.

To include the returned SceneNode in the scene, use the AddChild method of the SceneNode which is to be it's parent.

Note that this method takes a name parameter, which makes the node easier to retrieve directly again later.

public CreateSceneNode ( string name ) : SceneNode
name string
리턴 SceneNode

CreateShadowTextures() 보호된 메소드

Internal method for creating shadow textures (texture-based shadows).
protected CreateShadowTextures ( ushort size, ushort count, PixelFormat format ) : void
size ushort
count ushort
format PixelFormat
리턴 void

CreateSkyDomePlane() 보호된 메소드

protected CreateSkyDomePlane ( BoxPlane plane, float curvature, float tiling, float distance, Quaternion orientation, string groupName ) : Axiom.Core.Mesh
plane BoxPlane
curvature float
tiling float
distance float
orientation Axiom.Math.Quaternion
groupName string
리턴 Axiom.Core.Mesh

CreateSkyboxPlane() 보호된 메소드

Utility method for creating the planes of a skybox.
protected CreateSkyboxPlane ( BoxPlane plane, float distance, Quaternion orientation, string groupName ) : Axiom.Core.Mesh
plane BoxPlane
distance float
orientation Axiom.Math.Quaternion
groupName string
리턴 Axiom.Core.Mesh

CreateSphereRegionQuery() 공개 메소드

Creates a SphereRegionSceneQuery for this scene manager.
This method creates a new instance of a query object for this scene manager, for querying for objects within a spherical region.
public CreateSphereRegionQuery ( ) : SphereRegionSceneQuery
리턴 SphereRegionSceneQuery

CreateSphereRegionQuery() 공개 메소드

Creates a SphereRegionSceneQuery for this scene manager.
This method creates a new instance of a query object for this scene manager, for querying for objects within a spherical region.
public CreateSphereRegionQuery ( Sphere sphere ) : SphereRegionSceneQuery
sphere Axiom.Math.Sphere Sphere to use for the region query.
리턴 SphereRegionSceneQuery

CreateSphereRegionQuery() 공개 메소드

Creates a SphereRegionSceneQuery for this scene manager.
This method creates a new instance of a query object for this scene manager, for querying for objects within a spherical region.
public CreateSphereRegionQuery ( Sphere sphere, uint mask ) : SphereRegionSceneQuery
sphere Axiom.Math.Sphere Sphere to use for the region query.
mask uint Custom user defined flags to use for the query.
리턴 SphereRegionSceneQuery

CreateStaticGeometry() 공개 메소드

Creates a StaticGeometry instance suitable for use with this SceneManager.
StaticGeometry is a way of batching up geometry into a more efficient form at the expense of being able to move it. Please read the StaticGeometry class documentation for full information.
public CreateStaticGeometry ( string name, int logLevel ) : StaticGeometry
name string The name to give the new object
logLevel int
리턴 StaticGeometry

DeriveShadowCasterPass() 보호된 메소드

Internal method for turning a regular pass into a shadow caster pass.
This is only used for texture shadows, basically we're trying to ensure that objects are rendered solid black. This method will usually return the standard solid black pass for all fixed function passes, but will merge in a vertex program and fudge the AutpoParamDataSource to set black lighting for passes with vertex programs.
protected DeriveShadowCasterPass ( Pass pass ) : Pass
pass Axiom.Graphics.Pass
리턴 Axiom.Graphics.Pass

DeriveShadowReceiverPass() 보호된 메소드

Internal method for turning a regular pass into a shadow receiver pass.
This is only used for texture shadows, basically we're trying to ensure that objects are rendered with a projective texture. This method will usually return a standard single-texture pass for all fixed function passes, but will merge in a vertex program for passes with vertex programs.
protected DeriveShadowReceiverPass ( Pass pass ) : Pass
pass Axiom.Graphics.Pass
리턴 Axiom.Graphics.Pass

DestroyAllAnimationStates() 공개 메소드

Removes all AnimationStates created using this SceneManager.
public DestroyAllAnimationStates ( ) : void
리턴 void

DestroyAllAnimations() 공개 메소드

Removes all animations created using this SceneManager.
public DestroyAllAnimations ( ) : void
리턴 void

DestroyAllCameras() 공개 메소드

Destroy all cameras managed by this SceneManager Method added with MovableObject Factories.
public DestroyAllCameras ( ) : void
리턴 void

DestroyAllMovableObjects() 공개 메소드

public DestroyAllMovableObjects ( ) : void
리턴 void

DestroyAllMovableObjectsByType() 공개 메소드

public DestroyAllMovableObjectsByType ( string typeName ) : void
typeName string
리턴 void

DestroyAllOverlays() 공개 메소드

Destroys all the overlays.
public DestroyAllOverlays ( ) : void
리턴 void

DestroyAllStaticGeometry() 공개 메소드

Destroy all StaticGeometry instances.
public DestroyAllStaticGeometry ( ) : void
리턴 void

DestroyAnimation() 공개 메소드

Destroys an Animation.
public DestroyAnimation ( string name ) : void
name string
리턴 void

DestroyAnimationState() 공개 메소드

Destroys an AnimationState.
public DestroyAnimationState ( string name ) : void
name string
리턴 void

DestroyCamera() 공개 메소드

public DestroyCamera ( Camera camera ) : void
camera Camera
리턴 void

DestroyMovableObject() 공개 메소드

public DestroyMovableObject ( Axiom.Core.MovableObject m ) : void
m Axiom.Core.MovableObject
리턴 void

DestroyMovableObject() 공개 메소드

public DestroyMovableObject ( string name, string typeName ) : void
name string
typeName string
리턴 void

DestroyOverlay() 공개 메소드

Destroys the named Overlay.
public DestroyOverlay ( string name ) : void
name string
리턴 void

DestroySceneNode() 공개 메소드

Destroys and removes a node from the scene.
public DestroySceneNode ( SceneNode node ) : void
node SceneNode A SceneNode
리턴 void

DestroySceneNode() 공개 메소드

Destroys and removes a node from the scene.
public DestroySceneNode ( string name ) : void
name string
리턴 void

DestroyShadowTextures() 보호된 메소드

protected DestroyShadowTextures ( ) : void
리턴 void

DestroyStaticGeometry() 공개 메소드

Remove & destroy a StaticGeometry instance.
public DestroyStaticGeometry ( StaticGeometry geom ) : void
geom StaticGeometry
리턴 void

DestroyStaticGeometry() 공개 메소드

Remove & destroy a StaticGeometry instance.
public DestroyStaticGeometry ( string name ) : void
name string
리턴 void

EnsureShadowTexturesCreated() 보호된 메소드

protected EnsureShadowTexturesCreated ( ) : void
리턴 void

EstimateWorldGeometry() 공개 메소드

Estimate the number of loading stages required to load the named world geometry.
Operates just like the version of this method which takes a filename, but operates on a stream instead. Note that since the stream is updated, you'll need to reset the stream or reopen it when it comes to loading it for real.
public EstimateWorldGeometry ( Stream stream ) : int
stream Stream Data stream containing data to load
리턴 int

EstimateWorldGeometry() 공개 메소드

Estimates the world geometry.
Operates just like the version of this method which takes a filename, but operates on a stream instead. Note that since the stream is updated, you'll need to reset the stream or reopen it when it comes to loading it for real.
public EstimateWorldGeometry ( Stream stream, string typeName ) : int
stream Stream Data stream containing data to load
typeName string Identifies the type of world geometry /// contained in the stream - not required if this manager only /// supports one type of world geometry.
리턴 int

EstimateWorldGeometry() 공개 메소드

Estimate the number of loading stages required to load the named world geometry.
This method should be overridden by SceneManagers that provide custom world geometry that can take some time to load. They should return from this method a count of the number of stages of progress they can report on whilst loading. During real loading (setWorldGeomtry), they should call exactly that number of times when loading the geometry for real.
public EstimateWorldGeometry ( string fileName ) : int
fileName string Name of the file.
리턴 int

ExtractAllMovableObjectsByType() 공개 메소드

public ExtractAllMovableObjectsByType ( string typeName ) : void
typeName string
리턴 void

ExtractMovableObject() 공개 메소드

public ExtractMovableObject ( Axiom.Core.MovableObject m ) : void
m Axiom.Core.MovableObject
리턴 void

ExtractMovableObject() 공개 메소드

public ExtractMovableObject ( string name, string typeName ) : void
name string
typeName string
리턴 void

FindLightsAffectingFrustum() 보호된 메소드

Internal method for locating a list of lights which could be affecting the frustum.
Custom scene managers are encouraged to override this method to make use of their scene partitioning scheme to more efficiently locate lights, and to eliminate lights which may be occluded by word geometry.
protected FindLightsAffectingFrustum ( Camera camera ) : void
camera Camera Camera to find lights within it's view.
리턴 void

FindShadowCastersForLight() 보호된 메소드

Internal method for locating a list of shadow casters which could be affecting the frustum for a given light.
Custom scene managers are encouraged to override this method to add optimizations, and to add their own custom shadow casters (perhaps for world geometry)
protected FindShadowCastersForLight ( Light light, Camera camera ) : IList
light Light
camera Camera
리턴 IList

FindVisibleObjects() 공개 메소드

Internal method which parses the scene to find visible objects to render.
If you're implementing a custom scene manager, this is the most important method to override since it's here you can apply your custom world partitioning scheme. Once you have added the appropriate objects to the render queue, you can let the default SceneManager objects RenderVisibleObjects handle the actual rendering of the objects you pick.

Any visible objects will be added to a rendering queue, which is indexed by material in order to ensure objects with the same material are rendered together to minimise render state changes.

public FindVisibleObjects ( Camera camera, bool onlyShadowCasters ) : void
camera Camera
onlyShadowCasters bool
리턴 void

GetAnimation() 공개 메소드

Retreives the animation with the specified name.
public GetAnimation ( string name ) : Animation
name string
리턴 Axiom.Animating.Animation

GetAnimationState() 공개 메소드

Retreives the AnimationState with the specified name.
public GetAnimationState ( string name ) : AnimationState
name string
리턴 AnimationState

GetBillboardSet() 공개 메소드

Retreives the BillboardSet with the specified name.
public GetBillboardSet ( string name ) : BillboardSet
name string
리턴 BillboardSet

GetCamera() 공개 메소드

Retreives the camera with the specified name.
public GetCamera ( string name ) : Camera
name string
리턴 Camera

GetEntity() 공개 메소드

Retreives the scene node with the specified name.
public GetEntity ( string name ) : Entity
name string
리턴 Entity

GetLight() 공개 메소드

Retreives the light with the specified name.
public GetLight ( string name ) : Light
name string
리턴 Light

GetManualObject() 공개 메소드

Retrieves the named ManualObject.
/// Thrown if the names does not exists in the collection. ///
public GetManualObject ( string name ) : ManualObject
name string /// The name of the object to retrieve. ///
리턴 ManualObject

GetMaterial() 공개 메소드

Returns the material with the specified handle.
public GetMaterial ( System.UInt64 handle ) : Material
handle System.UInt64 Handle of the material to retrieve.
리턴 Axiom.Graphics.Material

GetMaterial() 공개 메소드

Returns the material with the specified name.
public GetMaterial ( string name ) : Material
name string Name of the material to retrieve.
리턴 Axiom.Graphics.Material

GetMovableObject() 공개 메소드

public GetMovableObject ( string name, string typeName ) : Axiom.Core.MovableObject
name string
typeName string
리턴 Axiom.Core.MovableObject

GetMovableObjectCollection() 공개 메소드

public GetMovableObjectCollection ( string typeName ) : Axiom.Collections.MovableObjectCollection
typeName string
리턴 Axiom.Collections.MovableObjectCollection

GetMovableText() 공개 메소드

Retrieves the named MovableText.
/// Thrown if the names does not exists in the collection. ///
public GetMovableText ( string name ) : MovableText
name string /// The name of the object to retrieve. ///
리턴 MovableText

GetOverlay() 공개 메소드

Gets a the named Overlay, previously created using CreateOverlay.
public GetOverlay ( string name ) : Overlay
name string
리턴 Axiom.Overlays.Overlay

GetRenderQueue() 공개 메소드

Retrieves the internal render queue.
public GetRenderQueue ( ) : RenderQueue
리턴 Axiom.Graphics.RenderQueue

GetRibbonTrail() 공개 메소드

public GetRibbonTrail ( string name ) : RibbonTrail
name string
리턴 RibbonTrail

GetSceneNode() 공개 메소드

Retreives the scene node with the specified name.
public GetSceneNode ( string name ) : SceneNode
name string
리턴 SceneNode

GetStaticGeometry() 공개 메소드

Retrieve a previously created StaticGeometry instance.
public GetStaticGeometry ( string name ) : StaticGeometry
name string
리턴 StaticGeometry

GetSuggestedViewpoint() 공개 메소드

Asks the SceneManager to provide a suggested viewpoint from which the scene should be viewed.
Typically this method returns the origin unless a) world geometry has been loaded using SceneManager.LoadWorldGeometry and b) that world geometry has suggested 'start' points. If there is more than one viewpoint which the scene manager can suggest, it will always suggest the first one unless the random parameter is true.
public GetSuggestedViewpoint ( bool random ) : ViewPoint
random bool /// If true, and there is more than one possible suggestion, a random one will be used. If false /// the same one will always be suggested. ///
리턴 ViewPoint

HasMovableObject() 공개 메소드

public HasMovableObject ( string name, string typeName ) : bool
name string
typeName string
리턴 bool

HasStaticGeometry() 공개 메소드

Returns whether a static geometry instance with the given name exists. */
public HasStaticGeometry ( string name ) : bool
name string
리턴 bool

InitRenderQueue() 보호된 메소드

Internal method for initializing the render queue.
Subclasses can use this to install their own RenderQueue implementation.
protected InitRenderQueue ( ) : void
리턴 void

InitShadowVolumeMaterials() 보호된 메소드

Internal method for setting up materials for shadows.
protected InitShadowVolumeMaterials ( ) : void
리턴 void

InjectMovableObject() 공개 메소드

public InjectMovableObject ( MovableObject m ) : void
m MovableObject
리턴 void

InjectRenderWithPass() 공개 메소드

public InjectRenderWithPass ( Pass pass, IRenderable rend ) : void
pass Pass
rend IRenderable
리턴 void

InjectRenderWithPass() 공개 메소드

Render something as if it came from the current queue.
public InjectRenderWithPass ( Pass pass, IRenderable rend, bool shadowDerivation ) : void
pass Pass Material pass to use for setting up this quad.
rend IRenderable Renderable to render
shadowDerivation bool Whether passes should be replaced with shadow caster / receiver passes
리턴 void

LoadWorldGeometry() 공개 메소드

Loads the source of the 'world' geometry, i.e. the large, mainly static geometry making up the world e.g. rooms, landscape etc.
Depending on the type of SceneManager (subclasses will be specialized for particular world geometry types) you have requested via the Root or SceneManagerEnumerator classes, you can pass a filename to this method and it will attempt to load the world-level geometry for use. If you try to load an inappropriate type of world data an exception will be thrown. The default SceneManager cannot handle any sort of world geometry and so will always throw an exception. However subclasses like BspSceneManager can load particular types of world geometry e.g. "q3dm1.bsp".
public LoadWorldGeometry ( string fileName ) : void
fileName string
리턴 void

ManualRender() 공개 메소드

public ManualRender ( RenderOperation op, Pass pass, Viewport vp, Matrix4 worldMatrix, Matrix4 viewMatrix, Matrix4 projMatrix ) : void
op RenderOperation
pass Pass
vp Viewport
worldMatrix Matrix4
viewMatrix Matrix4
projMatrix Matrix4
리턴 void

ManualRender() 공개 메소드

Manual rendering method, for advanced users only.
This method allows you to send rendering commands through the pipeline on demand, bypassing any normal world processing. You should only use this if you really know what you're doing; the engine does lots of things for you that you really should let it do. However, there are times where it may be useful to have this manual interface, for example overlaying something on top of the scene.

Because this is an instant rendering method, timing is important. The best time to call it is from a RenderTarget event handler.

Don't call this method a lot, it's designed for rare (1 or 2 times per frame) use. Calling it regularly per frame will cause frame rate drops!

public ManualRender ( RenderOperation op, Pass pass, Viewport vp, Matrix4 worldMatrix, Matrix4 viewMatrix, Matrix4 projMatrix, bool doBeginEndFrame ) : void
op RenderOperation A RenderOperation object describing the rendering op.
pass Pass The Pass to use for this render.
vp Viewport Reference to the viewport to render to.
worldMatrix Matrix4 The transform to apply from object to world space.
viewMatrix Matrix4 The transform to apply from object to view space.
projMatrix Matrix4 The transform to apply from view to screen space.
doBeginEndFrame bool /// If true, BeginFrame() and EndFrame() are called, otherwise not. /// You should leave this as false if you are calling this within the main render loop. ///
리턴 void

NotifyLightsDirty() 보호된 메소드

Advance method to increase the lights dirty counter due lights changed.
Scene manager tracking lights that affecting the frustum, if changes detected (the changes includes light list itself and the light's position and attenuation range), then increase the lights dirty counter. For some reason, you can call this method to force whole scene objects re-populate their light list. But near in mind, call to this method will harm performance, so should avoid if possible.
protected NotifyLightsDirty ( ) : void
리턴 void

OnRenderQueueEnded() 보호된 메소드

Used to first the QueueEnded event.
protected OnRenderQueueEnded ( RenderQueueGroupID group, string invocation ) : bool
group RenderQueueGroupID
invocation string
리턴 bool

OnRenderQueueStarted() 보호된 메소드

Used to first the QueueStarted event.
protected OnRenderQueueStarted ( RenderQueueGroupID group, string invocation ) : bool
group RenderQueueGroupID
invocation string
리턴 bool

OverrideRootSceneNode() 공개 메소드

If set, only the selected node is rendered. To render all nodes, set to null.
public OverrideRootSceneNode ( SceneNode node ) : void
node SceneNode
리턴 void

PopulateLightList() 공개 메소드

Populate a light list with an ordered set of the lights which are closest

Note that since directional lights have no position, they are always considered closer than any point lights and as such will always take precedence.

Subclasses of the default SceneManager may wish to take into account other issues such as possible visibility of the light if that information is included in their data structures. This basic scenemanager simply orders by distance, eliminating those lights which are out of range.

The number of items in the list max exceed the maximum number of lights supported by the renderer, but the extraneous ones will never be used. In fact the limit will be imposed by Pass::getMaxSimultaneousLights.

public PopulateLightList ( Vector3 position, float radius, LightList destList ) : void
position Vector3 The position at which to evaluate the list of lights
radius float The bounding radius to test
destList LightList List to be populated with ordered set of lights; will be cleared by this method before population.
리턴 void

PrepareShadowTextures() 보호된 메소드

Internal method for preparing shadow textures ready for use in a regular render
protected PrepareShadowTextures ( Camera camera, Viewport viewPort ) : void
camera Camera
viewPort Viewport
리턴 void

PrepareWorldGeometry() 공개 메소드

Sets the source of the 'world' geometry, i.e. the large, mainly static geometry making up the world e.g. rooms, landscape etc. This function can be called before setWorldGeometry in a background thread, do to some slow tasks (e.g. IO) that do not involve the backend render system.
Depending on the type of SceneManager (subclasses will be specialised for particular world geometry types) you have requested via the Root or SceneManagerEnumerator classes, you can pass a stream to this method and it will attempt to load the world-level geometry for use. If the manager can only handle one input format the typeName parameter is not required. The stream passed will be read (and it's state updated).
public PrepareWorldGeometry ( Stream stream, string typeName ) : void
stream Stream Data stream containing data to load
typeName string String identifying the type of world geometry /// contained in the stream - not required if this manager only /// supports one type of world geometry. ///
리턴 void

PrepareWorldGeometry() 공개 메소드

Sets the source of the 'world' geometry, i.e. the large, mainly static geometry making up the world e.g. rooms, landscape etc. This function can be called before setWorldGeometry in a background thread, do to some slow tasks (e.g. IO) that do not involve the backend render system.
Depending on the type of SceneManager (subclasses will be specialised for particular world geometry types) you have requested via the Root or SceneManagerEnumerator classes, you can pass a filename to this method and it will attempt to load the world-level geometry for use. If you try to load an inappropriate type of world data an exception will be thrown. The default SceneManager cannot handle any sort of world geometry and so will always throw an exception. However subclasses like BspSceneManager can load particular types of world geometry e.g. "q3dm1.bsp".
public PrepareWorldGeometry ( string filename ) : void
filename string
리턴 void

RekeySceneNode() 공개 메소드

public RekeySceneNode ( string oldName, SceneNode node ) : void
oldName string
node SceneNode
리턴 void

RemoveAllBillboardSets() 공개 메소드

Removes all billboardsets from the scene.
public RemoveAllBillboardSets ( ) : void
리턴 void

RemoveAllCameras() 공개 메소드

Removes all cameras from the scene.
public RemoveAllCameras ( ) : void
리턴 void

RemoveAllEntities() 공개 메소드

Removes all entities from the scene.
public RemoveAllEntities ( ) : void
리턴 void

RemoveAllLights() 공개 메소드

Removes all lights from the scene.
public RemoveAllLights ( ) : void
리턴 void

RemoveAllRibonTrails() 공개 메소드

public RemoveAllRibonTrails ( ) : void
리턴 void

RemoveBillboardSet() 공개 메소드

Removes the specified BillboardSet from the scene.
This method removes a previously added BillboardSet from the scene.
public RemoveBillboardSet ( BillboardSet billboardSet ) : void
billboardSet BillboardSet Reference to the BillboardSet to remove.
리턴 void

RemoveBillboardSet() 공개 메소드

Removes a BillboardSet from the scene with the specified name.
This method removes a previously added BillboardSet from the scene.
public RemoveBillboardSet ( string name ) : void
name string Name of the BillboardSet to remove.
리턴 void

RemoveCamera() 공개 메소드

Removes the specified camera from the scene.
This method removes a previously added camera from the scene.
public RemoveCamera ( Camera camera ) : void
camera Camera Reference to the camera to remove.
리턴 void

RemoveCamera() 공개 메소드

Removes a camera from the scene with the specified name.
This method removes a previously added camera from the scene.
public RemoveCamera ( string name ) : void
name string Name of the camera to remove.
리턴 void

RemoveEntity() 공개 메소드

Removes the specified entity from the scene.
public RemoveEntity ( Entity entity ) : void
entity Entity Entity to remove from the scene.
리턴 void

RemoveEntity() 공개 메소드

Removes the entity with the specified name from the scene.
public RemoveEntity ( string name ) : void
name string Entity to remove from the scene.
리턴 void

RemoveLight() 공개 메소드

Removes the specified light from the scene.
This method removes a previously added light from the scene.
public RemoveLight ( Light light ) : void
light Light Reference to the light to remove.
리턴 void

RemoveLight() 공개 메소드

Removes a light from the scene with the specified name.
This method removes a previously added light from the scene.
public RemoveLight ( string name ) : void
name string Name of the light to remove.
리턴 void

RemoveRibbonTrail() 공개 메소드

public RemoveRibbonTrail ( RibbonTrail ribbonTrail ) : void
ribbonTrail RibbonTrail
리턴 void

RemoveRibbonTrail() 공개 메소드

public RemoveRibbonTrail ( string name ) : void
name string
리턴 void

RenderAdditiveStencilShadowedQueueGroupObjects() 보호된 메소드

Render a group with the added complexity of additive stencil shadows.
protected RenderAdditiveStencilShadowedQueueGroupObjects ( RenderQueueGroup group ) : void
group RenderQueueGroup Render queue group.
리턴 void

RenderBasicQueueGroupObjects() 보호된 메소드

Render a group in the ordinary way
protected RenderBasicQueueGroupObjects ( RenderQueueGroup group ) : void
group RenderQueueGroup Group containing the objects to render.
리턴 void

RenderModulativeStencilShadowedQueueGroupObjects() 보호된 메소드

Render a group with the added complexity of modulative stencil shadows.
protected RenderModulativeStencilShadowedQueueGroupObjects ( RenderQueueGroup group ) : void
group RenderQueueGroup Render queue group.
리턴 void

RenderModulativeTextureShadowedQueueGroupObjects() 보호된 메소드

Render a group with the added complexity of modulative texture shadows.
protected RenderModulativeTextureShadowedQueueGroupObjects ( RenderQueueGroup group ) : void
group RenderQueueGroup Render queue group.
리턴 void

RenderQueueGroupObjects() 보호된 메소드

Render the objects in a given queue group.
protected RenderQueueGroupObjects ( RenderQueueGroup group ) : void
group RenderQueueGroup Group containing the objects to render.
리턴 void

RenderScene() 보호된 메소드

Prompts the class to send its contents to the renderer.
This method prompts the scene manager to send the contents of the scene it manages to the rendering pipeline, possibly preceded by some sorting, culling or other scene management tasks. Note that this method is not normally called directly by the user application; it is called automatically by the engine's rendering loop.
protected RenderScene ( Camera camera, Viewport viewport, bool showOverlays ) : void
camera Camera Pointer to a camera from whose viewpoint the scene is to be rendered.
viewport Viewport The target viewport
showOverlays bool Whether or not any overlay objects should be rendered
리턴 void

RenderShadowVolumesToStencil() 보호된 메소드

Internal method for rendering all the objects for a given light into the stencil buffer.
protected RenderShadowVolumesToStencil ( Light light, Camera camera ) : void
light Light The light source.
camera Camera The camera being viewed from.
리턴 void

RenderSingleObject() 보호된 메소드

protected RenderSingleObject ( IRenderable renderable, Pass pass, bool doLightIteration ) : void
renderable IRenderable
pass Pass
doLightIteration bool
리턴 void

RenderSingleObject() 보호된 메소드

Internal utility method for rendering a single object.
protected RenderSingleObject ( IRenderable renderable, Pass pass, bool doLightIteration, LightList manualLightList ) : void
renderable IRenderable The renderable to issue to the pipeline.
pass Pass The pass which is being used.
doLightIteration bool If true, this method will issue the renderable to /// the pipeline possibly multiple times, if the pass indicates it should be /// done once per light.
manualLightList LightList Only applicable if 'doLightIteration' is false, this /// method allows you to pass in a previously determined set of lights /// which will be used for a single render of this object.
리턴 void

RenderSingleShadowVolumeToStencil() 보호된 메소드

Render a single shadow volume to the stencil buffer.
protected RenderSingleShadowVolumeToStencil ( ShadowRenderable sr, bool zfail, bool stencil2sided, LightList manualLightList, bool isSecondPass ) : void
sr ShadowRenderable
zfail bool
stencil2sided bool
manualLightList LightList
isSecondPass bool
리턴 void

RenderSolidObjects() 보호된 메소드

protected RenderSolidObjects ( System list, bool doLightIteration ) : void
list System
doLightIteration bool
리턴 void

RenderSolidObjects() 보호된 메소드

Renders a set of solid objects.
protected RenderSolidObjects ( System list, bool doLightIteration, LightList manualLightList ) : void
list System
doLightIteration bool
manualLightList LightList
리턴 void

RenderTextureShadowCasterQueueGroupObjects() 보호된 메소드

Render a group rendering only shadow casters.
protected RenderTextureShadowCasterQueueGroupObjects ( RenderQueueGroup group ) : void
group RenderQueueGroup Render queue group.
리턴 void

RenderTextureShadowReceiverQueueGroupObjects() 보호된 메소드

Render a group rendering only shadow receivers.
protected RenderTextureShadowReceiverQueueGroupObjects ( RenderQueueGroup group ) : void
group RenderQueueGroup Render queue group.
리턴 void

RenderTransparentObjects() 보호된 메소드

protected RenderTransparentObjects ( List list, bool doLightIteration ) : void
list List
doLightIteration bool
리턴 void

RenderTransparentObjects() 보호된 메소드

Renders a set of transparent objects.
protected RenderTransparentObjects ( List list, bool doLightIteration, LightList manualLightList ) : void
list List
doLightIteration bool
manualLightList LightList
리턴 void

RenderTransparentShadowCasterObjects() 보호된 메소드

Render those objects in the transparent pass list which have shadow casting forced on
This function is intended to be used to render the shadows of transparent objects which have transparency_casts_shadows set to 'on' in their material
protected RenderTransparentShadowCasterObjects ( List list, bool doLightIteration, LightList manualLightList ) : void
list List
doLightIteration bool
manualLightList LightList
리턴 void

RenderVisibleObjects() 보호된 메소드

Sends visible objects found in FindVisibleObjects to the rendering engine.
protected RenderVisibleObjects ( ) : void
리턴 void

ResetViewProjectionMode() 공개 메소드

public ResetViewProjectionMode ( ) : void
리턴 void

RestoreRootSceneNode() 공개 메소드

public RestoreRootSceneNode ( ) : void
리턴 void

SceneManager() 공개 메소드

public SceneManager ( string name ) : System
name string
리턴 System

SetFog() 공개 메소드

public SetFog ( FogMode mode, ColorEx color, float density ) : void
mode FogMode
color ColorEx
density float
리턴 void

SetFog() 공개 메소드

Sets the fogging mode applied to the scene.
This method sets up the scene-wide fogging effect. These settings apply to all geometry rendered, UNLESS the material with which it is rendered has it's own fog settings (see Material.SetFog).
public SetFog ( FogMode mode, ColorEx color, float density, float linearStart, float linearEnd ) : void
mode FogMode Set up the mode of fog as described in the FogMode /// enum, or set to FogMode.None to turn off.
color ColorEx The color of the fog. Either set this to the same /// as your viewport background color, or to blend in with a skydome or skybox.
density float The density of the fog in Exp or Exp2. /// mode, as a value between 0 and 1. The default is 0.001.
linearStart float Distance in world units at which linear fog starts to /// encroach. Only applicable if mode is
linearEnd float Distance in world units at which linear fog becomes completely /// opaque. Only applicable if mode is
리턴 void

SetPass() 공개 메소드

If only the first parameter is supplied
public SetPass ( Pass pass ) : Pass
pass Pass
리턴 Pass

SetPass() 공개 메소드

If only the first two parameters are supplied
public SetPass ( Pass pass, bool evenIfSuppressed ) : Pass
pass Pass
evenIfSuppressed bool
리턴 Pass

SetPass() 공개 메소드

Internal method for setting up the renderstate for a rendering pass.
public SetPass ( Pass pass, bool evenIfSuppressed, bool shadowDerivation ) : Pass
pass Pass The Pass details to set.
evenIfSuppressed bool /// Sets the pass details even if render state /// changes are suppressed; if you are using this to manually set state /// when render state changes are suppressed, you should set this to true. ///
shadowDerivation bool /// If false, disables the derivation of shadow passes from original passes ///
리턴 Pass

SetShadowTextureSettings() 공개 메소드

public SetShadowTextureSettings ( ushort size, ushort count ) : void
size ushort
count ushort
리턴 void

SetShadowTextureSettings() 공개 메소드

Sets the size and count of textures used in texture-based shadows.
See ShadowTextureSize and ShadowTextureCount for details, this method just allows you to change both at once, which can save on reallocation if the textures have already been created.
public SetShadowTextureSettings ( ushort size, ushort count, PixelFormat format ) : void
size ushort
count ushort
format PixelFormat
리턴 void

SetShadowVolumeStencilState() 보호된 메소드

Internal utility method for setting stencil state for rendering shadow volumes.
protected SetShadowVolumeStencilState ( bool secondPass, bool zfail, bool twoSided ) : void
secondPass bool Is this the second pass?
zfail bool Should we be using the zfail method?
twoSided bool Should we use a 2-sided stencil?
리턴 void

SetSkyBox() 공개 메소드

Overloaded method.
public SetSkyBox ( bool enable, string materialName, float distance ) : void
enable bool
materialName string
distance float
리턴 void

SetSkyBox() 공개 메소드

Enables / disables a 'sky box' i.e. a 6-sided box at constant distance from the camera representing the sky.
You could create a sky box yourself using the standard mesh and entity methods, but this creates a plane which the camera can never get closer or further away from - it moves with the camera. (you could create this effect by creating a world box which was attached to the same SceneNode as the Camera too, but this would only apply to a single camera whereas this skybox applies to any camera using this scene manager).

The material you use for the skybox can either contain layers which are single textures, or they can be cubic textures, i.e. made up of 6 images, one for each plane of the cube. See the TextureLayer class for more information.

public SetSkyBox ( bool enable, string materialName, float distance, bool drawFirst, Quaternion orientation, string groupName ) : void
enable bool True to enable the skybox, false to disable it
materialName string The name of the material the box will use.
distance float Distance in world coordinates from the camera to each plane of the box.
drawFirst bool /// If true, the box is drawn before all other /// geometry in the scene, without updating the depth buffer. /// This is the safest rendering method since all other objects /// will always appear in front of the sky. However this is not /// the most efficient way if most of the sky is often occluded /// by other objects. If this is the case, you can set this /// parameter to false meaning it draws after all other /// geometry which can be an optimisation - however you must /// ensure that the distance value is large enough that no /// objects will 'poke through' the sky box when it is rendered. ///
orientation Quaternion /// Specifies the orientation of the box. By default the 'top' of the box is deemed to be /// in the +y direction, and the 'front' at the -z direction. /// You can use this parameter to rotate the sky if you want. ///
groupName string
리턴 void

SetSkyDome() 공개 메소드

public SetSkyDome ( bool isEnabled, string materialName, float curvature, float tiling ) : void
isEnabled bool
materialName string
curvature float
tiling float
리턴 void

SetSkyDome() 공개 메소드

public SetSkyDome ( bool isEnabled, string materialName, float curvature, float tiling, float distance, bool drawFirst, Quaternion orientation, string groupName ) : void
isEnabled bool
materialName string
curvature float
tiling float
distance float
drawFirst bool
orientation Quaternion
groupName string
리턴 void

SetSkyPlane() 공개 메소드

Overload.
public SetSkyPlane ( bool enable, Plane plane, string materialName ) : void
enable bool
plane Plane
materialName string
리턴 void

SetSkyPlane() 공개 메소드

Enables / disables a 'sky plane' i.e. a plane at constant distance from the camera representing the sky.
public SetSkyPlane ( bool enable, Plane plane, string materialName, float scale, float tiling, bool drawFirst, float bow, string groupName ) : void
enable bool True to enable the plane, false to disable it.
plane Plane Details of the plane, i.e. it's normal and it's distance from the camera.
materialName string The name of the material the plane will use.
scale float The scaling applied to the sky plane - higher values mean a bigger sky plane.
tiling float How many times to tile the texture across the sky.
drawFirst bool /// If true, the plane is drawn before all other geometry in the scene, without updating the depth buffer. /// This is the safest rendering method since all other objects /// will always appear in front of the sky. However this is not /// the most efficient way if most of the sky is often occluded /// by other objects. If this is the case, you can set this /// parameter to false meaning it draws after all other /// geometry which can be an optimisation - however you must /// ensure that the plane.d value is large enough that no objects /// will 'poke through' the sky plane when it is rendered. ///
bow float /// If above zero, the plane will be curved, allowing /// the sky to appear below camera level. Curved sky planes are /// simular to skydomes, but are more compatable with fog. ///
groupName string
리턴 void

SetViewport() 보호된 메소드

Internal method for setting the destination viewport for the next render.
protected SetViewport ( Viewport viewport ) : void
viewport Viewport
리턴 void

SetWorldGeometry() 공개 메소드

public SetWorldGeometry ( Stream stream ) : void
stream Stream
리턴 void

SetWorldGeometry() 공개 메소드

public SetWorldGeometry ( Stream stream, string typeName ) : void
stream Stream
typeName string
리턴 void

SetWorldGeometry() 공개 메소드

public SetWorldGeometry ( string filename ) : void
filename string
리턴 void

UpdateSceneGraph() 보호된 메소드

Internal method for updating the scene graph ie the tree of SceneNode instances managed by this class.
This must be done before issuing objects to the rendering pipeline, since derived transformations from parent nodes are not updated until required. This SceneManager is a basic implementation which simply updates all nodes from the root. This ensures the scene is up to date but requires all the nodes to be updated even if they are not visible. Subclasses could trim this such that only potentially visible nodes are updated.
protected UpdateSceneGraph ( Camera camera ) : void
camera Camera
리턴 void

UseRenderableViewProjection() 보호된 메소드

Protected method used by RenderVisibleObjects to deal with renderables which override the camera's own view / projection materices.
protected UseRenderableViewProjection ( IRenderable renderable ) : void
renderable IRenderable
리턴 void

ValidatePassForRendering() 보호된 메소드

Internal method to validate whether a Pass should be allowed to render.
Called just before a pass is about to be used for rendering a group to allow the SceneManager to omit it if required. A return value of false skips this pass.
protected ValidatePassForRendering ( Pass pass ) : bool
pass Pass
리턴 bool

ValidateRenderableForRendering() 보호된 메소드

Internal method to validate whether a Renderable should be allowed to render.
Called just before a pass is about to be used for rendering a Renderable to allow the SceneManager to omit it if required. A return value of false skips it.
protected ValidateRenderableForRendering ( Pass pass, IRenderable renderable ) : bool
pass Pass
renderable IRenderable
리턴 bool

dispose() 보호된 메소드

protected dispose ( bool disposeManagedResources ) : void
disposeManagedResources bool
리턴 void

프로퍼티 상세

_activeCompositorChain 보호되어 있는 프로퍼티

protected CompositorChain _activeCompositorChain
리턴 CompositorChain

_lightsDirtyCounter 보호되어 있는 프로퍼티

protected ulong _lightsDirtyCounter
리턴 ulong

ambientColor 보호되어 있는 프로퍼티

The ambient color, cached from the RenderSystem
Default to a semi-bright white (gray) light to prevent being null
protected ColorEx ambientColor
리턴 ColorEx

animationList 보호되어 있는 프로퍼티

A list of animations for easy lookup.
protected AnimationCollection animationList
리턴 AnimationCollection

animationStateList 보호되어 있는 프로퍼티

A list of animation states for easy lookup.
protected AnimationStateSet animationStateList
리턴 AnimationStateSet

autoParamDataSource 보호되어 있는 프로퍼티

Utility class for updating automatic GPU program params.
protected AutoParamDataSource autoParamDataSource
리턴 AutoParamDataSource

autoTrackingSceneNodes 보호되어 있는 프로퍼티

Active list of nodes tracking other nodes.
protected SceneNodeCollection autoTrackingSceneNodes
리턴 SceneNodeCollection

cameraInProgress 보호되어 있는 프로퍼티

A reference to the current camera being used for rendering.
protected Camera cameraInProgress
리턴 Camera

cameraList 보호되어 있는 프로퍼티

A list of the valid cameras for this scene for easy lookup.
protected CameraCollection cameraList
리턴 CameraCollection

currentViewport 보호되어 있는 프로퍼티

protected Viewport currentViewport
리턴 Viewport

defaultRootNode 보호되어 있는 프로퍼티

If set, only this scene node (and children) will be rendered. If null, root node is used.
protected SceneNode defaultRootNode
리턴 SceneNode

displayNodes 보호되어 있는 프로퍼티

Flag indicating whether SceneNodes will be rendered as a set of 3 axes.
protected bool displayNodes
리턴 bool

findVisibleObjects 보호되어 있는 프로퍼티

Find visible objects?
protected bool findVisibleObjects
리턴 bool

finiteExtrusionParams 보호되어 있는 프로퍼티

Program parameters for finite extrusion programs.
protected GpuProgramParameters finiteExtrusionParams
리턴 GpuProgramParameters

fogColor 보호되어 있는 프로퍼티

protected ColorEx fogColor
리턴 ColorEx

fogDensity 보호되어 있는 프로퍼티

protected float fogDensity
리턴 float

fogEnd 보호되어 있는 프로퍼티

protected float fogEnd
리턴 float

fogMode 보호되어 있는 프로퍼티

protected FogMode fogMode
리턴 FogMode

fogStart 보호되어 있는 프로퍼티

protected float fogStart
리턴 float

fullScreenQuad 보호되어 있는 프로퍼티

Full screen rectangle to use for rendering stencil shadows.
protected Rectangle2D fullScreenQuad
리턴 Rectangle2D

hasCameraChanged 보호되어 있는 프로퍼티

Denotes whether or not the camera has been changed.
protected bool hasCameraChanged
리턴 bool

illuminationStage 보호되어 있는 프로퍼티

Current stage of rendering.
protected IlluminationRenderStage illuminationStage
리턴 IlluminationRenderStage

infiniteExtrusionParams 보호되어 있는 프로퍼티

Program parameters for infinite extrusion programs.
protected GpuProgramParameters infiniteExtrusionParams
리턴 GpuProgramParameters

isSkyBoxDrawnFirst 보호되어 있는 프로퍼티

protected bool isSkyBoxDrawnFirst
리턴 bool

isSkyBoxEnabled 보호되어 있는 프로퍼티

protected bool isSkyBoxEnabled
리턴 bool

isSkyDomeDrawnFirst 보호되어 있는 프로퍼티

protected bool isSkyDomeDrawnFirst
리턴 bool

isSkyDomeEnabled 보호되어 있는 프로퍼티

protected bool isSkyDomeEnabled
리턴 bool

isSkyPlaneDrawnFirst 보호되어 있는 프로퍼티

protected bool isSkyPlaneDrawnFirst
리턴 bool

isSkyPlaneEnabled 보호되어 있는 프로퍼티

protected bool isSkyPlaneEnabled
리턴 bool

lastFrameNumber 보호되어 있는 프로퍼티

protected ulong lastFrameNumber
리턴 ulong

lastNumTexUnitsUsed 보호되어 있는 정적으로 프로퍼티

protected static int lastNumTexUnitsUsed
리턴 int

lastPolyMode 보호되어 있는 프로퍼티

protected PolygonMode lastPolyMode
리턴 PolygonMode

lastProjectionWasIdentity 보호되어 있는 프로퍼티

protected bool lastProjectionWasIdentity
리턴 bool

lastUsedFallback 보호되어 있는 프로퍼티

protected bool lastUsedFallback
리턴 bool

lastViewWasIdentity 보호되어 있는 프로퍼티

protected bool lastViewWasIdentity
리턴 bool

lightsAffectingFrustum 보호되어 있는 프로퍼티

List of lights in view that could cast shadows.
protected LightList lightsAffectingFrustum
리턴 LightList

localLightList 보호되어 있는 정적으로 프로퍼티

Local light list for use during rendering passes.
protected static LightList localLightList
리턴 LightList

movableObjectCollectionMap 보호되어 있는 프로퍼티

protected Dictionary movableObjectCollectionMap
리턴 MovableObjectCollection>.Dictionary

name 보호되어 있는 프로퍼티

The instance name of this scene manager.
protected string name
리턴 string

normalizeNormals 보호되어 있는 정적으로 프로퍼티

Whether normals are currently being normalized.
protected static bool normalizeNormals
리턴 bool

nullLightList 보호되어 있는 프로퍼티

protected LightList nullLightList
리턴 LightList

nullShadowTexture 보호되어 있는 프로퍼티

protected Texture nullShadowTexture
리턴 Texture

oldFogColor 보호되어 있는 정적으로 프로퍼티

protected static ColorEx oldFogColor
리턴 ColorEx

oldFogDensity 보호되어 있는 정적으로 프로퍼티

protected static float oldFogDensity
리턴 float

oldFogEnd 보호되어 있는 정적으로 프로퍼티

protected static float oldFogEnd
리턴 float

oldFogMode 보호되어 있는 정적으로 프로퍼티

protected static FogMode oldFogMode
리턴 FogMode

oldFogStart 보호되어 있는 정적으로 프로퍼티

protected static float oldFogStart
리턴 float

op 보호되어 있는 정적으로 프로퍼티

protected static RenderOperation op
리턴 RenderOperation

optionList 보호되어 있는 프로퍼티

Hashtable of options that can be used by this or any other scene manager.
protected AxiomCollection optionList
리턴 AxiomCollection

regionList 보호되어 있는 프로퍼티

A list of the Regions. TODO: Is there any point to having this region list?
protected List regionList
리턴 List

renderQueue 보호되어 있는 프로퍼티

A queue of objects for rendering.
protected RenderQueue renderQueue
리턴 RenderQueue

renderingMainGroup 보호되어 있는 프로퍼티

True when the main priority group is rendering.
protected bool renderingMainGroup
리턴 bool

renderingNoShadowQueue 보호되어 있는 프로퍼티

True when calling RenderSolidObjects with the noShadow queue.
protected bool renderingNoShadowQueue
리턴 bool

rootSceneNode 보호되어 있는 프로퍼티

The root of the scene graph heirarchy.
protected SceneNode rootSceneNode
리턴 SceneNode

sceneNodeList 보호되어 있는 프로퍼티

A list of scene nodes (includes all in the scene graph).
protected SceneNodeCollection sceneNodeList
리턴 SceneNodeCollection

shadowCameraLightMapping 보호되어 있는 프로퍼티

protected Dictionary shadowCameraLightMapping
리턴 Light>.Dictionary

shadowCasterAABBQuery 보호되어 있는 프로퍼티

AxisAlignedBox region query to find shadow casters within the attenuation range of a directional light.
protected AxisAlignedBoxRegionSceneQuery shadowCasterAABBQuery
리턴 AxisAlignedBoxRegionSceneQuery

shadowCasterList 보호되어 있는 프로퍼티

Current list of shadow casters within the view of the camera.
protected List shadowCasterList
리턴 List

shadowCasterPlainBlackPass 보호되어 있는 프로퍼티

A pass designed to let us render shadow colour on white for texture shadows
protected Pass shadowCasterPlainBlackPass
리턴 Pass

shadowCasterQueryListener 보호되어 있는 프로퍼티

Listener to use when finding shadow casters for a light within a scene.
protected ShadowCasterSceneQueryListener shadowCasterQueryListener
리턴 ShadowCasterSceneQueryListener

shadowCasterSphereQuery 보호되어 있는 프로퍼티

Sphere region query to find shadow casters within the attenuation range of a point/spot light.
protected SphereRegionSceneQuery shadowCasterSphereQuery
리턴 SphereRegionSceneQuery

shadowColor 보호되어 있는 프로퍼티

protected ColorEx shadowColor
리턴 ColorEx

shadowDebugPass 보호되어 있는 프로퍼티

Pass to use for rendering debug shadows.
protected Pass shadowDebugPass
리턴 Pass

shadowDirLightExtrudeDist 보호되어 있는 프로퍼티

Explicit extrusion distance for directional lights.
protected float shadowDirLightExtrudeDist
리턴 float

shadowFarDistance 보호되어 있는 프로퍼티

Farthest distance from the camera at which to render shadows.
protected float shadowFarDistance
리턴 float

shadowFarDistanceSquared 보호되어 있는 프로퍼티

shadowFarDistance ^ 2
protected float shadowFarDistanceSquared
리턴 float

shadowIndexBuffer 보호되어 있는 프로퍼티

buffer to use for indexing shadow geometry required for certain techniques.
protected HardwareIndexBuffer shadowIndexBuffer
리턴 HardwareIndexBuffer

shadowIndexBufferSize 보호되어 있는 프로퍼티

The maximum size of the index buffer used to render shadow primitives.
protected int shadowIndexBufferSize
리턴 int

shadowMaterialInitDone 보호되어 있는 프로퍼티

For the RenderTextureShadowCasterQueueGroupObjects and RenderTextureShadowReceiverQueueGroupObjects methods.
protected bool shadowMaterialInitDone
리턴 bool

shadowModulativePass 보호되어 있는 프로퍼티

Pass to use while rendering the full screen quad for modulative shadows.
protected Pass shadowModulativePass
리턴 Pass

shadowReceiverPass 보호되어 있는 프로퍼티

A pass designed to let us render shadow receivers for texture shadows
protected Pass shadowReceiverPass
리턴 Pass

shadowStencilPass 보호되어 있는 프로퍼티

protected Pass shadowStencilPass
리턴 Pass

shadowTechnique 보호되어 있는 프로퍼티

Current shadow technique in use in the scene.
protected ShadowTechnique shadowTechnique
리턴 ShadowTechnique

shadowTextureCameras 보호되어 있는 프로퍼티

Current list of shadow texture cameras. There is one camera for each shadow texture.
protected List shadowTextureCameras
리턴 List

shadowTextureCasterMaterial 보호되어 있는 프로퍼티

The material file to be use for shadow casters, if any
protected string shadowTextureCasterMaterial
리턴 string

shadowTextureConfigDirty 보호되어 있는 프로퍼티

protected bool shadowTextureConfigDirty
리턴 bool

shadowTextureConfigList 보호되어 있는 프로퍼티

protected List shadowTextureConfigList
리턴 List

shadowTextureCount 보호되어 있는 프로퍼티

protected ushort shadowTextureCount
리턴 ushort

shadowTextureCustomCasterFPParams 보호되어 있는 프로퍼티

The parameters of the pixel program that renders custom shadow casters, or null
protected GpuProgramParameters shadowTextureCustomCasterFPParams
리턴 GpuProgramParameters

shadowTextureCustomCasterFragmentProgram 보호되어 있는 프로퍼티

The name of the pixel program that renders custom shadow casters, or null
protected string shadowTextureCustomCasterFragmentProgram
리턴 string

shadowTextureCustomCasterPass 보호되어 있는 프로퍼티

The pass that renders custom texture casters, or null
protected Pass shadowTextureCustomCasterPass
리턴 Pass

shadowTextureCustomCasterVPParams 보호되어 있는 프로퍼티

The parameters of the vertex program that renders custom shadow casters, or null
protected GpuProgramParameters shadowTextureCustomCasterVPParams
리턴 GpuProgramParameters

shadowTextureCustomCasterVertexProgram 보호되어 있는 프로퍼티

The name of the vertex program that renders custom shadow casters, or null
protected string shadowTextureCustomCasterVertexProgram
리턴 string

shadowTextureCustomReceiverFPParams 보호되어 있는 프로퍼티

The parameters of the pixel program that renders custom shadow casters, or null
protected GpuProgramParameters shadowTextureCustomReceiverFPParams
리턴 GpuProgramParameters

shadowTextureCustomReceiverFragmentProgram 보호되어 있는 프로퍼티

The name of the pixel program that renders custom shadow receivers, or null
protected string shadowTextureCustomReceiverFragmentProgram
리턴 string

shadowTextureCustomReceiverPass 보호되어 있는 프로퍼티

The material file to be use for shadow receivers, if any
protected Pass shadowTextureCustomReceiverPass
리턴 Pass

shadowTextureCustomReceiverVPParams 보호되어 있는 프로퍼티

The parameters of the vertex program that renders custom shadow casters, or null
protected GpuProgramParameters shadowTextureCustomReceiverVPParams
리턴 GpuProgramParameters

shadowTextureCustomReceiverVertexProgram 보호되어 있는 프로퍼티

The name of the vertex program that renders custom shadow receivers, or null
protected string shadowTextureCustomReceiverVertexProgram
리턴 string

shadowTextureFadeEnd 보호되어 있는 프로퍼티

As a proportion e.g. 0.9
protected float shadowTextureFadeEnd
리턴 float

shadowTextureFadeStart 보호되어 있는 프로퍼티

As a proportion e.g. 0.6
protected float shadowTextureFadeStart
리턴 float

shadowTextureFormat 보호되어 있는 프로퍼티

protected PixelFormat shadowTextureFormat
리턴 PixelFormat

shadowTextureOffset 보호되어 있는 프로퍼티

Proportion of texture offset in view direction e.g. 0.4
protected float shadowTextureOffset
리턴 float

shadowTextureReceiverMaterial 보호되어 있는 프로퍼티

The material file to be use for shadow receivers, if any
protected string shadowTextureReceiverMaterial
리턴 string

shadowTextureSelfShadow 보호되어 있는 프로퍼티

The default implementation of texture shadows uses a fixed-function color texture projection approach for maximum compatibility, and as such cannot support self-shadowing. However, if you decide to implement a more complex shadowing technique using ShadowTextureCasterMaterial and ShadowTextureReceiverMaterial there is a possibility you may be able to support self-shadowing (e.g by implementing a shader-based shadow map). In this case you might want to enable this option.
protected bool shadowTextureSelfShadow
리턴 bool

shadowTextureSize 보호되어 있는 프로퍼티

protected ushort shadowTextureSize
리턴 ushort

shadowTextures 보호되어 있는 프로퍼티

Current list of shadow textures.
protected List shadowTextures
리턴 List

shadowUseInfiniteFarPlane 보호되어 있는 프로퍼티

Whether we should override far distance when using stencil volumes
protected bool shadowUseInfiniteFarPlane
리턴 bool

showBoundingBoxes 보호되어 있는 프로퍼티

Flag that specifies whether scene nodes will have their bounding boxes rendered as a wire frame.
protected bool showBoundingBoxes
리턴 bool

showDebugShadows 보호되어 있는 프로퍼티

If true, shadow volumes will be visible in the scene.
protected bool showDebugShadows
리턴 bool

skyBoxEntities 보호되어 있는 프로퍼티

protected Entity[] skyBoxEntities
리턴 Entity[]

skyBoxNode 보호되어 있는 프로퍼티

protected SceneNode skyBoxNode
리턴 SceneNode

skyBoxOrientation 보호되어 있는 프로퍼티

protected Quaternion skyBoxOrientation
리턴 Quaternion

skyDomeEntities 보호되어 있는 프로퍼티

protected Entity[] skyDomeEntities
리턴 Entity[]

skyDomeNode 보호되어 있는 프로퍼티

protected SceneNode skyDomeNode
리턴 SceneNode

skyDomeOrientation 보호되어 있는 프로퍼티

protected Quaternion skyDomeOrientation
리턴 Quaternion

skyPlane 보호되어 있는 프로퍼티

protected Plane skyPlane
리턴 Plane

skyPlaneEntity 보호되어 있는 프로퍼티

protected Entity skyPlaneEntity
리턴 Entity

skyPlaneNode 보호되어 있는 프로퍼티

protected SceneNode skyPlaneNode
리턴 SceneNode

specialCaseRenderQueueList 보호되어 있는 프로퍼티

A List of RenderQueues to either Include or Exclude in the rendering sequence.
protected SpecialCaseRenderQueue specialCaseRenderQueueList
리턴 SpecialCaseRenderQueue

staticGeometryList 보호되어 있는 프로퍼티

The list of static geometry instances maintained by the scene manager
protected Dictionary staticGeometryList
리턴 StaticGeometry>.Dictionary

suppressRenderStateChanges 보호되어 있는 프로퍼티

Suppress render state changes?
protected bool suppressRenderStateChanges
리턴 bool

suppressShadows 보호되어 있는 프로퍼티

Suppress shadows?
protected bool suppressShadows
리턴 bool

targetRenderSystem 보호되어 있는 프로퍼티

A reference to the current active render system..
protected RenderSystem targetRenderSystem
리턴 RenderSystem

visibilityMask 보호되어 있는 프로퍼티

Used by compositing layer
protected ulong visibilityMask
리턴 ulong

worldGeometryRenderQueueId 보호되어 있는 프로퍼티

protected RenderQueueGroupID worldGeometryRenderQueueId
리턴 RenderQueueGroupID

xform 보호되어 있는 프로퍼티

protected Matrix4[] xform
리턴 Matrix4[]