4#include <unordered_map>
16 void SetUniformf(std::string name,
float value);
17 void SetUniform3f(std::string name,
float *value);
18 void SetUniformi(std::string name,
int value);
19 void SetUniformMat4(std::string name, glm::mat4 &value);
20 void SetVec3(std::string name,
float a,
float b,
float c);
24 void Dispatch(
int x,
int y,
int z);
25 void SetMemoryBarrier();
27 inline int GetNativeShader()
32 int m_Shader, m_UniformId, m_LightPosUniformID, m_LightColUniformID, m_TimeUniformID;
33 std::unordered_map<std::string, uint32_t> uniformLocations;
34 int maxWorkGroupCount[3], maxWorkGroupSize[3], maxWorkGroupInvocations;