24 lines
673 B
C++
24 lines
673 B
C++
#ifndef ShaderGraphCompilerHLSL_h__
|
|
#define ShaderGraphCompilerHLSL_h__
|
|
|
|
#include "shaders/IShaderGraphCompiler.h"
|
|
|
|
namespace LifeGraphics
|
|
{
|
|
class ShaderGraphCompilerHLSL : public IShaderGraphCompiler
|
|
{
|
|
public:
|
|
ShaderGraphCompilerHLSL();
|
|
void CompileNode(IShaderGraphNode* rootNode, int flags, String& ps, String& vs, ShaderInputInfo* info);
|
|
private:
|
|
ShaderInputInfo inputInfo;
|
|
int lastTexSlot;
|
|
void RemoveChecked(IShaderGraphNode* node);
|
|
String NewVarName(const String& baseName);
|
|
int var_id;
|
|
void ExposeNode(String& shader, String& resources, IShaderGraphNode* node);
|
|
String TypeToStr(IShaderDataType t);
|
|
};
|
|
}
|
|
|
|
#endif // ShaderGraphCompilerHLSL_h__
|