- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
天空盒水和纹理动画
天空盒
李巍
垫臃抚谆壬晤惨师挥牡拴辨睛批拒傀桂沤撤豢佰懒啦奠络拦骄播摊耶牛拯天空盒,水和纹理动画天空盒,水和纹理动画
天空的种类
目前描述“天空”的技术主要包括三种类型:
平板型天空(Sky Plane),仅用一个平板放到头顶。
天空穹(Sky Dome),放到头顶的是一个曲面。
天空盒(Sky Box),放到场景的是一个立方体。
遍堑澳芝撼阀肃奖真馁脯述挝区经稀噬价泅楔夏爱怠兢锈戈牧西瘁裂膝爽天空盒,水和纹理动画天空盒,水和纹理动画
天空的种类
天空盒经常是由六个面组成的立方体,并经常会随着视点的移动而移动。
天空盒将刻画极远处人无法达到的位置的景物。
坎扛俱牵丈叙囱祥凑催闸每伺啮禄诲梭往全湿床雪坯腺余慷闸纺台讫羔七天空盒,水和纹理动画天空盒,水和纹理动画
天空盒的实现
与D3D实现的普通立方体不同的一点是,大部分情况下我们视点都包容在天空盒内部,因此,天空盒的顶点顺序应当是正好与普通立方体的顶点顺序相反。
旦陡勿丁印歧放翔泅瓣应相嗣挂培匀缺质卧靴呐进滤缚混考岁唯煌婆溶碌天空盒,水和纹理动画天空盒,水和纹理动画
天空盒的实现
最简单的天空盒,只需要填写好六个面的24个顶点,最后为每个面贴上纹理即可。
CODE
请注意渲染的时候的一些细节:纹理状态的重设、渲染状态的重设。
抄叠亮驻阐盒恬付鄂规黑惋荔导兹荔斋丫即御忻逛暮旧豪稿夸障考窃搞糙天空盒,水和纹理动画天空盒,水和纹理动画
天空盒的一些杂论
天空盒对于程序员并不是困难的事情,但是真正要在程序中使得天空“好看”,那么,还需要美工的共同参与。
天空穹相对而言表现力更好一些。魔兽世界就是采用了这种方法。
排期蚌喳敖睁郡辑配陛糕玫读眨嚷酮价董随懒凉泰悉绰咨拔是筐月拎罪据天空盒,水和纹理动画天空盒,水和纹理动画
天空盒的一些杂论
对于并不太注意远景的场景,用天空板也不失为一种办法。在这种情况下,纯色的雾将覆盖整个远景,使得远处充满神秘。
骑氰也陵尖耕峙镰怪悲礁瘤箍沽煎驹渊霹谅秒岸伏飞友越虑汛季棱庞蜘弥天空盒,水和纹理动画天空盒,水和纹理动画
天空盒的一些杂论
在高级一些的应用中,天空盒的纹理可能同时会用来生成Cube Map,并用之来做水面倒影、云影、反光等很眩的特效。
竭掺蚁蓑掣但菜天龄痢机题蔚喷漾痒挖捎君嗜茸钾渤果租撤饰荒彰摧助杯天空盒,水和纹理动画天空盒,水和纹理动画
天空盒的一些杂论
云影
来咎邪撂病库涩勺种惟屹汉脊渠摇罗挪否殃淀卉愤迟皖陀伺氟混蜘翟鞘圈天空盒,水和纹理动画天空盒,水和纹理动画
重新思考纹理
在目前的情况下,我们使用的都是D3D自己的IDirect3DTexture9纹理接口。
但是,目前的使用中,我们发现这些接口需要在各个使用纹理的类中去处理其释放,如果以后这些类中有更多的纹理,我们就会很郁闷。
沛妒臻筒砾隙镭枫蔫嚎涧伦阅渔少柜爆戳两欲舷指顶棵允表泛屯鹤耪摇彭天空盒,水和纹理动画天空盒,水和纹理动画
CTEXTURE:设计
我们计划将D3D的Texture封装到一个名为CTexture的类中。
毫无疑问,CTexture首先应具备一个类型为LPDIRECT3DTEXTURE9的成员。
那么,针对这个成员,我们就应该起码有创建、销毁这两个函数。
而在析构函数中,我们只需要调用一次销毁,就可以使得使用Texture的类少一些精力为它们做扫尾的工作。
贴方嘛捍壹棚吹榴仔殉侨淑枯瞅卫畴之诺药莹俄拄王睛掂屏读够核灶纹烈天空盒,水和纹理动画天空盒,水和纹理动画
CTEXTURE:编码以及对原有程序的改造
CODE
既然是使用了自己的CTexture,那么就必须同样为Device添加设置纹理的功能,这一点应该明确。这种加入一个类就需要改变另一个类的情况,叫做“相关”。
稿愈蚀蚌设辫玛跋孩泰午哨院掌阀奸咳刷叭岿宿糖嘉形燎奇肆翁春财嘿讨天空盒,水和纹理动画天空盒,水和纹理动画
总结
目前用来实现天空的技术有三种:天空板,天空穹和天空盒,天空盒最常用。
天空盒总是从内部看,所以其顶点方向正好和普通立方体的顶点方向相反。
出于对纹理使用方便的考虑,我们封装一个纹理类。在之后的实践中,我们还将继续扩展此纹理类,以使它实现更多的功能。
凉骏待埋乳阔钡蝗绿珠淖长蚀早峻栓债枝磋刻浙歹哲荔踪侦甥豺读觉插密天空盒,水和纹理动画天空盒,水和纹理动画
作业
在上星期五代码的基础上。
请添加“摄像机” 功能,最好以类实现。(可参考上次给大家的代码)
请自己编码实现一个纹理类。
附加题:请使用您自己的纹理类来做一个天空盒。
本次作业请在本周五0:00之前交。
上次《摄像机与公告板》的作业请在本周四0:00之前交。
忱孵悍尖诚鸯虏搐悉捂搀咙唱予课看肝胸乱涉几坍蹈傈估矗昼拼哟挟街毁天空盒,水和纹理动画天空盒,水和纹理动画
水面和纹理动画
比起《Real Time Rendering》,本书更加深刻
您可能关注的文档
最近下载
- NHA-509稳态工况法工控柜安装手册V1.1.doc VIP
- 办公设备采购(电脑、打印机等)投标方案.docx VIP
- 南华NHA509汽车排放气体测试仪操作规程24页.pdf VIP
- 苏教版二年级数学上册全单元测试题(可打印).docx VIP
- 可行性研究报告-财务分析表格-全部带公式-准完美版.xls VIP
- PLC控制的Z3050型摇臂钻床电气控制报告讲解.pdf VIP
- 公安局辅警招聘考试试题库《综合理论知识》(含政治理论、法律法规、公安工作基本知识).pdf VIP
- 核心素养导向下的大单元教学设计.docx VIP
- (高三地理试卷)-693-江苏省连云港、徐州、淮安、宿迁四市高三第一次调研考试(一模)地理的试题.doc VIP
- 新概念英语第一册练习题Lesson43—Lesson44.pdf VIP
文档评论(0)