Exemplo n.º 1
0
        public void LoadShaderFromString(string code, string shaderName, IeCoreEntites.Shaders.ShaderType type)
        {
            Shader shader = new Shader(shaderName, string.Concat("InMemmory shader ", Guid.NewGuid()), code, type);

            _assetmanager.Register(shader);
            _storedShaders.Add(shader);

            OpenTK.Graphics.OpenGL.ShaderType OGLEnum = Enum.Parse <OpenTK.Graphics.OpenGL.ShaderType>(shader.ShaderType.ToString());

            shader.Id = GL.CreateShader(OGLEnum);
            GL.ShaderSource(shader.Id, shader.ShaderCode);
            GL.CompileShader(shader.Id);

            string shaderInfo = GL.GetShaderInfoLog(shader.Id);

            if (!string.IsNullOrEmpty(shaderInfo))
            {
                Console.WriteLine(shaderInfo); //Log errors.
            }
            else
            {
                Console.WriteLine($"{shaderName} compiled correctly");
            }
        }
Exemplo n.º 2
0
 public void LoadShaderFromFile(string filename, string shaderName, IeCoreEntites.Shaders.ShaderType type)
 {
     throw new NotImplementedException();
 }