HGamer3D-Ogre-Binding-0.1.9: Windows Game Engine for the Haskell Programmer - Ogre Bindings

Safe HaskellNone

HGamer3D.Bindings.Ogre.ClassSceneManager

Synopsis

Documentation

deleteSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance which is going to be deleted.

-> IO () 

Default destructor.

getNameSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO String 

Retrieve the type name of this scene manager. This method has to be implemented by subclasses. It should return the type name of this SceneManagerSceneManagerFactory

Mutex to protect the scene graph from simultaneous access from multiple threads. If you are updating the scene in a separate thread from the rendering thread, then you should lock this mutex before making any changes to the scene graph - that means creating, modifying or deleting a scene node, or attaching / detaching objects. It is yourNote that locking this mutex will prevent the scene being rendered until it is unlocked again. Therefore you should do this sparingly. Try to create any objects you need separately and fully prepare them before doing all your scene graph work in one go, thus keeping this lock for the shortest time possible. A single global lock is used rather than a per-node lock since it keeps the number of locks required during rendering down to a minimum. Obtaining a lock, even if there is no contention, is not free so for performance it is good to do it as little as possible. Since modifying the scene in a separate thread is a fairly rare occurrence (relative to rendering), it is better to keep the locking required during rendering lower than to make update locks more granular.Return the instance name of this SceneManager

getTypeNameSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO String 

Creates a camera to be managed by this scene manager. This camera must be added to the scene at a later time using the attachObject method of the SceneNode

createCameraSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

name - Name to give the new camera.

-> IO HG3DClass 

getCameraSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

name

-> IO HG3DClass 

Returns whether a camera with the given name exists.

Retrieves a pointer to the named camera. Throws an exception if the named instance does not exist

hasCameraSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

name

-> IO Bool 

destroyCameraSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> HG3DClass

cam - Pointer to the camera to remove

-> IO () 

Removes a camera from the scene. This method removes an camera from the scene based on the camera's name rather than a pointer.

Removes a camera from the scene. This method removes a previously added camera from the scene. The camera is deleted so the caller must ensure no references to it's previous instance (e.g. in a SceneNode

destroyCamera2Source

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

name

-> IO () 

Removes (and destroys) all cameras from the scene. Some cameras are internal created to dealing with texture shadow, their aren't supposed to destroy outside. So, while you are using texture shadow, don't call this method, or you can set the shadow technique other than texture-based, which will destroy all internal created shadow cameras and textures.

destroyAllCamerasSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO () 

Creates a light for use in the scene. 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

createLightSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

name - The name of the new light, to identify it later.

-> IO HG3DClass 

createLight2Source

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO HG3DClass 

Creates a light with a generated name.

getLightSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

name

-> IO HG3DClass 

Returns whether a light with the given name exists.

Returns a pointer to the named Light which has previously been added to the scene. Throws an exception if the named instance does not exist

hasLightSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

name

-> IO Bool 

destroyLightSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

name

-> IO () 

Removes the light from the scene and destroys it based on a pointer. Any pointers held to this light after calling this method will be invalid.

Removes the named light from the scene and destroys it. Any pointers held to this light after calling this method will be invalid.

destroyLight2Source

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> HG3DClass

light

-> IO () 

Removes and destroys all lights in the scene.

destroyAllLightsSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO () 

Creates an instance of a SceneNodeNote that this does not add the SceneNodeSceneManagerTo include the returned SceneNodeSceneNodeNote 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.

createSceneNodeSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO HG3DClass 

createSceneNode2Source

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

name

-> IO HG3DClass 

Creates an instance of a SceneNodeNote that this does not add the SceneNodeSceneManagerTo include the returned SceneNodeSceneNodeNote that this method takes a name parameter, which makes the node easier to retrieve directly again later.

destroySceneNodeSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

name

-> IO () 

Destroys a SceneNode. This allows you to physically delete an individual SceneNodeSceneManager

Destroys a SceneNode with a given name. This allows you to physically delete an individual SceneNodeSceneManager

destroySceneNode2Source

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> HG3DClass

sn

-> IO () 

Gets the SceneNodeThe entire scene is held as a hierarchy of nodes, which allows things like relative transforms, general changes in rendering state etc (See the SceneNodeSceneManagerOgreHowever, in all cases there is only ever one root node of the hierarchy, and this method returns a pointer to it.

getRootSceneNodeSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO HG3DClass 

getSceneNodeSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

name

-> IO HG3DClass 

Returns whether a scene node with the given name exists.

Retrieves a named SceneNode from the scene graph. If you chose to name a SceneNodeThrows an exception if the named instance does not exist

hasSceneNodeSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

name

-> IO Bool 

createEntitySource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

entityName - The name to be given to the entity (must be unique).

-> String

meshName - The name of the Mesh it is to be based on (e.g. 'knot.oof'). The mesh will be loaded if it is not already.

-> String

groupName

-> IO HG3DClass 

Create an Entity

createEntity2Source

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

entityName - The name to be given to the entity (must be unique).

-> SharedPtr

pMesh - The pointer to the Mesh it is to be based on.

-> IO HG3DClass 

Create an Entity

createEntity3Source

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

meshName - The name of the Mesh it is to be based on (e.g. 'knot.oof'). The mesh will be loaded if it is not already.

-> IO HG3DClass 

Create an Entity

createEntity4Source

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> SharedPtr

pMesh - The pointer to the Mesh it is to be based on.

-> IO HG3DClass 

Create an Entity

createEntity5Source

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

entityName - The name to be given to the entity (must be unique).

-> EnumSceneManagerPrefabType

ptype - The prefab type.

-> IO HG3DClass 

Create an Entity

createEntity6Source

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> EnumSceneManagerPrefabType

ptype - The prefab type.

-> IO HG3DClass 

Create an Entity

getEntitySource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

name

-> IO HG3DClass 

Returns whether an entity with the given name exists.

Retrieves a pointer to the named Entity. Throws an exception if the named instance does not exist

hasEntitySource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

name

-> IO Bool 

destroyEntitySource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> HG3DClass

ent

-> IO () 

Removes & destroys an EntitySceneManagerMust only be done if the EntitySceneNodeSceneManager::clearScene

Removes & destroys an EntitySceneManagerMust only be done if the EntitySceneNodeSceneManager::clearScene

destroyEntity2Source

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

name

-> IO () 

Removes & destroys all Entities. Again, use caution since no EntitySceneNodeSceneNodeSceneManager::clearScene

destroyAllEntitiesSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO () 

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

createManualObjectSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

name - The name to be given to the object (must be unique).

-> IO HG3DClass 

Create a ManualObject, an object which you populate with geometry

createManualObject2Source

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO HG3DClass 

Retrieves a pointer to the named ManualObject. Throws an exception if the named instance does not exist

getManualObjectSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

name

-> IO HG3DClass 

Returns whether a manual object with the given name exists.

hasManualObjectSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

name

-> IO Bool 

destroyManualObjectSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> HG3DClass

obj

-> IO () 

Removes & destroys a ManualObjectSceneManager

Removes & destroys a ManualObjectSceneManager

destroyManualObject2Source

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

name

-> IO () 

Removes & destroys all ManualObjects from the SceneManager

destroyAllManualObjectsSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO () 

Create a BillboardChain, an object which you can use to render a linked chain of billboards.

createBillboardChainSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

name - The name to be given to the object (must be unique).

-> IO HG3DClass 

Create a BillboardChain, an object which you can use to render

createBillboardChain2Source

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO HG3DClass 

Retrieves a pointer to the named BillboardChain. Throws an exception if the named instance does not exist

getBillboardChainSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

name

-> IO HG3DClass 

Returns whether a billboard chain with the given name exists.

hasBillboardChainSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

name

-> IO Bool 

destroyBillboardChainSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> HG3DClass

obj

-> IO () 

Removes & destroys a BillboardChainSceneManager

Removes & destroys a BillboardChainSceneManager

destroyBillboardChain2Source

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

name

-> IO () 

Removes & destroys all BillboardChains from the SceneManager

destroyAllBillboardChainsSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO () 

Returns whether a ribbon trail with the given name exists.

hasRibbonTrailSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

name

-> IO Bool 

destroyRibbonTrail2Source

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

name

-> IO () 

Removes & destroys all RibbonTrails from the SceneManager

Removes & destroys a RibbonTrail from the SceneManager

destroyAllRibbonTrailsSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO () 

Returns whether a particle system with the given name exists.

hasParticleSystemSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

name

-> IO Bool 

destroyParticleSystem2Source

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

name

-> IO () 

Removes & destroys all ParticleSystems from the SceneManager

Removes & destroys a ParticleSystem from the SceneManager

destroyAllParticleSystemsSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO () 

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.

clearSceneSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO () 

Sets the ambient light level to be used for the scene. This sets the colour and intensity of the ambient light in the scene, i.e. the light which is sourceless and illuminates all objects equally. The colour of an object is affected by a combination of the light in the scene, and the amount of light that object reflects (in this case based on the Material::ambient property). By default the ambient light in the scene is ColourValue::Black, i.e. no ambient light. This means that any objects rendered with a MaterialMaterial::setLightingEnabled

setAmbientLightSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> Colour

colour

-> IO () 

Returns the ambient light level to be used for the scene.

getAmbientLightSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO Colour 

prepareWorldGeometrySource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

filename

-> IO () 

Sets 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 SceneManagerRootSceneManager

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 SceneManagerRootSceneManager

setWorldGeometrySource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

filename

-> IO () 

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 (setWorldGeometry), they should call ResourceGroupManager::_notifyWorldGeometryProgress exactly that number of times when loading the geometry for real. The default is to return 0, ie to not report progress.

estimateWorldGeometrySource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

filename

-> IO Int 

Method for verifying wether the scene manager has an implementation-specific option. If it does not, false is returned.

hasOptionSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

strKey - The name of the option to check for.

-> IO Bool

return value - If the scene manager contains the given option, true is returned.

setSkyPlaneEnabledSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> Bool

enable

-> IO () 

Return whether a key plane is enabled

Enables / disables a 'sky plane'

isSkyPlaneEnabledSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO Bool 

getSkyPlaneNodeSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO HG3DClass 

Get the sky plane node, if enabled.

setSkyBoxSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> Bool

enable - True to enable the skybox, false to disable it

-> String

materialName - The name of the material the box will use

-> Float

distance - Distance in world coorinates from the camera to each plane of the box. The default is normally OK.

-> Bool

drawFirst - 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.

-> Quaternion

orientation - Optional parameter to specify 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.

-> String

groupName - The name of the resource group to which to assign the plane mesh.

-> IO () 

Enables / disables a 'sky box'

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. (NB you could create this effect by creating a world box which was attached to the same SceneNodeCameraThe 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 TextureUnitState class for more information.

setSkyBoxEnabledSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> Bool

enable

-> IO () 

Return whether a skybox is enabled

isSkyBoxEnabledSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO Bool 

getSkyBoxNodeSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO HG3DClass 

Get the skybox node, if enabled.

setSkyDomeSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> Bool

enable - True to enable the skydome, false to disable it

-> String

materialName - The name of the material the dome will use

-> Float

curvature - The curvature of the dome. Good values are between 2 and 65. Higher values are more curved leading to a smoother effect, lower values are less curved meaning more distortion at the horizons but a better distance effect.

-> Float

tiling - How many times to tile the texture(s) across the dome.

-> Float

distance - Distance in world coorinates from the camera to each plane of the box the dome is rendered on. The default is normally OK.

-> Bool

drawFirst - If true, the dome 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 when it is rendered.

-> Quaternion

orientation - Optional parameter to specify the orientation of the dome. By default the top of the dome 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.

-> Int

xsegments

-> Int

ysegments

-> Int

ysegments_keep

-> String

groupName - The name of the resource group to which to assign the plane mesh.

-> IO () 

Enables / disables a 'sky dome'

Enables / disables a 'sky dome' i.e. an illusion of a curved sky. A sky dome is actually formed by 5 sides of a cube, but with texture coordinates generated such that the surface appears curved like a dome. Sky domes are appropriate where you need a realistic looking sky where the scene is not going to be fogged, and there is always a floor of some sort to prevent the viewer looking below the horizon (the distortion effect below the horizon can be pretty horrible, and there is never anyhting directly below the viewer). If you need a complete wrap-around background, use the setSkyBox method instead. You can actually combine a sky box and a sky dome if you want, to give a positional backdrop with an overlayed curved cloud layer. Sky domes work well with 2D repeating textures like clouds. You can change the apparent curvature of the sky depending on how your scene is viewed - lower curvatures are better for open scenes like landscapes, whilst higher curvatures are better for say FPS levels where you don't see a lot of the sky at once and the exaggerated curve looks good.

setSkyDomeEnabledSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> Bool

enable

-> IO () 

Return whether a skydome is enabled

isSkyDomeEnabledSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO Bool 

getSkyDomeNodeSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO HG3DClass 

Get the sky dome node, if enabled.

getFogColourSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO Colour 

Returns the fog colour for the scene.

getFogStartSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO Float 

Returns the fog start distance for the scene.

getFogEndSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO Float 

Returns the fog end distance for the scene.

getFogDensitySource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO Float 

Returns the fog density for the scene.

createBillboardSetSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

name - The name to give to this billboard set. Must be unique.

-> Int

poolSize - The initial size of the pool of billboards (see BillboardSet for more information)

-> IO HG3DClass 

Creates a new BillboardSetThis method creates a new BillboardSetSceneManagerSceneManagerSceneManager::clearSceneSee the BillboardSetBillboardSet

createBillboardSet2Source

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> Int

poolSize - The initial size of the pool of billboards (see BillboardSet for more information)

-> IO HG3DClass 

Creates a new BillboardSetBillboardSet

getBillboardSetSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

name

-> IO HG3DClass 

Returns whether a billboardset with the given name exists.

Retrieves a pointer to the named BillboardSet. Throws an exception if the named instance does not exist

hasBillboardSetSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

name

-> IO Bool 

destroyBillboardSetSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> HG3DClass

set

-> IO () 

Removes & destroys an BillboardSetSceneManagerMust only be done if the BillboardSetSceneNode

Removes & destroys an BillboardSetSceneManagerMust only be done if the BillboardSetSceneNode

destroyBillboardSet2Source

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

name

-> IO () 

Removes & destroys all BillboardSets. Again, use caution since no BillboardSetSceneNodeSceneNodeSceneManager::clearScene

destroyAllBillboardSetsSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO () 

Tells the SceneManager whether it should render the SceneNodes which make up the scene as well as the objects in the scene. This method is mainly for debugging purposes. If you set this to true, each node will be rendered as a set of 3 axes to allow you to easily see the orientation of the nodes.

setDisplaySceneNodesSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> Bool

display

-> IO () 

Returns true if all scene nodes axis are to be displayed

getDisplaySceneNodesSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO Bool 

createAnimationSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

name - The name of the animation, must be unique within this SceneManager.

-> Float

length - The total length of the animation.

-> IO HG3DClass 

Looks up an Animation object previously created with createAnimation. Throws an exception if the named instance does not exist

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 NodeSceneNodeYou don't need to use an AnimationNodeA single animation can affect multiple NodeAnimationTrackNodeNodeSkeleton::createAnimationNote that whilst it uses the same classes, the animations created here are kept separate from the skeletal animations of meshes (each Skeleton

getAnimationSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

name

-> IO HG3DClass 

Returns whether an animation with the given name exists.

hasAnimationSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

name

-> IO Bool 

destroyAnimationSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

name

-> IO () 

Removes all animations created using this SceneManager

Destroys an Animation. You should ensure that none of your code is referencing this animation objects since the memory will be freed.

destroyAllAnimationsSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO () 

Create an AnimationState object for managing application of animations. You can create AnimationSceneNodeNodeAnimationNode::resetToInitialStateAnimation::applyAnimationStateSceneManagerRemember, AnimationStateNote that any SceneNodeNode::setInitialStateNodeSceneNodeIf the target of your animation is to be a generic AnimableValueAnimableValue::setAsBaseValue

createAnimationStateSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

animName - The name of an animation created already with createAnimation.

-> IO HG3DClass 

Retrieves animation state as previously created using createAnimationState. Throws an exception if the named instance does not exist

getAnimationStateSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

animName

-> IO HG3DClass 

Returns whether an animation state with the given name exists.

hasAnimationStateSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

name

-> IO Bool 

destroyAnimationStateSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

name

-> IO () 

Removes all animation states created using this SceneManager

Destroys an AnimationState. You should ensure that none of your code is referencing this animation state object since the memory will be freed.

destroyAllAnimationStatesSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO () 

Clears the 'special case' render queue list. SceneManager::addSpecialCaseRenderQueue

clearSpecialCaseRenderQueuesSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO () 

Sets the way the special case render queue list is processed. SceneManager::addSpecialCaseRenderQueue

setSpecialCaseRenderQueueModeSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> EnumSceneManagerSpecialCaseRenderQueueMode

mode - The mode of processing

-> IO () 

Gets the way the special case render queue list is processed.

getSpecialCaseRenderQueueModeSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO EnumSceneManagerSpecialCaseRenderQueueMode 

showBoundingBoxesSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> Bool

bShow

-> IO () 

Returns if all bounding boxes of scene nodes are to be displayed

Allows all bounding boxes of scene nodes to be displayed.

getShowBoundingBoxesSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO Bool 

setShowDebugShadowsSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> Bool

debug

-> IO () 

Are debug shadows shown?

Enables / disables the rendering of debug information for shadows.

getShowDebugShadowsSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO Bool 

setShadowColourSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> Colour

colour

-> IO () 

Get the colour used to modulate areas in shadow. This is only applicable for shadow techniques which involve darkening the area in shadow, as opposed to masking out the light. This colour provided is used as a modulative value to darken the areas.

Set the colour used to modulate areas in shadow. This is only applicable for shadow techniques which involve darkening the area in shadow, as opposed to masking out the light. This colour provided is used as a modulative value to darken the areas.

getShadowColourSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO Colour 

Sets the distance a shadow volume is extruded for a directional light. Although directional lights are essentially infinite, there are many reasons to limit the shadow extrusion distance to a finite number, not least of which is compatibility with older cards (which do not support infinite positions), and shadow caster elimination. The default value is 10,000 world units. This does not apply to point lights or spotlights, since they extrude up to their attenuation range.

setShadowDirectionalLightExtrusionDistanceSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> Float

dist

-> IO () 

Gets the distance a shadow volume is extruded for a directional light.

getShadowDirectionalLightExtrusionDistanceSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO Float 

setShadowFarDistanceSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> Float

distance

-> IO () 

Gets the default maximum distance away from the camera that shadows

Sets the default maximum distance away from the camera that shadows Shadow techniques can be expensive, therefore it is a good idea to limit them to being rendered close to the camera if possible, and to skip the expense of rendering shadows for distance objects. This method allows you to set the distance at which shadows will no longer be rendered. Each shadow technique can interpret this subtely differently. For example, one technique may use this to eliminate casters, another might use it to attenuate the shadows themselves. You should tweak this value to suit your chosen shadow technique and scene setup.

getShadowFarDistanceSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO Float 

getShadowFarDistanceSquaredSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO Float 

setShadowIndexBufferSizeSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> Int

size - The number of indexes; divide this by 3 to determine the number of triangles.

-> IO () 

Get the size of the shadow index buffer.

Sets the maximum size of the index buffer used to render shadow primitives. This method allows you to tweak the size of the index buffer used to render shadow primitives (including stencil shadow volumes). The default size is 51,200 entries, which is 100k of GPU memory, or enough to render approximately 17,000 triangles. You can reduce this as long as you do not have any models world geometry chunks which could require more than the amount you set. The maximum number of triangles required to render a single shadow volume (including light and dark caps when needed) will be 3x the number of edges on the light silhouette, plus the number of light-facing triangles. On average, half the triangles will be facing toward the light, but the number of triangles in the silhouette entirely depends on the mesh - angular meshes will have a higher silhouette trismesh tris ratio than a smooth mesh. You can estimate the requirements for your particular mesh by rendering it alone in a scene with shadows enabled and a single light - rotate it or the light and make a note of how high the triangle count goes (remembering to subtract the mesh triangle count)

getShadowIndexBufferSizeSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO Int 

setShadowTextureSizeSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> Int

size

-> IO () 

Set the level of multisample AA of the textures used for texture-based shadows. By default, the level of multisample AA is zero. This is the simple form, see setShadowTextureConfig for the more complex form.

Set the size of the texture used for all texture-based shadows. The larger the shadow texture, the better the detail on texture based shadows, but obviously this takes more memory. The default size is 512. Sizes must be a power of 2. This is the simple form, see setShadowTextureConfig for the more complex form.

setShadowTextureFSAASource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> Int

fsaa

-> IO () 

Set the number of textures allocated for texture-based shadows. The default number of textures assigned to deal with texture based shadows is 1; however this means you can only have one light casting shadows at the same time. You can increase this number in order to make this more flexible, but be aware of the texture memory it will use.

setShadowTextureCountSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> Int

count

-> IO () 

Get the number of the textures allocated for texture based shadows.

getShadowTextureCountSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO Int 

setShadowTextureCountPerLightTypeSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> EnumLightType

type

-> Int

count

-> IO () 

Get the number of shadow textures is assigned for the given light type.

Set the number of shadow textures a light type uses. The default for all light types is 1. This means that each light uses only 1 shadow texture. Call this if you need more than 1 shadow texture per light, E.G. PSSM. This feature only works with the Integrated shadow technique. Also remember to increase the total number of shadow textures you request appropriately (e.g. via setShadowTextureCount)!!

getShadowTextureCountPerLightTypeSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> EnumLightType

type

-> IO Int 

getShadowTextureSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> Int

shadowIndex

-> IO SharedPtr 

Sets the proportional distance which a texture shadow which is generated from a directional light will be offset into the camera view to make best use of texture space. When generating a shadow texture from a directional light, an approximation is used since it is not possible to render the entire scene to one texture. The texture is projected onto an area centred on the camera, and is the shadow far distance * 2 in length (it is square). This wastes a lot of texture space outside the frustum though, so this offset allows you to move the texture in front of the camera more. However, be aware that this can cause a little shadow jittering during rotation, and that if you move it too far then you'll start to get artefacts close to the camera. The value is represented as a proportion of the shadow far distance, and the default is 0.6.

Get a reference to the shadow texture currently in use at the given index. If you change shadow settings, this reference may no longer be correct, so be sure not to hold the returned reference over texture shadow configuration changes.

setShadowDirLightTextureOffsetSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> Float

offset

-> IO () 

Gets the proportional distance which a texture shadow which is generated from a

getShadowDirLightTextureOffsetSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO Float 

Sets the proportional distance at which texture shadows begin to fade out. To hide the edges where texture shadows end (in directional lights) Ogre

setShadowTextureFadeStartSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> Float

fadeStart

-> IO () 

Sets the proportional distance at which texture shadows finish to fading out. To hide the edges where texture shadows end (in directional lights) Ogre

setShadowTextureFadeEndSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> Float

fadeEnd

-> IO () 

Sets whether or not texture shadows should attempt to self-shadow. The default implementation of texture shadows uses a fixed-function colour 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 the setShadowTextureCasterMaterial and setShadowTextureReceiverMaterial 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.

setShadowTextureSelfShadowSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> Bool

selfShadow - Whether to attempt self-shadowing with texture shadows

-> IO () 

Gets whether or not texture shadows attempt to self-shadow.

getShadowTextureSelfShadowSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO Bool 

setShadowTextureCasterMaterialSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

name

-> IO () 

Sets the default material to use for rendering shadow receivers. By default shadow receivers are rendered as a post-pass using basic modulation. This allows basic projective texture shadows, but it's possible to use more advanced shadow techniques by overriding the caster and receiver materials, for example providing vertex and fragment programs to implement shadow maps. You can rely on texture unit 0 containing the shadow texture, and for the unit to be set to use projective texturing from the light (only useful if you're using fixed-function, which is unlikely; otherwise you should rely on the texture_viewproj_matrix auto binding) Individual objects may also override the vertex program in your default material if their materials include shadow_caster_vertex_program_ref shadow_receiver_vertex_program_ref shadow_receiver_material entries, so if you use both make sure they are compatible. Only a single pass is allowed in your material, although multiple techniques may be used for hardware fallback.

Sets the default material to use for rendering shadow casters. By default shadow casters are rendered into the shadow texture using an automatically generated fixed-function pass. This allows basic projective texture shadows, but it's possible to use more advanced shadow techniques by overriding the caster and receiver materials, for example providing vertex and fragment programs to implement shadow maps. You can rely on the ambient light in the scene being set to the requested texture shadow colour, if that's useful. Individual objects may also override the vertex program in your default material if their materials include shadow_caster_vertex_program_ref, shadow_receiver_vertex_program_ref shadow_caster_material entries, so if you use both make sure they are compatible. Only a single pass is allowed in your material, although multiple techniques may be used for hardware fallback.

setShadowTextureReceiverMaterialSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

name

-> IO () 

Sets whether or not shadow casters should be rendered into shadow textures using their back faces rather than their front faces. Rendering back faces rather than front faces into a shadow texture can help minimise depth comparison issues, if you're using depth shadowmapping. You will probably still need some biasing but you won't need as much. For solid objects the result is the same anyway, if you have objects with holes you may want to turn this option off. The default is to enable this option.

setShadowCasterRenderBackFacesSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> Bool

bf

-> IO () 

Gets whether or not shadow casters should be rendered into shadow textures using their back faces rather than their front faces.

getShadowCasterRenderBackFacesSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO Bool 

isShadowTechniqueStencilBasedSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO Bool 

isShadowTechniqueTextureBasedSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO Bool 

Is there a texture shadow based shadowing technique in use?

setShadowUseInfiniteFarPlaneSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> Bool

enable

-> IO () 

Sets whether we should use an inifinite camera far plane when rendering stencil shadows. Stencil shadow coherency is very reliant on the shadow volume not being clipped by the far plane. If this clipping happens, you get a kind of negative shadow effect. The best way to achieve coherency is to move the far plane of the camera out to infinity, thus preventing the far plane from clipping the shadow volumes. When combined with vertex program extrusion of the volume to infinity, which OgreOgreIf you disable infinite projection, or it is not available, you need to be far more careful with your light attenuation / directional light extrusion distances to avoid clipping artefacts at the far plane. Recent cards will generally support infinite far plane projection. However, we have found some cases where they do not, especially on Direct3D. There is no standard capability we can check to validate this, so we use some heuristics based on experience:

RenderSystem

Is there a stencil shadow based shadowing technique in use?

isShadowTechniqueModulativeSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO Bool 

Is there a modulative shadowing technique in use?

isShadowTechniqueAdditiveSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO Bool 

Is there an additive shadowing technique in use?

isShadowTechniqueIntegratedSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO Bool 

Is the shadow technique integrated into primary materials?

isShadowTechniqueInUseSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO Bool 

Is there any shadowing technique in use?

setShadowUseLightClipPlanesSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> Bool

enabled

-> IO () 

Gets whether when using a built-in additive shadow mode, user clip

Sets whether when using a built-in additive shadow mode, user clip planes should be used to restrict light rendering.

getShadowUseLightClipPlanesSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO Bool 

Sets whether to use late material resolving or not. If set, materials will be resolved from the materials at the pass-setting stage and not at the render queue building stage. This is useful when the active material scheme during the render queue building stage is different from the one during the rendering stage.

setLateMaterialResolvingSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> Bool

isLate

-> IO () 

Gets whether using late material resolving or not. setLateMaterialResolving

isLateMaterialResolvingSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO Bool 

hasStaticGeometrySource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

name

-> IO Bool 

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

destroyStaticGeometry2Source

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

name

-> IO () 

Remove & destroy all StaticGeometry instances.

Remove & destroy a StaticGeometry instance.

destroyAllStaticGeometrySource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO () 

Remove & destroy a InstancedGeometry instance.

destroyInstancedGeometry2Source

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

name

-> IO () 

Remove & destroy all InstancedGeometry instances.

destroyAllInstancedGeometrySource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO () 

Returns whether an InstanceManager with the given name exists.

hasInstanceManagerSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

managerName

-> IO Bool 

destroyInstanceManagerSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

name

-> IO () 

Destroys an InstanceManager bif/b it was created with createInstanceManager() Be sure you don't have any InstancedEntity referenced somewhere which was created with this manager, since it will become a dangling pointer.

destroyAllInstanceManagersSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO () 

Destroys a MovableObject with the name specified, of the type specified. The MovableObject

destroyMovableObjectSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

name

-> String

typeName

-> IO () 

Destroys a MovableObject. The MovableObject

destroyMovableObject2Source

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> HG3DClass

m

-> IO () 

Destroy all MovableObjects of a given type.

destroyAllMovableObjectsByTypeSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

typeName

-> IO () 

Destroy all MovableObjects.

destroyAllMovableObjectsSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO () 

Get a reference to a previously created MovableObject. Throws an exception if the named instance does not exist

getMovableObjectSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

name

-> String

typeName

-> IO HG3DClass 

Returns whether a movable object instance with the given name exists.

hasMovableObjectSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

name

-> String

typeName

-> IO Bool 

injectMovableObjectSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> HG3DClass

m

-> IO () 

Extract a previously injected MovableObject. Essentially this does the same as destroyMovableObject, but only removes the instance from the internal lists, it does not attempt to destroy it.

Inject a MovableObject instance created externally. This method injects a MovableObjectMovableObjectSceneManagerMovableObjectMovableObjectIt is important that the MovableObject

extractMovableObjectSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

name

-> String

typeName

-> IO () 

Extract a previously injected MovableObject. Essentially this does the same as destroyMovableObject, but only removes the instance from the internal lists, it does not attempt to destroy it.

extractMovableObject2Source

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> HG3DClass

m

-> IO () 

Extract all injected MovableObjects of a given type. Essentially this does the same as destroyAllMovableObjectsByType, but only removes the instances from the internal lists, it does not attempt to destroy them.

extractAllMovableObjectsByTypeSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> String

typeName

-> IO () 

Sets a mask which is bitwise anded with objects own visibility masks to determine if the object is visible. Note that this is combined with any per-viewport visibility mask through an and operation. Viewport::setVisibilityMask

setVisibilityMaskSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> Int

vmask

-> IO () 

Gets a mask which is bitwise anded with objects own visibility masks to determine if the object is visible.

getVisibilityMaskSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO Int 

setFindVisibleObjectsSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> Bool

find

-> IO () 

Gets whether the SceneManager

Sets whether the SceneManager should search for visible objects, or whether they are being manually handled. This is an advanced function, you should not use this unless you know what you are doing.

getFindVisibleObjectsSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO Bool 

setNormaliseNormalsOnScaleSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> Bool

n

-> IO () 

Get whether to automatically normalise normals on objects whenever they are scaled.

Set whether to automatically normalise normals on objects whenever they are scaled. Scaling can distort normals so the default behaviour is to compensate for this, but it has a cost. If you would prefer to manually manage this, set this option to false and use Pass::setNormaliseNormals only when needed.

getNormaliseNormalsOnScaleSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO Bool 

setFlipCullingOnNegativeScaleSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> Bool

n

-> IO () 

Get whether to automatically flip the culling mode on objects whenever they are negatively scaled.

Set whether to automatically flip the culling mode on objects whenever they are negatively scaled. Negativelyl scaling an object has the effect of flipping the triangles, so the culling mode should probably be inverted to deal with this. If you would prefer to manually manage this, set this option to false and use different materials with Pass::setCullingMode set manually as needed.

getFlipCullingOnNegativeScaleSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO Bool 

getDestinationRenderSystemSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO HG3DClass 

Get the rendersystem subclass to which the output of this Scene Manager gets sent

getCurrentViewportSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO HG3DClass 

Gets the current viewport being rendered (advanced use only, only valid during viewport update.

setCameraRelativeRenderingSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> Bool

rel

-> IO () 

Get whether to use camera-relative co-ordinates when rendering, ie to always place the camera at the origin and move the world around it.

Set whether to use camera-relative co-ordinates when rendering, ie to always place the camera at the origin and move the world around it. This is a technique to alleviate some of the precision issues associated with rendering far from the origin, where single-precision floats as used in most GPUs begin to lose their precision. Instead of including the camera translation in the view matrix, it only includes the rotation, and the world matrices of objects must be expressed relative to this. If you need this option, you will probably also need to enable double-precision mode in Ogre

getCameraRelativeRenderingSource

Arguments

:: HG3DClass

classpointer - pointer of Class instance from which this methods is called.

-> IO Bool