登录
自2024年5月16日起,中文课堂仅支持使用UnityID登入,如遇问题,请在
开发者社区
发帖说明情况,我们会尽快帮您解决。
《方外桃源》模拟经营建造类游戏开发
¥699 购买
《方外桃源》模拟经营建造类游戏开发
教程
高级
60 小时
Joker
概述
作者信息
教程资料
互动讨论
课程评价
164人收藏,141人学习
登录后开始教程
章节1
地图编辑器
1.
可试看
课程介绍
2.
可试看
地图编辑器准备
3.
可试看
地块配置
4.
可试看
地形数据
5.
可试看
地图编辑器的面板摆放
6.
地图编辑器面板逻辑
7.
地图设置面板
8.
生成地块默认数据
9.
生成地形前的准备工作
10.
生成地块
11.
重新生成地块数据
12.
地块有效面检测
13.
地块模型Inspector预览
14.
显示所有地块预览
15.
地块预览完善
16.
地形操作功能
17.
Scene获取鼠标坐标
18.
Gizmos绘制“选中地块”
19.
根据地块位置绘制Gizmos
20.
修复BUG以及优化代码
21.
确认地形操作
22.
执行地形操作
23.
Shift键切换降低
24.
重构预制体预览脚本
25.
显示地图物品的预览
26.
地图物品放置预览
27.
放置地图物品
28.
优化地形与物品面板细节
29.
移除地图物品
章节2
地图系统视锥体剔除
1.
检测视锥体地图范围
2.
限制视觉范围
3.
绘制视觉范围
4.
重构显示逻辑兼容Runtime
5.
摄像机视野剔除
章节3
摄像机控制
1.
摄像机的三种移动
2.
摄像机高度与旋转
章节4
建筑物编辑器
1.
编辑器布局与地图对象配置
2.
编辑器菜单逻辑
3.
编辑器占位网格
章节5
建造系统
1.
建筑物Icon工作流
2.
制作建造窗口
3.
建造窗口的基本逻辑
4.
建造预览
5.
建造放置检测
6.
取消放置
7.
放置转向
8.
解除格子对配置的依赖
9.
放置建筑物
10.
占位格数据
11.
处理建筑物剔除问题
12.
运行时地形数据
13.
建筑物禁止建造状态
章节6
逻辑框架
1.
统一地图物品配置来源
2.
搭建框架
3.
重构当前逻辑
4.
鼠标事件机制
章节7
存档机制
1.
菜单场景主UI制作
2.
地图选择UI窗口制作
3.
地图选择UI窗口逻辑
4.
重构地图数据结构
5.
场景序列化
6.
场景恢复
7.
建造UI窗口的启用状态
章节8
道路系统
1.
建筑物门数据
2.
建造预览的箭头
3.
重构逻辑层
4.
道路准备
5.
铺路逻辑
6.
建造面板新增拆除选项
7.
移除检测
8.
移除建筑物与道路
章节9
A*导航系统
1.
A*算法基本原理
2.
寻路算法的准备工作
3.
寻路算法的核心实现
4.
寻路测试
5.
新增台阶放置
6.
跨层寻路的邻居检查
7.
完善跨层寻路导航
8.
寻路屏蔽特定节点类型
9.
新增农场建筑物
10.
建筑物放置检测道路连接
章节10
玩家资源
1.
资源信息UI面板
2.
玩家的资源数据
章节11
建造流程重构
1.
重构建筑物预览功能
2.
施工状态建筑物
3.
放置施工建筑物
4.
移除施工建筑物
章节12
任务系统
1.
任务管理器
2.
建造信息预览
3.
施工建筑物的3D UI
4.
模拟搬运任务
章节13
村民系统
1.
基地UI窗口
2.
基地UI窗口基本逻辑
3.
阶段性优化与导入村民素材
4.
基地对村民进行存档
5.
村民逻辑层
6.
任务的预期进度管理
7.
优化任务系统性能
8.
村民导航
9.
村民走起来
10.
导航BUG修复
11.
视野剔除村民
12.
游戏时间
13.
优化掉首次创建建筑物的标志位
14.
状态存档
15.
建筑初始化流程修改以及任务状态恢复
16.
由建筑物分配搬运任务
17.
村民可见性
18.
任务的中断逻辑
19.
任务的进度通知
20.
阶段性问题修复
21.
跨层搬运
22.
城堡资源同步
23.
基地操作减少工人
24.
防止过河拆桥
25.
梳理角色导航代码
章节14
伐木场
1.
放置伐木场
2.
伐木场UI
3.
村民的人员调度
4.
村民移动到新的工作场地
5.
批量预览功能
6.
伐木场标记按距离排序
7.
伐木场安排村民去伐木
8.
工人伐木逻辑
9.
增加搬回物资状态
10.
伐木场发布搬走木材任务
11.
基地派遣工人搬回物资
12.
基地容量控制
章节15
仓库
1.
放置仓库
2.
仓库UI窗口
3.
仓库逻辑完善
4.
建筑物销毁善后
章节16
采石场
1.
放置采石场
2.
采石场UI
3.
采石场逻辑完善
章节17
昼夜与时间系统
1.
时间数据与灯光控制
2.
建筑物夜晚亮灯
3.
建筑物增加派遣CD
4.
工人下班回家状态
5.
矿区上下班逻辑
6.
基地上下班逻辑
7.
伐木场上下班逻辑
章节18
住宅建筑物
1.
仓库上下班逻辑
2.
放置住宅
3.
住宅UI
4.
分配住宅
5.
住宅销毁
6.
住宅销毁时村民居住地寻找
7.
住宅繁衍逻辑
章节19
农场逻辑
1.
树木与伐木场互动
2.
批量预览功能重构
3.
农场建筑物UI窗口
4.
植物逻辑基类
5.
植物的Config
6.
植物View层
7.
新增小麦与土豆
8.
农场标记区域
9.
农场基础逻辑
10.
AI耕种逻辑
11.
农场派遣耕地
12.
植物生长逻辑
13.
消耗食物
14.
游戏暂停窗口
15.
植物相关逻辑补充
16.
BUG补充
摘要
课程最终成果是一个模拟经营游戏,但是不是控制一个单位种田,而是养一个族群,经营的是村落。项目完整,具备全流程
课程完结,一共164节,效果请看第一节课 课程介绍
Unity交流群:885222391,无需购买课程即可加入
本课程专属交流群:125645899,需购买本课程后加入,加群时需要填写 LearnID (点击头像 选择我的学习,即可看到LearnID )
框架+方外课程包(八折):https://learn.u3d.cn/bundle/joker
课程前置问题
不是入门课程,也不是一个小案例,需要对C#面向对象思想较为了解,Unity部分做过一些案列
编辑器拓展相关内容也较多,但是跟着做问题也不大
课程基于JKFrame2.0
关于这个框架的原理课程(框架实现):https://learn.u3d.cn/tutorial/indie-framework-joker
关于这个框架的使用课程(免费):https://learn.u3d.cn/tutorial/jkframe2
直接跟着课程做,也是一种选择,也会简单讲解框架
课程主要特点
编辑器拓展相关内容较多
地形、花草树木、建筑物、AI等皆采用显示和逻辑完全分离的方式来制作
完整度较高,除了从开始游戏到游戏结束的流程外,还包含存档机制、游戏音效、屏幕分辨率等设置界面
造轮子较多
游戏逻辑完全自己驱动,GameObject只是一个显示层,存档还原到动画播放到第几帧的程度
课程主要内容
地图编辑器:用于在Editor下生成地图,地图为类似Cube的格子状
运行时地图系统:只显示视野范围内的格子,并且只显示看的到的面
A*寻路导航系统:基于地图系统制作,主要用于村民的移动,不基于第三方插件
建造系统:放置建筑物等待村民来搭建的机制
建筑物编辑器:核心是编辑建筑物在格子上面的体积、中心点、旋转情况(建造时键盘Q旋转建筑物)
道路规划系统:铺路,道路会让村民移动更快,村民优先行走在道路上,利用台阶去跨越层高
昼夜系统:主要表现在整体灯光、建筑物灯火表现上
村民系统:村民的AI,基于建筑物的劳作,村民有食物、昼出夜伏等特性
存档系统:中途退出、还原游戏等
主要建筑物
基地:初始大仓库
采石场:堆石头的,村民基于这个建筑物采石
伐木场:放木头的,村民基于这个建筑物砍树
农场:村民基于这个建筑物农作,种植等
仓库:存储物资
村民AI主要行为
采石:下矿采石
伐木:去砍树,然后拿着木材会伐木场,伐木场发布任务,仓库的人会将木材搬到仓库
农场:根据玩家规划的田地和作物类型撒种子。收割阶段类似伐木
搬货:搭建时送物资,以及将资源从采石场、伐木场等区域搬运到基地等
搭建:玩家搭建建筑物并不是瞬间完成的,只是下达一个命令,需要村民去搬物资来建造
白天在工作地点工作,晚上回家睡觉,表现出昼出夜伏
其他同规模课程:《Unity类饥荒3D生存游戏》课程地址:https://learn.u3d.cn/tutorial/jihuang-shengcun-joker
标签
村民AI
建造系统
A*寻路
建议的Unity版本
2021.1 - 2022.1
教程
《方外桃源》模拟经营建造类游戏开发
开始教程
电脑配置不足?
Unity云桌面,为Unity而生的云开发平台。
即可体验
教程
《方外桃源》模拟经营建造类游戏开发
登录后开始教程
章节
1
地图编辑器
1.
可试看
课程介绍
2.
可试看
地图编辑器准备
3.
可试看
地块配置
4.
可试看
地形数据
5.
可试看
地图编辑器的面板摆放
6.
地图编辑器面板逻辑
7.
地图设置面板
8.
生成地块默认数据
9.
生成地形前的准备工作
10.
生成地块
11.
重新生成地块数据
12.
地块有效面检测
13.
地块模型Inspector预览
14.
显示所有地块预览
15.
地块预览完善
16.
地形操作功能
17.
Scene获取鼠标坐标
18.
Gizmos绘制“选中地块”
19.
根据地块位置绘制Gizmos
20.
修复BUG以及优化代码
21.
确认地形操作
22.
执行地形操作
23.
Shift键切换降低
24.
重构预制体预览脚本
25.
显示地图物品的预览
26.
地图物品放置预览
27.
放置地图物品
28.
优化地形与物品面板细节
29.
移除地图物品
章节
2
地图系统视锥体剔除
1.
检测视锥体地图范围
2.
限制视觉范围
3.
绘制视觉范围
4.
重构显示逻辑兼容Runtime
5.
摄像机视野剔除
章节
3
摄像机控制
1.
摄像机的三种移动
2.
摄像机高度与旋转
章节
4
建筑物编辑器
1.
编辑器布局与地图对象配置
2.
编辑器菜单逻辑
3.
编辑器占位网格
章节
5
建造系统
1.
建筑物Icon工作流
2.
制作建造窗口
3.
建造窗口的基本逻辑
4.
建造预览
5.
建造放置检测
6.
取消放置
7.
放置转向
8.
解除格子对配置的依赖
9.
放置建筑物
10.
占位格数据
11.
处理建筑物剔除问题
12.
运行时地形数据
13.
建筑物禁止建造状态
章节
6
逻辑框架
1.
统一地图物品配置来源
2.
搭建框架
3.
重构当前逻辑
4.
鼠标事件机制
章节
7
存档机制
1.
菜单场景主UI制作
2.
地图选择UI窗口制作
3.
地图选择UI窗口逻辑
4.
重构地图数据结构
5.
场景序列化
6.
场景恢复
7.
建造UI窗口的启用状态
章节
8
道路系统
1.
建筑物门数据
2.
建造预览的箭头
3.
重构逻辑层
4.
道路准备
5.
铺路逻辑
6.
建造面板新增拆除选项
7.
移除检测
8.
移除建筑物与道路
章节
9
A*导航系统
1.
A*算法基本原理
2.
寻路算法的准备工作
3.
寻路算法的核心实现
4.
寻路测试
5.
新增台阶放置
6.
跨层寻路的邻居检查
7.
完善跨层寻路导航
8.
寻路屏蔽特定节点类型
9.
新增农场建筑物
10.
建筑物放置检测道路连接
章节
10
玩家资源
1.
资源信息UI面板
2.
玩家的资源数据
章节
11
建造流程重构
1.
重构建筑物预览功能
2.
施工状态建筑物
3.
放置施工建筑物
4.
移除施工建筑物
章节
12
任务系统
1.
任务管理器
2.
建造信息预览
3.
施工建筑物的3D UI
4.
模拟搬运任务
章节
13
村民系统
1.
基地UI窗口
2.
基地UI窗口基本逻辑
3.
阶段性优化与导入村民素材
4.
基地对村民进行存档
5.
村民逻辑层
6.
任务的预期进度管理
7.
优化任务系统性能
8.
村民导航
9.
村民走起来
10.
导航BUG修复
11.
视野剔除村民
12.
游戏时间
13.
优化掉首次创建建筑物的标志位
14.
状态存档
15.
建筑初始化流程修改以及任务状态恢复
16.
由建筑物分配搬运任务
17.
村民可见性
18.
任务的中断逻辑
19.
任务的进度通知
20.
阶段性问题修复
21.
跨层搬运
22.
城堡资源同步
23.
基地操作减少工人
24.
防止过河拆桥
25.
梳理角色导航代码
章节
14
伐木场
1.
放置伐木场
2.
伐木场UI
3.
村民的人员调度
4.
村民移动到新的工作场地
5.
批量预览功能
6.
伐木场标记按距离排序
7.
伐木场安排村民去伐木
8.
工人伐木逻辑
9.
增加搬回物资状态
10.
伐木场发布搬走木材任务
11.
基地派遣工人搬回物资
12.
基地容量控制
章节
15
仓库
1.
放置仓库
2.
仓库UI窗口
3.
仓库逻辑完善
4.
建筑物销毁善后
章节
16
采石场
1.
放置采石场
2.
采石场UI
3.
采石场逻辑完善
章节
17
昼夜与时间系统
1.
时间数据与灯光控制
2.
建筑物夜晚亮灯
3.
建筑物增加派遣CD
4.
工人下班回家状态
5.
矿区上下班逻辑
6.
基地上下班逻辑
7.
伐木场上下班逻辑
章节
18
住宅建筑物
1.
仓库上下班逻辑
2.
放置住宅
3.
住宅UI
4.
分配住宅
5.
住宅销毁
6.
住宅销毁时村民居住地寻找
7.
住宅繁衍逻辑
章节
19
农场逻辑
1.
树木与伐木场互动
2.
批量预览功能重构
3.
农场建筑物UI窗口
4.
植物逻辑基类
5.
植物的Config
6.
植物View层
7.
新增小麦与土豆
8.
农场标记区域
9.
农场基础逻辑
10.
AI耕种逻辑
11.
农场派遣耕地
12.
植物生长逻辑
13.
消耗食物
14.
游戏暂停窗口
15.
植物相关逻辑补充
16.
BUG补充