started rework
This commit is contained in:
parent
8d78eb0417
commit
cdc6ebeb5a
@ -119,11 +119,11 @@ struct draw_state
|
||||
int program;
|
||||
int dirty;
|
||||
|
||||
GLuint texture;
|
||||
xoverlay_font_handle_t font;
|
||||
xoverlay_texture_handle_t thandle;
|
||||
|
||||
GLuint shader;
|
||||
GLuint texture;
|
||||
};
|
||||
|
||||
struct draw_state ds;
|
||||
@ -149,6 +149,9 @@ ds_pre_render();
|
||||
void
|
||||
ds_post_render();
|
||||
|
||||
void
|
||||
ds_start_next_frame();
|
||||
|
||||
void
|
||||
ds_render_next_frame();
|
||||
|
||||
|
@ -336,15 +336,25 @@ ds_post_render()
|
||||
}
|
||||
|
||||
void
|
||||
ds_render_next_frame()
|
||||
ds_start_next_frame()
|
||||
{
|
||||
ds_pre_render();
|
||||
dis_finish();
|
||||
ds.program = -1;
|
||||
ds.thandle = 0;
|
||||
ds.font = 0;
|
||||
ds.texture = 0;
|
||||
ds.shader = 0;
|
||||
|
||||
for (int i = 0; i < PROGRAM_COUNT; ++i)
|
||||
{
|
||||
vertex_buffer_clear(programs[i].vertex);
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
ds_render_next_frame()
|
||||
{
|
||||
ds_pre_render();
|
||||
dis_finish();
|
||||
struct draw_instruction_t *instr;
|
||||
|
||||
instr = dis_fetch_instruction();
|
||||
@ -369,6 +379,7 @@ ds_render_next_frame()
|
||||
ds_mark_dirty();
|
||||
float *vert = dis_read_data(instr->count * programs[ds.program].vertex_size);
|
||||
vertex_buffer_push_back_vertices(programs[ds.program].vertex, vert, instr->count);
|
||||
vertex_buffer_render()
|
||||
break;
|
||||
case DI_PUSH_INDICES:
|
||||
ds_mark_dirty();
|
||||
|
@ -19,7 +19,6 @@ DECL_PROGRAM_INIT(freetype)
|
||||
|
||||
DECL_PROGRAM_LOAD(freetype)
|
||||
{
|
||||
vertex_buffer_clear(programs[PROGRAM_FREETYPE].vertex);
|
||||
ds_use_shader(programs[PROGRAM_FREETYPE].shader);
|
||||
texture_font_t *fnt = fontapi_get(ds.font);
|
||||
if (fnt == NULL)
|
||||
|
@ -19,7 +19,6 @@ DECL_PROGRAM_INIT(triangles_plain)
|
||||
DECL_PROGRAM_LOAD(triangles_plain)
|
||||
{
|
||||
ds_use_shader(programs[PROGRAM_TRIANGLES_PLAIN].shader);
|
||||
vertex_buffer_clear(programs[PROGRAM_TRIANGLES_PLAIN].vertex);
|
||||
}
|
||||
|
||||
DECL_PROGRAM_RENDER(triangles_plain)
|
||||
|
@ -19,7 +19,6 @@ DECL_PROGRAM_INIT(triangles_textured)
|
||||
DECL_PROGRAM_LOAD(triangles_textured)
|
||||
{
|
||||
ds_use_shader(programs[PROGRAM_TRIANGLES_TEXTURED].shader);
|
||||
vertex_buffer_clear(programs[PROGRAM_TRIANGLES_TEXTURED].vertex);
|
||||
}
|
||||
|
||||
DECL_PROGRAM_RENDER(triangles_textured)
|
||||
|
Loading…
x
Reference in New Issue
Block a user