Esempio n. 1
0
        void IMVP.SetShaderProgram(mat4 mvp)
        {
            //this.tex.Bind();
            GL.CullFace(GL.GL_FRONT_AND_BACK);
            GL.PolygonMode(PolygonModeFaces.FrontAndBack, PolygonModes.Filled);

            GL.Enable(GL.GL_ALPHA_TEST);
            GL.AlphaFunc(GL.GL_GREATER, alphaThreshold);

            bool blend = this.blend;

            if (blend)
            {
                GL.Enable(GL.GL_BLEND);
                GL.BlendFunc(sFactor, dFactor);
            }

            uint textureID = this.textureProcessor.GetTexture3D();

            GL.BindTexture(GL.GL_TEXTURE_3D, textureID);

            this.shaderProgram.Bind();
            this.shaderProgram.SetUniform("tex", textureID);

            IMVPHelper.SetMVP(this, mvp);
        }
Esempio n. 2
0
        void IMVP.SetShaderProgram(mat4 mvp)
        {
            GL.Enable(GL.GL_VERTEX_PROGRAM_POINT_SIZE);
            GL.Enable(GL.GL_POINT_SPRITE_ARB);
            //GL.TexEnv(GL.GL_POINT_SPRITE_ARB, GL.GL_COORD_REPLACE_ARB, GL.GL_TRUE);//TODO: test TexEnvi()
            GL.TexEnvf(GL.GL_POINT_SPRITE_ARB, GL.GL_COORD_REPLACE_ARB, GL.GL_TRUE);
            GL.Enable(GL.GL_POINT_SMOOTH);
            GL.Hint(GL.GL_POINT_SMOOTH_HINT, GL.GL_NICEST);
            GL.Enable(GL.GL_BLEND);
            GL.BlendEquation(GL.GL_FUNC_ADD_EXT);
            GL.BlendFuncSeparate(GL.GL_SRC_ALPHA, GL.GL_ONE_MINUS_SRC_ALPHA, GL.GL_ONE, GL.GL_ONE);

            GL.BindTexture(GL.GL_TEXTURE_2D, this.texture[0]);

            IMVPHelper.SetMVP(this, mvp);

            //int[] poinSizes = new int[2];
            //GL.GetInteger(GetTarget.PointSizeRange, poinSizes);
            //if (this.textureWidth > poinSizes[1])
            //{
            //    GL.PointParameter(GL.GL_POINT_SIZE_MAX_ARB, this.textureWidth);
            //    GL.GetInteger(GetTarget.PointSizeRange, poinSizes);
            //    Console.WriteLine("asf");
            //}
            shaderProgram.SetUniform(PointSpriteStringElement.strpointSize, this.textureWidth + 0.0f);
            shaderProgram.SetUniform(PointSpriteStringElement.strtex, this.texture[0]);
            shaderProgram.SetUniform(PointSpriteStringElement.strtextColor, this.textColor.x, this.textColor.y, this.textColor.z);
        }
Esempio n. 3
0
        void IMVP.ResetShaderProgram()
        {
            IMVPHelper.ResetMVP(this);

            //this.tex.Unbind();
            this.shaderProgram.Unbind();
            GL.BindTexture(GL.GL_TEXTURE_3D, 0);

            GL.Disable(GL.GL_BLEND);
            GL.Disable(GL.GL_ALPHA_TEST);
        }
Esempio n. 4
0
        void IMVP.ResetShaderProgram()
        {
            IMVPHelper.ResetMVP(this);

            GL.BindTexture(GL.GL_TEXTURE_2D, 0);

            GL.Disable(GL.GL_BLEND);
            GL.Disable(GL.GL_VERTEX_PROGRAM_POINT_SIZE);
            GL.Disable(GL.GL_POINT_SPRITE_ARB);
            GL.Disable(GL.GL_POINT_SMOOTH);
        }
Esempio n. 5
0
        void IMVP.ResetShaderProgram()
        {
            IMVPHelper.ResetMVP(this);

            //this.tex.Unbind();
            this.shaderProgram.Unbind();
            GL.BindTexture(GL.GL_TEXTURE_3D, 0);

            GL.Disable(GL.GL_BLEND);
            GL.Disable(GL.GL_ALPHA_TEST);
            if (blend)
            {
                GL.DepthMask((byte)GL.GL_TRUE);
            }
        }
Esempio n. 6
0
 void IMVP.ResetShaderProgram()
 {
     IMVPHelper.ResetMVP(this);
 }
Esempio n. 7
0
 void IMVP.SetShaderProgram(mat4 mvp)
 {
     IMVPHelper.SetMVP(this, mvp);
 }
Esempio n. 8
0
 void IMVP.ResetShaderProgram()
 {
     IMVPHelper.DoUnbindShaderProgram(this);
 }
Esempio n. 9
0
        void IMVP.ResetShaderProgram()
        {
            IMVPHelper.ResetMVP(this);

            this.tex.Unbind();
        }
Esempio n. 10
0
        void IMVP.SetShaderProgram(mat4 mvp)
        {
            this.tex.Bind();

            IMVPHelper.SetMVP(this, mvp);
        }