Files
somaesque-native/src/gfx/Shader.h

31 lines
972 B
C

#ifndef LEDDA_SHADER_H
#define LEDDA_SHADER_H
#include "../lib/raymath.h"
#include "../lib/djstdlib/core.h"
typedef struct {
uint32 progId;
} Shader;
Shader createShader(string vertex_path, string fragment_path);
void setUniformMat4fv(Shader *s, const char *uniformName, Matrix *matrix);
void setUniformMat4fvByLoc(int uniformLocation, Matrix *matrix);
void setUniform4fv(Shader *s, const char *uniformName, RLVector4 *vector);
void setUniform4fvByLoc(int uniformLocation, RLVector4 *vector);
void setUniform3fv(Shader *s, const char *uniformName, RLVector3 *vector);
void setUniform3fvByLoc(int uniformLocation, RLVector3 *vector);
void setUniform2fv(Shader *s, const char *uniformName, RLVector2 *vector);
void setUniform2fvByLoc(int uniformLocation, RLVector2 *vector);
void setUniform1i(Shader *s, const char *uniformName, int32 i);
void setUniform1iByLoc(int uniformLocation, int32 i);
int getUniformLocation(Shader *s, const char *uniformName);
#endif