上QQ阅读APP看书,第一时间看更新
1.13 射击抛射体
本节是控制依赖重力的对象(比如球体和手榴弹)的场景的基础,这样就能够预测抛射体的着陆点,也可以有效地射击针对给定目标的抛射体。
准备工作
本节介绍的方法稍有些不同,因为它不依赖于基类AgentBehaviour。
操作步骤
1. 创建Projectile类及其成员变量,以便操作物理行为:
2. 定义Update函数:
3. 实现Set函数,以便射击游戏对象(例如,当这个对象在场景中实例化后调用此函数):
运行原理
此行为使用高中物理知识来产生抛物线运动。
延伸阅读
我们还可以用使另一种方法:不调用Set函数,而是在脚本中实现公有属性,或者把成员变量声明为公有的,在预制件中把脚本设置为默认禁用,在所有属性都初始化后再启用。这样就可以轻松地使用对象池模式了。
其他参考
关于对象池模式的更多信息,请参阅维基百科上的文章和Unity公司的官方视频教程,链接如下:
▪ http://en.wikipedia.org/wiki/Object_pool_pattern
▪ http://unity3d.com/learn/tutorials/modules/beginner/livetraining-archive/object-pooling