哪吒机器人提醒:

提醒:博客园-计算机图形学
【标题】第十一回 Shader的动态组合
【摘要】作者: ixnehc 发表于 2010-08-08 23:18 原文链接 阅读: 44 评论: 0shader是很奇怪的代码,它的长度受到限制,它的动态分支能力很弱,它的指令很昂贵,这些都使得你很难使用一个单一的shader来处理所有的渲染要求.而各种渲染要求的种类如此之多,如果要为每一种渲染类型都写一段专一的代码的话,那会是一件非常吃力的活,假设我们现在要写一个材质系统,我们希望它能够支持各种效果.你会发现随着支持的效果越来越多,需要写的shader的数量会急剧上升,比如:*.一开始我们希望我们的材质系统能够支持普通光照,我们为这种最简单的效果写一个shader*.然后我们希望这个材质还可以支持贴图,我们为它再写一个shader,现在有两个shader了--[支持普通光照,不支持贴图]和[支持普通光照,支持贴图]*.然后我们希望为它加上骨骼动画,我们需要为已有的shader各写一个带骨骼动画的版本,这样shader的个数就变成4个了,分别是: [支持普通光照,不支持贴图,不支持骨骼动画] [支持普通光照,支持贴图,支持骨骼动画] [支持普通光照,支持贴图,不支持骨骼动画] [支持普通... (04-13 07:57)