#ifndef XSUNFLARE_H
#define XSUNFLARE_H

#include "xasset.h"
#include "xmaterial.h"

#include <QVector3D>

class XSunFlare : public XAsset
{
public:
    explicit XSunFlare();
    ~XSunFlare();

    virtual void ParseData(XDataStream* aStream) override;
    virtual void Clear() override;

private:
    bool mHasValidData;
    XMaterial mSpriteMaterial;
    XMaterial mFlareMaterial;
    float mSpriteSize;
    float mFlareMinSize;
    float mFlareMinDot;
    float mFlareMaxSize;
    float mFlareMaxDot;
    float mFlareMaxAlpha;
    int mFlareFadeInTime;
    int mFlareFadeOutTime;
    float mBlindMinDot;
    float mBlindMaxDot;
    float mBlindMaxDarken;
    int mBlindFadeInTime;
    int mBlindFadeOutTime;
    float mGlareMinDot;
    float mGlareMaxDot;
    float mGlareMaxLighten;
    int mGlareFadeInTime;
    int mGlareFadeOutTime;
    QVector3D mSunFxPosition;
};

#endif // XSUNFLARE_H
