Go to the
documentation of this file.
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015 namespace mudbox {
00016
00018 class MBDLL_DECL Light : virtual public GroupNode
00019 {
00020 DECLARE_CLASS;
00021
00022 protected:
00029 Light( void );
00030
00031 public:
00032
00033 enum LightType
00034 {
00035 LIGHT_DIRECTIONAL=0,
00036 LIGHT_POINT,
00037 LIGHT_SPOT,
00038 LIGHT_IBL,
00039 LIGHT_NONE,
00040 };
00041
00043 virtual Color Diffuse( void ) const;
00044
00046 virtual void SetDiffuse(
00047 const Color &cDiffuse
00048 );
00049
00051 virtual float Intensity( void ) const;
00052
00054 virtual void SetIntensity(
00055 float fIntensity
00056 );
00057
00059 virtual bool IsLockedToCamera( void ) const;
00060
00062 virtual void SetLockedToCamera(
00063 bool bOnOrOff
00064 );
00065
00067 virtual bool Render( void );
00068
00070 virtual Manipulator *GetManipulator();
00071
00073 virtual void ValidateShadowMap();
00074
00076 virtual Texture *ShadowDepthMap();
00077
00085 virtual const Matrix &ShadowMatrix() const;
00086
00088 virtual bool CastShadow();
00089
00097 virtual float ShadowBias();
00098
00102 virtual LightType Type();
00103
00107 virtual void SetAttenuation(float);
00108
00112 virtual float Attenuation(void) const;
00113
00121 virtual Matrix LockedToCameraMatrix() const;
00122
00124 virtual Image *HDRImage() const;
00125
00126
00127
00128
00129
00130 virtual const QString *HDRImageFilename() const;
00131 };
00132
00133 };