首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >什么是SubProgram "..........“在Unity着色器中?

什么是SubProgram "..........“在Unity着色器中?
EN

Stack Overflow用户
提问于 2017-01-13 01:07:24
回答 1查看 1.2K关注 0票数 2

代码的实际部分是做什么?

代码语言:javascript
运行
复制
//this partical >>   SubProgram "opengl " {    <<<
Keywords { "LIGHTMAP_ON" "DIRLIGHTMAP_ON" "HDR_LIGHT_PREPASS_OFF" }
Vector 0 [_Color]
SetTexture 0 [_MainTex] 2D 0
SetTexture 1 [_LightBuffer] 2D 1
SetTexture 2 [unity_Lightmap] 2D 2
"!!ARBfp1.0
PARAM c[2] = { program.local[0],
        { 8 } };
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-01-13 21:48:58

子程序是一种为特定API提供特定着色器(片段着色器或顶点着色器)的方法。

因此,假设您有以下内容

代码语言:javascript
运行
复制
SubShader 
{ 
    Pass 
    {
        Tags { "RenderType"="Opaque" }
        Program "vp" 
        {
            SubProgram "opengl" 
            {
                //Do something if we're rendering with OpenGL
            }
            SubProgram "gles"
            {
                //Do something if we're rendering with GLES
            }
        }
    }
}

然后,您可以指定唯一的着色器给定您正在渲染的API,作为一个相同的“着色器”资源的一部分。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41619047

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档