自2024年5月16日起,中文课堂仅支持使用UnityID登入,如遇问题,请在开发者社区发帖说明情况,我们会尽快帮您解决。
原价 ¥299
优惠剩余:0天0时0分

类《双人成行》3D动作益智冒险类双人控制游戏开发教程

教程
中级
23 小时40 分钟
概述
作者信息
教程资料
互动讨论
课程评价
11人收藏,6人学习
章节4
游戏业务逻辑制作
1.
Unity3d开发的C#编码规范
2.
开始场景UI及业务逻辑制作
3.
开始场景代码逻辑完成
4.
开始场景完成及开始主场景制作
5.
使用我们的MVCUI框架制作主场景UI
6.
主场景UI排行榜及单机模式
7.
主场景UI按钮中图片镜像和圆角shader_上
8.
主场景UI按钮中图片镜像和圆角shader_下
9.
主场景UI乱斗模式制作
10.
主场景UI主窗口和视口UI完成
11.
关卡选择弹出窗口Prefab及UI开始
12.
关卡选择弹出窗口中间部分
13.
关卡选择弹出窗口完成
14.
将主窗口和关卡选择窗口进行代码串联
15.
补充关卡选择弹出窗口的开始游戏的部分代码
16.
异步加载关卡的场景制作的准备
17.
异步加载关卡的场景的UI制作
18.
异步加载关卡的场景的代码及功能完成
19.
单机场景的GameHud的UI顶上部分制作
20.
单机场景的GameHud的UI下半部分制作
21.
GameHud遥杆和暂停面版UI制作
22.
通关窗口面版UI制作
23.
通关窗口面版UI完成和过关失败面版UI制作
24.
通关失败面版UI完成和总UI控制脚本制作
25.
GameHud面版增加业务逻辑
26.
暂停-通关-失败面版UI及脚本的字段绑定完成
27.
猴子怪物角色Animator动画制作
28.
猴子怪物角色_怪物脚本的通用类制作_上
29.
猴子怪物角色_怪物脚本的通用类制作_下
30.
猴子怪物角色_敌人脚本变量声明和start
31.
猴子怪物角色_敌人脚本攻击伤害
32.
猴子怪物角色_敌人脚本代码完成
33.
猴子怪物角色_增加声音+特效效果和最终效果
34.
Hud面版摇杆完成及双主角制作开始
35.
双主角制作前的预备代码补充
36.
双主角的Animator动画状态机的制作
37.
双主角的Player的脚本制作
38.
双主角的Animator和控制脚本完成
章节6
关卡数据
1.
关卡数据的读取和初始化完成
2.
关卡数据的读取和初始化bug修复
3.
关卡数据应用在关卡场景的业务中
4.
关卡的游戏进度保存
5.
关卡中玩家死亡后复活
6.
单机关卡业务逻辑整理_宝石更新
7.
双角色吃宝石并更新UI
8.
关卡游戏业务更新
9.
过关页面UI绑定及计算星级
10.
过关的星级计算完成
11.
过关的业务逻辑完成并验证
12.
游戏的背景音按钮音和环境材质
13.
制作当前关卡逻辑通用脚本
14.
制作开关的动画剪辑
15.
制作开关的动画Animator和脚本3
16.
制作开关的脚本完成
17.
制作和开关关联的浮板的制作
18.
制作开关关联浮板的业务逻辑
19.
通用业务_金币系统_1
20.
通用业务_金币系统_2
21.
关卡3的关卡脚本编写和浮板功能
22.
制作具有延迟属性的浮板功能
23.
具有延迟属性的浮板功能完成
24.
实现具有按下和抬起两状态功能的按钮
25.
浮动面版实现并和两状态按钮交互_1
26.
浮动面版实现并和两状态按钮交互_2
27.
关卡4-制作绑定按钮的栅栏的抬起和下落
28.
按压按钮和栅栏的功能关联
29.
入口处风力和螺旋桨效果
30.
开关和入口处风力及螺旋桨的绑定
31.
生成具有对象池技术的铁球障碍物
32.
对象池技术及铁球障碍物的消除
33.
随机生成我们的铁球障碍物
34.
铁球障碍物随机生成并修改bug测试效果
35.
摄像机和主角之间的障碍物视线剔除
36.
关卡5-游戏逻辑介绍和螺旋桨技能物品开始
37.
给角色增加螺旋桨技能物品
38.
螺旋桨技能物品完成和开始制作石梯
39.
石梯完成并制作关联的按钮逻辑
40.
石梯和按钮关联逻辑完成并测试整体关卡
41.
增加乱斗模式-开始打怪
42.
乱斗场景完成开始打怪
43.
小鹿铁球怪动画素材制作
44.
107小鹿铁球怪主体脚本
45.
小鹿铁球怪主体脚本完成
46.
小鹿铁球怪铁球孵化
47.
小鹿铁球怪场景资源关联和功能调试
章节7
双人联机房间模式
1.
111双人联机游戏服务器介绍及DEMO编译运行
2.
112双人联机游戏服务器DEMO编译运行_1
3.
113双人联机游戏服务器DEMO编译运行_2
4.
114双人联机游戏服务器DEMO源码讲解整体架构
5.
115双人联机游戏服务器DEMO服务端和客户端源码讲解_1
6.
116双人联机游戏服务器DEMO服务端和客户端源码讲解_2
7.
117双人联机房间主窗口UI建立_1
8.
118双人联机房间主窗口UI建立_2
9.
119双人联机房间加入房间窗口UI建立
10.
120双人联机登陆服务器弹出窗口UI
11.
121双人联机通用信息提示弹出窗口UI
12.
122双人联机Unity通用通讯组件的基本实现_1
13.
123双人联机Unity通用通讯组件的基本实现_2
14.
124双人联机Unity通用通讯组件-Player脚本修改
15.
125双人联机登陆和注册游戏服务器业务字段声明及绑定
16.
126双人联机登陆和注册网络信息函实现
17.
127双人联机登陆到我们的游戏服务器
18.
128双人联机建立帐号及服务器响应信息
19.
129双人联机通讯部分协议_建立房间
20.
130双人联机通讯部分协议_进入删除离开房间
21.
131双人联机在线房间的业务编写
22.
132双人联机在线主房间的UI对应字段的绑定和状态完成
23.
133双人联机在线主房间的在线状态实现及各响应
24.
134双人联机在线主房间的改变玩家状态
25.
135双人联机在线主房间的建立房间
26.
136双人联机在线主房间的进入房间
27.
137双人联机在线主房间的加入房间实现
28.
138双人联机在线主房间的改变玩家类型(男女)
29.
139双人联机通用信息提示框及整体演示
30.
140双人联机关卡对象交互场景建立
31.
141双人联机资源关卡场景建立及流程场景演示
32.
142双人联机关卡编辑器制制作
33.
143双人联机服务器端房间内加载关卡及交互对象如宝石
34.
144双人联机服务器端房间内玩家吃掉宝石
35.
145双人联机客户端映射服务器端的绿宝石生成
36.
146双人联机客户端绿宝石生成完成-两个用户联机测试功能
摘要

注意:本教程补充了剩余的功能模块 - 双人联机房间版的多人网络游戏功能模块,并且还在持续更新中。

一、课程由来
记得以前玩“双人同行”和“冰火人”等3D 冒险类游戏时,就有一个梦想,即作出这样的游戏。今天有幸腾出时间和精力完成这样的作品,希望更多的人投入到这样的梦想中来。
二、课程内容
本教程是一篇Unity从入门到精通的3D动作益智冒险类双人联机房间类游戏课程。玩家既可以控制两个角色——威廉和安娜,通过他们的协作来克服各种障碍,完成关卡挑战‌。
另外也可以和网络上的其它玩家通过房间号进入同一个房间进行游戏。
教程并不是纯项目源码讲解,而是提前策划功能,然后逐步实现,代码也是边写边讲解的,所以既适合初学者,也适合有一定经验的朋友进行学习。
如果学习者学完并掌握了我的课程,相信能制作出和本教程一样的3D动作益智冒险类游戏。
三、游戏玩法
进入游戏主界面,有三种玩法,第一种是单机模式,第二种是联机模式即类《双人同行》、第三种是乱斗模式。
第一种-单机模式(单人操作模式),玩家需要操作两个角色,两个角色配合过关,目前实现了7个关卡,后面会不定期增加;在每个关卡里威廉和安娜一起冒险,根据限定的游戏时间、闯关是否成功、收集到所有的金币、宝石才能过关,并进行关卡评级。
第二种-乱斗模式(单人操作模式),玩家操作角色进行打怪过关,当所有的怪物被消灭后即可完成关卡。
第三种-双人模式(双人联机房间模式)即类《双人同行》玩法,该玩法需要用户先进行用户注册,以从“游客”角色转变成“登陆用户”,从而登陆到后台服务器端。具体为,一个玩家首先进行用户注册,然后建立房间,并把房间号告诉给别的玩家;另一个注册玩家拿到房间号后通过房间号查询并登陆到同一个房间,就可以进行类《双人同行》的玩法了。
四、游戏项目特点
* 新颖的游戏风格:3D开放空间中双人协作过关
* 游戏模式1:用户双人控制模式,一人饰两角,双人配合协同过关
* 游戏模式2:乱斗模式,经典RPG风格 - 和关卡内的各种怪物进行战斗
* 游戏模式3:双人模式(双人联机房间模式)即类《双人同行》玩法
* 通用关卡逻辑的封装:在每个关卡复用同一套过关逻辑
* 各关卡独立部分的游戏逻辑封装:每关通过逻辑接口派生的方式衍生出各自独有的游戏逻辑
* 主角和怪物角色脚本动画组件:通用的角色脚本,支持角色的逻辑业务,如idle、追逐、攻击等等,方便建立你自己的怪物角色。
* 通用的模型动画功能组件:功能组件有,如模型的简单、复杂运动的封装(旋转,移动、来回移动、多次移动)、各种功能性的开关(一次按钮触发,持续触发)、辅助角色加速跳跃的螺旋桨和模拟风力的粒子效果等等。然后可以通过这些已经封装好的众多功能组件,组合出可复用的创意形功能,当然你也可以开发出自己特有的功能组件,然后结合项目中其它功能组件组合出更多的创意形的关卡。
五、项目中学到的东西
* 游戏教程适合初学者,同时适合中高级Unity开发人员,原因如下
* 项目的开发以逐步功能的实现为顺序准则,代码也是尽量以逐行手写的方式,力求大部分学习者能够学习到游戏开发的习惯和完整的游戏开发技术
* Unity中角色控制和Animator动画:首先使用5节基础实操课进行讲解以帮助入门,然后通过若干节的课程,讲解主角和怪物的实现,以帮助更深入的掌握
* 关卡复用的“模型动画功能组件”的制作:帮助大家掌握动画的制作,通过这部分内容大家同时也能学到3D数学在游戏开发中的使用。
* MVC的UI游戏框架的学习:首先使用9节课程进行MVC的基础DEMO讲解;然后通过若干节的课程,讲述在游戏中MVC框架的业务实现技术细节,以帮助更深入的掌握。
* 多人在线的游戏服务器开发:首先使用6节课进行基于C++和Python的游戏服务端的讲解,然后使用若干节课进行类《双人同行》的双人联机的网络游戏的开发学习。
* “图形学相关的知识和3D数学应用”在项目功能开发中进行了完整的讲解:如Vecto3向量、Quaternion方位、模型旋转之插值计算方法、Vector3.Dot点乘计算角度等等都在项目开发中应用并进行了详细的讲解。
* 教程遵循严格的C#编码规范:帮助大家养成良好的编码习惯,以适应正规公司多人协同下的开发流程
六、学习者需要的基础
*掌握基本的C#编码经验
*基本的Unity编辑器的使用
*由于教程是包含有基础部分的,所以不强制要求学习者掌握游戏图形学方面的知识
七、关键技术架构
* 商用级别的MVC UI框架
* 基于KBEngine分布式的多人在线游戏服务器,C++和Python的游戏中心架构技术
* 所有关卡可复用且通用的关卡逻辑
* 当前关卡独有的通用关卡逻辑(所有关卡派生功能)
* 对象池技术:对象的生成和回收复用技术,如关卡4中采用的铁球障碍物
* 通用且可复用的模型动画功能组件
* 乱斗模式中怪物的可复用技术,多种类型怪物通用同一套功能架构
建议的Unity版本
2022.3 - 团结1.1
教程
类《双人成行》3D动作益智冒险类双人控制游戏开发教程
电脑配置不足?
Unity云桌面,为Unity而生的云开发平台。
即可体验
章节4
游戏业务逻辑制作
1.
Unity3d开发的C#编码规范
2.
开始场景UI及业务逻辑制作
3.
开始场景代码逻辑完成
4.
开始场景完成及开始主场景制作
5.
使用我们的MVCUI框架制作主场景UI
6.
主场景UI排行榜及单机模式
7.
主场景UI按钮中图片镜像和圆角shader_上
8.
主场景UI按钮中图片镜像和圆角shader_下
9.
主场景UI乱斗模式制作
10.
主场景UI主窗口和视口UI完成
11.
关卡选择弹出窗口Prefab及UI开始
12.
关卡选择弹出窗口中间部分
13.
关卡选择弹出窗口完成
14.
将主窗口和关卡选择窗口进行代码串联
15.
补充关卡选择弹出窗口的开始游戏的部分代码
16.
异步加载关卡的场景制作的准备
17.
异步加载关卡的场景的UI制作
18.
异步加载关卡的场景的代码及功能完成
19.
单机场景的GameHud的UI顶上部分制作
20.
单机场景的GameHud的UI下半部分制作
21.
GameHud遥杆和暂停面版UI制作
22.
通关窗口面版UI制作
23.
通关窗口面版UI完成和过关失败面版UI制作
24.
通关失败面版UI完成和总UI控制脚本制作
25.
GameHud面版增加业务逻辑
26.
暂停-通关-失败面版UI及脚本的字段绑定完成
27.
猴子怪物角色Animator动画制作
28.
猴子怪物角色_怪物脚本的通用类制作_上
29.
猴子怪物角色_怪物脚本的通用类制作_下
30.
猴子怪物角色_敌人脚本变量声明和start
31.
猴子怪物角色_敌人脚本攻击伤害
32.
猴子怪物角色_敌人脚本代码完成
33.
猴子怪物角色_增加声音+特效效果和最终效果
34.
Hud面版摇杆完成及双主角制作开始
35.
双主角制作前的预备代码补充
36.
双主角的Animator动画状态机的制作
37.
双主角的Player的脚本制作
38.
双主角的Animator和控制脚本完成
章节6
关卡数据
1.
关卡数据的读取和初始化完成
2.
关卡数据的读取和初始化bug修复
3.
关卡数据应用在关卡场景的业务中
4.
关卡的游戏进度保存
5.
关卡中玩家死亡后复活
6.
单机关卡业务逻辑整理_宝石更新
7.
双角色吃宝石并更新UI
8.
关卡游戏业务更新
9.
过关页面UI绑定及计算星级
10.
过关的星级计算完成
11.
过关的业务逻辑完成并验证
12.
游戏的背景音按钮音和环境材质
13.
制作当前关卡逻辑通用脚本
14.
制作开关的动画剪辑
15.
制作开关的动画Animator和脚本3
16.
制作开关的脚本完成
17.
制作和开关关联的浮板的制作
18.
制作开关关联浮板的业务逻辑
19.
通用业务_金币系统_1
20.
通用业务_金币系统_2
21.
关卡3的关卡脚本编写和浮板功能
22.
制作具有延迟属性的浮板功能
23.
具有延迟属性的浮板功能完成
24.
实现具有按下和抬起两状态功能的按钮
25.
浮动面版实现并和两状态按钮交互_1
26.
浮动面版实现并和两状态按钮交互_2
27.
关卡4-制作绑定按钮的栅栏的抬起和下落
28.
按压按钮和栅栏的功能关联
29.
入口处风力和螺旋桨效果
30.
开关和入口处风力及螺旋桨的绑定
31.
生成具有对象池技术的铁球障碍物
32.
对象池技术及铁球障碍物的消除
33.
随机生成我们的铁球障碍物
34.
铁球障碍物随机生成并修改bug测试效果
35.
摄像机和主角之间的障碍物视线剔除
36.
关卡5-游戏逻辑介绍和螺旋桨技能物品开始
37.
给角色增加螺旋桨技能物品
38.
螺旋桨技能物品完成和开始制作石梯
39.
石梯完成并制作关联的按钮逻辑
40.
石梯和按钮关联逻辑完成并测试整体关卡
41.
增加乱斗模式-开始打怪
42.
乱斗场景完成开始打怪
43.
小鹿铁球怪动画素材制作
44.
107小鹿铁球怪主体脚本
45.
小鹿铁球怪主体脚本完成
46.
小鹿铁球怪铁球孵化
47.
小鹿铁球怪场景资源关联和功能调试
章节7
双人联机房间模式
1.
111双人联机游戏服务器介绍及DEMO编译运行
2.
112双人联机游戏服务器DEMO编译运行_1
3.
113双人联机游戏服务器DEMO编译运行_2
4.
114双人联机游戏服务器DEMO源码讲解整体架构
5.
115双人联机游戏服务器DEMO服务端和客户端源码讲解_1
6.
116双人联机游戏服务器DEMO服务端和客户端源码讲解_2
7.
117双人联机房间主窗口UI建立_1
8.
118双人联机房间主窗口UI建立_2
9.
119双人联机房间加入房间窗口UI建立
10.
120双人联机登陆服务器弹出窗口UI
11.
121双人联机通用信息提示弹出窗口UI
12.
122双人联机Unity通用通讯组件的基本实现_1
13.
123双人联机Unity通用通讯组件的基本实现_2
14.
124双人联机Unity通用通讯组件-Player脚本修改
15.
125双人联机登陆和注册游戏服务器业务字段声明及绑定
16.
126双人联机登陆和注册网络信息函实现
17.
127双人联机登陆到我们的游戏服务器
18.
128双人联机建立帐号及服务器响应信息
19.
129双人联机通讯部分协议_建立房间
20.
130双人联机通讯部分协议_进入删除离开房间
21.
131双人联机在线房间的业务编写
22.
132双人联机在线主房间的UI对应字段的绑定和状态完成
23.
133双人联机在线主房间的在线状态实现及各响应
24.
134双人联机在线主房间的改变玩家状态
25.
135双人联机在线主房间的建立房间
26.
136双人联机在线主房间的进入房间
27.
137双人联机在线主房间的加入房间实现
28.
138双人联机在线主房间的改变玩家类型(男女)
29.
139双人联机通用信息提示框及整体演示
30.
140双人联机关卡对象交互场景建立
31.
141双人联机资源关卡场景建立及流程场景演示
32.
142双人联机关卡编辑器制制作
33.
143双人联机服务器端房间内加载关卡及交互对象如宝石
34.
144双人联机服务器端房间内玩家吃掉宝石
35.
145双人联机客户端映射服务器端的绿宝石生成
36.
146双人联机客户端绿宝石生成完成-两个用户联机测试功能