27823人加入学习
(125人评价)
如何制作塔防游戏(基于Unity5.5)
价格 免费

判断是否点击在UI上:752-30

using UnityEngine.EventSystems;

EventSystem.current.IsPointerOverGameObject()==false  没有点击在UI上

[展开全文]
大漠孤烟qjc · 2019-06-20 · 该任务已被删除 0

改画布为world space进行渲染,移除背景图片和canvas render。文字改为开始游戏,将canvas调至炮台头部,适当调整其位置使其合适,同样步骤创建退出按钮,适当调整摄像机位置使其游戏视图完整。改按钮button脚本transition为animation,改animation的controller为按钮,

[展开全文]
吼后 · 2019-06-19 · 该任务已被删除 0

创建end动作文件夹,给背景的alpha值添加关键帧,game over改变位置使其自上而下出现,重玩和菜单则从两边过来,添加位置关键帧

[展开全文]
吼后 · 2019-06-19 · 该任务已被删除 0

void onTriggerEnter(Collider col)

{

if(col.tag=="Enemy")

{col.GetComponent<Enemy>().TakeDamage(damage);

}}

[展开全文]
吼后 · 2019-06-18 · 该任务已被删除 0

视频中的void UpdateEnemys();方法可以简化成:void UpdateEnemys()
    {
        for (int i = 0; i < Enemys.Count; i++)
        {
            if (Enemys[i]==null)
            {
                Enemys.RemoveAt(i);
                i--;
            }
        }
    }

移除空元素后,索引减一,Enemys数量减一,

新生成一个Enemys集合,索引 i 前无空对象,只需再查找i和i后的集合。

视频中搞复杂了

[展开全文]
高伟程 · 2019-04-13 · 该任务已被删除 0

  

[展开全文]
gaochuang · 2019-02-18 · 该任务已被删除 0

在视频中并没有调用OnDestory方法,会导致报错,应该在摧毁物体的同时调用该方法。

[展开全文]
晓臣同学 · 2019-02-18 · 该任务已被删除 0

IEnumerator SpawnEnemy()

{

}

[展开全文]
铭纹 · 2019-01-07 · 该任务已被删除 0

EventSystem.current.IsPointerOverGameObject()  

鼠标是否放在UI上

Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);

返回鼠标到摄像机的射线。

 

 

[展开全文]
Eskimo · 2018-12-24 · 该任务已被删除 0

Horizontal

Vertical

Horizongtal

Vertical

Mouse ScrollWheel

Mouse ScrollWheel

[展开全文]
Eskimo · 2018-12-24 · 该任务已被删除 0

Scenes 场景

Plane 平面材质

Cuba 立方体

[展开全文]
张裕强 · 2018-12-06 · 该任务已被删除 0

在当前摄像机下利用点击生成射线的函数

Camera.main如果不是使用的初始摄像机

最好还是再新建一个变量来保存摄像机的信息

视频中的Physics.Raycast是一个有两个输出值得函数

out关键字后的那个也是输出

out关键字类似于ref

[展开全文]
轮椅精英残疾攻势 · 2018-12-05 · 该任务已被删除 0

Transform是一个类,用来描述物体的位置,大小,旋转等等信息。
transform是Transform类的对象,依附于每一个物体。也是当前游戏对象的一个组件(每个对象都会有这个组件)

[展开全文]
.陈国海 · 2018-12-01 · 该任务已被删除 0

敌人的生成脚本:

Wave

public Class Wave{}

[展开全文]
道雪 · 2018-11-01 · 该任务已被删除 0

创建一个NPC调整到合适的位置大小和颜色

取消开始和结束点的碰撞体

//NPC脚本

可以直接使用Unity中自带的寻路系统,烘焙路径!

用做路径的cube要勾选static!

移动物体()需要添加Nav Mesh Agent组件

[展开全文]
道雪 · 2018-11-01 · 该任务已被删除 0
[System.Serializable]    //表示可序列化的,即可以在Inspector面板显示出来
IEnumerator SpawnEnemy(){}    //协程
foreach(){}    //遍历数组array里的每一个元素
for(){}
GameObject.Instantiate();
yirld return new WaitForSeconds();

 

[展开全文]
yzt123 · 2018-10-06 · 该任务已被删除 0
void Move(){}
transform.Translate();
    positions[index].position
    transform.position
    noemalized
if(){}
Vector3.Distance()

 

[展开全文]
yzt123 · 2018-10-04 · 该任务已被删除 0

使用数组来管理路径点。

public static Transform[] positions;
position=new Transform[];
    transform.childCount.
for(;;){}
    positions.Length,
    position[i]=transform.GetChild(i).

 

[展开全文]
yzt123 · 2018-10-03 · 该任务已被删除 0
Input.GetAxis("");
    Horizontal,
    Vertical,
    Mouse ScrollWheel.
transform.Translate();
    new Vector3(),
    Time.deltaTime,
    Space.World.

 

[展开全文]
yzt123 · 2018-10-03 · 该任务已被删除 0

private Transform[] positions;

private int index = 10;

void start(){

}

void Update(){

Mave();

}

void Mave(){

 

}

[展开全文]
hengrong · 2018-09-17 · 该任务已被删除 0