Mercurial > hg > forks > gldragon
changeset 68:701bef61dcf1
Remove OpenGL fs/vs shader ids from DMModel, as they are not needed.
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Mon, 16 Dec 2019 06:46:46 +0200 |
parents | 1327ef5dc9fb |
children | 267b3fd2c98c |
files | dmglexts.h dmglrender.cpp dmscene.h |
diffstat | 3 files changed, 10 insertions(+), 5 deletions(-) [+] |
line wrap: on
line diff
--- a/dmglexts.h Sun Dec 15 23:16:29 2019 +0200 +++ b/dmglexts.h Mon Dec 16 06:46:46 2019 +0200 @@ -14,6 +14,7 @@ DM_GLEXT_INIT(PFNGLCREATESHADERPROC, glCreateShader) DM_GLEXT_INIT(PFNGLATTACHSHADERPROC, glAttachShader) DM_GLEXT_INIT(PFNGLSHADERSOURCEPROC, glShaderSource) +DM_GLEXT_INIT(PFNGLDELETESHADERPROC, glDeleteShader) DM_GLEXT_INIT(PFNGLUNIFORM1IPROC, glUniform1i) DM_GLEXT_INIT(PFNGLUNIFORM1FPROC, glUniform1f)
--- a/dmglrender.cpp Sun Dec 15 23:16:29 2019 +0200 +++ b/dmglrender.cpp Mon Dec 16 06:46:46 2019 +0200 @@ -221,14 +221,18 @@ { if (useShaders) { - if (!dmCompileShader(GL_FRAGMENT_SHADER, model.fragShaderStr, model.id_fs) || - !dmCompileShader(GL_VERTEX_SHADER, model.vertShaderStr, model.id_vs)) + GLuint id_fs, id_vs; + + if (!dmCompileShader(GL_FRAGMENT_SHADER, model.fragShaderStr, id_fs) || + !dmCompileShader(GL_VERTEX_SHADER, model.vertShaderStr, id_vs)) return false; model.id_prog = glCreateProgram(); - glAttachShader(model.id_prog, model.id_fs); - glAttachShader(model.id_prog, model.id_vs); + glAttachShader(model.id_prog, id_fs); + glAttachShader(model.id_prog, id_vs); glLinkProgram(model.id_prog); + glDeleteShader(id_fs); + glDeleteShader(id_vs); } return true; }