unity3D 塔防游戏

这篇博客详细介绍了使用unity3D开发塔防游戏的过程,包括地图界面设置、摄像机控制、GUI元素、敌人路径规划以及敌人生成器的实现。作者从创建Terrain场景、GridNode和GridMap脚本开始,逐步讲解如何建立地图网格、设置摄像机视角,并实现了敌人的行走路径和攻击逻辑。
摘要由CSDN通过智能技术生成

今天开始进行塔防游戏的学习,


首先,是对地图界面进行设置:

先是做好一个Terrain场景,

然后创建GridNode.cs脚本(用来作判定:是否支持防御塔的安放)

它有一个:MapData类,MapData有一个枚举类型(GuardPosition / CanNotStand)

   默认为:防御点(GuardPosition)

GridNode.cs主类有一个:

 _mapData,成员函数,

OnGizmos()显示位置点


创建GridMap.cs脚本,用以建立一个地图网格:

GridMap Instance (初始化自身)

m_debug  (判定是否显示网格)

MapSizeX  /     MapSizeZ    (网格的长和宽)

m_map[  ,  ]  (二维MapData数据类型,保存场景信息)

-------------------------------

创建地图BuildMap()函数,

初始化m_map;(通过两个for()循环,定义本身为MapData数据类型,并为其填充new MapData数据);

GameObject[ [] nodes,获取地图上所有的GridNode对象,

通过foreach()函数,得到nodes中节点的position,并将相应positio位置对应的m_map二维数组的防守类型进行设置


绘制地图信息OnDrawGizmos()函数:

blue蓝色画线条

red红色绘制网格的模块


==============================================================

===============================================================

2、地图绘制完毕就开始设置摄像机了

先是建立摄像机观察点CameraPoint,

Instance

OnDrawGizmos();<

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值