Пример #1
0
        public KCLRendering2D(KCL kcl)
        {
            string vertPath = System.IO.Path.Combine(Runtime.ExecutableDir, "Shader", "Drawing2D", "KCL.vert");
            string fragPath = System.IO.Path.Combine(Runtime.ExecutableDir, "Shader", "Drawing2D", "KCL.frag");

            Shader = new GLShaderGeneric();
            Shader.VertexShader   = System.IO.File.ReadAllText(vertPath);
            Shader.FragmentShader = System.IO.File.ReadAllText(fragPath);
            Shader.Compile();

            models = kcl.GetKclModels();
        }
Пример #2
0
        public override void Prepare(GL_ControlModern control)
        {
            string pathFrag = System.IO.Path.Combine(Runtime.ExecutableDir, "Shader") + "\\KCL.frag";
            string pathVert = System.IO.Path.Combine(Runtime.ExecutableDir, "Shader") + "\\KCL.vert";

            var defaultFrag = new FragmentShader(File.ReadAllText(pathFrag));
            var defaultVert = new VertexShader(File.ReadAllText(pathVert));

            var solidColorFrag = new FragmentShader(
                @"#version 330
				uniform vec4 color;
				out vec4 FragColor;

				void main(){
					FragColor = color;
				}"                );

            var solidColorVert = new VertexShader(
                @"#version 330
                in vec3 vPosition;
                in vec3 vNormal;
                in vec3 vColor;

                out vec3 normal;
                out vec3 color;
                out vec3 position;

	            uniform mat4 mtxMdl;
				uniform mat4 mtxCam;

				void main(){
                    normal = vNormal;
                    color = vColor;
	                position = vPosition;

                    gl_Position = mtxMdl * mtxCam  * vec4(vPosition.xyz, 1.0);
				}"                );

            Shader = new GLShaderGeneric()
            {
                FragmentShader = File.ReadAllText(pathFrag),
                VertexShader   = File.ReadAllText(pathVert),
            };

            defaultShaderProgram    = new ShaderProgram(defaultFrag, defaultVert, control);
            solidColorShaderProgram = new ShaderProgram(solidColorFrag, solidColorVert, control);
        }