예제 #1
0
            public override void Draw(Action <TexturedVertex2D> vertexAction)
            {
                base.Draw(vertexAction);

                if (texture?.Available != true || segments.Count == 0)
                {
                    return;
                }

                GLWrapper.PushDepthInfo(DepthInfo.Default);

                // Blending is removed to allow for correct blending between the wedges of the path.
                GLWrapper.SetBlend(BlendingParameters.None);

                pathShader.Bind();

                texture.TextureGL.WrapMode = TextureWrapMode.ClampToEdge;
                texture.TextureGL.Bind();

                updateVertexBuffer();

                pathShader.Unbind();

                GLWrapper.PopDepthInfo();
            }
 protected override void PreDrawMesh()
 {
     profile.Save();
     GL.FrontFace(FrontFaceDirection.Ccw);
     GLWrapper.PushScissorState(false);
     GLWrapper.PushDepthInfo(new DepthInfo(false));
     GLWrapper.BindBuffer(BufferTarget.ElementArrayBuffer, 0);
     GLWrapper.BindBuffer(BufferTarget.ArrayBuffer, 0);
 }
예제 #3
0
            public override void Draw(Action <TexturedVertex2D> vertexAction)
            {
                base.Draw(vertexAction);

                if (texture?.Available != true || segments.Count == 0)
                {
                    return;
                }

                GLWrapper.PushDepthInfo(DepthInfo.Default);

                Shader.Bind();

                texture.TextureGL.WrapMode = TextureWrapMode.ClampToEdge;
                texture.TextureGL.Bind();

                updateVertexBuffer();

                Shader.Unbind();

                GLWrapper.PopDepthInfo();
            }