鼠标交互,物体上面需要有Collider,材质需要变颜色得话,需要使用自己创建得材质。
炮塔转向
设置Layer可以单独选择做碰撞的群体
LayerMask.GetMask("");参数为Layer
判断师表是否点击在UI上
Event.current.IsPointerOverGameObject()==false
data数据类
创建预设
注意yield return的条件
两种销毁:
一是到达销毁。
OnDestory固定函数
[System.Serializable] 可序列化的
StartCorutine();启用协程
yield return new WaitForSeconds()的逻辑判断
老师,这里检测不出来的原因应该是你刚才设置的physical里面的检测layer。
你没有设置 子弹和怪物的layer可以检测。
= =、是不是???
序列化:
按键移动===
void update(){}//没针执行
水平按键 :float h =lnput.GetAxis("Horizontal");
垂直按键:float v = l nput.GetAxis("Vertical");
鼠标滚轮:float mouse = Iput.GetAxis("Mouse Scrollwheel")
物体移动:transForm.Translate(new Vector3(h,mouse,v)*time.deltaime,space.world);//space.world是世界坐标默认是自身坐标
按住catr他会一米一米的移动l
public List emenylist = new List(); void OnTriggerEnter(Collider mnemycol) { if (mnemycol.tag == "enemy") { emenylist.Add(mnemycol.gameObject); } } void OnTriggerExit(Collider mnemycol) { if (mnemycol.tag == "enemy") { emenylist.Remove(mnemycol.gameObject); } }
Edit->Project Settings->Queries Hit Triggers设置射线检测以及其他检测与触发器的关联,若取消勾选,类似于OnMouseEnter这样的射线检测就不会与触发器产生检测。
不是设置碰撞检测矩阵了么,自己忘了?
创建空物体
第十一节,没看懂。
1.创建空物体 作为激光 为其添加Line Renderer组件
2.调试Line Renderer组件
1.添加UI显示和隐藏的动画
2.实现升级回收动画的缩放
using UnityEngine.UI
public Slider hpslider;
privater int totalhp;
hpslider.value = (float)hp/totalhp;