From 9fb5c62b754a4fd9d0d58802a815815133ee9bb0 Mon Sep 17 00:00:00 2001 From: Nicholas Johnson Date: Wed, 3 Sep 2025 13:15:13 -0400 Subject: [PATCH] Add xmaterialpass structures --- libs/xassets/xmaterialpass.cpp | 31 +++++++++++++++++++++++++++++++ libs/xassets/xmaterialpass.h | 34 ++++++++++++++++++++++++++++++++++ 2 files changed, 65 insertions(+) create mode 100644 libs/xassets/xmaterialpass.cpp create mode 100644 libs/xassets/xmaterialpass.h diff --git a/libs/xassets/xmaterialpass.cpp b/libs/xassets/xmaterialpass.cpp new file mode 100644 index 0000000..ee21f4f --- /dev/null +++ b/libs/xassets/xmaterialpass.cpp @@ -0,0 +1,31 @@ +#include "xmaterialpass.h" +#include "xmaterialvertexdeclaration.h" +#include "xmaterialvertexshader.h" +#include "xmaterialpixelshader.h" +#include "xmaterialshaderargument.h" + +XMaterialPass::XMaterialPass() + : XAsset() + , mVertexDecl(nullptr) + , mVertexShaderArray() + , mVertexShader(nullptr) + , mPixelShader(nullptr) + , mPerPrimArgCount(0) + , mPerObjArgCount(0) + , mStableArgCount(0) + , mCustomSamplerFlags(0) + , mPrecompiledIndex(0) + , mArgs(nullptr) +{ + +} + +void XMaterialPass::Clear() +{ + +} + +void XMaterialPass::ParseData(QDataStream *aStream) +{ + +} diff --git a/libs/xassets/xmaterialpass.h b/libs/xassets/xmaterialpass.h new file mode 100644 index 0000000..3fd2ba7 --- /dev/null +++ b/libs/xassets/xmaterialpass.h @@ -0,0 +1,34 @@ +#ifndef XMATERIALPASS_H +#define XMATERIALPASS_H + +#include "xasset.h" + +#include + +class XMaterialVertexDeclaration; +class XMaterialVertexShader; +class XMaterialPixelShader; +class XMaterialShaderArgument; + +class XMaterialPass : public XAsset +{ +public: + XMaterialPass(); + + virtual void Clear() override; + virtual void ParseData(QDataStream *aStream) override; + +private: + XMaterialVertexDeclaration* mVertexDecl; + QVector mVertexShaderArray; + XMaterialVertexShader* mVertexShader; + XMaterialPixelShader* mPixelShader; + int mPerPrimArgCount; + int mPerObjArgCount; + int mStableArgCount; + int mCustomSamplerFlags; + int mPrecompiledIndex; + XMaterialShaderArgument* mArgs; +}; + +#endif // XMATERIALPASS_H