Add new asset-related structures and files
This commit is contained in:
parent
89d1d0944a
commit
40ad7470aa
27
libs/xassets/xboneinfo.cpp
Normal file
27
libs/xassets/xboneinfo.cpp
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
#include "xboneinfo.h"
|
||||||
|
|
||||||
|
XBoneInfo::XBoneInfo()
|
||||||
|
: XAsset()
|
||||||
|
, mBounds()
|
||||||
|
, mOffset()
|
||||||
|
, mRadiusSquared(0)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
XBoneInfo::~XBoneInfo()
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
void XBoneInfo::ParseData(QDataStream *aStream)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
void XBoneInfo::Clear()
|
||||||
|
{
|
||||||
|
mBounds = QVector<QVector3D>();
|
||||||
|
mOffset = QVector3D();
|
||||||
|
mRadiusSquared = 0;
|
||||||
|
}
|
||||||
24
libs/xassets/xboneinfo.h
Normal file
24
libs/xassets/xboneinfo.h
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
#ifndef XBONEINFO_H
|
||||||
|
#define XBONEINFO_H
|
||||||
|
|
||||||
|
#include "xasset.h"
|
||||||
|
|
||||||
|
#include <QVector>
|
||||||
|
#include <QVector3D>
|
||||||
|
|
||||||
|
class XBoneInfo : public XAsset
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
XBoneInfo();
|
||||||
|
~XBoneInfo();
|
||||||
|
|
||||||
|
virtual void ParseData(QDataStream* aStream) override;
|
||||||
|
virtual void Clear() override;
|
||||||
|
|
||||||
|
private:
|
||||||
|
QVector<QVector3D> mBounds;
|
||||||
|
QVector3D mOffset;
|
||||||
|
float mRadiusSquared;
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif // XBONEINFO_H
|
||||||
43
libs/xassets/xbrushwrapper.cpp
Normal file
43
libs/xassets/xbrushwrapper.cpp
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
#include "xbrushwrapper.h"
|
||||||
|
|
||||||
|
XBrushWrapper::XBrushWrapper()
|
||||||
|
: XAsset()
|
||||||
|
, mMins()
|
||||||
|
, mContents(0)
|
||||||
|
, mMaxs()
|
||||||
|
, mNumSides(0)
|
||||||
|
, mSides()
|
||||||
|
, mAxialMaterialNum()
|
||||||
|
, mBaseAdjacentSide(nullptr)
|
||||||
|
, mFirstAdjacentSideOffsets()
|
||||||
|
, mEdgeCount()
|
||||||
|
, mTotalEdgeCount(0)
|
||||||
|
, mPlanes(nullptr)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
XBrushWrapper::~XBrushWrapper()
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
void XBrushWrapper::ParseData(QDataStream *aStream)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
void XBrushWrapper::Clear()
|
||||||
|
{
|
||||||
|
mMins = QVector3D();
|
||||||
|
mContents = 0;
|
||||||
|
mMaxs = QVector3D();
|
||||||
|
mNumSides = 0;
|
||||||
|
mSides.clear();
|
||||||
|
mAxialMaterialNum.clear();
|
||||||
|
mBaseAdjacentSide = nullptr;
|
||||||
|
mFirstAdjacentSideOffsets.clear();
|
||||||
|
mEdgeCount.clear();
|
||||||
|
mTotalEdgeCount = 0;
|
||||||
|
mPlanes->Clear();
|
||||||
|
}
|
||||||
32
libs/xassets/xbrushwrapper.h
Normal file
32
libs/xassets/xbrushwrapper.h
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
#ifndef XBRUSHWRAPPER_H
|
||||||
|
#define XBRUSHWRAPPER_H
|
||||||
|
|
||||||
|
#include "xasset.h"
|
||||||
|
#include "xcbrushside.h"
|
||||||
|
|
||||||
|
#include <QVector3D>
|
||||||
|
|
||||||
|
class XBrushWrapper : public XAsset
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
XBrushWrapper();
|
||||||
|
~XBrushWrapper();
|
||||||
|
|
||||||
|
virtual void ParseData(QDataStream* aStream) override;
|
||||||
|
virtual void Clear() override;
|
||||||
|
|
||||||
|
private:
|
||||||
|
QVector3D mMins;
|
||||||
|
int mContents;
|
||||||
|
QVector3D mMaxs;
|
||||||
|
unsigned int mNumSides;
|
||||||
|
QVector<XCBrushSide> mSides;
|
||||||
|
QVector<QVector3D> mAxialMaterialNum;
|
||||||
|
quint8 *mBaseAdjacentSide;
|
||||||
|
QVector<QVector3D> mFirstAdjacentSideOffsets;
|
||||||
|
QVector<QVector3D> mEdgeCount;
|
||||||
|
int mTotalEdgeCount;
|
||||||
|
XCPlane *mPlanes;
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif // XBRUSHWRAPPER_H
|
||||||
31
libs/xassets/xcbrushside.cpp
Normal file
31
libs/xassets/xcbrushside.cpp
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
#include "xcbrushside.h"
|
||||||
|
|
||||||
|
XCBrushSide::XCBrushSide()
|
||||||
|
: XAsset()
|
||||||
|
, mPlanePtr(0)
|
||||||
|
, mPlane()
|
||||||
|
, mMaterialNum(0)
|
||||||
|
, mFirstAdjacentSideOffset(0)
|
||||||
|
, mEdgeCount(0)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
XCBrushSide::~XCBrushSide()
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
void XCBrushSide::ParseData(QDataStream *aStream)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
void XCBrushSide::Clear()
|
||||||
|
{
|
||||||
|
mPlanePtr = 0;
|
||||||
|
mPlane = XCPlane();
|
||||||
|
mMaterialNum = 0;
|
||||||
|
mFirstAdjacentSideOffset = 0;
|
||||||
|
mEdgeCount = 0;
|
||||||
|
}
|
||||||
24
libs/xassets/xcbrushside.h
Normal file
24
libs/xassets/xcbrushside.h
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
#ifndef XCBRUSHSIDE_H
|
||||||
|
#define XCBRUSHSIDE_H
|
||||||
|
|
||||||
|
#include "xasset.h"
|
||||||
|
#include "xcplane.h"
|
||||||
|
|
||||||
|
class XCBrushSide : public XAsset
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
XCBrushSide();
|
||||||
|
~XCBrushSide();
|
||||||
|
|
||||||
|
virtual void ParseData(QDataStream* aStream) override;
|
||||||
|
virtual void Clear() override;
|
||||||
|
|
||||||
|
private:
|
||||||
|
qint32 mPlanePtr;
|
||||||
|
XCPlane mPlane;
|
||||||
|
uint mMaterialNum;
|
||||||
|
qint16 mFirstAdjacentSideOffset;
|
||||||
|
quint8 mEdgeCount;
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif // XCBRUSHSIDE_H
|
||||||
31
libs/xassets/xcplane.cpp
Normal file
31
libs/xassets/xcplane.cpp
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
#include "xcplane.h"
|
||||||
|
|
||||||
|
XCPlane::XCPlane()
|
||||||
|
: XAsset()
|
||||||
|
, mNormal()
|
||||||
|
, mDist(0)
|
||||||
|
, mType(0)
|
||||||
|
, mSignbits(0)
|
||||||
|
, mPad()
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
XCPlane::~XCPlane()
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
void XCPlane::ParseData(QDataStream *aStream)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
void XCPlane::Clear()
|
||||||
|
{
|
||||||
|
mNormal = QVector3D();
|
||||||
|
mDist = 0;
|
||||||
|
mType = 0;
|
||||||
|
mSignbits = 0;
|
||||||
|
mPad.clear();
|
||||||
|
}
|
||||||
26
libs/xassets/xcplane.h
Normal file
26
libs/xassets/xcplane.h
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
#ifndef XCPLANE_H
|
||||||
|
#define XCPLANE_H
|
||||||
|
|
||||||
|
#include "xasset.h"
|
||||||
|
|
||||||
|
#include <QVector>
|
||||||
|
#include <QVector3D>
|
||||||
|
|
||||||
|
class XCPlane : public XAsset
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
XCPlane();
|
||||||
|
~XCPlane();
|
||||||
|
|
||||||
|
virtual void ParseData(QDataStream* aStream) override;
|
||||||
|
virtual void Clear() override;
|
||||||
|
|
||||||
|
private:
|
||||||
|
QVector3D mNormal;
|
||||||
|
float mDist;
|
||||||
|
quint8 mType;
|
||||||
|
quint8 mSignbits;
|
||||||
|
QVector<quint8> mPad;
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif // XCPLANE_H
|
||||||
19
libs/xassets/xd3dindexbuffer.cpp
Normal file
19
libs/xassets/xd3dindexbuffer.cpp
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
#include "xd3dindexbuffer.h"
|
||||||
|
|
||||||
|
XD3DIndexBuffer::XD3DIndexBuffer()
|
||||||
|
: XD3DResource()
|
||||||
|
, mAddress(0)
|
||||||
|
, mSize(0)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
void XD3DIndexBuffer::ParseData(QDataStream *aStream)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
void XD3DIndexBuffer::Clear()
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
27
libs/xassets/xd3dindexbuffer.h
Normal file
27
libs/xassets/xd3dindexbuffer.h
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
#ifndef XD3DINDEXBUFFER_H
|
||||||
|
#define XD3DINDEXBUFFER_H
|
||||||
|
|
||||||
|
#include "xd3dresource.h"
|
||||||
|
|
||||||
|
class XD3DIndexBuffer : public XD3DResource
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
explicit XD3DIndexBuffer();
|
||||||
|
|
||||||
|
void ParseData(QDataStream *aStream) override;
|
||||||
|
void Clear() override;
|
||||||
|
|
||||||
|
private:
|
||||||
|
quint32 mAddress;
|
||||||
|
quint32 mSize;
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif // XD3DINDEXBUFFER_H
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
9
libs/xassets/xd3dpixelshader.h
Normal file
9
libs/xassets/xd3dpixelshader.h
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
#ifndef XD3DPIXELSHADER_H
|
||||||
|
#define XD3DPIXELSHADER_H
|
||||||
|
|
||||||
|
#include "xd3dresource.h"
|
||||||
|
|
||||||
|
typedef XD3DResource XD3DPixelShader;
|
||||||
|
|
||||||
|
#endif // XD3DPIXELSHADER_H
|
||||||
|
|
||||||
9
libs/xassets/xd3dtexture.h
Normal file
9
libs/xassets/xd3dtexture.h
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
#ifndef XD3DTEXTURE_H
|
||||||
|
#define XD3DTEXTURE_H
|
||||||
|
|
||||||
|
#include "xd3dbasetexture.h"
|
||||||
|
|
||||||
|
typedef XD3DBaseTexture XD3DTexture;
|
||||||
|
|
||||||
|
#endif // XD3DTEXTURE_H
|
||||||
|
|
||||||
18
libs/xassets/xd3dvertexbuffer.cpp
Normal file
18
libs/xassets/xd3dvertexbuffer.cpp
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
#include "xd3dvertexbuffer.h"
|
||||||
|
|
||||||
|
XD3DVertexBuffer::XD3DVertexBuffer()
|
||||||
|
: XD3DResource()
|
||||||
|
, mFormat()
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
void XD3DVertexBuffer::ParseData(QDataStream *aStream)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
void XD3DVertexBuffer::Clear()
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
19
libs/xassets/xd3dvertexbuffer.h
Normal file
19
libs/xassets/xd3dvertexbuffer.h
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
#ifndef XD3DVERTEXBUFFER_H
|
||||||
|
#define XD3DVERTEXBUFFER_H
|
||||||
|
|
||||||
|
#include "xd3dresource.h"
|
||||||
|
#include "xgpuvertexfetchconstant.h"
|
||||||
|
|
||||||
|
class XD3DVertexBuffer : XD3DResource
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
explicit XD3DVertexBuffer();
|
||||||
|
|
||||||
|
void ParseData(QDataStream *aStream) override;
|
||||||
|
void Clear() override;
|
||||||
|
|
||||||
|
private:
|
||||||
|
XGpuVertexFetchConstant mFormat;
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif // XD3DVERTEXBUFFER_H
|
||||||
9
libs/xassets/xd3dvertexdeclaration.h
Normal file
9
libs/xassets/xd3dvertexdeclaration.h
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
#ifndef XD3DVERTEXDECLARATION_H
|
||||||
|
#define XD3DVERTEXDECLARATION_H
|
||||||
|
|
||||||
|
#include "xd3dresource.h"
|
||||||
|
|
||||||
|
typedef XD3DResource XD3DVertexDeclaration;
|
||||||
|
|
||||||
|
#endif // XD3DVERTEXDECLARATION_H
|
||||||
|
|
||||||
9
libs/xassets/xd3dvertexshader.h
Normal file
9
libs/xassets/xd3dvertexshader.h
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
#ifndef XD3DVERTEXSHADER_H
|
||||||
|
#define XD3DVERTEXSHADER_H
|
||||||
|
|
||||||
|
#include "xd3dresource.h"
|
||||||
|
|
||||||
|
typedef XD3DResource XD3DVertexShader;
|
||||||
|
|
||||||
|
#endif // XD3DVERTEXSHADER_H
|
||||||
|
|
||||||
27
libs/xassets/xdobjanimmat.cpp
Normal file
27
libs/xassets/xdobjanimmat.cpp
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
#include "xdobjanimmat.h"
|
||||||
|
|
||||||
|
XDObjAnimMat::XDObjAnimMat()
|
||||||
|
: XAsset()
|
||||||
|
, mQuat()
|
||||||
|
, mTrans()
|
||||||
|
, mTransWeight(0)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
XDObjAnimMat::~XDObjAnimMat()
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
void XDObjAnimMat::ParseData(QDataStream *aStream)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
void XDObjAnimMat::Clear()
|
||||||
|
{
|
||||||
|
mQuat = QVector<float>();
|
||||||
|
mTrans = QVector<float>();
|
||||||
|
mTransWeight = 0;
|
||||||
|
}
|
||||||
23
libs/xassets/xdobjanimmat.h
Normal file
23
libs/xassets/xdobjanimmat.h
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
#ifndef XDOBJANIMMAT_H
|
||||||
|
#define XDOBJANIMMAT_H
|
||||||
|
|
||||||
|
#include "xasset.h"
|
||||||
|
|
||||||
|
#include <QVector>
|
||||||
|
|
||||||
|
class XDObjAnimMat : public XAsset
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
XDObjAnimMat();
|
||||||
|
~XDObjAnimMat();
|
||||||
|
|
||||||
|
virtual void ParseData(QDataStream* aStream) override;
|
||||||
|
virtual void Clear() override;
|
||||||
|
|
||||||
|
private:
|
||||||
|
QVector<float> mQuat;
|
||||||
|
QVector<float> mTrans;
|
||||||
|
float mTransWeight;
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif // XDOBJANIMMAT_H
|
||||||
1
libs/xassets/xeffectdef.cpp
Normal file
1
libs/xassets/xeffectdef.cpp
Normal file
@ -0,0 +1 @@
|
|||||||
|
#include "effectdef.h"
|
||||||
229
libs/xassets/xeffectdef.h
Normal file
229
libs/xassets/xeffectdef.h
Normal file
@ -0,0 +1,229 @@
|
|||||||
|
#ifndef EFFECTDEF_H
|
||||||
|
#define EFFECTDEF_H
|
||||||
|
|
||||||
|
#include "xmaterial.h"
|
||||||
|
#include "xmodel.h"
|
||||||
|
|
||||||
|
class XFxSpawnDefLooping : public XAsset
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
explicit XFxSpawnDefLooping();
|
||||||
|
~XFxSpawnDefLooping();
|
||||||
|
|
||||||
|
void Clear() override;
|
||||||
|
void ParseData(QDataStream *aStream) override;
|
||||||
|
|
||||||
|
private:
|
||||||
|
int mIntervalMsec;
|
||||||
|
int mCount;
|
||||||
|
};
|
||||||
|
|
||||||
|
class XFxIntRange : public XAsset
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
explicit XFxIntRange();
|
||||||
|
~XFxIntRange();
|
||||||
|
|
||||||
|
void Clear() override;
|
||||||
|
void ParseData(QDataStream *aStream) override;
|
||||||
|
|
||||||
|
private:
|
||||||
|
int mBase;
|
||||||
|
int mAmplitude;
|
||||||
|
};
|
||||||
|
|
||||||
|
class XFxSpawnDefOneShot : public XAsset
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
explicit XFxSpawnDefOneShot();
|
||||||
|
~XFxSpawnDefOneShot();
|
||||||
|
|
||||||
|
void Clear() override;
|
||||||
|
void ParseData(QDataStream *aStream) override;
|
||||||
|
|
||||||
|
private:
|
||||||
|
XFxIntRange mCount;
|
||||||
|
};
|
||||||
|
|
||||||
|
class XFxSpawnDef : public XAsset
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
explicit XFxSpawnDef();
|
||||||
|
~XFxSpawnDef();
|
||||||
|
|
||||||
|
void Clear() override;
|
||||||
|
void ParseData(QDataStream *aStream) override;
|
||||||
|
|
||||||
|
private:
|
||||||
|
XFxSpawnDefLooping mLooping;
|
||||||
|
XFxSpawnDefOneShot omOneShot;
|
||||||
|
};
|
||||||
|
|
||||||
|
class XFxFloatRange : public XAsset
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
explicit XFxFloatRange();
|
||||||
|
~XFxFloatRange();
|
||||||
|
|
||||||
|
void Clear() override;
|
||||||
|
void ParseData(QDataStream *aStream) override;
|
||||||
|
|
||||||
|
private:
|
||||||
|
float base;
|
||||||
|
float amplitude;
|
||||||
|
};
|
||||||
|
|
||||||
|
class XFxElemAtlas : public XAsset
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
explicit XFxElemAtlas();
|
||||||
|
~XFxElemAtlas();
|
||||||
|
|
||||||
|
void Clear() override;
|
||||||
|
void ParseData(QDataStream *aStream) override;
|
||||||
|
|
||||||
|
private:
|
||||||
|
quint8 mBehavior;
|
||||||
|
quint8 mIndex;
|
||||||
|
quint8 mFps;
|
||||||
|
quint8 mLoopCount;
|
||||||
|
quint8 mColIndexBits;
|
||||||
|
quint8 mRowIndexBits;
|
||||||
|
qint16 mEntryCount;
|
||||||
|
};
|
||||||
|
|
||||||
|
class XFxElemVec3Range : public XAsset
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
explicit XFxElemVec3Range();
|
||||||
|
~XFxElemVec3Range();
|
||||||
|
|
||||||
|
void Clear() override;
|
||||||
|
void ParseData(QDataStream *aStream) override;
|
||||||
|
|
||||||
|
private:
|
||||||
|
QVector3D mBase;
|
||||||
|
QVector3D mAmplitude;
|
||||||
|
};
|
||||||
|
|
||||||
|
class XFxElemVelStateInFrame : public XAsset
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
explicit XFxElemVelStateInFrame();
|
||||||
|
~XFxElemVelStateInFrame();
|
||||||
|
|
||||||
|
void Clear() override;
|
||||||
|
void ParseData(QDataStream *aStream) override;
|
||||||
|
|
||||||
|
private:
|
||||||
|
XFxElemVec3Range mVelocity;
|
||||||
|
XFxElemVec3Range mTotalDelta;
|
||||||
|
};
|
||||||
|
|
||||||
|
class XFxElemVelStateSample : public XAsset
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
explicit XFxElemVelStateSample();
|
||||||
|
~XFxElemVelStateSample();
|
||||||
|
|
||||||
|
void Clear() override;
|
||||||
|
void ParseData(QDataStream *aStream) override;
|
||||||
|
|
||||||
|
private:
|
||||||
|
XFxElemVelStateInFrame mLocal;
|
||||||
|
XFxElemVelStateInFrame mWorld;
|
||||||
|
};
|
||||||
|
|
||||||
|
class XFxElemVisualState : public XAsset
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
explicit XFxElemVisualState();
|
||||||
|
~XFxElemVisualState();
|
||||||
|
|
||||||
|
void Clear() override;
|
||||||
|
void ParseData(QDataStream *aStream) override;
|
||||||
|
|
||||||
|
private:
|
||||||
|
quint8 mColor[4];
|
||||||
|
float mRotationDelta;
|
||||||
|
float mRotationTotal;
|
||||||
|
float mSize[2];
|
||||||
|
float mScale;
|
||||||
|
};
|
||||||
|
|
||||||
|
class XFxElemVisStateSample : public XAsset
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
explicit XFxElemVisStateSample();
|
||||||
|
~XFxElemVisStateSample();
|
||||||
|
|
||||||
|
void Clear() override;
|
||||||
|
void ParseData(QDataStream *aStream) override;
|
||||||
|
|
||||||
|
private:
|
||||||
|
XFxElemVisualState mBase;
|
||||||
|
XFxElemVisualState mAmplitude;
|
||||||
|
};
|
||||||
|
|
||||||
|
class XFxElemMarkVisuals : public XAsset
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
explicit XFxElemMarkVisuals();
|
||||||
|
~XFxElemMarkVisuals();
|
||||||
|
|
||||||
|
void Clear() override;
|
||||||
|
void ParseData(QDataStream *aStream) override;
|
||||||
|
|
||||||
|
private:
|
||||||
|
qint32 mMaterialPtrs[2];
|
||||||
|
QVector<XMaterial> mMaterials;
|
||||||
|
};
|
||||||
|
|
||||||
|
class XEffectDefRef : public XAsset
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
explicit XEffectDefRef();
|
||||||
|
~XEffectDefRef();
|
||||||
|
|
||||||
|
void Clear() override;
|
||||||
|
void ParseData(QDataStream *aStream) override;
|
||||||
|
|
||||||
|
private:
|
||||||
|
qint32 mHandlePtr;
|
||||||
|
const XEffectDef *mHandle;
|
||||||
|
|
||||||
|
qint32 mNamePtr;
|
||||||
|
QString mName;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
class XEffectDef : public XAsset
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
explicit XEffectDef();
|
||||||
|
~XEffectDef();
|
||||||
|
|
||||||
|
void Clear() override;
|
||||||
|
void ParseData(QDataStream *aStream) override;
|
||||||
|
|
||||||
|
private:
|
||||||
|
qint32 mNamePtr;
|
||||||
|
QString mName;
|
||||||
|
|
||||||
|
int mFlags;
|
||||||
|
int mTotalSize;
|
||||||
|
int mMsecLoopingLife;
|
||||||
|
int mElemDefCountLooping;
|
||||||
|
int mElemDefCountOneShot;
|
||||||
|
int mElemDefCountEmission;
|
||||||
|
|
||||||
|
qint32 mElemDefsPtr;
|
||||||
|
QVector<XFxElemDef> mElemDefs;
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif // EFFECTDEF_H
|
||||||
188
libs/xassets/xeffectdef.h.autosave
Normal file
188
libs/xassets/xeffectdef.h.autosave
Normal file
@ -0,0 +1,188 @@
|
|||||||
|
#ifndef EFFECTDEF_H
|
||||||
|
#define EFFECTDEF_H
|
||||||
|
|
||||||
|
#include "xmaterial.h"
|
||||||
|
#include "xmodel.h"
|
||||||
|
|
||||||
|
class XFxSpawnDefLooping : public XAsset
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
explicit XFxSpawnDefLooping();
|
||||||
|
~XFxSpawnDefLooping();
|
||||||
|
|
||||||
|
void Clear() override;
|
||||||
|
void ParseData(QDataStream *aStream) override;
|
||||||
|
|
||||||
|
private:
|
||||||
|
int mIntervalMsec;
|
||||||
|
int mCount;
|
||||||
|
};
|
||||||
|
|
||||||
|
class XFxIntRange : public XAsset
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
explicit XFxIntRange();
|
||||||
|
~XFxIntRange();
|
||||||
|
|
||||||
|
void Clear() override;
|
||||||
|
void ParseData(QDataStream *aStream) override;
|
||||||
|
|
||||||
|
private:
|
||||||
|
int mBase;
|
||||||
|
int mAmplitude;
|
||||||
|
};
|
||||||
|
|
||||||
|
class XFxSpawnDefOneShot : public XAsset
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
explicit XFxSpawnDefOneShot();
|
||||||
|
~XFxSpawnDefOneShot();
|
||||||
|
|
||||||
|
void Clear() override;
|
||||||
|
void ParseData(QDataStream *aStream) override;
|
||||||
|
|
||||||
|
private:
|
||||||
|
XFxIntRange mCount;
|
||||||
|
};
|
||||||
|
|
||||||
|
class XFxSpawnDef : public XAsset
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
explicit XFxSpawnDef();
|
||||||
|
~XFxSpawnDef();
|
||||||
|
|
||||||
|
void Clear() override;
|
||||||
|
void ParseData(QDataStream *aStream) override;
|
||||||
|
|
||||||
|
private:
|
||||||
|
XFxSpawnDefLooping mLooping;
|
||||||
|
XFxSpawnDefOneShot omOneShot;
|
||||||
|
};
|
||||||
|
|
||||||
|
class XFxFloatRange : public XAsset
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
explicit XFxFloatRange();
|
||||||
|
~XFxFloatRange();
|
||||||
|
|
||||||
|
void Clear() override;
|
||||||
|
void ParseData(QDataStream *aStream) override;
|
||||||
|
|
||||||
|
private:
|
||||||
|
float base;
|
||||||
|
float amplitude;
|
||||||
|
};
|
||||||
|
|
||||||
|
class XFxElemAtlas : public XAsset
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
explicit XFxElemAtlas();
|
||||||
|
~XFxElemAtlas();
|
||||||
|
|
||||||
|
void Clear() override;
|
||||||
|
void ParseData(QDataStream *aStream) override;
|
||||||
|
|
||||||
|
private:
|
||||||
|
quint8 mBehavior;
|
||||||
|
quint8 mIndex;
|
||||||
|
quint8 mFps;
|
||||||
|
quint8 mLoopCount;
|
||||||
|
quint8 mColIndexBits;
|
||||||
|
quint8 mRowIndexBits;
|
||||||
|
qint16 mEntryCount;
|
||||||
|
};
|
||||||
|
|
||||||
|
class XFxElemVec3Range : public XAsset
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
explicit XFxElemVec3Range();
|
||||||
|
~XFxElemVec3Range();
|
||||||
|
|
||||||
|
void Clear() override;
|
||||||
|
void ParseData(QDataStream *aStream) override;
|
||||||
|
|
||||||
|
private:
|
||||||
|
QVector3D mBase;
|
||||||
|
QVector3D mAmplitude;
|
||||||
|
};
|
||||||
|
|
||||||
|
class XFxElemVelStateInFrame : public XAsset
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
explicit XFxElemVelStateInFrame();
|
||||||
|
~XFxElemVelStateInFrame();
|
||||||
|
|
||||||
|
void Clear() override;
|
||||||
|
void ParseData(QDataStream *aStream) override;
|
||||||
|
|
||||||
|
private:
|
||||||
|
XFxElemVec3Range mVelocity;
|
||||||
|
XFxElemVec3Range mTotalDelta;
|
||||||
|
};
|
||||||
|
|
||||||
|
class XFxElemVelStateSample : public XAsset
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
explicit XFxElemVelStateSample();
|
||||||
|
~XFxElemVelStateSample();
|
||||||
|
|
||||||
|
void Clear() override;
|
||||||
|
void ParseData(QDataStream *aStream) override;
|
||||||
|
|
||||||
|
private:
|
||||||
|
XFxElemVelStateInFrame mLocal;
|
||||||
|
XFxElemVelStateInFrame mWorld;
|
||||||
|
};
|
||||||
|
|
||||||
|
class XFxElemVisualState : public XAsset
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
explicit XFxElemVisualState();
|
||||||
|
~XFxElemVisualState();
|
||||||
|
|
||||||
|
void Clear() override;
|
||||||
|
void ParseData(QDataStream *aStream) override;
|
||||||
|
|
||||||
|
private:
|
||||||
|
quint8 mColor[4];
|
||||||
|
float mRotationDelta;
|
||||||
|
float mRotationTotal;
|
||||||
|
float mSize[2];
|
||||||
|
float mScale;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
class XEffectDef : public XAsset
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
explicit XEffectDef();
|
||||||
|
~XEffectDef();
|
||||||
|
|
||||||
|
void Clear() override;
|
||||||
|
void ParseData(QDataStream *aStream) override;
|
||||||
|
|
||||||
|
private:
|
||||||
|
qint32 mNamePtr;
|
||||||
|
QString mName;
|
||||||
|
|
||||||
|
int mFlags;
|
||||||
|
int mTotalSize;
|
||||||
|
int mMsecLoopingLife;
|
||||||
|
int mElemDefCountLooping;
|
||||||
|
int mElemDefCountOneShot;
|
||||||
|
int mElemDefCountEmission;
|
||||||
|
|
||||||
|
qint32 mElemDefsPtr;
|
||||||
|
QVector<XFxElemDef> mElemDefs;
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif // EFFECTDEF_H
|
||||||
30
libs/xassets/xeffectdefref.cpp
Normal file
30
libs/xassets/xeffectdefref.cpp
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
#include "xeffectdefref.h"
|
||||||
|
|
||||||
|
XEffectDefRef::XEffectDefRef()
|
||||||
|
: XAsset()
|
||||||
|
, mHandlePtr(0)
|
||||||
|
, mHandle(new XEffectDef())
|
||||||
|
, mNamePtr(0)
|
||||||
|
, mName("")
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
XEffectDefRef::~XEffectDefRef()
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
void XEffectDefRef::Clear()
|
||||||
|
{
|
||||||
|
mHandlePtr = 0;
|
||||||
|
mHandle = new XEffectDef();
|
||||||
|
|
||||||
|
mNamePtr = 0;
|
||||||
|
mName = "";
|
||||||
|
}
|
||||||
|
|
||||||
|
void XEffectDefRef::ParseData(QDataStream *aStream)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
24
libs/xassets/xeffectdefref.h
Normal file
24
libs/xassets/xeffectdefref.h
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
#ifndef XEFFECTDEFREF_H
|
||||||
|
#define XEFFECTDEFREF_H
|
||||||
|
|
||||||
|
#include "xasset.h"
|
||||||
|
#include "xeffectdef.h"
|
||||||
|
|
||||||
|
class XEffectDefRef : public XAsset
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
explicit XEffectDefRef();
|
||||||
|
~XEffectDefRef();
|
||||||
|
|
||||||
|
void Clear() override;
|
||||||
|
void ParseData(QDataStream *aStream) override;
|
||||||
|
|
||||||
|
private:
|
||||||
|
qint32 mHandlePtr;
|
||||||
|
const XEffectDef *mHandle;
|
||||||
|
|
||||||
|
qint32 mNamePtr;
|
||||||
|
QString mName;
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif // XEFFECTDEFREF_H
|
||||||
29
libs/xassets/xeffecttable.cpp
Normal file
29
libs/xassets/xeffecttable.cpp
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
#include "xeffecttable.h"
|
||||||
|
|
||||||
|
XImpactTable::XImpactTable()
|
||||||
|
: XAsset()
|
||||||
|
, mNamePtr(0)
|
||||||
|
, mName("")
|
||||||
|
, mTablePtr(0)
|
||||||
|
, mTable()
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
XImpactTable::~XImpactTable()
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
void XImpactTable::Clear()
|
||||||
|
{
|
||||||
|
mNamePtr = 0;
|
||||||
|
mName = "";
|
||||||
|
mTablePtr = 0;
|
||||||
|
mTable = QVector<XFxImpactEntry>();
|
||||||
|
}
|
||||||
|
|
||||||
|
void XImpactTable::ParseData(QDataStream *aStream)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
24
libs/xassets/xeffecttable.h
Normal file
24
libs/xassets/xeffecttable.h
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
#ifndef EFFECTTABLE_H
|
||||||
|
#define EFFECTTABLE_H
|
||||||
|
|
||||||
|
#include "xasset.h"
|
||||||
|
#include "xfximpactentry.h"
|
||||||
|
|
||||||
|
class XImpactTable : public XAsset
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
explicit XImpactTable();
|
||||||
|
~XImpactTable();
|
||||||
|
|
||||||
|
void Clear() override;
|
||||||
|
void ParseData(QDataStream *aStream) override;
|
||||||
|
|
||||||
|
private:
|
||||||
|
qint32 mNamePtr;
|
||||||
|
QString mName;
|
||||||
|
|
||||||
|
qint32 mTablePtr;
|
||||||
|
QVector<XFxImpactEntry> mTable;
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif // EFFECTTABLE_H
|
||||||
Loading…
x
Reference in New Issue
Block a user