当前位置: 首页>>代码示例>>C#>>正文


C# OpenGL.AttachShader方法代码示例

本文整理汇总了C#中SharpGL.OpenGL.AttachShader方法的典型用法代码示例。如果您正苦于以下问题:C# OpenGL.AttachShader方法的具体用法?C# OpenGL.AttachShader怎么用?C# OpenGL.AttachShader使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在SharpGL.OpenGL的用法示例。


在下文中一共展示了OpenGL.AttachShader方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: linkProgram

        private void linkProgram(OpenGL gl, ActiveProgramValues programValues, uint glProgramHandle)
        {
            //TODO add debug assertions in case a shader fails to compile, or a program fails to link
            var glShaderHandles = new List<uint>(programValues.AttachedShaderValues.Count);
            foreach (var shaderValues in programValues.AttachedShaderValues)
            {
            var glShaderHandle = gl.CreateShader(shaderValues.Stage.GlEnumValue());
            glShaderHandles.Add(glShaderHandle);

            gl.ShaderSource(glShaderHandle, shaderValues.Source);
            gl.CompileShader(glShaderHandle);

            gl.AttachShader(glProgramHandle, glShaderHandle);
            }

            gl.LinkProgram(glProgramHandle);

            foreach (var glShaderHandle in glShaderHandles)
            {
            gl.DetachShader(glProgramHandle, glShaderHandle);
            gl.DeleteShader(glShaderHandle);
            }
        }
开发者ID:dboone,项目名称:shader-baker,代码行数:23,代码来源:GlContextManager.cs

示例2: CreateProgram

        /// <summary>
        /// Creates the program and attaches all the shaders to it.
        /// </summary>
        /// <param name="gl"></param>
        private void CreateProgram(OpenGL gl)
        {
            ShaderProgramId = gl.CreateProgram();

            foreach (var shader in ShaderIds)
            {
                gl.AttachShader(ShaderProgramId, shader.Value);
            }
        }
开发者ID:jochemgeussens,项目名称:sharpgl,代码行数:13,代码来源:ShaderProgramJOG.cs


注:本文中的SharpGL.OpenGL.AttachShader方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。