diff options
| author | Ray <raysan5@gmail.com> | 2016-05-02 00:16:32 +0200 |
|---|---|---|
| committer | Ray <raysan5@gmail.com> | 2016-05-02 00:16:32 +0200 |
| commit | 0e6d1cb272435c670a991169f413c98516dce15d (patch) | |
| tree | 554763c047ed63cf3b20ce8e4096816c96413639 /src/rlgl.c | |
| parent | cc39b4660a6a4e0c9a9939c2d9a445bcf102fe66 (diff) | |
| download | raylib-0e6d1cb272435c670a991169f413c98516dce15d.tar.gz raylib-0e6d1cb272435c670a991169f413c98516dce15d.zip | |
Working on materials system...
Diffstat (limited to 'src/rlgl.c')
| -rw-r--r-- | src/rlgl.c | 14 |
1 files changed, 5 insertions, 9 deletions
@@ -1350,14 +1350,14 @@ void rlglDrawModel(Model model, Vector3 position, Vector3 rotationAxis, float ro glBindTexture(GL_TEXTURE_2D, model.material.texDiffuse.id); glUniform1i(model.material.shader.mapDiffuseLoc, 0); // Texture fits in active texture unit 0 - if (model.material.texNormal.id != 0) + if ((model.material.texNormal.id != 0) && (model.material.shader.mapNormalLoc != -1)) { glActiveTexture(GL_TEXTURE1); glBindTexture(GL_TEXTURE_2D, model.material.texNormal.id); glUniform1i(model.material.shader.mapNormalLoc, 1); // Texture fits in active texture unit 1 } - if (model.material.texSpecular.id != 0) + if ((model.material.texSpecular.id != 0) && (model.material.shader.mapSpecularLoc != -1)) { glActiveTexture(GL_TEXTURE2); glBindTexture(GL_TEXTURE_2D, model.material.texSpecular.id); @@ -2125,17 +2125,13 @@ Shader LoadShader(char *vsFileName, char *fsFileName) // After shader loading, we try to load default location names if (shader.id != 0) LoadDefaultShaderLocations(&shader); - else - { - TraceLog(WARNING, "Custom shader could not be loaded"); - shader = defaultShader; - } // Shader strings must be freed free(vShaderStr); free(fShaderStr); } - else + + if (shader.id == 0) { TraceLog(WARNING, "Custom shader could not be loaded"); shader = defaultShader; @@ -2494,7 +2490,7 @@ static Shader LoadDefaultShader(void) if (shader.id != 0) TraceLog(INFO, "[SHDR ID %i] Default shader loaded successfully", shader.id); else TraceLog(WARNING, "[SHDR ID %i] Default shader could not be loaded", shader.id); - LoadDefaultShaderLocations(&shader); + if (shader.id != 0) LoadDefaultShaderLocations(&shader); return shader; } |
