Wenn ich ein verknüpftes Programm habe und über defensive Programmierung nachdenke, sollte ich die Shader löschen und entfernen, die zum Verknüpfen dieses Programms verwendet wurden?
Wenn ja, werden dadurch Ressourcen freigesetzt? Oder werden diese Shader-Objekte erst nach einem glDeleteProgram-Aufruf freigegeben?
edit: Nur zur Verdeutlichung was ich tue ist (was mit der Antwort übereinstimmt):
glCreateShader -> glShaderSource -> glCompileShader -> glCreateProgram -> glAttachShader -> glLinkProgram -> glDetachShader -> glDeleteShader -> mit diesem Shaderprogramm zeichnen -> und wenn ich diesen Shader nicht mehr benötige glDeleteProgram