Unity制作经典游戏里面的换枪效果
Unity界面操作:
如图所示: 制作一个人物,也可以自己去商城或者网上下载人物也可以.当然unity自己带的第一人称视角也是可以的。
“”Weapons“”是武器的意思下面是我找的3D武器模型。
Head,pivot都是空物体,camera是相机,Weapons上放代码。shell是我制作的子弹(prefab)
PoolManager是我用的缓存池做的优化,用来实例化子弹。使用方法参考:
https://blog.csdn.net/QWBin/article/details/82693129
代码Weapons(部分):
public void NextWeapon()//下一个武器
{
weaponIndex++;
if (weaponIndex > weapons.Length - 1)
weaponIndex = 0;
SetActiveWeapon(weaponIndex);
}
public void PreviousWeapon()//上一个武器
{
weaponIndex--;
if (weaponIndex < 0)
weaponIndex = weapons.Length - 1;
SetActiveWeapon(weaponIndex);
}
//用户切换武器方法
if (Input.GetButtonDown("Weapon 1"))
SetActiveWeapon(0);
if (Input.GetButtonDown("Weapon 2"))
SetActiveWeapon(1);
if (Input.GetButtonDown("Weapon 3"))
SetActiveWeapon(2);
这个也就是我们说的按数字键切换强的方法。
// 允许用户滚动武器
if (Input.GetAxis("Mouse ScrollWheel") > 0)
NextWeapon();
if (Input.GetAxis("Mouse ScrollWheel") < 0)
PreviousWeapon();
这个使我们经常的说的鼠标滑轮换枪方法。
因为用到了Mouse ScrollWheel,所以大家别忘记去Edit=>Project Settings=>Input去设置下。