王薇 王德贵
XRmaker的作品有安卓手机和PCWindows两种类型,在创建作品时就需要确定下来。本期我们通过案例“飞行员”来学习PC操作。
1.模块管理
在“编程”选项卡里,模块最下方的“模块管理”。它可以修改作品的设备类型,也可以设置多个设备类型。
2.作品类型
PC操作的前提,是在创建新作品时选择3D→Windows类型,这样在“编程”时,才会有“PC”模块。
3.修改作品类型
用“模块管理”在编程时也可以修改或是添加为“3D→Windows类型”,而新建作品时只能选择一种类型。
设置时必须先选择模型后,才能使用“模块管理”。
在PC模块中,有鼠标和键盘操作的模块,用于侦测用户的交互动作。下面分别讨论键盘操作和鼠标操作(图1)。
1.键盘操作
“键盘‘按住‘A”,这个键盘的操作积木是尖角,属于逻辑操作符,结果为布尔值真或假。操作方法:按住、按下和松开。
(1)按住:响应按下时间稍长的操作。
(2)按下:响应按下时的动作,即按下某键时,才会检测到动作,一般与松开对应使用。(3)松开:只有某按键松开时,才会响应的事件。一般与按下事件对应使用。
2.获取键盘属性
“键盘按住左右”“键盘按住上下”获取按下的方向按键,积木为圆角,属于运算模块。按上和右键,输出0到1的浮点值,下和左是-1到0的浮点值。
1.左右键操作
左右键操作也有按住、按下和松开三种操作。积木为尖角,属于逻辑运算,结果为布尔值真或假。
2.获取鼠标位置操作
“鼠标在屏幕中‘X位置”积木为圆角,属于算术运算,能获取鼠标当前x,y坐标的浮点值。屏幕左下角坐标为(0,0),右上角为屏幕分辨率值。
3.選中模型
鼠标操作的“XX被选中时”非常实用,当鼠标与模型接触时,即是“被选中”状态,其实它也可以理解为鼠标与模型的碰撞事件,测试该积木代码如图2。
1.资源列表(见下表)
战斗机音效是创造资产,免费用户可能没有,可自行导入音效。
2.设计思想
(1)思路
用XRmaker模拟航模训练。键盘控制飞机起飞和降落。机场设置标识,以备飞行时识别,同时显示飞行数据:位置坐标、方位角和飞行速度。
键盘设定:上:油门+;下:油门-;左:左翻转;右:右翻转;A:左转弯;D:右转弯;W:机头俯;S:机头仰。
(2)油门
通过上下键控制油门,同时也控制了飞行速度。
(3)起飞
必须达到一定速度方能起飞,通过按S键实现仰角控制,对应W键是俯角控制。
(4)翻转
翻转即Self空间Z轴方向的角度变化。
(5)音效
飞机在飞行时,有飞行音效,音量与速度匹配,即速度越大,音量也越大。
(6)跑道
地面设定不同方向的几个跑道,以备飞机降落。
(7)机场标识
机场设置了树木、建筑物等标识,四周设置了热气球标识,方便飞机降落。
3.程序设计
作品稍复杂,程序较多,请先在“壹零社”公众号下载源程序(2023-20.zip),在“文件→新建→导入作品”后再对比学习。
(1)摄像机:摄像机需要绑定在飞机上,否则无法控制。关于绑定的知识,以后会单独介绍(如图3)。
(2)飞机_11:即是我们控制的飞机。飞行中让飞机Self空间前进,速度来自上下键(如图4)。
油门控制(如图5)。
左右方向控制(如图6)。
俯仰控制(如图7)。
翻转控制(如图8)。
(3)树木标识:树木在起飞跑道两侧,也是为了降落时方便辨识。两棵树木克隆自己,程序相同(如图9)。
(4)苹果_01:将苹果绑定到飞机上,显示飞行数据,所以苹果设置比例很小,不需要看到它(如图10)。
(5)热气球标识:热气球放在机场四周,标识作用(如图11)。
(6)音效(如图12)。
4.小结
案例是前面学习知识的综合运用,比较复杂,请比对源程序学习。