《西游降魔录》模块学习笔记

《三维游戏设计师宝典3》附带的光盘是错位的给的不是书中的例子所对应的光盘具体原因不得而知。尽管如此,该错位的光盘却有个非常好的例子《西游降魔录》 的游戏,前两天尝试着写了点自己感觉在理解程度上有点不同,今天继续。

该模块的文件名称是sample11b.cmo,具体在什么地方找,还请自己google了。如有兴趣可发邮件给我,我可以把附件范围以内的.cmo文件发给一同学习的朋友。

用virtools打开该文件,找到红色的那个 悟空objScript模块 ,从开始节点开始看,发现有个组装的模块“悟空动作”,该大模块组装了3个building block 分别为“Unlimited Controller”,我们先来看看这个building block 是做什么的,Apply to a CHARACTER.Controls a character by using animations played in response to messages. 这个是对该building block 的大概解释具体请看考 vritools的帮助文档。打开UnlimitedController会发现里面有悟空的所有动作“前进”等,而这些动作是实现在创建characters就已经创建好了,至于是如何创建的,本人还不是很清楚,正在找,知道后会补充近来的。到此为止这个“悟空动作”模块大概看完了。接着下一个:ObjectSlider,Impedes the 3D Object from penetrating a 3D Object in the specified group.使用这个buildingblock的对象还有“水晶”“墙”等对象,运行该模块会发现悟空是无法进入一些物体,这些物体就是我们看到的buildingblock的group属性的值。在触发所有的ObjectSilder之后就触发ShadowCaster这个buildingblock,看看这个bb的功能:Projects a shadow on all the objects visible in the scene。因为要进行攻击动作,所以触发键盘事件“Key Event”,在进行键盘事件的同时还要进行“悟空”的攻击动作,在攻击的同时发生变化的对象还有“悟空”身体变化,以及“金箍棒”的挥舞动作,也就是我们看到的两个“Send Message” buildingblock,他们都发送攻击“att”这个事件。而接受这个事件的就是事先作好的characters,也就是“悟空obj”里面带的那4个animations。

上面的写了整个“悟空obj”再游戏中的动作情况,以及用到的bb。

地板script,这个script中只有一个BuildingBlock,Planar Reflection,这个模块的作用就是:Creates a reflection on a plane of objects in a group. 比较简单。

跟随照明script,这个script是Light跟随照明的,该Light的设置基本设置就是setup里面的,主要是灯光类型以及初始位置。在script里面定义Set Position这个buildingblock并且让其循环,让Light跟随“悟空obj”。

LevelScript,在该教本模块里首先看到的是“Set Background Color”,从字面意思上就可以看出该buildingblock是对背景颜色控制的,在API中的说明为Sets a background color. 然后看到的buildingblock就是“Wave Player”,API中的说明为Plays a Wave Sound File, with optional fade in and/or fade out (in milliseconds).
也就是对背景音乐的设置,其中的音乐文件是预先制作好的,从“WavePlayer”的设置中的Target参数可以看出该音乐文件是可以调换的。在LevelScript的教本模块中还有个封装后的大漠快“摄影机设置”,双击打开就会看到这么几个buildingblock,“Switch On Key”和两个“Set As Active Camera”,先看“SwitchOnKey”查看API解释为Activates the appropriate output when receiving a Key,我们可以知道这个buildingblock就是通过按键进行控制操作。是如何控制的呢?观察“SwithcOnKey”就会发现其中有按键1和按键0,分别对应两个出口out1和out0,在out1和out0后面又分别触发一个“SetAsActiveCamera”,再去API看看“SetAsActiveCamera”的说明Changes the active Camera。我们可以知道该bulingblock是转动camera的控制。分别进入“SetAsActiveCamera”可以看到这两个都分别控制着两个摄像机,一个是“全景摄像机”一个是“跟随摄像机”。结合“SwitchOnKey”的功能就可以知道该封装模块的作用了:根据按键1和0来切换两个摄像机,有点类似wow中的视角转换。接下来就是“Switch On Key”这个buildingblock了,在前面我们已经看了有这个buildingblock但是我们发现这两个buildingblock有区别,两个的参数个数不一样,对该bb进行右击可以看到有个选项“construt/add behavior output ”,这个就是给这个buildingblock增加输出端的选项,双击这个buildingblock有4个参数对应的有4个文本框,这个文本框里所要填写的就是我操作要用的按键。在“SwitchOnKey”的后面跟的是每个按键触发后所响应的动作,分别对应“SendMessage”,显然是要通过刚才的4个按键发送一些消息给某些动作,但是发给谁呢?分别打开这些“SendMessage”就会发现每个“SendMessge”里的Dest都是一样的“悟空obj”而不同的则是message,各自一个message。(但是这些message是从什么地方来的?先留着思考)到这里我们就知道这5个bb的功能是,通过键盘4个按键的控制发送不同message,让悟空obj进行不同的动作,也就是我们运行的时候看到的前进后退左右转动作.。对真个场景的设置还有一个效果处理,两个封装起来的“透明度设置”,进去看看这两个的组装模块的功能

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值