2025-09-03 13:15:13 -04:00
|
|
|
#ifndef XMATERIALPASS_H
|
|
|
|
|
#define XMATERIALPASS_H
|
|
|
|
|
|
|
|
|
|
#include "xasset.h"
|
2025-09-05 18:35:17 -04:00
|
|
|
#include "xmaterialpixelshader.h"
|
|
|
|
|
#include "xmaterialshaderargument.h"
|
|
|
|
|
#include "xmaterialvertexdeclaration.h"
|
|
|
|
|
#include "xmaterialvertexshader.h"
|
2025-09-03 13:15:13 -04:00
|
|
|
|
|
|
|
|
#include <QVector>
|
|
|
|
|
|
|
|
|
|
class XMaterialPass : public XAsset
|
|
|
|
|
{
|
|
|
|
|
public:
|
|
|
|
|
XMaterialPass();
|
|
|
|
|
|
|
|
|
|
virtual void Clear() override;
|
2025-09-10 21:58:26 -04:00
|
|
|
virtual void ParseData(XDataStream *aStream) override;
|
2025-09-03 13:15:13 -04:00
|
|
|
|
|
|
|
|
private:
|
2025-09-05 18:35:17 -04:00
|
|
|
XMaterialVertexDeclaration mVertexDecl;
|
|
|
|
|
QVector<XMaterialVertexShader> mVertexShaderArray;
|
|
|
|
|
XMaterialVertexShader mVertexShader;
|
|
|
|
|
XMaterialPixelShader mPixelShader;
|
2025-12-19 23:06:03 -05:00
|
|
|
quint32 mPerPrimArgCount;
|
|
|
|
|
quint32 mPerObjArgCount;
|
|
|
|
|
quint32 mStableArgCount;
|
|
|
|
|
quint32 mCustomSamplerFlags;
|
|
|
|
|
quint32 mPrecompiledIndex;
|
2025-09-07 12:36:08 -04:00
|
|
|
QVector<XMaterialShaderArgument> mArgs;
|
2025-09-03 13:15:13 -04:00
|
|
|
};
|
|
|
|
|
|
|
|
|
|
#endif // XMATERIALPASS_H
|