70 lines
1.4 KiB
C++
70 lines
1.4 KiB
C++
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#ifndef XSUNLIGHTPARSEPARAMS_H
|
|
#define XSUNLIGHTPARSEPARAMS_H
|
|
|
|
#include "xasset.h"
|
|
|
|
class XSunLightParseParams : public XAsset
|
|
{
|
|
public:
|
|
explicit XSunLightParseParams();
|
|
|
|
void ParseData(QDataStream *aStream) override;
|
|
|
|
const char* GetName() const;
|
|
void SetName(const char* name);
|
|
|
|
float GetAmbientScale() const;
|
|
void SetAmbientScale(float scale);
|
|
|
|
const float* GetAmbientColor() const;
|
|
void SetAmbientColor(const float* color, size_t count = 3);
|
|
|
|
float GetDiffuseFraction() const;
|
|
void SetDiffuseFraction(float fraction);
|
|
|
|
float GetSunLight() const;
|
|
void SetSunLight(float light);
|
|
|
|
const float* GetSunColor() const;
|
|
void SetSunColor(const float* color, size_t count = 3);
|
|
|
|
const float* GetDiffuseColor() const;
|
|
void SetDiffuseColor(const float* color, size_t count = 3);
|
|
|
|
bool IsDiffuseColorSet() const;
|
|
void SetDiffuseColorSet(bool set);
|
|
|
|
const float* GetAngles() const;
|
|
void SetAngles(const float* angles, size_t count = 3);
|
|
|
|
private:
|
|
char mName[64] = {0};
|
|
float mAmbientScale = 1.0f;
|
|
float mAmbientColor[3] = {0.0f, 0.0f, 0.0f};
|
|
float mDiffuseFraction = 0.0f;
|
|
float mSunLight = 0.0f;
|
|
float mSunColor[3] = {0.0f, 0.0f, 0.0f};
|
|
float mDiffuseColor[3] = {0.0f, 0.0f, 0.0f};
|
|
bool mDiffuseColorHasBeenSet = false;
|
|
float mAngles[3] = {0.0f, 0.0f, 0.0f};
|
|
};
|
|
|
|
#endif // XSUNLIGHTPARSEPARAMS_H
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|