Пример #1
0
        private void EnableTextures()
        {
            for (int i = 0; i < this.textures.Length; i++)
            {
                TextureBase itexture = this.textures[i];

                if (itexture != null)
                {
                    if (itexture.GetType() == typeof(Texture2D))
                    {
                        Texture2D texture = (Texture2D)itexture;
                        Gl.glActiveTexture(Gl.GL_TEXTURE0 + i);
                        Gl.glBindTexture(Gl.GL_TEXTURE_2D, texture.Handle);
                        Gl.glEnable(Gl.GL_TEXTURE_2D);
                    }
                    if (itexture.GetType() == typeof(TextureCube))
                    {
                        TextureCube cubetexture = (TextureCube)itexture;
                        Gl.glActiveTexture(Gl.GL_TEXTURE0 + i);
                        Gl.glBindTexture(Gl.GL_TEXTURE_CUBE_MAP, cubetexture.Handle);
                        Gl.glEnable(Gl.GL_TEXTURE_CUBE_MAP);
                    }
                }
            }
        }
Пример #2
0
        private void DisableTextures()
        {
            for (int i = 0; i < this.textures.Length; i++)
            {
                TextureBase itexture = this.textures[i];

                if (itexture != null)
                {
                    if (itexture.GetType() == typeof(Texture2D))
                    {
                        Gl.glActiveTexture(Gl.GL_TEXTURE0 + i);
                        Gl.glBindTexture(Gl.GL_TEXTURE_2D, 0);
                        Gl.glDisable(Gl.GL_TEXTURE_2D);
                    }
                    if (itexture.GetType() == typeof(TextureCube))
                    {
                        Gl.glActiveTexture(Gl.GL_TEXTURE0 + i);
                        Gl.glBindTexture(Gl.GL_TEXTURE_CUBE_MAP, 0);
                        Gl.glDisable(Gl.GL_TEXTURE_CUBE_MAP);
                    }
                    itexture = null;
                }
            }
        }