51 lines
1.1 KiB
C++
51 lines
1.1 KiB
C++
#include "xmaterialvertexshader.h"
|
|
#include "xmaterialvertexshaderprogram.h"
|
|
|
|
XMaterialVertexShader::XMaterialVertexShader()
|
|
: XAsset()
|
|
, mShaderName()
|
|
, mProgram()
|
|
{
|
|
SetType(ASSET_TYPE_VERTEXSHADER);
|
|
SetName("Material Vertex Shader");
|
|
}
|
|
|
|
void XMaterialVertexShader::Clear()
|
|
{
|
|
mShaderName.Clear();
|
|
mProgram.Clear();
|
|
}
|
|
|
|
void XMaterialVertexShader::ParseData(XDataStream *aStream)
|
|
{
|
|
if (IsDebug())
|
|
{
|
|
qDebug() << QString("[%1] Parsing data for %2").arg(aStream->device()->pos(), 10, 10, QChar('0')).arg(GetName());
|
|
}
|
|
mShaderName.ParsePtr(aStream, false);
|
|
mProgram.ParseData(aStream);
|
|
|
|
mShaderName.ParseDataSafe(aStream);
|
|
mProgram.LoadDef().ParseProgram(aStream);
|
|
}
|
|
|
|
XString XMaterialVertexShader::ShaderName() const
|
|
{
|
|
return mShaderName;
|
|
}
|
|
|
|
void XMaterialVertexShader::SetShaderName(const XString &aName)
|
|
{
|
|
mShaderName = aName;
|
|
}
|
|
|
|
XMaterialVertexShaderProgram XMaterialVertexShader::Program() const
|
|
{
|
|
return mProgram;
|
|
}
|
|
|
|
void XMaterialVertexShader::SetProgram(const XMaterialVertexShaderProgram &aProgram)
|
|
{
|
|
mProgram = aProgram;
|
|
}
|