|
@@ -124,7 +124,7 @@ enum gs_stencil_side {
|
|
GS_STENCIL_BOTH
|
|
GS_STENCIL_BOTH
|
|
};
|
|
};
|
|
|
|
|
|
-enum gs_stencil_op {
|
|
|
|
|
|
+enum gs_stencil_op_type {
|
|
GS_KEEP,
|
|
GS_KEEP,
|
|
GS_ZERO,
|
|
GS_ZERO,
|
|
GS_REPLACE,
|
|
GS_REPLACE,
|
|
@@ -168,12 +168,12 @@ enum gs_texture_type {
|
|
GS_TEXTURE_CUBE
|
|
GS_TEXTURE_CUBE
|
|
};
|
|
};
|
|
|
|
|
|
-struct tvertarray {
|
|
|
|
|
|
+struct gs_tvertarray {
|
|
size_t width;
|
|
size_t width;
|
|
void *array;
|
|
void *array;
|
|
};
|
|
};
|
|
|
|
|
|
-struct vb_data {
|
|
|
|
|
|
+struct gs_vb_data {
|
|
size_t num;
|
|
size_t num;
|
|
struct vec3 *points;
|
|
struct vec3 *points;
|
|
struct vec3 *normals;
|
|
struct vec3 *normals;
|
|
@@ -181,15 +181,15 @@ struct vb_data {
|
|
uint32_t *colors;
|
|
uint32_t *colors;
|
|
|
|
|
|
size_t num_tex;
|
|
size_t num_tex;
|
|
- struct tvertarray *tvarray;
|
|
|
|
|
|
+ struct gs_tvertarray *tvarray;
|
|
};
|
|
};
|
|
|
|
|
|
-static inline struct vb_data *vbdata_create(void)
|
|
|
|
|
|
+static inline struct gs_vb_data *gs_vbdata_create(void)
|
|
{
|
|
{
|
|
- return (struct vb_data*)bzalloc(sizeof(struct vb_data));
|
|
|
|
|
|
+ return (struct gs_vb_data*)bzalloc(sizeof(struct gs_vb_data));
|
|
}
|
|
}
|
|
|
|
|
|
-static inline void vbdata_destroy(struct vb_data *data)
|
|
|
|
|
|
+static inline void gs_vbdata_destroy(struct gs_vb_data *data)
|
|
{
|
|
{
|
|
uint32_t i;
|
|
uint32_t i;
|
|
if (!data)
|
|
if (!data)
|
|
@@ -239,154 +239,161 @@ struct gs_sampler_state;
|
|
struct gs_shader;
|
|
struct gs_shader;
|
|
struct gs_swap_chain;
|
|
struct gs_swap_chain;
|
|
struct gs_texrender;
|
|
struct gs_texrender;
|
|
-struct shader_param;
|
|
|
|
|
|
+struct gs_shader_param;
|
|
struct gs_effect;
|
|
struct gs_effect;
|
|
-struct effect_technique;
|
|
|
|
-struct effect_pass;
|
|
|
|
-struct effect_param;
|
|
|
|
|
|
+struct gs_effect_technique;
|
|
|
|
+struct gs_effect_pass;
|
|
|
|
+struct gs_effect_param;
|
|
struct gs_device;
|
|
struct gs_device;
|
|
struct graphics_subsystem;
|
|
struct graphics_subsystem;
|
|
|
|
|
|
-typedef struct gs_texture *texture_t;
|
|
|
|
-typedef struct gs_stage_surface *stagesurf_t;
|
|
|
|
-typedef struct gs_zstencil_buffer *zstencil_t;
|
|
|
|
-typedef struct gs_vertex_buffer *vertbuffer_t;
|
|
|
|
-typedef struct gs_index_buffer *indexbuffer_t;
|
|
|
|
-typedef struct gs_sampler_state *samplerstate_t;
|
|
|
|
-typedef struct gs_swap_chain *swapchain_t;
|
|
|
|
-typedef struct gs_texture_render *texrender_t;
|
|
|
|
-typedef struct gs_shader *shader_t;
|
|
|
|
-typedef struct shader_param *sparam_t;
|
|
|
|
-typedef struct gs_effect *effect_t;
|
|
|
|
-typedef struct effect_technique *technique_t;
|
|
|
|
-typedef struct effect_param *eparam_t;
|
|
|
|
-typedef struct gs_device *device_t;
|
|
|
|
-typedef struct graphics_subsystem *graphics_t;
|
|
|
|
|
|
+typedef struct gs_texture *gs_texture_t;
|
|
|
|
+typedef struct gs_stage_surface *gs_stagesurf_t;
|
|
|
|
+typedef struct gs_zstencil_buffer *gs_zstencil_t;
|
|
|
|
+typedef struct gs_vertex_buffer *gs_vertbuffer_t;
|
|
|
|
+typedef struct gs_index_buffer *gs_indexbuffer_t;
|
|
|
|
+typedef struct gs_sampler_state *gs_samplerstate_t;
|
|
|
|
+typedef struct gs_swap_chain *gs_swapchain_t;
|
|
|
|
+typedef struct gs_texture_render *gs_texrender_t;
|
|
|
|
+typedef struct gs_shader *gs_shader_t;
|
|
|
|
+typedef struct gs_shader_param *gs_sparam_t;
|
|
|
|
+typedef struct gs_effect *gs_effect_t;
|
|
|
|
+typedef struct gs_effect_technique *gs_technique_t;
|
|
|
|
+typedef struct gs_effect_param *gs_eparam_t;
|
|
|
|
+typedef struct gs_device *gs_device_t;
|
|
|
|
+typedef struct graphics_subsystem *graphics_t;
|
|
|
|
|
|
/* ---------------------------------------------------
|
|
/* ---------------------------------------------------
|
|
* shader functions
|
|
* shader functions
|
|
* --------------------------------------------------- */
|
|
* --------------------------------------------------- */
|
|
|
|
|
|
-enum shader_param_type {
|
|
|
|
- SHADER_PARAM_UNKNOWN,
|
|
|
|
- SHADER_PARAM_BOOL,
|
|
|
|
- SHADER_PARAM_FLOAT,
|
|
|
|
- SHADER_PARAM_INT,
|
|
|
|
- SHADER_PARAM_STRING,
|
|
|
|
- SHADER_PARAM_VEC2,
|
|
|
|
- SHADER_PARAM_VEC3,
|
|
|
|
- SHADER_PARAM_VEC4,
|
|
|
|
- SHADER_PARAM_MATRIX4X4,
|
|
|
|
- SHADER_PARAM_TEXTURE,
|
|
|
|
|
|
+enum gs_shader_param_type {
|
|
|
|
+ GS_SHADER_PARAM_UNKNOWN,
|
|
|
|
+ GS_SHADER_PARAM_BOOL,
|
|
|
|
+ GS_SHADER_PARAM_FLOAT,
|
|
|
|
+ GS_SHADER_PARAM_INT,
|
|
|
|
+ GS_SHADER_PARAM_STRING,
|
|
|
|
+ GS_SHADER_PARAM_VEC2,
|
|
|
|
+ GS_SHADER_PARAM_VEC3,
|
|
|
|
+ GS_SHADER_PARAM_VEC4,
|
|
|
|
+ GS_SHADER_PARAM_MATRIX4X4,
|
|
|
|
+ GS_SHADER_PARAM_TEXTURE,
|
|
};
|
|
};
|
|
|
|
|
|
-struct shader_param_info {
|
|
|
|
- enum shader_param_type type;
|
|
|
|
|
|
+struct gs_shader_param_info {
|
|
|
|
+ enum gs_shader_param_type type;
|
|
const char *name;
|
|
const char *name;
|
|
};
|
|
};
|
|
|
|
|
|
-enum shader_type {
|
|
|
|
- SHADER_VERTEX,
|
|
|
|
- SHADER_PIXEL,
|
|
|
|
|
|
+enum gs_shader_type {
|
|
|
|
+ GS_SHADER_VERTEX,
|
|
|
|
+ GS_SHADER_PIXEL,
|
|
};
|
|
};
|
|
|
|
|
|
-EXPORT void shader_destroy(shader_t shader);
|
|
|
|
|
|
+EXPORT void gs_shader_destroy(gs_shader_t shader);
|
|
|
|
|
|
-EXPORT int shader_numparams(shader_t shader);
|
|
|
|
-EXPORT sparam_t shader_getparambyidx(shader_t shader, uint32_t param);
|
|
|
|
-EXPORT sparam_t shader_getparambyname(shader_t shader, const char *name);
|
|
|
|
-
|
|
|
|
-EXPORT sparam_t shader_getviewprojmatrix(shader_t shader);
|
|
|
|
-EXPORT sparam_t shader_getworldmatrix(shader_t shader);
|
|
|
|
|
|
+EXPORT int gs_shader_get_num_params(gs_shader_t shader);
|
|
|
|
+EXPORT gs_sparam_t gs_shader_get_param_by_idx(gs_shader_t shader,
|
|
|
|
+ uint32_t param);
|
|
|
|
+EXPORT gs_sparam_t gs_shader_get_param_by_name(gs_shader_t shader,
|
|
|
|
+ const char *name);
|
|
|
|
|
|
-EXPORT void shader_getparaminfo(sparam_t param, struct shader_param_info *info);
|
|
|
|
-EXPORT void shader_setbool(sparam_t param, bool val);
|
|
|
|
-EXPORT void shader_setfloat(sparam_t param, float val);
|
|
|
|
-EXPORT void shader_setint(sparam_t param, int val);
|
|
|
|
-EXPORT void shader_setmatrix3(sparam_t param, const struct matrix3 *val);
|
|
|
|
-EXPORT void shader_setmatrix4(sparam_t param, const struct matrix4 *val);
|
|
|
|
-EXPORT void shader_setvec2(sparam_t param, const struct vec2 *val);
|
|
|
|
-EXPORT void shader_setvec3(sparam_t param, const struct vec3 *val);
|
|
|
|
-EXPORT void shader_setvec4(sparam_t param, const struct vec4 *val);
|
|
|
|
-EXPORT void shader_settexture(sparam_t param, texture_t val);
|
|
|
|
-EXPORT void shader_setval(sparam_t param, const void *val, size_t size);
|
|
|
|
-EXPORT void shader_setdefault(sparam_t param);
|
|
|
|
|
|
+EXPORT gs_sparam_t gs_shader_get_viewproj_matrix(gs_shader_t shader);
|
|
|
|
+EXPORT gs_sparam_t gs_shader_get_world_matrix(gs_shader_t shader);
|
|
|
|
+
|
|
|
|
+EXPORT void gs_shader_get_param_info(gs_sparam_t param,
|
|
|
|
+ struct gs_shader_param_info *info);
|
|
|
|
+EXPORT void gs_shader_set_bool(gs_sparam_t param, bool val);
|
|
|
|
+EXPORT void gs_shader_set_float(gs_sparam_t param, float val);
|
|
|
|
+EXPORT void gs_shader_set_int(gs_sparam_t param, int val);
|
|
|
|
+EXPORT void gs_shader_setmatrix3(gs_sparam_t param, const struct matrix3 *val);
|
|
|
|
+EXPORT void gs_shader_set_matrix4(gs_sparam_t param, const struct matrix4 *val);
|
|
|
|
+EXPORT void gs_shader_set_vec2(gs_sparam_t param, const struct vec2 *val);
|
|
|
|
+EXPORT void gs_shader_set_vec3(gs_sparam_t param, const struct vec3 *val);
|
|
|
|
+EXPORT void gs_shader_set_vec4(gs_sparam_t param, const struct vec4 *val);
|
|
|
|
+EXPORT void gs_shader_set_texture(gs_sparam_t param, gs_texture_t val);
|
|
|
|
+EXPORT void gs_shader_set_val(gs_sparam_t param, const void *val, size_t size);
|
|
|
|
+EXPORT void gs_shader_set_default(gs_sparam_t param);
|
|
|
|
|
|
/* ---------------------------------------------------
|
|
/* ---------------------------------------------------
|
|
* effect functions
|
|
* effect functions
|
|
* --------------------------------------------------- */
|
|
* --------------------------------------------------- */
|
|
|
|
|
|
-/*enum effect_property_type {
|
|
|
|
- EFFECT_NONE,
|
|
|
|
- EFFECT_BOOL,
|
|
|
|
- EFFECT_FLOAT,
|
|
|
|
- EFFECT_COLOR,
|
|
|
|
- EFFECT_TEXTURE
|
|
|
|
|
|
+/*enum gs_effect_property_type {
|
|
|
|
+ GS_EFFECT_NONE,
|
|
|
|
+ GS_EFFECT_BOOL,
|
|
|
|
+ GS_EFFECT_FLOAT,
|
|
|
|
+ GS_EFFECT_COLOR,
|
|
|
|
+ GS_EFFECT_TEXTURE
|
|
};*/
|
|
};*/
|
|
|
|
|
|
-struct effect_param_info {
|
|
|
|
|
|
+struct gs_effect_param_info {
|
|
const char *name;
|
|
const char *name;
|
|
- enum shader_param_type type;
|
|
|
|
|
|
+ enum gs_shader_param_type type;
|
|
|
|
|
|
/* const char *full_name;
|
|
/* const char *full_name;
|
|
- enum effect_property_type prop_type;
|
|
|
|
|
|
+ enum gs_effect_property_type prop_type;
|
|
|
|
|
|
float min, max, inc, mul; */
|
|
float min, max, inc, mul; */
|
|
};
|
|
};
|
|
|
|
|
|
-EXPORT void effect_destroy(effect_t effect);
|
|
|
|
|
|
+EXPORT void gs_effect_destroy(gs_effect_t effect);
|
|
|
|
|
|
-EXPORT technique_t effect_gettechnique(effect_t effect, const char *name);
|
|
|
|
|
|
+EXPORT gs_technique_t gs_effect_get_technique(gs_effect_t effect,
|
|
|
|
+ const char *name);
|
|
|
|
|
|
-EXPORT size_t technique_begin(technique_t technique);
|
|
|
|
-EXPORT void technique_end(technique_t technique);
|
|
|
|
-EXPORT bool technique_beginpass(technique_t technique, size_t pass);
|
|
|
|
-EXPORT bool technique_beginpassbyname(technique_t technique,
|
|
|
|
|
|
+EXPORT size_t gs_technique_begin(gs_technique_t technique);
|
|
|
|
+EXPORT void gs_technique_end(gs_technique_t technique);
|
|
|
|
+EXPORT bool gs_technique_begin_pass(gs_technique_t technique, size_t pass);
|
|
|
|
+EXPORT bool gs_technique_begin_pass_by_name(gs_technique_t technique,
|
|
const char *name);
|
|
const char *name);
|
|
-EXPORT void technique_endpass(technique_t technique);
|
|
|
|
|
|
+EXPORT void gs_technique_end_pass(gs_technique_t technique);
|
|
|
|
|
|
-EXPORT size_t effect_numparams(effect_t effect);
|
|
|
|
-EXPORT eparam_t effect_getparambyidx(effect_t effect, size_t param);
|
|
|
|
-EXPORT eparam_t effect_getparambyname(effect_t effect, const char *name);
|
|
|
|
|
|
+EXPORT size_t gs_effect_get_num_params(gs_effect_t effect);
|
|
|
|
+EXPORT gs_eparam_t gs_effect_get_param_by_idx(gs_effect_t effect, size_t param);
|
|
|
|
+EXPORT gs_eparam_t gs_effect_get_param_by_name(gs_effect_t effect,
|
|
|
|
+ const char *name);
|
|
|
|
|
|
/** used internally */
|
|
/** used internally */
|
|
-EXPORT void effect_updateparams(effect_t effect);
|
|
|
|
-
|
|
|
|
-EXPORT eparam_t effect_getviewprojmatrix(effect_t effect);
|
|
|
|
-EXPORT eparam_t effect_getworldmatrix(effect_t effect);
|
|
|
|
-
|
|
|
|
-EXPORT void effect_getparaminfo(eparam_t param, struct effect_param_info *info);
|
|
|
|
-EXPORT void effect_setbool(eparam_t param, bool val);
|
|
|
|
-EXPORT void effect_setfloat(eparam_t param, float val);
|
|
|
|
-EXPORT void effect_setint(eparam_t param, int val);
|
|
|
|
-EXPORT void effect_setmatrix4(eparam_t param, const struct matrix4 *val);
|
|
|
|
-EXPORT void effect_setvec2(eparam_t param, const struct vec2 *val);
|
|
|
|
-EXPORT void effect_setvec3(eparam_t param, const struct vec3 *val);
|
|
|
|
-EXPORT void effect_setvec4(eparam_t param, const struct vec4 *val);
|
|
|
|
-EXPORT void effect_settexture(eparam_t param, texture_t val);
|
|
|
|
-EXPORT void effect_setval(eparam_t param, const void *val, size_t size);
|
|
|
|
-EXPORT void effect_setdefault(eparam_t param);
|
|
|
|
|
|
+EXPORT void gs_effect_update_params(gs_effect_t effect);
|
|
|
|
+
|
|
|
|
+EXPORT gs_eparam_t gs_effect_get_viewproj_matrix(gs_effect_t effect);
|
|
|
|
+EXPORT gs_eparam_t gs_effect_get_world_matrix(gs_effect_t effect);
|
|
|
|
+
|
|
|
|
+EXPORT void gs_effect_get_param_info(gs_eparam_t param,
|
|
|
|
+ struct gs_effect_param_info *info);
|
|
|
|
+EXPORT void gs_effect_set_bool(gs_eparam_t param, bool val);
|
|
|
|
+EXPORT void gs_effect_set_float(gs_eparam_t param, float val);
|
|
|
|
+EXPORT void gs_effect_set_int(gs_eparam_t param, int val);
|
|
|
|
+EXPORT void gs_effect_set_matrix4(gs_eparam_t param, const struct matrix4 *val);
|
|
|
|
+EXPORT void gs_effect_set_vec2(gs_eparam_t param, const struct vec2 *val);
|
|
|
|
+EXPORT void gs_effect_set_vec3(gs_eparam_t param, const struct vec3 *val);
|
|
|
|
+EXPORT void gs_effect_set_vec4(gs_eparam_t param, const struct vec4 *val);
|
|
|
|
+EXPORT void gs_effect_set_texture(gs_eparam_t param, gs_texture_t val);
|
|
|
|
+EXPORT void gs_effect_set_val(gs_eparam_t param, const void *val, size_t size);
|
|
|
|
+EXPORT void gs_effect_set_default(gs_eparam_t param);
|
|
|
|
|
|
/* ---------------------------------------------------
|
|
/* ---------------------------------------------------
|
|
* texture render helper functions
|
|
* texture render helper functions
|
|
* --------------------------------------------------- */
|
|
* --------------------------------------------------- */
|
|
|
|
|
|
-EXPORT texrender_t texrender_create(enum gs_color_format format,
|
|
|
|
|
|
+EXPORT gs_texrender_t gs_texrender_create(enum gs_color_format format,
|
|
enum gs_zstencil_format zsformat);
|
|
enum gs_zstencil_format zsformat);
|
|
-EXPORT void texrender_destroy(texrender_t texrender);
|
|
|
|
-EXPORT bool texrender_begin(texrender_t texrender, uint32_t cx, uint32_t cy);
|
|
|
|
-EXPORT void texrender_end(texrender_t texrender);
|
|
|
|
-EXPORT void texrender_reset(texrender_t texrender);
|
|
|
|
-EXPORT texture_t texrender_gettexture(texrender_t texrender);
|
|
|
|
|
|
+EXPORT void gs_texrender_destroy(gs_texrender_t texrender);
|
|
|
|
+EXPORT bool gs_texrender_begin(gs_texrender_t texrender, uint32_t cx,
|
|
|
|
+ uint32_t cy);
|
|
|
|
+EXPORT void gs_texrender_end(gs_texrender_t texrender);
|
|
|
|
+EXPORT void gs_texrender_reset(gs_texrender_t texrender);
|
|
|
|
+EXPORT gs_texture_t gs_texrender_get_texture(gs_texrender_t texrender);
|
|
|
|
|
|
/* ---------------------------------------------------
|
|
/* ---------------------------------------------------
|
|
* graphics subsystem
|
|
* graphics subsystem
|
|
* --------------------------------------------------- */
|
|
* --------------------------------------------------- */
|
|
|
|
|
|
-#define GS_BUILDMIPMAPS (1<<0)
|
|
|
|
-#define GS_DYNAMIC (1<<1)
|
|
|
|
-#define GS_RENDERTARGET (1<<2)
|
|
|
|
-#define GS_GL_DUMMYTEX (1<<3) /**<< texture with no allocated texture data */
|
|
|
|
|
|
+#define GS_BUILD_MIPMAPS (1<<0)
|
|
|
|
+#define GS_DYNAMIC (1<<1)
|
|
|
|
+#define GS_RENDER_TARGET (1<<2)
|
|
|
|
+#define GS_GL_DUMMYTEX (1<<3) /**<< texture with no allocated texture data */
|
|
|
|
|
|
/* ---------------- */
|
|
/* ---------------- */
|
|
/* global functions */
|
|
/* global functions */
|
|
@@ -420,16 +427,16 @@ struct gs_init_data {
|
|
#define GS_DEVICE_OPENGL 1
|
|
#define GS_DEVICE_OPENGL 1
|
|
#define GS_DEVICE_DIRECT3D_11 2
|
|
#define GS_DEVICE_DIRECT3D_11 2
|
|
|
|
|
|
-EXPORT const char *gs_device_name(void);
|
|
|
|
-EXPORT int gs_device_type(void);
|
|
|
|
|
|
+EXPORT const char *gs_get_device_name(void);
|
|
|
|
+EXPORT int gs_get_device_type(void);
|
|
|
|
|
|
EXPORT int gs_create(graphics_t *graphics, const char *module,
|
|
EXPORT int gs_create(graphics_t *graphics, const char *module,
|
|
struct gs_init_data *data);
|
|
struct gs_init_data *data);
|
|
EXPORT void gs_destroy(graphics_t graphics);
|
|
EXPORT void gs_destroy(graphics_t graphics);
|
|
|
|
|
|
-EXPORT void gs_entercontext(graphics_t graphics);
|
|
|
|
-EXPORT void gs_leavecontext(void);
|
|
|
|
-EXPORT graphics_t gs_getcontext(void);
|
|
|
|
|
|
+EXPORT void gs_enter_context(graphics_t graphics);
|
|
|
|
+EXPORT void gs_leave_context(void);
|
|
|
|
+EXPORT graphics_t gs_get_context(void);
|
|
|
|
|
|
EXPORT void gs_matrix_push(void);
|
|
EXPORT void gs_matrix_push(void);
|
|
EXPORT void gs_matrix_pop(void);
|
|
EXPORT void gs_matrix_pop(void);
|
|
@@ -446,9 +453,9 @@ EXPORT void gs_matrix_rotaa4f(float x, float y, float z, float angle);
|
|
EXPORT void gs_matrix_translate3f(float x, float y, float z);
|
|
EXPORT void gs_matrix_translate3f(float x, float y, float z);
|
|
EXPORT void gs_matrix_scale3f(float x, float y, float z);
|
|
EXPORT void gs_matrix_scale3f(float x, float y, float z);
|
|
|
|
|
|
-EXPORT void gs_renderstart(bool b_new);
|
|
|
|
-EXPORT void gs_renderstop(enum gs_draw_mode mode);
|
|
|
|
-EXPORT vertbuffer_t gs_rendersave(void);
|
|
|
|
|
|
+EXPORT void gs_render_start(bool b_new);
|
|
|
|
+EXPORT void gs_render_stop(enum gs_draw_mode mode);
|
|
|
|
+EXPORT gs_vertbuffer_t gs_render_save(void);
|
|
EXPORT void gs_vertex2f(float x, float y);
|
|
EXPORT void gs_vertex2f(float x, float y);
|
|
EXPORT void gs_vertex3f(float x, float y, float z);
|
|
EXPORT void gs_vertex3f(float x, float y, float z);
|
|
EXPORT void gs_normal3f(float x, float y, float z);
|
|
EXPORT void gs_normal3f(float x, float y, float z);
|
|
@@ -460,20 +467,20 @@ EXPORT void gs_normal3v(const struct vec3 *v);
|
|
EXPORT void gs_color4v(const struct vec4 *v);
|
|
EXPORT void gs_color4v(const struct vec4 *v);
|
|
EXPORT void gs_texcoord2v(const struct vec2 *v, int unit);
|
|
EXPORT void gs_texcoord2v(const struct vec2 *v, int unit);
|
|
|
|
|
|
-EXPORT input_t gs_getinput(void);
|
|
|
|
-EXPORT effect_t gs_geteffect(void);
|
|
|
|
|
|
+EXPORT input_t gs_get_input(void);
|
|
|
|
+EXPORT gs_effect_t gs_get_effect(void);
|
|
|
|
|
|
-EXPORT effect_t gs_create_effect_from_file(const char *file,
|
|
|
|
|
|
+EXPORT gs_effect_t gs_effect_create_from_file(const char *file,
|
|
char **error_string);
|
|
char **error_string);
|
|
-EXPORT effect_t gs_create_effect(const char *effect_string,
|
|
|
|
|
|
+EXPORT gs_effect_t gs_effect_create(const char *effect_string,
|
|
const char *filename, char **error_string);
|
|
const char *filename, char **error_string);
|
|
|
|
|
|
-EXPORT shader_t gs_create_vertexshader_from_file(const char *file,
|
|
|
|
|
|
+EXPORT gs_shader_t gs_vertexshader_create_from_file(const char *file,
|
|
char **error_string);
|
|
char **error_string);
|
|
-EXPORT shader_t gs_create_pixelshader_from_file(const char *file,
|
|
|
|
|
|
+EXPORT gs_shader_t gs_pixelshader_create_from_file(const char *file,
|
|
char **error_string);
|
|
char **error_string);
|
|
|
|
|
|
-EXPORT texture_t gs_create_texture_from_file(const char *file);
|
|
|
|
|
|
+EXPORT gs_texture_t gs_texture_create_from_file(const char *file);
|
|
|
|
|
|
#define GS_FLIP_U (1<<0)
|
|
#define GS_FLIP_U (1<<0)
|
|
#define GS_FLIP_V (1<<1)
|
|
#define GS_FLIP_V (1<<1)
|
|
@@ -485,26 +492,26 @@ EXPORT texture_t gs_create_texture_from_file(const char *file);
|
|
* The flip value specifies whether the texture shoudl be flipped on the U or V
|
|
* The flip value specifies whether the texture shoudl be flipped on the U or V
|
|
* axis with GS_FLIP_U and GS_FLIP_V.
|
|
* axis with GS_FLIP_U and GS_FLIP_V.
|
|
*/
|
|
*/
|
|
-EXPORT void gs_draw_sprite(texture_t tex, uint32_t flip, uint32_t width,
|
|
|
|
|
|
+EXPORT void gs_draw_sprite(gs_texture_t tex, uint32_t flip, uint32_t width,
|
|
uint32_t height);
|
|
uint32_t height);
|
|
|
|
|
|
-EXPORT void gs_draw_cube_backdrop(texture_t cubetex, const struct quat *rot,
|
|
|
|
|
|
+EXPORT void gs_draw_cube_backdrop(gs_texture_t cubetex, const struct quat *rot,
|
|
float left, float right, float top, float bottom, float znear);
|
|
float left, float right, float top, float bottom, float znear);
|
|
|
|
|
|
/** sets the viewport to current swap chain size */
|
|
/** sets the viewport to current swap chain size */
|
|
-EXPORT void gs_resetviewport(void);
|
|
|
|
|
|
+EXPORT void gs_reset_viewport(void);
|
|
|
|
|
|
/** sets default screen-sized orthographich mode */
|
|
/** sets default screen-sized orthographich mode */
|
|
-EXPORT void gs_set2dmode(void);
|
|
|
|
|
|
+EXPORT void gs_set_2d_mode(void);
|
|
/** sets default screen-sized perspective mode */
|
|
/** sets default screen-sized perspective mode */
|
|
-EXPORT void gs_set3dmode(double fovy, double znear, double zvar);
|
|
|
|
|
|
+EXPORT void gs_set_3d_mode(double fovy, double znear, double zvar);
|
|
|
|
|
|
EXPORT void gs_viewport_push(void);
|
|
EXPORT void gs_viewport_push(void);
|
|
EXPORT void gs_viewport_pop(void);
|
|
EXPORT void gs_viewport_pop(void);
|
|
|
|
|
|
-EXPORT void texture_setimage(texture_t tex, const uint8_t *data,
|
|
|
|
|
|
+EXPORT void gs_texture_set_image(gs_texture_t tex, const uint8_t *data,
|
|
uint32_t linesize, bool invert);
|
|
uint32_t linesize, bool invert);
|
|
-EXPORT void cubetexture_setimage(texture_t cubetex, uint32_t side,
|
|
|
|
|
|
+EXPORT void gs_cubetexture_set_image(gs_texture_t cubetex, uint32_t side,
|
|
const void *data, uint32_t linesize, bool invert);
|
|
const void *data, uint32_t linesize, bool invert);
|
|
|
|
|
|
EXPORT void gs_perspective(float fovy, float aspect, float znear, float zfar);
|
|
EXPORT void gs_perspective(float fovy, float aspect, float znear, float zfar);
|
|
@@ -514,104 +521,106 @@ EXPORT void gs_reset_blend_state(void);
|
|
/* -------------------------- */
|
|
/* -------------------------- */
|
|
/* library-specific functions */
|
|
/* library-specific functions */
|
|
|
|
|
|
-EXPORT swapchain_t gs_create_swapchain(struct gs_init_data *data);
|
|
|
|
|
|
+EXPORT gs_swapchain_t gs_swapchain_create(struct gs_init_data *data);
|
|
|
|
|
|
EXPORT void gs_resize(uint32_t x, uint32_t y);
|
|
EXPORT void gs_resize(uint32_t x, uint32_t y);
|
|
-EXPORT void gs_getsize(uint32_t *x, uint32_t *y);
|
|
|
|
-EXPORT uint32_t gs_getwidth(void);
|
|
|
|
-EXPORT uint32_t gs_getheight(void);
|
|
|
|
|
|
+EXPORT void gs_get_size(uint32_t *x, uint32_t *y);
|
|
|
|
+EXPORT uint32_t gs_get_width(void);
|
|
|
|
+EXPORT uint32_t gs_get_height(void);
|
|
|
|
|
|
-EXPORT texture_t gs_create_texture(uint32_t width, uint32_t height,
|
|
|
|
|
|
+EXPORT gs_texture_t gs_texture_create(uint32_t width, uint32_t height,
|
|
enum gs_color_format color_format, uint32_t levels,
|
|
enum gs_color_format color_format, uint32_t levels,
|
|
const uint8_t **data, uint32_t flags);
|
|
const uint8_t **data, uint32_t flags);
|
|
-EXPORT texture_t gs_create_cubetexture(uint32_t size,
|
|
|
|
|
|
+EXPORT gs_texture_t gs_cubetexture_create(uint32_t size,
|
|
enum gs_color_format color_format, uint32_t levels,
|
|
enum gs_color_format color_format, uint32_t levels,
|
|
const uint8_t **data, uint32_t flags);
|
|
const uint8_t **data, uint32_t flags);
|
|
-EXPORT texture_t gs_create_volumetexture(uint32_t width, uint32_t height,
|
|
|
|
|
|
+EXPORT gs_texture_t gs_voltexture_create(uint32_t width, uint32_t height,
|
|
uint32_t depth, enum gs_color_format color_format,
|
|
uint32_t depth, enum gs_color_format color_format,
|
|
uint32_t levels, const uint8_t **data, uint32_t flags);
|
|
uint32_t levels, const uint8_t **data, uint32_t flags);
|
|
|
|
|
|
-EXPORT zstencil_t gs_create_zstencil(uint32_t width, uint32_t height,
|
|
|
|
|
|
+EXPORT gs_zstencil_t gs_zstencil_create(uint32_t width, uint32_t height,
|
|
enum gs_zstencil_format format);
|
|
enum gs_zstencil_format format);
|
|
|
|
|
|
-EXPORT stagesurf_t gs_create_stagesurface(uint32_t width, uint32_t height,
|
|
|
|
|
|
+EXPORT gs_stagesurf_t gs_stagesurface_create(uint32_t width, uint32_t height,
|
|
enum gs_color_format color_format);
|
|
enum gs_color_format color_format);
|
|
|
|
|
|
-EXPORT samplerstate_t gs_create_samplerstate(struct gs_sampler_info *info);
|
|
|
|
|
|
+EXPORT gs_samplerstate_t gs_samplerstate_create(struct gs_sampler_info *info);
|
|
|
|
|
|
-EXPORT shader_t gs_create_vertexshader(const char *shader,
|
|
|
|
|
|
+EXPORT gs_shader_t gs_vertexshader_create(const char *shader,
|
|
const char *file, char **error_string);
|
|
const char *file, char **error_string);
|
|
-EXPORT shader_t gs_create_pixelshader(const char *shader,
|
|
|
|
|
|
+EXPORT gs_shader_t gs_pixelshader_create(const char *shader,
|
|
const char *file, char **error_string);
|
|
const char *file, char **error_string);
|
|
|
|
|
|
-EXPORT vertbuffer_t gs_create_vertexbuffer(struct vb_data *data,
|
|
|
|
|
|
+EXPORT gs_vertbuffer_t gs_vertexbuffer_create(struct gs_vb_data *data,
|
|
uint32_t flags);
|
|
uint32_t flags);
|
|
-EXPORT indexbuffer_t gs_create_indexbuffer(enum gs_index_type type,
|
|
|
|
|
|
+EXPORT gs_indexbuffer_t gs_indexbuffer_create(enum gs_index_type type,
|
|
void *indices, size_t num, uint32_t flags);
|
|
void *indices, size_t num, uint32_t flags);
|
|
|
|
|
|
-EXPORT enum gs_texture_type gs_gettexturetype(texture_t texture);
|
|
|
|
|
|
+EXPORT enum gs_texture_type gs_get_texture_type(gs_texture_t texture);
|
|
|
|
|
|
-EXPORT void gs_load_vertexbuffer(vertbuffer_t vertbuffer);
|
|
|
|
-EXPORT void gs_load_indexbuffer(indexbuffer_t indexbuffer);
|
|
|
|
-EXPORT void gs_load_texture(texture_t tex, int unit);
|
|
|
|
-EXPORT void gs_load_samplerstate(samplerstate_t samplerstate, int unit);
|
|
|
|
-EXPORT void gs_load_vertexshader(shader_t vertshader);
|
|
|
|
-EXPORT void gs_load_pixelshader(shader_t pixelshader);
|
|
|
|
|
|
+EXPORT void gs_load_vertexbuffer(gs_vertbuffer_t vertbuffer);
|
|
|
|
+EXPORT void gs_load_indexbuffer(gs_indexbuffer_t indexbuffer);
|
|
|
|
+EXPORT void gs_load_texture(gs_texture_t tex, int unit);
|
|
|
|
+EXPORT void gs_load_samplerstate(gs_samplerstate_t samplerstate, int unit);
|
|
|
|
+EXPORT void gs_load_vertexshader(gs_shader_t vertshader);
|
|
|
|
+EXPORT void gs_load_pixelshader(gs_shader_t pixelshader);
|
|
|
|
|
|
-EXPORT void gs_load_defaultsamplerstate(bool b_3d, int unit);
|
|
|
|
|
|
+EXPORT void gs_load_default_samplerstate(bool b_3d, int unit);
|
|
|
|
|
|
-EXPORT shader_t gs_getvertexshader(void);
|
|
|
|
-EXPORT shader_t gs_getpixelshader(void);
|
|
|
|
|
|
+EXPORT gs_shader_t gs_get_vertex_shader(void);
|
|
|
|
+EXPORT gs_shader_t gs_get_pixel_shader(void);
|
|
|
|
|
|
-EXPORT texture_t gs_getrendertarget(void);
|
|
|
|
-EXPORT zstencil_t gs_getzstenciltarget(void);
|
|
|
|
|
|
+EXPORT gs_texture_t gs_get_render_target(void);
|
|
|
|
+EXPORT gs_zstencil_t gs_get_zstencil_target(void);
|
|
|
|
|
|
-EXPORT void gs_setrendertarget(texture_t tex, zstencil_t zstencil);
|
|
|
|
-EXPORT void gs_setcuberendertarget(texture_t cubetex, int side,
|
|
|
|
- zstencil_t zstencil);
|
|
|
|
|
|
+EXPORT void gs_set_render_target(gs_texture_t tex, gs_zstencil_t zstencil);
|
|
|
|
+EXPORT void gs_set_cube_render_target(gs_texture_t cubetex, int side,
|
|
|
|
+ gs_zstencil_t zstencil);
|
|
|
|
|
|
-EXPORT void gs_copy_texture(texture_t dst, texture_t src);
|
|
|
|
|
|
+EXPORT void gs_copy_texture(gs_texture_t dst, gs_texture_t src);
|
|
EXPORT void gs_copy_texture_region(
|
|
EXPORT void gs_copy_texture_region(
|
|
- texture_t dst, uint32_t dst_x, uint32_t dst_y,
|
|
|
|
- texture_t src, uint32_t src_x, uint32_t src_y,
|
|
|
|
|
|
+ gs_texture_t dst, uint32_t dst_x, uint32_t dst_y,
|
|
|
|
+ gs_texture_t src, uint32_t src_x, uint32_t src_y,
|
|
uint32_t src_w, uint32_t src_h);
|
|
uint32_t src_w, uint32_t src_h);
|
|
-EXPORT void gs_stage_texture(stagesurf_t dst, texture_t src);
|
|
|
|
|
|
+EXPORT void gs_stage_texture(gs_stagesurf_t dst, gs_texture_t src);
|
|
|
|
|
|
-EXPORT void gs_beginscene(void);
|
|
|
|
|
|
+EXPORT void gs_begin_scene(void);
|
|
EXPORT void gs_draw(enum gs_draw_mode draw_mode, uint32_t start_vert,
|
|
EXPORT void gs_draw(enum gs_draw_mode draw_mode, uint32_t start_vert,
|
|
uint32_t num_verts);
|
|
uint32_t num_verts);
|
|
-EXPORT void gs_endscene(void);
|
|
|
|
|
|
+EXPORT void gs_end_scene(void);
|
|
|
|
|
|
#define GS_CLEAR_COLOR (1<<0)
|
|
#define GS_CLEAR_COLOR (1<<0)
|
|
#define GS_CLEAR_DEPTH (1<<1)
|
|
#define GS_CLEAR_DEPTH (1<<1)
|
|
#define GS_CLEAR_STENCIL (1<<2)
|
|
#define GS_CLEAR_STENCIL (1<<2)
|
|
|
|
|
|
-EXPORT void gs_load_swapchain(swapchain_t swapchain);
|
|
|
|
|
|
+EXPORT void gs_load_swapchain(gs_swapchain_t swapchain);
|
|
EXPORT void gs_clear(uint32_t clear_flags, struct vec4 *color,
|
|
EXPORT void gs_clear(uint32_t clear_flags, struct vec4 *color,
|
|
float depth, uint8_t stencil);
|
|
float depth, uint8_t stencil);
|
|
EXPORT void gs_present(void);
|
|
EXPORT void gs_present(void);
|
|
EXPORT void gs_flush(void);
|
|
EXPORT void gs_flush(void);
|
|
|
|
|
|
-EXPORT void gs_setcullmode(enum gs_cull_mode mode);
|
|
|
|
-EXPORT enum gs_cull_mode gs_getcullmode(void);
|
|
|
|
|
|
+EXPORT void gs_set_cull_mode(enum gs_cull_mode mode);
|
|
|
|
+EXPORT enum gs_cull_mode gs_get_cull_mode(void);
|
|
|
|
|
|
EXPORT void gs_enable_blending(bool enable);
|
|
EXPORT void gs_enable_blending(bool enable);
|
|
-EXPORT void gs_enable_depthtest(bool enable);
|
|
|
|
-EXPORT void gs_enable_stenciltest(bool enable);
|
|
|
|
-EXPORT void gs_enable_stencilwrite(bool enable);
|
|
|
|
|
|
+EXPORT void gs_enable_depth_test(bool enable);
|
|
|
|
+EXPORT void gs_enable_stencil_test(bool enable);
|
|
|
|
+EXPORT void gs_enable_stencil_write(bool enable);
|
|
EXPORT void gs_enable_color(bool red, bool green, bool blue, bool alpha);
|
|
EXPORT void gs_enable_color(bool red, bool green, bool blue, bool alpha);
|
|
|
|
|
|
-EXPORT void gs_blendfunction(enum gs_blend_type src, enum gs_blend_type dest);
|
|
|
|
-EXPORT void gs_depthfunction(enum gs_depth_test test);
|
|
|
|
|
|
+EXPORT void gs_blend_function(enum gs_blend_type src, enum gs_blend_type dest);
|
|
|
|
+EXPORT void gs_depth_function(enum gs_depth_test test);
|
|
|
|
|
|
-EXPORT void gs_stencilfunction(enum gs_stencil_side side,
|
|
|
|
|
|
+EXPORT void gs_stencil_function(enum gs_stencil_side side,
|
|
enum gs_depth_test test);
|
|
enum gs_depth_test test);
|
|
-EXPORT void gs_stencilop(enum gs_stencil_side side, enum gs_stencil_op fail,
|
|
|
|
- enum gs_stencil_op zfail, enum gs_stencil_op zpass);
|
|
|
|
|
|
+EXPORT void gs_stencil_op(enum gs_stencil_side side,
|
|
|
|
+ enum gs_stencil_op_type fail,
|
|
|
|
+ enum gs_stencil_op_type zfail,
|
|
|
|
+ enum gs_stencil_op_type zpass);
|
|
|
|
|
|
-EXPORT void gs_setviewport(int x, int y, int width, int height);
|
|
|
|
-EXPORT void gs_getviewport(struct gs_rect *rect);
|
|
|
|
-EXPORT void gs_setscissorrect(struct gs_rect *rect);
|
|
|
|
|
|
+EXPORT void gs_set_viewport(int x, int y, int width, int height);
|
|
|
|
+EXPORT void gs_get_viewport(struct gs_rect *rect);
|
|
|
|
+EXPORT void gs_set_scissor_rect(struct gs_rect *rect);
|
|
|
|
|
|
EXPORT void gs_ortho(float left, float right, float top, float bottom,
|
|
EXPORT void gs_ortho(float left, float right, float top, float bottom,
|
|
float znear, float zfar);
|
|
float znear, float zfar);
|
|
@@ -621,72 +630,75 @@ EXPORT void gs_frustum(float left, float right, float top, float bottom,
|
|
EXPORT void gs_projection_push(void);
|
|
EXPORT void gs_projection_push(void);
|
|
EXPORT void gs_projection_pop(void);
|
|
EXPORT void gs_projection_pop(void);
|
|
|
|
|
|
-EXPORT void swapchain_destroy(swapchain_t swapchain);
|
|
|
|
|
|
+EXPORT void gs_swapchain_destroy(gs_swapchain_t swapchain);
|
|
|
|
|
|
-EXPORT void texture_destroy(texture_t tex);
|
|
|
|
-EXPORT uint32_t texture_getwidth(texture_t tex);
|
|
|
|
-EXPORT uint32_t texture_getheight(texture_t tex);
|
|
|
|
-EXPORT enum gs_color_format texture_getcolorformat(texture_t tex);
|
|
|
|
-EXPORT bool texture_map(texture_t tex, uint8_t **ptr, uint32_t *linesize);
|
|
|
|
-EXPORT void texture_unmap(texture_t tex);
|
|
|
|
|
|
+EXPORT void gs_texture_destroy(gs_texture_t tex);
|
|
|
|
+EXPORT uint32_t gs_texture_get_width(gs_texture_t tex);
|
|
|
|
+EXPORT uint32_t gs_texture_get_height(gs_texture_t tex);
|
|
|
|
+EXPORT enum gs_color_format gs_texture_get_color_format(gs_texture_t tex);
|
|
|
|
+EXPORT bool gs_texture_map(gs_texture_t tex, uint8_t **ptr,
|
|
|
|
+ uint32_t *linesize);
|
|
|
|
+EXPORT void gs_texture_unmap(gs_texture_t tex);
|
|
/** special-case function (GL only) - specifies whether the texture is a
|
|
/** special-case function (GL only) - specifies whether the texture is a
|
|
* GL_TEXTURE_RECTANGLE type, which doesn't use normalized texture
|
|
* GL_TEXTURE_RECTANGLE type, which doesn't use normalized texture
|
|
* coordinates, doesn't support mipmapping, and requires address clamping */
|
|
* coordinates, doesn't support mipmapping, and requires address clamping */
|
|
-EXPORT bool texture_isrect(texture_t tex);
|
|
|
|
|
|
+EXPORT bool gs_texture_is_rect(gs_texture_t tex);
|
|
/**
|
|
/**
|
|
* Gets a pointer to the context-specific object associated with the texture.
|
|
* Gets a pointer to the context-specific object associated with the texture.
|
|
* For example, for GL, this is a GLuint*. For D3D11, ID3D11Texture2D*.
|
|
* For example, for GL, this is a GLuint*. For D3D11, ID3D11Texture2D*.
|
|
*/
|
|
*/
|
|
-EXPORT void *texture_getobj(texture_t tex);
|
|
|
|
-
|
|
|
|
-EXPORT void cubetexture_destroy(texture_t cubetex);
|
|
|
|
-EXPORT uint32_t cubetexture_getsize(texture_t cubetex);
|
|
|
|
-EXPORT enum gs_color_format cubetexture_getcolorformat(texture_t cubetex);
|
|
|
|
-
|
|
|
|
-EXPORT void volumetexture_destroy(texture_t voltex);
|
|
|
|
-EXPORT uint32_t volumetexture_getwidth(texture_t voltex);
|
|
|
|
-EXPORT uint32_t volumetexture_getheight(texture_t voltex);
|
|
|
|
-EXPORT uint32_t volumetexture_getdepth(texture_t voltex);
|
|
|
|
-EXPORT enum gs_color_format volumetexture_getcolorformat(texture_t voltex);
|
|
|
|
-
|
|
|
|
-EXPORT void stagesurface_destroy(stagesurf_t stagesurf);
|
|
|
|
-EXPORT uint32_t stagesurface_getwidth(stagesurf_t stagesurf);
|
|
|
|
-EXPORT uint32_t stagesurface_getheight(stagesurf_t stagesurf);
|
|
|
|
-EXPORT enum gs_color_format stagesurface_getcolorformat(stagesurf_t stagesurf);
|
|
|
|
-EXPORT bool stagesurface_map(stagesurf_t stagesurf, uint8_t **data,
|
|
|
|
|
|
+EXPORT void *gs_texture_get_obj(gs_texture_t tex);
|
|
|
|
+
|
|
|
|
+EXPORT void gs_cubetexture_destroy(gs_texture_t cubetex);
|
|
|
|
+EXPORT uint32_t gs_cubetexture_get_size(gs_texture_t cubetex);
|
|
|
|
+EXPORT enum gs_color_format gs_cubetexture_get_color_format(
|
|
|
|
+ gs_texture_t cubetex);
|
|
|
|
+
|
|
|
|
+EXPORT void gs_voltexture_destroy(gs_texture_t voltex);
|
|
|
|
+EXPORT uint32_t gs_voltexture_get_width(gs_texture_t voltex);
|
|
|
|
+EXPORT uint32_t gs_voltexture_get_height(gs_texture_t voltex);
|
|
|
|
+EXPORT uint32_t gs_voltexture_getdepth(gs_texture_t voltex);
|
|
|
|
+EXPORT enum gs_color_format gs_voltexture_get_color_format(gs_texture_t voltex);
|
|
|
|
+
|
|
|
|
+EXPORT void gs_stagesurface_destroy(gs_stagesurf_t stagesurf);
|
|
|
|
+EXPORT uint32_t gs_stagesurface_get_width(gs_stagesurf_t stagesurf);
|
|
|
|
+EXPORT uint32_t gs_stagesurface_get_height(gs_stagesurf_t stagesurf);
|
|
|
|
+EXPORT enum gs_color_format gs_stagesurface_get_color_format(
|
|
|
|
+ gs_stagesurf_t stagesurf);
|
|
|
|
+EXPORT bool gs_stagesurface_map(gs_stagesurf_t stagesurf, uint8_t **data,
|
|
uint32_t *linesize);
|
|
uint32_t *linesize);
|
|
-EXPORT void stagesurface_unmap(stagesurf_t stagesurf);
|
|
|
|
|
|
+EXPORT void gs_stagesurface_unmap(gs_stagesurf_t stagesurf);
|
|
|
|
|
|
-EXPORT void zstencil_destroy(zstencil_t zstencil);
|
|
|
|
|
|
+EXPORT void gs_zstencil_destroy(gs_zstencil_t zstencil);
|
|
|
|
|
|
-EXPORT void samplerstate_destroy(samplerstate_t samplerstate);
|
|
|
|
|
|
+EXPORT void gs_samplerstate_destroy(gs_samplerstate_t samplerstate);
|
|
|
|
|
|
-EXPORT void vertexbuffer_destroy(vertbuffer_t vertbuffer);
|
|
|
|
-EXPORT void vertexbuffer_flush(vertbuffer_t vertbuffer);
|
|
|
|
-EXPORT struct vb_data *vertexbuffer_getdata(vertbuffer_t vertbuffer);
|
|
|
|
|
|
+EXPORT void gs_vertexbuffer_destroy(gs_vertbuffer_t vertbuffer);
|
|
|
|
+EXPORT void gs_vertexbuffer_flush(gs_vertbuffer_t vertbuffer);
|
|
|
|
+EXPORT struct gs_vb_data *gs_vertexbuffer_get_data(gs_vertbuffer_t vertbuffer);
|
|
|
|
|
|
-EXPORT void indexbuffer_destroy(indexbuffer_t indexbuffer);
|
|
|
|
-EXPORT void indexbuffer_flush(indexbuffer_t indexbuffer);
|
|
|
|
-EXPORT void *indexbuffer_getdata(indexbuffer_t indexbuffer);
|
|
|
|
-EXPORT size_t indexbuffer_numindices(indexbuffer_t indexbuffer);
|
|
|
|
-EXPORT enum gs_index_type indexbuffer_gettype(indexbuffer_t indexbuffer);
|
|
|
|
|
|
+EXPORT void gs_indexbuffer_destroy(gs_indexbuffer_t indexbuffer);
|
|
|
|
+EXPORT void gs_indexbuffer_flush(gs_indexbuffer_t indexbuffer);
|
|
|
|
+EXPORT void *gs_indexbuffer_get_data(gs_indexbuffer_t indexbuffer);
|
|
|
|
+EXPORT size_t gs_indexbuffer_get_num_indices(gs_indexbuffer_t indexbuffer);
|
|
|
|
+EXPORT enum gs_index_type gs_indexbuffer_get_type(gs_indexbuffer_t indexbuffer);
|
|
|
|
|
|
#ifdef __APPLE__
|
|
#ifdef __APPLE__
|
|
|
|
|
|
/** platform specific function for creating (GL_TEXTURE_RECTANGLE) textures
|
|
/** platform specific function for creating (GL_TEXTURE_RECTANGLE) textures
|
|
* from shared surface resources */
|
|
* from shared surface resources */
|
|
-EXPORT texture_t gs_create_texture_from_iosurface(void *iosurf);
|
|
|
|
-EXPORT bool texture_rebind_iosurface(texture_t texture, void *iosurf);
|
|
|
|
|
|
+EXPORT gs_texture_t gs_texture_create_from_iosurface(void *iosurf);
|
|
|
|
+EXPORT bool gs_texture_rebind_iosurface(gs_texture_t texture, void *iosurf);
|
|
|
|
|
|
#elif _WIN32
|
|
#elif _WIN32
|
|
|
|
|
|
EXPORT bool gs_gdi_texture_available(void);
|
|
EXPORT bool gs_gdi_texture_available(void);
|
|
|
|
|
|
/** creates a windows GDI-lockable texture */
|
|
/** creates a windows GDI-lockable texture */
|
|
-EXPORT texture_t gs_create_gdi_texture(uint32_t width, uint32_t height);
|
|
|
|
|
|
+EXPORT gs_texture_t gs_texture_create_gdi(uint32_t width, uint32_t height);
|
|
|
|
|
|
-EXPORT void *texture_get_dc(texture_t gdi_tex);
|
|
|
|
-EXPORT void texture_release_dc(texture_t gdi_tex);
|
|
|
|
|
|
+EXPORT void *gs_texture_get_dc(gs_texture_t gdi_tex);
|
|
|
|
+EXPORT void gs_texture_release_dc(gs_texture_t gdi_tex);
|
|
|
|
|
|
#endif
|
|
#endif
|
|
|
|
|
|
@@ -723,7 +735,7 @@ static inline bool gs_is_compressed_format(enum gs_color_format format)
|
|
return (format == GS_DXT1 || format == GS_DXT3 || format == GS_DXT5);
|
|
return (format == GS_DXT1 || format == GS_DXT3 || format == GS_DXT5);
|
|
}
|
|
}
|
|
|
|
|
|
-static inline uint32_t gs_num_total_levels(uint32_t width, uint32_t height)
|
|
|
|
|
|
+static inline uint32_t gs_get_total_levels(uint32_t width, uint32_t height)
|
|
{
|
|
{
|
|
uint32_t size = width > height ? width : height;
|
|
uint32_t size = width > height ? width : height;
|
|
uint32_t num_levels = 0;
|
|
uint32_t num_levels = 0;
|