Go
to the documentation of this file.
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00013 #ifndef _FBXSDK_FILEIO_GLOBAL_LIGHT_SETTINGS_H_
00014 #define _FBXSDK_FILEIO_GLOBAL_LIGHT_SETTINGS_H_
00015
00016 #include <fbxsdk/fbxsdk_def.h>
00017
00018 #include <fbxsdk/core/base/fbxarray.h>
00019 #include <fbxsdk/core/base/fbxerror.h>
00020 #include <fbxsdk/core/math/fbxvector4.h>
00021 #include <fbxsdk/core/fbxpropertytypes.h>
00022
00023 #include <fbxsdk/fbxsdk_nsbegin.h>
00024
00025 class FbxGlobalLightSettingsProperties;
00026
00033 class FBXSDK_DLL FbxGlobalLightSettings
00034 {
00035
00036 public:
00037 FBXSDK_FRIEND_NEW();
00042
00047 void SetAmbientColor(FbxColor pAmbientColor);
00048
00052 FbxColor GetAmbientColor() const;
00053
00055
00060
00064 void SetFogEnable(bool pEnable);
00065
00069 bool GetFogEnable() const;
00070
00075 void SetFogColor(FbxColor pColor);
00076
00081 FbxColor GetFogColor() const;
00082
00085 enum EFogMode
00086 {
00087 eLinear,
00088 eExponential,
00089 eExponentialSquareRoot
00090 };
00091
00095 void SetFogMode(EFogMode pMode);
00096
00100 EFogMode GetFogMode() const;
00101
00107 void SetFogDensity(double pDensity);
00108
00113 double GetFogDensity() const;
00114
00119 void SetFogStart(double pStart);
00120
00125 double GetFogStart() const;
00126
00131 void SetFogEnd(double pEnd);
00132
00137 double GetFogEnd() const;
00138
00140
00147
00150 struct FBXSDK_DLL ShadowPlane
00151 {
00153 ShadowPlane();
00154
00156 bool mEnable;
00157
00159 FbxVector4 mOrigin;
00160
00162 FbxVector4 mNormal;
00163 };
00164
00168 void SetShadowEnable(bool pShadowEnable);
00169
00173 bool GetShadowEnable() const;
00174
00179 void SetShadowIntensity(double pShadowIntensity);
00180
00185 double GetShadowIntensity() const;
00186
00190 int GetShadowPlaneCount() const;
00191
00197 ShadowPlane* GetShadowPlane(int pIndex);
00198
00202 void AddShadowPlane(ShadowPlane pShadowPlane);
00203
00205 void RemoveAllShadowPlanes();
00206
00208
00213
00217 FbxError& GetError();
00218
00223 enum EErrorCode
00224 {
00225 eIndexOutOfRange,
00226 eErrorCount
00227 };
00228
00232 EErrorCode GetLastErrorID() const;
00233
00237 const char* GetLastErrorString() const;
00238
00240
00242 void RestoreDefaultSettings();
00243
00247 const FbxGlobalLightSettings& operator=(const FbxGlobalLightSettings& pGlobalLightSettings);
00248
00249
00251
00252
00253
00254
00255
00256
00258
00259 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00260
00261 private:
00262
00263 FbxGlobalLightSettings();
00264 ~FbxGlobalLightSettings();
00265
00266 FbxGlobalLightSettingsProperties* mPH;
00267
00268 friend class FbxScene;
00269
00270 #endif // #ifndef DOXYGEN_SHOULD_SKIP_THIS
00271
00272 };
00273
00274 #include <fbxsdk/fbxsdk_nsend.h>
00275
00276 #endif