public TestSpriteClassState(TextureManager textureManager)
        {
            m_TextureManager     = textureManager;
            m_TestSprite.Texture = m_TextureManager.GetTexture("face_alpha");
            m_TestSprite.SetHeight(256 * 0.5f);
            m_TestSprite.SetPosition(360.0f, -360.0f);

            m_TestSprite2.Texture = m_TextureManager.GetTexture("face_alpha");
            m_TestSprite2.SetPosition(210.0f, -210.0f);
            m_TestSprite2.SetColor(new Color(1.0f, 0.0f, 0.0f, 1.0f));
        }
        public void Draw()
        {
            Texture texture = m_TextureManager.GetTexture("face_alpha");

            Gl.glEnable(Gl.GL_TEXTURE_2D);
            Gl.glBindTexture(Gl.GL_TEXTURE_2D, texture.Id);
            Gl.glEnable(Gl.GL_BLEND);
            Gl.glBlendFunc(Gl.GL_SRC_ALPHA, Gl.GL_ONE_MINUS_SRC_ALPHA);

            //Gl.glClearColor(0.0f, 0.0f, 0.0f, 1.0f);
            //Gl.glClear(Gl.GL_COLOR_BUFFER_BIT);

            float topUV    = 0,
                  bottomUV = 1,
                  leftUV   = 0,
                  rightUV  = 1,
                  red      = 1,
                  green    = 0,
                  blue     = 0,
                  alpha    = 1;

            Gl.glBegin(Gl.GL_TRIANGLES);

            Gl.glColor4f(red, green, blue, alpha);
            Gl.glTexCoord2f(leftUV, topUV);
            Gl.glVertex3f(m_X - m_HalfWidth, m_Y + m_HalfHeight, m_Z);
            Gl.glTexCoord2f(rightUV, topUV);
            Gl.glVertex3f(m_X + m_HalfWidth, m_Y + m_HalfHeight, m_Z);
            Gl.glTexCoord2f(leftUV, bottomUV);
            Gl.glVertex3f(m_X - m_HalfWidth, m_Y - m_HalfHeight, m_Z);

            Gl.glTexCoord2f(rightUV, topUV);
            Gl.glVertex3f(m_X + m_HalfWidth, m_Y + m_HalfHeight, m_Z);
            Gl.glTexCoord2f(rightUV, bottomUV);
            Gl.glVertex3f(m_X + m_HalfWidth, m_Y - m_HalfHeight, m_Z);
            Gl.glTexCoord2f(leftUV, bottomUV);
            Gl.glVertex3f(m_X - m_HalfWidth, m_Y - m_HalfHeight, m_Z);

            Gl.glEnd();
        }