创建飞弹
飞弹的精灵预先导入hierarchy窗口中,为了检测碰撞,再对象中提供剥削boxcollider2d和rigidbody2d组件中,这一步很关键,他是使飞弹成为一个刚体来碰撞。调整好大小,如果让飞弹直线飞行,需将gravity设置成0;这样我们设置了一个刚体,之后我们可以通过哦给刚体施加一个力,物理系统会根据施加的力来移动刚体,而不需要在update中通过按键改变位置了。
物理系统是需要自己来创建,首先我们先在脚本中创建一个rigidbody变量,然后在start函数里储存该变量,再通过launch函数来更改其物体的坐标,定义力的大小 ,改变移动速度,此时物理引擎会逐帧改变飞弹的位置
public void Launch(Vector2 direction, float force)
{
rigidbody2d.AddForce(direction * force);
}
为了检测碰撞,则需在飞弹中调取一个OnCollisionEnter函数来检测是否有碰撞的产生。 切记这个武器是从主角那射击的,飞弹还没有弹道先碰到主角,因为主角是一个刚体,所以为了能有射程,切能不是在主角那。应该重新设置两层,一层把主角放进去,另一个存放其他刚体。