wintermute学习笔记[4]--搭建场景步骤三:场景布局
帮助文档里说了,现在真正有趣的来了,虽然我一点都没看出来哪里有趣- -这一章我们将了解如何使用区域(region)来布局,实现桌子在适当时候遮挡角色的效果,你可以把帖子拉到末尾先看看最终效果。
在SceneEdit中打开Myscene.scene。
目前我们有两个实体:backgroud和desk,还有一块区域floor划定人可以走的范围。
我们需要desk这个实体在角色走到桌子后面时遮挡住角色。方法是添加另一个区域。
如图,点击Add region按钮。一个新的区域被创建了,默认名为new region,在预览窗口里是一个红色高亮显示的小方框。
http://docs.dead-code.org/img/tut3-1.png
将这个区域改名为“behind_desk”。接着按步骤一中对floor所作的方法,即添加节点和改变形状使来在地板上划定一块“在桌子后面”的区域。如图。(我一开始觉得形状有点怪,但实际测试后理解了为什么划定这样一块区域)
http://docs.dead-code.org/img/tut3-2.png
最后要做的就是调整node列表的顺序(使用上下箭头),如图为正确顺序:
http://docs.dead-code.org/img/tut3-3.png
这样一来引擎在工作时按这个顺序绘制:
1、绘制背景
2、绘制所有处于“behind_desk”区域的角色
3、绘制desk实体(如果角色处于behind_desk区域中的话,desk就被绘制到角色之上了,也就实现了遮盖)
4、绘制所有处于floor区域内的角色(貌似这个引擎角色只绘制一遍,如果在behind_desk中被绘制了这里就不会再复制。是不是这个原理不太确定)
换句话说,如果角色处于behind_desk区域中,会先绘制角色再绘制桌子,反之先绘制桌子在绘制角色。
保存后实际测试一下,应该会实现图中的效果。下一章将处理人物横穿桌子的问题。
http://docs.dead-code.org/img/tut3-4.pnghttp://docs.dead-code.org/img/tut3-5.png
帮助文档的作者认为这是最难的地方,剩下的都很简单~请确保你理解了其中的原理。
页:
[1]