HGamer3D-Ogre-Binding-0.1.8: Library to enable 3D game development for Haskell - Ogre Bindings

Safe HaskellSafe-Infered

HGamer3D.Bindings.Ogre.ClassLight

Synopsis

Documentation

newSource

Arguments

:: String

name

-> IO HG3DClass 

Normal constructor. Should not be called directly, but rather the SceneManager::createLight

deleteSource

Arguments

:: HG3DClass

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

-> IO () 

Sets the type of light - see LightTypes for more info.

Standard destructor.

setTypeSource

Arguments

:: HG3DClass

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

-> EnumLightType

type

-> IO () 

Returns the light type.

getTypeSource

Arguments

:: HG3DClass

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

-> IO EnumLightType 

setDiffuseColourSource

Arguments

:: HG3DClass

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

-> Float

red

-> Float

green

-> Float

blue

-> IO () 

Sets the colour of the diffuse light given off by this source. MaterialDiffuse light simulates the typical light emanating from light sources and affects the base colour of objects together with ambient light.

Sets the colour of the diffuse light given off by this source. MaterialDiffuse light simulates the typical light emanating from light sources and affects the base colour of objects together with ambient light.

setDiffuseColour2Source

Arguments

:: HG3DClass

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

-> Colour

colour

-> IO () 

Returns the colour of the diffuse light given off by this light source (see setDiffuseColour for more info).

getDiffuseColourSource

Arguments

:: HG3DClass

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

-> IO Colour 

setSpecularColourSource

Arguments

:: HG3DClass

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

-> Float

red

-> Float

green

-> Float

blue

-> IO () 

Sets the colour of the specular light given off by this source. MaterialSpecular light affects the appearance of shiny highlights on objects, and is also dependent on the shininess Material

Sets the colour of the specular light given off by this source. MaterialSpecular light affects the appearance of shiny highlights on objects, and is also dependent on the shininess Material

setSpecularColour2Source

Arguments

:: HG3DClass

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

-> Colour

colour

-> IO () 

Returns the colour of specular light given off by this light source.

getSpecularColourSource

Arguments

:: HG3DClass

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

-> IO Colour 

setAttenuationSource

Arguments

:: HG3DClass

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

-> Float

range - The absolute upper range of the light in world units

-> Float

constant - The constant factor in the attenuation formula: 1.0 means never attenuate, 0.0 is complete attenuation

-> Float

linear - The linear factor in the attenuation formula: 1 means attenuate evenly over the distance

-> Float

quadratic - The quadratic factor in the attenuation formula: adds a curvature to the attenuation formula.

-> IO () 

Returns the absolute upper range of the light.

Sets the attenuation parameters of the light source i.e. how it diminishes with distance. Lights normally get fainter the further they are away. Also, each light is given a maximum range beyond which it cannot affect any objects. LightThis follows a standard attenuation approach - see any good 3D text for the details of what they mean since i don't have room here!

getAttenuationRangeSource

Arguments

:: HG3DClass

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

-> IO Float 

getAttenuationConstantSource

Arguments

:: HG3DClass

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

-> IO Float 

Returns the constant factor in the attenuation formula.

getAttenuationLinearSource

Arguments

:: HG3DClass

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

-> IO Float 

Returns the linear factor in the attenuation formula.

getAttenuationQuadricSource

Arguments

:: HG3DClass

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

-> IO Float 

Returns the quadric factor in the attenuation formula.

setPositionSource

Arguments

:: HG3DClass

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

-> Float

x

-> Float

y

-> Float

z

-> IO () 

Sets the position of the light. Applicable to point lights and spotlights only. This will be overridden if the light is attached to a SceneNode

Sets the position of the light. Applicable to point lights and spotlights only. This will be overridden if the light is attached to a SceneNode

setPosition2Source

Arguments

:: HG3DClass

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

-> Vec3

vec

-> IO () 

Returns the position of the light. Applicable to point lights and spotlights only.

getPositionSource

Arguments

:: HG3DClass

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

-> IO Vec3 

setDirectionSource

Arguments

:: HG3DClass

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

-> Float

x

-> Float

y

-> Float

z

-> IO () 

Sets the direction in which a light points. Applicable only to the spotlight and directional light types. This will be overridden if the light is attached to a SceneNode

Sets the direction in which a light points. Applicable only to the spotlight and directional light types. This will be overridden if the light is attached to a SceneNode

setDirection2Source

Arguments

:: HG3DClass

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

-> Vec3

vec

-> IO () 

Returns the light's direction. Applicable only to the spotlight and directional light types.

getDirectionSource

Arguments

:: HG3DClass

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

-> IO Vec3 

setSpotlightRangeSource

Arguments

:: HG3DClass

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

-> Radians

innerAngle - Angle covered by the bright inner cone The inner cone applicable only to Direct3D, it'll always treat as zero in OpenGL.

-> Radians

outerAngle - Angle covered by the outer cone

-> Float

falloff - The rate of falloff between the inner and outer cones. 1.0 means a linear falloff, less means slower falloff, higher means faster falloff.

-> IO () 

Returns the angle covered by the spotlights inner cone.

Sets the range of a spotlight, i.e. the angle of the inner and outer cones and the rate of falloff between them.

getSpotlightInnerAngleSource

Arguments

:: HG3DClass

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

-> IO Radians 

getSpotlightOuterAngleSource

Arguments

:: HG3DClass

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

-> IO Radians 

Returns the angle covered by the spotlights outer cone.

getSpotlightFalloffSource

Arguments

:: HG3DClass

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

-> IO Float 

Returns the falloff between the inner and outer cones of the spotlight.

setSpotlightInnerAngleSource

Arguments

:: HG3DClass

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

-> Radians

val

-> IO () 

Sets the angle covered by the spotlights outer cone.

Sets the angle covered by the spotlights inner cone.

setSpotlightOuterAngleSource

Arguments

:: HG3DClass

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

-> Radians

val

-> IO () 

Sets the falloff between the inner and outer cones of the spotlight.

setSpotlightFalloffSource

Arguments

:: HG3DClass

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

-> Float

val

-> IO () 

Set a scaling factor to indicate the relative power of a light. This factor is only useful in High Dynamic Range (HDR) rendering. You can bind it to a shader variable to take it into account, GpuProgramParameters

setPowerScaleSource

Arguments

:: HG3DClass

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

-> Float

power - The power rating of this light, default is 1.0.

-> IO () 

Set the scaling factor which indicates the relative power of a light.

getPowerScaleSource

Arguments

:: HG3DClass

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

-> IO Float 

getMovableTypeSource

Arguments

:: HG3DClass

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

-> IO String 

Overridden from MovableObject

getDerivedPositionSource

Arguments

:: HG3DClass

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

-> Bool

cameraRelativeIfSet - If set to true, returns data in camera-relative units if that's been set up (render use)

-> IO Vec3 

Retrieves the position of the light including any transform from nodes it is attached to.

getDerivedDirectionSource

Arguments

:: HG3DClass

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

-> IO Vec3 

Retrieves the direction of the light including any transform from nodes it is attached to.

setVisibleSource

Arguments

:: HG3DClass

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

-> Bool

visible

-> IO () 

Overridden from MovableObject

Overridden from MovableObjectAlthough lights themselves are not visible, setting a light to invisible means it no longer affects the scene.

getBoundingRadiusSource

Arguments

:: HG3DClass

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

-> IO Float 

getTypeFlagsSource

Arguments

:: HG3DClass

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

-> IO Int 

Override to return specific type flag.

resetCustomShadowCameraSetupSource

Arguments

:: HG3DClass

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

-> IO () 

Sets the maximum distance away from the camera that shadows by this light will be visible. 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.

Reset the shadow camera setup to the default. ShadowCameraSetup

setShadowFarDistanceSource

Arguments

:: HG3DClass

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

-> Float

distance

-> IO () 

Tells the light to use the shadow far distance of the SceneManager

resetShadowFarDistanceSource

Arguments

:: HG3DClass

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

-> IO () 

Gets the maximum distance away from the camera that shadows by this light will be visible.

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 

setShadowNearClipDistanceSource

Arguments

:: HG3DClass

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

-> Float

nearClip

-> IO () 

Get the near clip plane distance to be used by the shadow camera, if this light casts texture shadows. May be zero if the light doesn't have it's own near distance set; use _deriveShadowNearDistance for a version guaranteed to give a result.

Set the near clip plane distance to be used by the shadow camera, if this light casts texture shadows.

getShadowNearClipDistanceSource

Arguments

:: HG3DClass

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

-> IO Float 

setShadowFarClipDistanceSource

Arguments

:: HG3DClass

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

-> Float

farClip

-> IO () 

Get the far clip plane distance to be used by the shadow camera, if this light casts texture shadows. May be zero if the light doesn't have it's own far distance set; use _deriveShadowfarDistance for a version guaranteed to give a result.

Set the far clip plane distance to be used by the shadow camera, if this light casts texture shadows. This is different from the 'shadow far distance', which is always measured from the main camera. This distance is the far clip plane of the light camera.

getShadowFarClipDistanceSource

Arguments

:: HG3DClass

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

-> IO Float