Explorar o código

REVIEWED: UnloadShader() issue

Avoid unloading default shader, raylib will take care of it
raysan5 %!s(int64=5) %!d(string=hai) anos
pai
achega
cbdb9bfe42
Modificáronse 1 ficheiros con 3 adicións e 3 borrados
  1. 3 3
      src/rlgl.h

+ 3 - 3
src/rlgl.h

@@ -3161,13 +3161,13 @@ Shader LoadShaderCode(const char *vsCode, const char *fsCode)
 // Unload shader from GPU memory (VRAM)
 void UnloadShader(Shader shader)
 {
-    if (shader.id > 0)
+    if ((shader.id != RLGL.State.defaultShader.id) && (shader.id > 0))
     {
         rlDeleteShader(shader.id);
+        RL_FREE(shader.locs);
+        
         TRACELOG(LOG_INFO, "SHADER: [ID %i] Unloaded shader program data from VRAM (GPU)", shader.id);
     }
-
-    RL_FREE(shader.locs);
 }
 
 // Begin custom shader mode