3D中视锥的剪裁.pdf

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
3D中视锥的剪裁

lSSN1 009—3044 and Technology电脑知识与技术 ComputerKnowledge Tel:+86—55l一56909635690964 VoL5,No.36,December2009,PP.10292-10294,10297 3D中视锥的剪裁 杨晓华 (商丘医学高等专科学校,河南商丘476100) 摘要:3D中提高游戏的帧速率的一个有效的办法就是把我们视野范围以外的物体不渲染出来,也就是我们通常所讲的视锥的剪裁 Frustum (View Culling)。 关键词:3D:游戏;视锥;剪裁 中图分类号:TP311文献标识码:A 文章编号:1009—3044(2009)36—10292—03 3D游戏制作中游戏的速度至关重要,玩家是没有耐心去玩画面停顿的游戏,对游戏来说30帧/秒的速度已经能够运行,60帧/ 秒是比较合适的。当然帧速率越高,游戏的画面就越流畅,游戏的效果就越出众。3D中提高游戏的帧速率的一个有效的办法就是把 Frustum 我们视野范围以外的物体不渲染出来也就是我们通常所讲的视锥的剪裁(View 场景和一张完整地图,3D加载模型的时候是需要把整个地图的场景全部加载进去,其实在游戏某一时刻视野范同内只能看到的是 非常小的一部分。如果不把看不见的部分剪裁掉就导致极大的资源浪费,直接影响游戏的帧速率。如果要进行剪裁首先要判断哪些 物体能看得见,哪些物体看不见,由3D的基本知识可知,所谓看得见的物体就在游戏中虚拟摄影机所确定的视锥范同以内或与视 锥相交的物体.如下图所示: ● 图1 视锥的范围 图2视锥的剪裁 由上图可以看出要做视锥裁减先要计算出构成视锥的六个面的平面方程,然后在判断物体是否与六个平面的相交。 下面我们来推导一下视锥的六个面的平面方程,假设世界坐标系有一点V它经过视图转换和透视投影转换后为V7,假设rtl的 转换矩阵为M,推导过程如下: z v=(xY w=1) M=(m【I) Vt=(x’Y’z’W’) 工‘roll+Y’m21+z‘m31+w‘,弛1 ¨ 7 7 x‘m12+Y。m22+z‘,”32+w。m42 z W7)= v=vM_(x’Y 工。mI 3+y‘,行如+二‘m33十w‘m43 ” x’m14+Y‘m24+z‘脚弘+W。m44叫毗毗毗 根据3D的基础知识可知,如果V在“未转换”视锥范围之内,那么V7也一定在视锥范围之内。V在视锥范围之内的条件是下 面不等式的成立: 一W’X’W’ 表1 —W’Y’W’ 0z’WI 由表1不等式可以得到: 一W’X’ 一(v·col4)(v·coil) O(v·col4)+(v·coil) 0v·(c014+coll) 替换成为矩阵中的数据如下: x(m14+m11)+y(m24+m21)+z(m34+m31)+w(m44+m31)=0 3D空间我们通常设置W=1等式如下: x(m14+m11)+y(m24+m21)+

文档评论(0)

jgx3536 + 关注
实名认证
内容提供者

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

版权声明书
用户编号:6111134150000003

1亿VIP精品文档

相关文档