Merge branch 'CustomShaderFeatures' of https://github.com/Areloch/Torque3D into development

This commit is contained in:
Areloch 2019-05-11 21:53:08 -05:00
commit c283295f22
37 changed files with 1365 additions and 38 deletions

View file

@ -29,6 +29,9 @@
#ifndef _GFXSHADER_H_
#include "gfx/gfxShader.h"
#endif
#ifndef CUSTOMSHADERBINDINGDATA_H
#include "materials/customShaderBindingData.h"
#endif
class GenericConstBufferLayout;
class ShaderData;
@ -97,7 +100,15 @@ public:
GFXShaderConstHandle* mNodeTransforms;
void init( GFXShader* shader, CustomMaterial* mat = NULL );
struct customHandleData
{
StringTableEntry handleName;
GFXShaderConstHandle* handle;
};
Vector<customHandleData> mCustomHandles;
void init( GFXShader* shader, Vector<CustomShaderFeatureData*> customFeatureData, CustomMaterial* mat = NULL);
};
class ShaderRenderPassData : public RenderPassData
@ -133,6 +144,7 @@ public:
virtual void setTextureStages(SceneRenderState *, const SceneData &sgData, U32 pass );
virtual void setTransforms(const MatrixSet &matrixSet, SceneRenderState *state, const U32 pass);
virtual void setNodeTransforms(const MatrixF *address, const U32 numTransforms, const U32 pass);
virtual void setCustomShaderData(Vector<CustomShaderBindingData> &shaderData, const U32 pass);
virtual void setSceneInfo(SceneRenderState *, const SceneData& sgData, U32 pass);
virtual void setBuffers(GFXVertexBufferHandleBase* vertBuffer, GFXPrimitiveBufferHandle* primBuffer);
virtual bool stepInstance();