private void PrepareTexturedModel(TexturedModel texturedModel) { RawModel model = texturedModel.model; //rendo il vao attivo GL.BindVertexArray(model.VaoHandle); //Indico che voglio usare le informazioni nella riga 0 GL.EnableVertexAttribArray(0); GL.EnableVertexAttribArray(1); GL.EnableVertexAttribArray(2); ModelTexture texture = texturedModel.Texture; shader.LoadNumberOfRows(texture.NumberOfRows); if (texture.hasTransparency) { MasterRenderer.DisableCulling(); } shader.LoadFakeLighting(texture.useFakeLighting); shader.LoadShineVariables(texture.shineDamper, texture.reflectivity); //Rendo attiva l`area della texture 0 GL.ActiveTexture(TextureUnit.Texture0); //Riempio l`area texture 0 GL.BindTexture(TextureTarget.Texture2D, texturedModel.Texture.handle); }
private void PrepareTexturedModel(TexturedModel model) { RawModel rawModel = model.model; GL.BindVertexArray(rawModel.VaoHandle); GL.EnableVertexAttribArray(0); GL.EnableVertexAttribArray(1); GL.EnableVertexAttribArray(2); GL.EnableVertexAttribArray(3); ModelTexture texture = model.Texture; shader.LoadNumberOfRows(texture.NumberOfRows); if (texture.hasTransparency) { MasterRenderer.DisableCulling(); } shader.LoadShineVariables(texture.shineDamper, texture.reflectivity); GL.ActiveTexture(TextureUnit.Texture0); GL.BindTexture(TextureTarget.Texture2D, model.Texture.handle); GL.ActiveTexture(TextureUnit.Texture1); GL.BindTexture(TextureTarget.Texture2D, model.Texture.NormalMap); }