Unity中Sharder的3个类别及区分.doc

上传人:白大夫 文档编号:3274531 上传时间:2019-08-07 格式:DOC 页数:2 大小:14.50KB
返回 下载 相关 举报
Unity中Sharder的3个类别及区分.doc_第1页
第1页 / 共2页
亲,该文档总共2页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《Unity中Sharder的3个类别及区分.doc》由会员分享,可在线阅读,更多相关《Unity中Sharder的3个类别及区分.doc(2页珍藏版)》请在三一文库上搜索。

1、Unity中Sharder的3个类别及区分按照渲染管线的分类,可以把Sharder分成3个类别:1、固定功能着色器(Fixed Function Shader)固定功能着色器为固定功能渲染管线的具体表现。2、表面着色器存在于Unity3D中由U3D发扬光大的一门技术。Untiy3D为我们把Shader的复杂性包装起来,降低shader的书写门槛。3、顶点着色器和片段着色器GPU上含有两个组件:可编程顶点处理器和可编程片段处理器,顶点和片段处理器被分离成可编程单元,可编程顶点处理器是一个硬件单元,可以运行顶点程序,而可编程片段处理器则是一个可以运行片段程序的单元。顶点着色器顶点着色程序从GPU前

2、端(寄存器)中提取图元信息(顶点位置、法向量、纹理坐标),并完成顶点坐标空间变换、法向量空间转换、光照计算等操作,最后将计算数据传送到指定寄存器中。片段着色器片段程序从上述寄存器中获取需要的数据:纹理坐标与光照信息等,并根据这些信息以及从应用程序传递的纹理信息进行每个片段的颜色计算(纹理查询),最后将处理后的数据传送光栅操作模块。三种着色器的共同点:都必须从唯一一个根Shader开始Prooerties参数部分,作用以及语法完全相同。具体功能都在SubShader里。都可以打标签都可以Fallback都可以处理基本的功能,例如光照漫反射以及镜面反射。但如uv计算效果等高级功能,固定功能着色器无法完成。三种着色器的不同点表面着色器没有通道pass,加了会报错,该着色器已经把具体内容打包在光照模型中了。固定渲染管线每句代码之后都没有“;”核心结构不同:- 固定渲染管线的核心是:- 顶点与片段着色器的核心是:- 表面着色器的核心是:在Unity中如何区分以上三种着色器没有嵌套CG语言,即代码中没有CGPROGARAM和ENDCG关键字的,就是固定功能着色器。嵌套CG语言,代码中有surf函数的为表面着色器嵌套了CG语言,代码中有#pragma vertex name和 #pragma fragment frag声明的,就是顶点着色器&片段着色器。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1