Fix problems with vertex shaders and the private draw module.
The CSO returned by pipe->create_vs_state() can't be passed to the private draw module. That was causing glRasterPos to blow up. Add a 'draw_shader' field to st_vertex_program for use with the private draw module. Change st_context->state.vs type from cso_vertex_shader to st_vertex_program.
This commit is contained in:
@@ -57,7 +57,7 @@
|
||||
* \param tokensOut destination for TGSI tokens
|
||||
* \return pointer to cached pipe_shader object.
|
||||
*/
|
||||
const struct cso_vertex_shader *
|
||||
void
|
||||
st_translate_vertex_program(struct st_context *st,
|
||||
struct st_vertex_program *stvp,
|
||||
const GLuint outputMapping[],
|
||||
@@ -256,12 +256,10 @@ st_translate_vertex_program(struct st_context *st,
|
||||
vs.tokens = tokensOut;
|
||||
|
||||
cso = st_cached_vs_state(st, &vs);
|
||||
stvp->vs = cso;
|
||||
stvp->cso = cso;
|
||||
|
||||
if (TGSI_DEBUG)
|
||||
tgsi_dump( tokensOut, 0 );
|
||||
|
||||
return cso;
|
||||
}
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user