Richard Boegli's CnC_Generals_Zero_Hour Fork WIP
This is documentation of Richard Boegil's Zero Hour Fork
 
Loading...
Searching...
No Matches
W3DDynamicLight Class Reference

#include <W3DDynamicLight.h>

Inherits LightClass.

Public Member Functions

 W3DDynamicLight ()
 
 ~W3DDynamicLight (void)
 
virtual void On_Frame_Update (void)
 
void setEnabled (Bool enabled)
 
Bool isEnabled (void)
 
void setFrameFade (UnsignedInt frameIncreaseTime, UnsignedInt decayFrameTime)
 0 frameIncreaseTime means it starts out full size/intensity, 0 decay time means it lasts forever.
 
void setDecayRange (void)
 
void setDecayColor (void)
 
Bool cull (Int x, Int y)
 
- Public Member Functions inherited from LightClass
 LightClass (LightType type=POINT)
 
 LightClass (const LightClass &src)
 
LightClassoperator= (const LightClass &)
 
virtual ~LightClass (void)
 
RenderObjClassClone (void) const
 
virtual int Class_ID (void) const
 
virtual void Render (RenderInfoClass &rinfo)
 
virtual bool Is_Vertex_Processor (void)
 
virtual void Notify_Added (SceneClass *scene)
 
virtual void Notify_Removed (SceneClass *scene)
 
virtual void Get_Obj_Space_Bounding_Sphere (SphereClass &sphere) const
 
virtual void Get_Obj_Space_Bounding_Box (AABoxClass &box) const
 
LightType Get_Type ()
 
void Set_Intensity (float inten)
 
float Get_Intensity (void) const
 
void Set_Ambient (const Vector3 &color)
 
void Get_Ambient (Vector3 *set_c) const
 
void Set_Diffuse (const Vector3 &color)
 
void Get_Diffuse (Vector3 *set_c) const
 
void Set_Specular (const Vector3 &color)
 
void Get_Specular (Vector3 *set_c) const
 
void Set_Far_Attenuation_Range (double fStart, double fEnd)
 
void Get_Far_Attenuation_Range (double &fStart, double &fEnd) const
 
void Get_Far_Attenuation_Range (float &fStart, float &fEnd) const
 
void Set_Near_Attenuation_Range (double nStart, double nEnd)
 
void Get_Near_Attenuation_Range (double &nStart, double &nEnd) const
 
float Get_Attenuation_Range (void) const
 
void Set_Flag (FlagsType flag, bool onoff)
 
int Get_Flag (FlagsType flag) const
 
void Enable_Shadows (bool onoff)
 
bool Are_Shadows_Enabled (void) const
 
LightType Get_Type (void) const
 
void Set_Spot_Angle (float a)
 
float Get_Spot_Angle (void) const
 
float Get_Spot_Angle_Cos (void) const
 
void Set_Spot_Direction (const Vector3 &dir)
 
void Get_Spot_Direction (Vector3 &dir) const
 
void Set_Spot_Exponent (float k)
 
float Get_Spot_Exponent (void) const
 
WW3DErrorType Load_W3D (ChunkLoadClass &cload)
 
WW3DErrorType Save_W3D (ChunkSaveClass &csave)
 
virtual const PersistFactoryClassGet_Factory (void) const
 
virtual bool Save (ChunkSaveClass &csave)
 
virtual bool Load (ChunkLoadClass &cload)
 
- Public Member Functions inherited from RenderObjClass
 RenderObjClass (void)
 
 RenderObjClass (const RenderObjClass &src)
 
RenderObjClassoperator= (const RenderObjClass &)
 
virtual ~RenderObjClass (void)
 
virtual const char * Get_Name (void) const
 
virtual void Set_Name (const char *name)
 
virtual const char * Get_Base_Model_Name (void) const
 
virtual void Set_Base_Model_Name (const char *name)
 
virtual int Get_Num_Polys (void) const
 
virtual void Special_Render (SpecialRenderInfoClass &rinfo)
 
virtual void Restart (void)
 
virtual void Add (SceneClass *scene)
 
virtual void Remove (void)
 
virtual SceneClassGet_Scene (void)
 
virtual SceneClassPeek_Scene (void)
 
virtual void Set_Container (RenderObjClass *con)
 
virtual void Validate_Transform (void) const
 
RenderObjClassGet_Container (void) const
 
virtual void Set_Transform (const Matrix3D &m)
 
virtual void Set_Position (const Vector3 &v)
 
const Matrix3DGet_Transform (void) const
 
const Matrix3DGet_Transform (bool &is_transform_identity) const
 
const Matrix3DGet_Transform_No_Validity_Check (void) const
 
const Matrix3DGet_Transform_No_Validity_Check (bool &is_transform_identity) const
 
bool Is_Transform_Identity () const
 
bool Is_Transform_Identity_No_Validity_Check () const
 
Vector3 Get_Position (void) const
 
virtual int Get_Num_Sub_Objects (void) const
 
virtual RenderObjClassGet_Sub_Object (int index) const
 
virtual int Add_Sub_Object (RenderObjClass *subobj)
 
virtual int Remove_Sub_Object (RenderObjClass *robj)
 
virtual RenderObjClassGet_Sub_Object_By_Name (const char *name, int *index=NULL) const
 
virtual int Get_Num_Sub_Objects_On_Bone (int boneindex) const
 
virtual RenderObjClassGet_Sub_Object_On_Bone (int index, int boneindex) const
 
virtual int Get_Sub_Object_Bone_Index (RenderObjClass *subobj) const
 
virtual int Get_Sub_Object_Bone_Index (int LodIndex, int ModelIndex) const
 
virtual int Add_Sub_Object_To_Bone (RenderObjClass *subobj, int bone_index)
 
virtual int Add_Sub_Object_To_Bone (RenderObjClass *subobj, const char *bname)
 
virtual int Remove_Sub_Objects_From_Bone (int boneindex)
 
virtual int Remove_Sub_Objects_From_Bone (const char *bname)
 
virtual void Update_Sub_Object_Transforms (void)
 
virtual void Set_Animation (void)
 
virtual void Set_Animation (HAnimClass *motion, float frame, int anim_mode=ANIM_MODE_MANUAL)
 
virtual void Set_Animation (HAnimClass *motion0, float frame0, HAnimClass *motion1, float frame1, float percentage)
 
virtual void Set_Animation (HAnimComboClass *anim_combo)
 
virtual HAnimClassPeek_Animation (void)
 
virtual int Get_Num_Bones (void)
 
virtual const char * Get_Bone_Name (int bone_index)
 
virtual int Get_Bone_Index (const char *bonename)
 
virtual const Matrix3DGet_Bone_Transform (const char *bonename)
 
virtual const Matrix3DGet_Bone_Transform (int boneindex)
 
virtual void Capture_Bone (int bindex)
 
virtual void Release_Bone (int bindex)
 
virtual bool Is_Bone_Captured (int bindex) const
 
virtual void Control_Bone (int bindex, const Matrix3D &objtm, bool world_space_translation=false)
 
virtual const HTreeClassGet_HTree (void) const
 
virtual bool Cast_Ray (RayCollisionTestClass &raytest)
 
virtual bool Cast_AABox (AABoxCollisionTestClass &boxtest)
 
virtual bool Cast_OBBox (OBBoxCollisionTestClass &boxtest)
 
virtual bool Intersect_AABox (AABoxIntersectionTestClass &boxtest)
 
virtual bool Intersect_OBBox (OBBoxIntersectionTestClass &boxtest)
 
virtual bool Intersect (IntersectionClass *Intersection, IntersectionResultClass *Final_Result)
 
virtual bool Intersect_Sphere (IntersectionClass *Intersection, IntersectionResultClass *Final_Result)
 
virtual bool Intersect_Sphere_Quick (IntersectionClass *Intersection, IntersectionResultClass *Final_Result)
 
virtual const SphereClassGet_Bounding_Sphere (void) const
 
virtual const AABoxClassGet_Bounding_Box (void) const
 
virtual void Update_Obj_Space_Bounding_Volumes (void)
 
virtual void Prepare_LOD (CameraClass &camera)
 
virtual void Recalculate_Static_LOD_Factors (void)
 
virtual void Increment_LOD (void)
 
virtual void Decrement_LOD (void)
 
virtual float Get_Cost (void) const
 
virtual float Get_Value (void) const
 
virtual float Get_Post_Increment_Value (void) const
 
virtual void Set_LOD_Level (int lod)
 
virtual int Get_LOD_Level (void) const
 
virtual int Get_LOD_Count (void) const
 
virtual void Set_LOD_Bias (float bias)
 
virtual int Calculate_Cost_Value_Arrays (float screen_area, float *values, float *costs) const
 
virtual RenderObjClassGet_Current_LOD (void)
 
virtual bool Build_Dependency_List (DynamicVectorClass< StringClass > &file_list, bool recursive=true)
 
virtual bool Build_Texture_List (DynamicVectorClass< StringClass > &texture_file_list, bool recursive=true)
 
virtual void Create_Decal (DecalGeneratorClass *generator)
 
virtual void Delete_Decal (uint32 decal_id)
 
virtual MaterialInfoClassGet_Material_Info (void)
 
virtual void Set_User_Data (void *value, bool recursive=false)
 
virtual void * Get_User_Data ()
 
virtual int Get_Num_Snap_Points (void)
 
virtual void Get_Snap_Point (int index, Vector3 *set)
 
virtual float Get_Screen_Size (CameraClass &camera)
 
virtual void Scale (float scale)
 
virtual void Scale (float scalex, float scaley, float scalez)
 
virtual void Set_ObjectScale (float scale)
 
const float Get_ObjectScale (void) const
 
void Set_ObjectColor (unsigned int color)
 
const unsigned int Get_ObjectColor (void) const
 
virtual int Get_Sort_Level (void) const
 
virtual void Set_Sort_Level (int level)
 
virtual int Is_Really_Visible (void)
 
virtual int Is_Not_Hidden_At_All (void)
 
virtual int Is_Visible (void) const
 
virtual void Set_Visible (int onoff)
 
virtual int Is_Hidden (void) const
 
virtual void Set_Hidden (int onoff)
 
virtual int Is_Animation_Hidden (void) const
 
virtual void Set_Animation_Hidden (int onoff)
 
virtual int Is_Force_Visible (void) const
 
virtual void Set_Force_Visible (int onoff)
 
virtual int Is_Translucent (void) const
 
virtual void Set_Translucent (int onoff)
 
virtual int Is_Alpha (void) const
 
virtual void Set_Alpha (int onoff)
 
virtual int Is_Additive (void) const
 
virtual void Set_Additive (int onoff)
 
virtual int Get_Collision_Type (void) const
 
virtual void Set_Collision_Type (int type)
 
virtual bool Is_Complete (void)
 
virtual bool Is_In_Scene (void)
 
virtual float Get_Native_Screen_Size (void) const
 
virtual void Set_Native_Screen_Size (float screensize)
 
void Set_Sub_Objects_Match_LOD (int onoff)
 
int Is_Sub_Objects_Match_LOD_Enabled (void)
 
void Set_Sub_Object_Transforms_Dirty (bool onoff)
 
bool Are_Sub_Object_Transforms_Dirty (void)
 
void Set_Ignore_LOD_Cost (bool onoff)
 
bool Is_Ignoring_LOD_Cost (void)
 
void Set_Is_Self_Shadowed ()
 
void Unset_Is_Self_Shadowed ()
 
int Is_Self_Shadowed () const
 
RenderHookClassGet_Render_Hook (void)
 
void Set_Render_Hook (RenderHookClass *hook)
 
- Public Member Functions inherited from RefCountClass
 RefCountClass (void)
 
 RefCountClass (const RefCountClass &)
 
void Add_Ref (void) const
 
WWINLINE void Release_Ref (void) const
 
int Num_Refs (void) const
 
virtual void Delete_This (void)
 
- Public Member Functions inherited from PostLoadableClass
 PostLoadableClass (void)
 
virtual ~PostLoadableClass (void)
 
virtual void On_Post_Load (void)
 
bool Is_Post_Load_Registered (void)
 
void Set_Post_Load_Registered (bool onoff)
 
- Public Member Functions inherited from MultiListObjectClass
 MultiListObjectClass (void)
 
virtual ~MultiListObjectClass (void)
 
MultiListNodeClassGet_List_Node () const
 
void Set_List_Node (MultiListNodeClass *node)
 

Protected Attributes

Bool m_priorEnable
 Values used by HeightMapRenderObjClass to update the height map.
 
Bool m_processMe
 
Int m_prevMinX
 
Int m_prevMinY
 
Int m_prevMaxX
 
Int m_prevMaxY
 
Int m_minX
 
Int m_minY
 
Int m_maxX
 
Int m_maxY
 
Bool m_enabled
 
Bool m_decayRange
 
Bool m_decayColor
 
UnsignedInt m_curDecayFrameCount
 
UnsignedInt m_curIncreaseFrameCount
 
UnsignedInt m_decayFrameCount
 
UnsignedInt m_increaseFrameCount
 
Real m_targetRange
 
Vector3 m_targetAmbient
 
Vector3 m_targetDiffuse
 
- Protected Attributes inherited from LightClass
LightType Type
 
unsigned int Flags
 
bool CastShadows
 
float Intensity
 
Vector3 Ambient
 
Vector3 Diffuse
 
Vector3 Specular
 
float NearAttenStart
 
float NearAttenEnd
 
float FarAttenStart
 
float FarAttenEnd
 
float SpotAngle
 
float SpotAngleCos
 
float SpotExponent
 
Vector3 SpotDirection
 
- Protected Attributes inherited from RenderObjClass
unsigned long Bits
 
Matrix3D Transform
 
float ObjectScale
 
unsigned int ObjectColor
 
SphereClass CachedBoundingSphere
 
AABoxClass CachedBoundingBox
 
float NativeScreenSize
 
bool IsTransformIdentity
 
SceneClassScene
 
RenderObjClassContainer
 
void * User_Data
 
RenderHookClassRenderHook
 

Friends

class BaseHeightMapRenderObjClass
 
class HeightMapRenderObjClass
 

Additional Inherited Members

- Public Types inherited from LightClass
enum  LightType { POINT = 0 , DIRECTIONAL , SPOT }
 
enum  FlagsType { NEAR_ATTENUATION = 0 , FAR_ATTENUATION }
 
- Public Types inherited from RenderObjClass
enum  { USER_DATA_MATERIAL_OVERRIDE = 0x01234567 }
 
enum  {
  CLASSID_UNKNOWN = 0xFFFFFFFF , CLASSID_MESH = 0 , CLASSID_HMODEL , CLASSID_DISTLOD ,
  CLASSID_PREDLODGROUP , CLASSID_TILEMAP , CLASSID_IMAGE3D , CLASSID_LINE3D ,
  CLASSID_BITMAP2D , CLASSID_CAMERA , CLASSID_DYNAMESH , CLASSID_DYNASCREENMESH ,
  CLASSID_TEXTDRAW , CLASSID_FOG , CLASSID_LAYERFOG , CLASSID_LIGHT ,
  CLASSID_PARTICLEEMITTER , CLASSID_PARTICLEBUFFER , CLASSID_SCREENPOINTGROUP , CLASSID_VIEWPOINTGROUP ,
  CLASSID_WORLDPOINTGROUP , CLASSID_TEXT2D , CLASSID_TEXT3D , CLASSID_NULL ,
  CLASSID_COLLECTION , CLASSID_FLARE , CLASSID_HLOD , CLASSID_AABOX ,
  CLASSID_OBBOX , CLASSID_SEGLINE , CLASSID_SPHERE , CLASSID_RING ,
  CLASSID_BOUNDFOG , CLASSID_DAZZLE , CLASSID_SOUND , CLASSID_SEGLINETRAIL ,
  CLASSID_LAND , CLASSID_SHDMESH , CLASSID_LAST = 0x0000FFFF
}
 
enum  AnimMode {
  ANIM_MODE_MANUAL = 0 , ANIM_MODE_LOOP , ANIM_MODE_ONCE , ANIM_MODE_LOOP_PINGPONG ,
  ANIM_MODE_LOOP_BACKWARDS , ANIM_MODE_ONCE_BACKWARDS
}
 
- Static Public Member Functions inherited from RefCountClass
static int Total_Refs (void)
 
static RefCountClassAdd_Active_Ref (RefCountClass *obj)
 
static RefCountClassSet_Ref_Owner (RefCountClass *obj, char *file, int line)
 
static void Remove_Active_Ref (RefCountClass *obj)
 
static bool Validate_Active_Ref (RefCountClass *obj)
 
- Public Attributes inherited from RefCountClass
RefCountNodeClass ActiveRefNode
 
ActiveRefStruct ActiveRefInfo
 
- Static Public Attributes inherited from RenderObjClass
static const float AT_MIN_LOD = FLT_MAX
 
static const float AT_MAX_LOD = -1.0f
 
- Static Public Attributes inherited from RefCountClass
static RefCountListClass ActiveRefList
 
- Protected Types inherited from RenderObjClass
enum  {
  COLL_TYPE_MASK = 0x000000FF , IS_VISIBLE = 0x00000100 , IS_NOT_HIDDEN = 0x00000200 , IS_NOT_ANIMATION_HIDDEN = 0x00000400 ,
  IS_FORCE_VISIBLE = 0x00000800 , BOUNDING_VOLUMES_VALID = 0x00002000 , IS_TRANSLUCENT = 0x00004000 , IGNORE_LOD_COST = 0x00008000 ,
  SUBOBJS_MATCH_LOD = 0x00010000 , SUBOBJ_TRANSFORMS_DIRTY = 0x00020000 , IS_ALPHA = 0x00040000 , IS_ADDITIVE = 0x00100000 ,
  IS_SELF_SHADOWED = 0x00080000 , IS_CHEATER = 0x00100000 , IS_REALLY_VISIBLE = IS_VISIBLE | IS_NOT_HIDDEN | IS_NOT_ANIMATION_HIDDEN , IS_NOT_HIDDEN_AT_ALL = IS_NOT_HIDDEN | IS_NOT_ANIMATION_HIDDEN ,
  DEFAULT_BITS = COLL_TYPE_ALL | IS_NOT_HIDDEN | IS_NOT_ANIMATION_HIDDEN
}
 
- Protected Member Functions inherited from RenderObjClass
virtual void Add_Dependencies_To_List (DynamicVectorClass< StringClass > &file_list, bool textures_only=false)
 
virtual void Update_Cached_Bounding_Volumes (void) const
 
virtual void Update_Sub_Object_Bits (void)
 
bool Bounding_Volumes_Valid (void) const
 
void Invalidate_Cached_Bounding_Volumes (void) const
 
void Validate_Cached_Bounding_Volumes (void) const
 
- Protected Member Functions inherited from RefCountClass
virtual ~RefCountClass (void)
 

Detailed Description

Definition at line 41 of file W3DDynamicLight.h.

Constructor & Destructor Documentation

◆ W3DDynamicLight()

W3DDynamicLight::W3DDynamicLight ( void )

Definition at line 32 of file W3DDynamicLight.cpp.

◆ ~W3DDynamicLight()

W3DDynamicLight::~W3DDynamicLight ( void )

Definition at line 41 of file W3DDynamicLight.cpp.

Member Function Documentation

◆ cull()

Bool W3DDynamicLight::cull ( Int x,
Int y )
inline

Definition at line 83 of file W3DDynamicLight.h.

◆ isEnabled()

Bool W3DDynamicLight::isEnabled ( void )
inline

Definition at line 75 of file W3DDynamicLight.h.

◆ On_Frame_Update()

void W3DDynamicLight::On_Frame_Update ( void )
virtual

Reimplemented from RenderObjClass.

Definition at line 45 of file W3DDynamicLight.cpp.

◆ setDecayColor()

void W3DDynamicLight::setDecayColor ( void )
inline

Definition at line 81 of file W3DDynamicLight.h.

◆ setDecayRange()

void W3DDynamicLight::setDecayRange ( void )
inline

Definition at line 80 of file W3DDynamicLight.h.

◆ setEnabled()

void W3DDynamicLight::setEnabled ( Bool enabled)
inline

Definition at line 74 of file W3DDynamicLight.h.

◆ setFrameFade()

void W3DDynamicLight::setFrameFade ( UnsignedInt frameIncreaseTime,
UnsignedInt decayFrameTime )

0 frameIncreaseTime means it starts out full size/intensity, 0 decay time means it lasts forever.

Definition at line 78 of file W3DDynamicLight.cpp.

Friends And Related Symbol Documentation

◆ BaseHeightMapRenderObjClass

friend class BaseHeightMapRenderObjClass
friend

Definition at line 43 of file W3DDynamicLight.h.

◆ HeightMapRenderObjClass

friend class HeightMapRenderObjClass
friend

Definition at line 44 of file W3DDynamicLight.h.

Member Data Documentation

◆ m_curDecayFrameCount

UnsignedInt W3DDynamicLight::m_curDecayFrameCount
protected

Definition at line 58 of file W3DDynamicLight.h.

◆ m_curIncreaseFrameCount

UnsignedInt W3DDynamicLight::m_curIncreaseFrameCount
protected

Definition at line 59 of file W3DDynamicLight.h.

◆ m_decayColor

Bool W3DDynamicLight::m_decayColor
protected

Definition at line 57 of file W3DDynamicLight.h.

◆ m_decayFrameCount

UnsignedInt W3DDynamicLight::m_decayFrameCount
protected

Definition at line 60 of file W3DDynamicLight.h.

◆ m_decayRange

Bool W3DDynamicLight::m_decayRange
protected

Definition at line 56 of file W3DDynamicLight.h.

◆ m_enabled

Bool W3DDynamicLight::m_enabled
protected

Definition at line 54 of file W3DDynamicLight.h.

◆ m_increaseFrameCount

UnsignedInt W3DDynamicLight::m_increaseFrameCount
protected

Definition at line 61 of file W3DDynamicLight.h.

◆ m_maxX

Int W3DDynamicLight::m_maxX
protected

Definition at line 52 of file W3DDynamicLight.h.

◆ m_maxY

Int W3DDynamicLight::m_maxY
protected

Definition at line 52 of file W3DDynamicLight.h.

◆ m_minX

Int W3DDynamicLight::m_minX
protected

Definition at line 52 of file W3DDynamicLight.h.

◆ m_minY

Int W3DDynamicLight::m_minY
protected

Definition at line 52 of file W3DDynamicLight.h.

◆ m_prevMaxX

Int W3DDynamicLight::m_prevMaxX
protected

Definition at line 51 of file W3DDynamicLight.h.

◆ m_prevMaxY

Int W3DDynamicLight::m_prevMaxY
protected

Definition at line 51 of file W3DDynamicLight.h.

◆ m_prevMinX

Int W3DDynamicLight::m_prevMinX
protected

Definition at line 51 of file W3DDynamicLight.h.

◆ m_prevMinY

Int W3DDynamicLight::m_prevMinY
protected

Definition at line 51 of file W3DDynamicLight.h.

◆ m_priorEnable

Bool W3DDynamicLight::m_priorEnable
protected

Values used by HeightMapRenderObjClass to update the height map.

Definition at line 47 of file W3DDynamicLight.h.

◆ m_processMe

Bool W3DDynamicLight::m_processMe
protected

Definition at line 48 of file W3DDynamicLight.h.

◆ m_targetAmbient

Vector3 W3DDynamicLight::m_targetAmbient
protected

Definition at line 63 of file W3DDynamicLight.h.

◆ m_targetDiffuse

Vector3 W3DDynamicLight::m_targetDiffuse
protected

Definition at line 64 of file W3DDynamicLight.h.

◆ m_targetRange

Real W3DDynamicLight::m_targetRange
protected

Definition at line 62 of file W3DDynamicLight.h.


The documentation for this class was generated from the following files: