Abstract base class for all textures.
Наследование: IResource
Пример #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;
                }
            }
        }
Пример #3
0
 public void          Parameter                     (string name, TextureBase[]  textures)
 {
     List<int> v = new List<int>();
     for (int i = 0; i < textures.Length; i++)
     {
         v.Add(this.texturecount);
         this.device.Texture[this.texturecount] = textures[i];
         this.texturecount += 1;
     }
     this.Parameter(name, v.ToArray());
 }
Пример #4
0
 public void          Parameter(string name, TextureBase texture)
 {
     this.device.Texture[this.texturecount] = texture;
     this.Parameter(name, this.texturecount);
     this.texturecount += 1;
 }
Пример #5
0
 public void          Parameter                     (string name, TextureBase    texture)
 {
     
     this.device.Texture[this.texturecount] = texture;
     this.Parameter(name, this.texturecount);
     this.texturecount += 1;
 }