FShaderInputVariableInfo

namespace marengine
struct FShaderInputDescription

Public Members

std::vector<FShaderInputVariableInfo> inputVariables
EBufferType bufferType = {EBufferType::NONE}
EShaderStage shaderStage = {EShaderStage::NONE}
uint32 binding = {0}
struct FShaderInputVariableInfo

Public Functions

uint32 typeSize() const

Public Members

EInputType inputType = {EInputType::NONE}
const char *name = {nullptr}
uint32 offset = {0}
uint32 memoryUsed = {0}
uint32 count = {0}
class IShaders : public FRenderResource

Subclassed by FShaders

Public Functions

void passVertex(const char *vertexShader) = 0
void passTessEval(const char *tesselationEvalShader) = 0
void passTessControl(const char *tesselationControlShader) = 0
void passGeometry(const char *geometryShader) = 0
void passCompute(const char *computeShader) = 0
void passFragment(const char *fragmentShader) = 0
uint32 getID() const = 0
void compile() = 0
void close() = 0
void bind() = 0
class IShadersFactory : public FRenderResourceFactory

Subclassed by FShadersFactory

Public Functions

FShaders *emplace() = 0
class IShadersStorage : public IRenderResourceStorage

Subclassed by FShadersStorage