王薇 王德贵
克隆是指生物体通过体细胞进行的无性繁殖,以及由无性繁殖形成的基因型完全相同的后代个体。在XRmaker 中克隆可以理解为模型的复制,也称为拷贝。
当我们需要很多同样的模型、执行一样的程序时,如果先把模型搭建好,很难分清哪个模型不说,也非常占用内存空间,更容易宕机,所以我们在需要的时候,克隆本体,然后再适时删除,这样既可以达到效果,也可以很好地利用内存空间了。XRmaker 的克隆模块在控制中。
1. 克隆自己
这是“动物_15”克隆自己,复制一个原模型,克隆模型和原模型重合。
2. 实例
重复执行10 次,“动物_15”克隆自己,并等待1 秒。运行后10 个模型与原模型位置重叠,看起来还是一个。我们需要继续编程控制,才能按我们设计的思路,呈现出来。
1. 克隆体控制
从上面的实例看出,克隆体需要程序控制,才能达到更好的效果。比如让克隆体在一定范围内的位置出现。比如“当作为克隆体启动时”,设置位置为一定范围。让这10 个克隆体,出现在不同的位置上。
2. 模型克隆时原型处理
如果事先设计好了模型位置,在克隆时,原模型会一直停在那里,影响整体效果,所以这个时候可以设置为“存在”或“不存在”。其实就是隐藏和显示的功能。因此一般对本体“设为不存在”。“当作为克隆体启动时”“设为存在”。这样在运行程序时,才不会看到原型,而只能看到克隆体了。
程序设计时根据具体情况,来删除克隆体。
1. 删除本克隆体
克隆体按程序运行以后,如果不需要了一定要删除,否则克隆体增多时,会占用大量内存,电脑就会宕机。复制克隆体后,会记忆克隆顺序,进行删除。
2. 清除所有克隆体
在程序运行过程中,如果克隆体全部完成運行,则根据需要可以“清除所有克隆体”,释放内存。
3. 自动删除
如果在程序运行时,没有删除克隆体,则当程序关闭后,克隆体也会自动删除。
“已有克隆体总数”是一个运算积木块,运算结果为浮点数。
五、案例——骏马奔腾
1. 资源列表
2. 设计思路
随机时间随机位置出现马的克隆体,在出现后开始奔跑。奔跑一定时间后,则删除克隆体,可释放内存空间。
3. 程序设计
(1)克隆
设置马为不存在,重复执行马克隆自己,设置0.01 到0.05 时间随机。开始本马设置不存在,是因为它一直在原地跑,就不需要看它了,只看克隆体就可以了。
(2)骏马奔腾
当每个克隆体出来以后,必须让它出现在画面上,为了能更直观地观看效果,设置为一定范围内的随机位置,然后一直向前奔跑,可以看到骏马奔腾的大场面。
(3)删除克隆体
马的克隆体运行15 秒后删除,释放内存空间。
4. 小结
克隆,在程序设计时经常用到,主要是掌握了基本方法,就运用自如了。