From 163f46b4cfbc8f6e8c43a5c4efb5ee5069034c0a Mon Sep 17 00:00:00 2001 From: Nicholas Johnson Date: Wed, 3 Sep 2025 13:25:58 -0400 Subject: [PATCH] Add xsurface structures --- libs/xassets/xsurface.cpp | 29 +++++++++++++++++++++++++++ libs/xassets/xsurface.h | 42 +++++++++++++++++++++++++++++++++++++++ 2 files changed, 71 insertions(+) create mode 100644 libs/xassets/xsurface.cpp create mode 100644 libs/xassets/xsurface.h diff --git a/libs/xassets/xsurface.cpp b/libs/xassets/xsurface.cpp new file mode 100644 index 0000000..2da17e7 --- /dev/null +++ b/libs/xassets/xsurface.cpp @@ -0,0 +1,29 @@ +#include "xsurface.h" + +XSurface::XSurface() + : XAsset() + , mTileMode(0) + , mDeformed(false) + , mVertCount(0) + , mTriCount(0) + , mTriIndices(0) + , mVertInfo() + , mVerts0(new XGfxPackedVertex()) + , mVb0() + , mVertListCount(0) + , mVertList() + , mIndexBuffer() + , mPartBits() +{ + +} + +void XSurface::ParseData(QDataStream *aStream) +{ + +} + +void XSurface::Clear() +{ + +} diff --git a/libs/xassets/xsurface.h b/libs/xassets/xsurface.h new file mode 100644 index 0000000..e1f48ac --- /dev/null +++ b/libs/xassets/xsurface.h @@ -0,0 +1,42 @@ +#ifndef XSURFACE_H +#define XSURFACE_H + +#include "xasset.h" +#include "xd3dindexbuffer.h" +#include "xrigidvertlist.h" +#include "xsurfacevertexinfo.h" +#include "xgfxpackedvertex.h" +#include "xd3dvertexbuffer.h" + +class XSurface : public XAsset +{ +public: + explicit XSurface(); + + void ParseData(QDataStream *aStream) override; + void Clear() override; + +private: + quint8 mTileMode; + bool mDeformed; + quint16 mVertCount; + quint16 mTriCount; + quint16 *mTriIndices; + XSurfaceVertexInfo mVertInfo; + XGfxPackedVertex *mVerts0; + XD3DVertexBuffer mVb0; + unsigned int mVertListCount; + QVector mVertList; + XD3DIndexBuffer mIndexBuffer; + int mPartBits[4]; +}; + +#endif // XSURFACE_H + + + + + + + +