mirror of
https://github.com/ultimatepp/ultimatepp.git
synced 2026-07-11 22:03:01 -06:00
GLDraw: Fixed binding issue with RX580
git-svn-id: svn://ultimatepp.org/upp/trunk@12650 f0d560ea-af0d-0410-9eb7-867de7ffcac7
This commit is contained in:
parent
44eddeca8c
commit
a6105210b4
5 changed files with 22 additions and 17 deletions
|
|
@ -33,8 +33,7 @@ static GLuint LoadShader(const char *src, GLenum type) {
|
|||
return shader;
|
||||
}
|
||||
|
||||
void GLProgram::Create(const char *vertex_shader_, const char *fragment_shader_,
|
||||
Tuple2<int, const char *> *bind_attr, int bind_count)
|
||||
void GLProgram::Compile(const char *vertex_shader_, const char *fragment_shader_)
|
||||
{
|
||||
Clear();
|
||||
|
||||
|
|
@ -45,10 +44,10 @@ void GLProgram::Create(const char *vertex_shader_, const char *fragment_shader_,
|
|||
|
||||
glAttachShader(program, vertex_shader);
|
||||
glAttachShader(program, fragment_shader);
|
||||
|
||||
for(int i = 0; i < bind_count; i++)
|
||||
glBindAttribLocation(program, bind_attr[i].a, bind_attr[i].b);
|
||||
}
|
||||
|
||||
void GLProgram::Link()
|
||||
{
|
||||
glLinkProgram(program);
|
||||
|
||||
GLint linked;
|
||||
|
|
@ -65,6 +64,17 @@ void GLProgram::Create(const char *vertex_shader_, const char *fragment_shader_,
|
|||
Panic("Failed to link");
|
||||
Clear();
|
||||
}
|
||||
}
|
||||
|
||||
void GLProgram::Create(const char *vertex_shader_, const char *fragment_shader_,
|
||||
Tuple2<int, const char *> *bind_attr, int bind_count)
|
||||
{
|
||||
Compile(vertex_shader_, fragment_shader_);
|
||||
|
||||
for(int i = 0; i < bind_count; i++)
|
||||
glBindAttribLocation(program, bind_attr[i].a, bind_attr[i].b);
|
||||
|
||||
Link();
|
||||
|
||||
Use();
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue