Public Types | Public Member Functions

IGameLight Class Reference

Search for all occurrences

Detailed Description

Simple wrapper for light objects.

An IGame Wrapper around 3ds Max's lights. This is a generic interface for all the lights

#include <IGameObject.h>

Inheritance diagram for IGameLight:
Inheritance graph
[legend]

List of all members.

Public Types

enum   LightType {
  IGAME_OMNI, IGAME_TSPOT, IGAME_DIR, IGAME_FSPOT,
  IGAME_TDIR, IGAME_UNKNOWN
}
 

Various Light types used by 3ds Max.

More...

Public Member Functions

virtual IGameProperty GetLightColor ()=0
  Get the Light Color Data.
virtual IGameProperty GetLightMultiplier ()=0
  Get the Light Multiplier Data.
virtual IGameProperty GetLightAttenEnd ()=0
  Get the Light Attenuation End Data.
virtual IGameProperty GetLightAttenStart ()=0
  Get the Light Attenuation Start Data.
virtual IGameProperty GetLightFallOff ()=0
  Get the Light Falloff Data.
virtual IGameProperty GetLightHotSpot ()=0
  Get the Light Hot spot Data.
virtual IGameProperty GetLightAspectRatio ()=0
  Get the Light Aspect Ratio Data.
virtual IGameProperty GetLightDecayStart ()=0
  Get the Light Decay Start Data.
virtual LightType  GetLightType ()=0
  Get the Light type as defined in the UI.
virtual int  GetLightOvershoot ()=0
  Get the Light overshoot.
virtual int  GetLightDecayType ()=0
  Get the Decay Type of the Light.
virtual int  GetSpotLightShape ()=0
  Get the shape of the Light.
virtual IGameNode GetLightTarget ()=0
  Get the Target of the Light.
virtual bool  IsLightOn ()=0
  Check if Light is On.
virtual bool  IsExcludeListReversed ()=0
  Check Exclude List.
virtual int  GetExcludedNodesCount ()=0
  Get the number of excluded nodes from the Light.
virtual IGameNode GetExcludedNode (int index)=0
  Get the excluded node based on the index pass in.

Member Enumeration Documentation

enum LightType

Various Light types used by 3ds Max.

Enumerator:
IGAME_OMNI 

Omnidirectional Light.

IGAME_TSPOT 

Targeted Spot Light.

IGAME_DIR 

Directional Light.

IGAME_FSPOT 

Free spot Light.

IGAME_TDIR 

Targeted Directional Light.

IGAME_UNKNOWN 

An unknown light type.


Member Function Documentation

virtual IGameProperty* GetLightColor ( ) [pure virtual]

Get the Light Color Data.

Returns:
A pointer to IGameProperty
virtual IGameProperty* GetLightMultiplier ( ) [pure virtual]

Get the Light Multiplier Data.

Returns:
A pointer to IGameProperty
virtual IGameProperty* GetLightAttenEnd ( ) [pure virtual]

Get the Light Attenuation End Data.

Returns:
A pointer to IGameProperty
virtual IGameProperty* GetLightAttenStart ( ) [pure virtual]

Get the Light Attenuation Start Data.

Returns:
A pointer to IGameProperty
virtual IGameProperty* GetLightFallOff ( ) [pure virtual]

Get the Light Falloff Data.

Returns:
A pointer to IGameProperty
virtual IGameProperty* GetLightHotSpot ( ) [pure virtual]

Get the Light Hot spot Data.

Returns:
A pointer to IGameProperty
virtual IGameProperty* GetLightAspectRatio ( ) [pure virtual]

Get the Light Aspect Ratio Data.

Returns:
A pointer to IGameProperty
virtual IGameProperty* GetLightDecayStart ( ) [pure virtual]

Get the Light Decay Start Data.

Returns:
A pointer to IGameProperty
virtual LightType GetLightType ( ) [pure virtual]

Get the Light type as defined in the UI.

Returns:
The Light Type. Returned value corresponds to IGameLight::LightType Enum
virtual int GetLightOvershoot ( ) [pure virtual]

Get the Light overshoot.

Returns:
TRUE if the Light supports overshoot
virtual int GetLightDecayType ( ) [pure virtual]

Get the Decay Type of the Light.

Returns:
The Decay Type as integer
0 - None
1 - Inverse
2 - Inverse Square
virtual int GetSpotLightShape ( ) [pure virtual]

Get the shape of the Light.

Returns:
The shape can be one of the following
RECT_LIGHT
CIRCLE_LIGHT
virtual IGameNode* GetLightTarget ( ) [pure virtual]

Get the Target of the Light.

If the light is of type Spot light then this provides access to the target

Returns:
A pointer to IGameNode for the target. Return NULL for non target lights
virtual bool IsLightOn ( ) [pure virtual]

Check if Light is On.

Returns:
True if the Light is on
virtual bool IsExcludeListReversed ( ) [pure virtual]

Check Exclude List.

Determines whether the exclude list actually maintains a list that is infact included by the light

Returns:
TRUE if the light maintains an included list
virtual int GetExcludedNodesCount ( ) [pure virtual]

Get the number of excluded nodes from the Light.

This list contains nodes that should not be included in lighting calculations. It can also contain a list of only those lights that SHOULD be included. This all depends on the state of IsExcludedListReversed.

Returns:
The total number of excluded nodes
virtual IGameNode* GetExcludedNode ( int  index ) [pure virtual]

Get the excluded node based on the index pass in.

Parameters:
index The index of the node to access
Returns:
An IGameNode pointer for the excluded node

IGameLight IGameLight IGameLight IGameLight IGameLight IGameLight IGameLight IGameLight IGameLight IGameLight
IGameLight IGameLight IGameLight IGameLight IGameLight IGameLight IGameLight IGameLight IGameLight IGameLight