赞
踩
先创建一个地面,然后设置其材质,
我们可以在材质这里的Tiling选择6x6表示平铺成6个
为其创建一个材质
按住v有助于方便对齐
利用下载的资源中搭建一个场景
为了使其更有层次,我们将所有场景物体
拖拽到空物体并为其附上静态的属性
然后进行烘培
烘焙好后如图所示
然后利用所给的资源建立左下角所示的枪的ui
在标签那一栏为层次添加ignore bullet的层的组件
然后把这一栏点选掉,这样就可以使得子弹不对不需要的物体产生作用
接下来我们通过脚本来控制游戏:
因为很多游戏的脚本都会影响UI,比如说替换武器,或者说被敌人击中
所以我们需要其他的脚本方便和HUD进行沟通
using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; public class HUD : MonoBehaviour { private static HUD instance; public static HUD GetInstance() { return instance; } private void Awake() { instance = this; } public Image weaponIcon; public Text bulletNum; public Text hpNum; public void UpdateWeaponUI(Sprite icon,int bullte_num) { weaponIcon.sprite = icon; bulletNum.text = bulletNum.ToString(); } public void UpdateHpUI(int hp_num) { hpNum.text = hp_num.ToString(); } // Start is called before the first frame update }
将这个组件拖拽给UI并为其赋值
不需要和子弹发生碰撞的物体设置为
选中这个 处于这一层的物体 互相都不会进行碰撞检测了
using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; /// <summary> /// 用来更新子弹和血量的数量 /// </summary> public class HUD : MonoBehaviour { private static HUD instance; public static HUD GetInstance() { return instance; } private void Awake() { instance = this; } public Image weaponIcon; public Text bulletNum; public Text hpNum; public void UpdateWeaponUI(Sprite icon,int bullet_num) { weaponIcon.sprite = icon; bulletNum.text = bullet_num.ToString(); } public void UpdateHpUI(int hp_num) { hpNum.text = hp_num.ToString(); } // Start is called before the first frame update }
需要两个层:
开火的时候,上半身要有shoot的动作,但是下半身还是要有走路的状态,因此需要设置mask,并且权重设置为一。
为了能在idle和shoot状态间切换,添加一个bool参数shoot,用状态机脚本idle控制:
我们需要实现,当shoot完一次后自动进入idle状态,所以也就是说,当进入shoot状态时,需要把shoot参数设置为false:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Idle : StateMachineBehaviour
{
public void OnStateEnter(Animator animator, AnimatorStateInfo stateInfo)
{
animator.SetBool("Shoot", false);
}
}
由于具有骨骼动画,所以需要把枪放在人体骨骼手的结点下
为了产生开火效果的提示,可以在开火动画产生后坐力的时候添加一个事件:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。