ogre材质.pptVIP

  1. 1、本文档共23页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
ogre材质.ppt

材质属性 ·环境反射:近似的模拟了场景中的全局辐射;也就是用来近似模拟所有光在场景中不断散射的结果。材质中有相应的属性来代表这种环境反射颜色。 ?·漫反射:这种颜色是接收到直接从光源发射的光之后产生的,“漫反射”这个词来源于现实世界,描述光被物体反射到各个方向的效果(换句话说就是散射)。 ?·放射:指的是自发光物体所拥有的颜色。这里有一个有趣的话题,因为在局部辐射光照模型中,放射光只能照亮自己却不能对周围任何物体产生影响,有时候这种效果却可以让人觉得极其虚幻(设想一下,在你的房间里有一个灼热的物体,却不会照亮周围任何东西,你就会了解这种感觉了)。 ?·镜面反射:描述了物体对被光照后的“高光”效果。设想一下假如你有一个红色皮球,而且擦得光亮。现在把它放在一个高瓦度的灯泡下面,你就会在上面看到一个被称为镜面高光的亮斑。这是因为光线被光滑的表面直接反射到你的眼睛中的缘故。 第4课 Ogre材质 www.C3DN.net 中国3D技术开发者社区 纹理贴图 大部分的图形硬件都会至少支持一两个纹理处理单元(Texture units)。这些单元允许你的程序把纹理(Texture)通过一个独立的坐标系映射到一个物体上。这里的纹理不仅仅限于“2D图片”的概念,也可以有MIP-map 细节度的数据、立方体(Cube)纹理或者体积纹理(Volume)等等。在构造纹理的时候,可以使用的2D图片包括GIF,PNG或者网页上面使用的JPG图片格式。 可编程着色技术 Ogre支持所有风格的GPU着色语言,其中包括低级的汇编和诸如Cg,GLSL和HLSL这种高级语言。 第4课 Ogre材质 www.C3DN.net 中国3D技术开发者社区 批次 Ogre最基本的渲染单元被称为可渲染对象(Renderable),它们通过不同的渲染状态被分类传递到渲染队列中去。相同渲染状态的可渲染对象只需要一次的绘图操作,也就是说它们在一个绘图批次中完成了渲染过程。当渲染到不同的材质或者模型的时候都会导致渲染状态的改变,而每次改变都会引起新的绘图操作(新的绘图批次)。绘图操作都是一个耗费时间的过程。为了渲染效率的提高,程序设计者要尽量减少渲染状态的改变,换句话说也就是减少绘图批次的数量。 Ogre引擎在力所能及的范围内尽量把相同渲染状态的物体一起渲染,进而减少渲染状态改变。然而即便如此,Ogre仍然尊重用户设置的Renderable整体(也就是说Renderable是处理批次的最小原子结构),并不进行拆分。 第4课 Ogre材质 www.C3DN.net 中国3D技术开发者社区 材质克隆 在Ogre中材质是被所有引用所共享的。当你从材质管理器重得到了一个指向材质的指针的时候,其他的使用相同材质对象也在处理一样的指针。这意味着如果你希望改变某个物体上面材质的任何属性的话,你都要把这个材质为它单独克隆一份,否则这个改变就会同时影响到所有使用相同材质的物体。在渲染通道中都需要再产生一个完全不同的材质。不过这里也有一种可以替代的方法存在,把材质作为颜色数据,通过改变可编程GPU着色的参数来实现不同材质的效果。这样就可以避免产生一个新的批次。 第4课 Ogre材质 www.C3DN.net 中国3D技术开发者社区 技术(Technique) 和方案(Scheme) 技术就是“一种对物体的渲染方法”。通常来说对具体适用哪个渲染技术是由Ogre引擎自动甄选出来的(根据硬件性能、方案以及细节等级等信息),但是如果你希望的话也可以在代码中完全控制这个过程。 “方案”它是一个渲染技术集合的描述。举例来说,你可能有三个不同的技术方案:高质量,中等质量,低质量。在游戏运行的时候,允许用户通过选择这三个方案中的任意一个来确定在游戏中具体使用的渲染技术集合。 Ogre在渲染的时候,会有一个自动甄选所需渲染技术的固定流程:首先过滤掉那些不在当前方案中的所有技术(默认情况下当前方案是“Default”);然后选择适配当前细节等级(LoD)的那些;最后在剩下的当中挑选当前硬件环境中可以执行的最优技术(最好效果的)。当Ogre找不到任何一个可以使用的渲染技术时,就会把物体渲染成单调的白色表面。换句话说,如果你看到了一片雪白,就要检讨一下你对材质的配置了。另外在默认的情况下,材质中所有技术的细节等级(LoD)都被设置成为0,也就是最高的细节等级。换句话说,Ogre总是在尽可能的帮助你选择最优材质技术。 似乎技术和方案会带来很多复杂的处理细节。但在实际的执行过程中,你只要在材质脚本中提供了充足的内容,Ogre就会接替你来管理这些琐碎的细节。当然如果你喜欢,也可以用代码完成脚本所进行的工作。 第4课 Ogre材质 www.C3DN.net 中国3D技术开发者社区 材质细节等级(Material LoD)

文档评论(0)

rewfdgd + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档