mirror of
https://github.com/panda3d/panda3d.git
synced 2025-10-03 10:22:45 -04:00
Fix build errors for mainstream OpenGL
This commit is contained in:
parent
dc6ccc27a1
commit
ebf6291663
@ -897,7 +897,7 @@ reset() {
|
||||
get_extension_func(GLPREFIX_QUOTED, "DeleteShader");
|
||||
_glDetachShader = (PFNGLDETACHSHADERPROC)
|
||||
get_extension_func(GLPREFIX_QUOTED, "DetachShader");
|
||||
_glDisableVertexAttribArray (PFNGLDISABLEVERTEXATTRIBARRAYPROC)
|
||||
_glDisableVertexAttribArray = (PFNGLDISABLEVERTEXATTRIBARRAYPROC)
|
||||
get_extension_func(GLPREFIX_QUOTED, "DisableVertexAttribArray");
|
||||
_glEnableVertexAttribArray = (PFNGLENABLEVERTEXATTRIBARRAYPROC)
|
||||
get_extension_func(GLPREFIX_QUOTED, "EnableVertexAttribArray");
|
||||
|
@ -308,7 +308,7 @@ CLP(ShaderContext)::
|
||||
// vertex program handles or Cg contexts).
|
||||
////////////////////////////////////////////////////////////////////
|
||||
void CLP(ShaderContext)::
|
||||
release_resources(const GSG *gsg) {
|
||||
release_resources(GSG *gsg) {
|
||||
#ifdef HAVE_CG
|
||||
if (_cg_context) {
|
||||
cgDestroyContext(_cg_context);
|
||||
@ -320,7 +320,7 @@ release_resources(const GSG *gsg) {
|
||||
}
|
||||
if (gsg) {
|
||||
gsg->report_my_gl_errors();
|
||||
} if (glGetError() != GL_NO_ERROR) {
|
||||
} else if (glGetError() != GL_NO_ERROR) {
|
||||
GLCAT.error() << "GL error in ShaderContext destructor\n";
|
||||
}
|
||||
#endif
|
||||
@ -347,6 +347,8 @@ release_resources(const GSG *gsg) {
|
||||
gsg->_glDeleteProgram(_glsl_program);
|
||||
_glsl_program = 0;
|
||||
}
|
||||
|
||||
gsg->report_my_gl_errors();
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////
|
||||
@ -507,7 +509,7 @@ disable_shader_vertex_arrays(GSG *gsg) {
|
||||
|
||||
if (_shader->get_language() == Shader::SL_GLSL) {
|
||||
for (int i=0; i<(int)_shader->_var_spec.size(); i++) {
|
||||
glDisableVertexAttribArray(i);
|
||||
gsg->_glDisableVertexAttribArray(i);
|
||||
}
|
||||
}
|
||||
#ifdef HAVE_CG
|
||||
@ -588,8 +590,8 @@ update_shader_vertex_arrays(CLP(ShaderContext) *prev, GSG *gsg,
|
||||
#ifndef OPENGLES_2
|
||||
glEnableClientState(GL_VERTEX_ARRAY);
|
||||
#endif
|
||||
glEnableVertexAttribArray(i);
|
||||
glVertexAttribPointer(i, num_values, gsg->get_numeric_type(numeric_type),
|
||||
gsg->_glEnableVertexAttribArray(i);
|
||||
gsg->_glVertexAttribPointer(i, num_values, gsg->get_numeric_type(numeric_type),
|
||||
GL_FALSE, stride, client_pointer + start);
|
||||
#ifndef OPENGLES_2
|
||||
glDisableClientState(GL_VERTEX_ARRAY);
|
||||
@ -606,6 +608,7 @@ update_shader_vertex_arrays(CLP(ShaderContext) *prev, GSG *gsg,
|
||||
}
|
||||
#ifdef HAVE_CG
|
||||
else if (_shader->get_language() == Shader::SL_Cg) {
|
||||
CGparameter p = _cg_parameter_map[_shader->_var_spec[i]._id._seqno];
|
||||
cgGLDisableClientState(p);
|
||||
}
|
||||
#endif
|
||||
|
@ -72,14 +72,14 @@ private:
|
||||
int _stage_offset;
|
||||
// Avoid using this! It merely exists so the
|
||||
// destructor has access to the extension functions.
|
||||
WCPT(GSG) _last_gsg;
|
||||
WPT(GSG) _last_gsg;
|
||||
|
||||
void glsl_report_shader_errors(GSG *gsg, unsigned int shader);
|
||||
void glsl_report_program_errors(GSG *gsg, unsigned int program);
|
||||
unsigned int glsl_compile_entry_point(GSG *gsg, Shader::ShaderType type);
|
||||
bool glsl_compile_shader(GSG *gsg);
|
||||
|
||||
void release_resources(const GSG *gsg);
|
||||
void release_resources(GSG *gsg);
|
||||
|
||||
public:
|
||||
static TypeHandle get_class_type() {
|
||||
|
Loading…
x
Reference in New Issue
Block a user