skunkworks-c/include/shader.h

33 lines
766 B
C
Raw Permalink Normal View History

2022-12-31 12:14:57 +01:00
#ifndef GUARD_2AF8C38E79755453C7B276BABE0DA7AE
#define GUARD_2AF8C38E79755453C7B276BABE0DA7AE
#include "types.h"
struct sw_shader {
2023-03-07 20:13:02 +01:00
u32 _shader;
2022-12-31 12:14:57 +01:00
};
struct sw_shaderprogram {
2023-03-07 20:13:02 +01:00
u32 _program;
2022-12-31 12:14:57 +01:00
};
#define SW_SHADER_VERTEX 1
#define SW_SHADER_FRAGMENT 2
2023-01-14 05:48:58 +01:00
#define SW_SHADERLOC_POS 0
2023-03-07 20:13:02 +01:00
/*
2022-12-31 12:14:57 +01:00
struct sw_shader sw_shader_create(char const *source, i32 type);
struct sw_shaderprogram
sw_shaderprogram_create(char const *vertex, char const *fragment);
2023-03-07 20:13:02 +01:00
*/
struct sw_shader sw_shader_create(u8 *data, u32 len, i32 type, bool compiled);
struct sw_shaderprogram sw_shaderprogram_create(
u8 *vert_data, u32 vert_len, u8 *frag_data, u32 frag_len, bool compiled
);
2022-12-31 12:14:57 +01:00
void sw_shaderprogram_use(struct sw_shaderprogram program);
#endif /* GUARD_2AF8C38E79755453C7B276BABE0DA7AE */