紫禁之巅-Unity游戏开发教程:勇者斗恶龙之魔法石

说明

开设了一个unity游戏开发课程,可以帮助对游戏开发有兴趣的小伙伴学习Unity游戏开发的知识和技术,课程地址

第一节课的课件是游戏工程,第二节的课件是大纲,和文章内相同,其它章节的课件和第一节课的相同,不需要重复下载

课程大纲

课程简介

开设课程是为了帮助对游戏开发感兴趣的小伙伴掌握游戏开发的思路、方法、技术。

为了帮助学员掌握开发游戏的思路、技术,课程通过一个从零开发的第三视角的战斗探险游戏案例来讲解开发中的知识。

为了学员有参考、实际学习、工作中能方便使用学到的东西,课程提供了笔者从零开发的Unity游戏工程,包含源码。

先给大家展示游戏,代码。

项目工程对学员掌握原理、回顾知识非常有用,因为项目的代码整洁,遵循代码规范,方便阅读和学习;对原理细节和实现的注释详细;这些可以帮助学员快速熟悉代码,掌握原理,回顾知识。

游戏简介

巨龙们守卫着魔法石,魔法石拥有巨大的魔力,魔王得到它就会把世界上所有的西瓜抢走一半!我们的勇者要阻止魔王拿到魔法石,捍卫人类的吃瓜自由!

玩家使用一个主角在地图内移动,打怪。当主角获得魔法石时,游戏胜利。当主角阵亡时,游戏失败。

课程的内容和技术

通过本课程学员可以掌握如下知识和技术

  • 关卡:游戏关卡,实体管理,英雄、怪物
  • 配置数据:数据管理,索引
  • AI状态机:AI思考,状态机,C#泛型,C#继承
  • 寻路:Unity新版寻路,寻路的基本方法
  • 处理玩家操作:Input模块
  • 镜头:镜头控制器和Cinemachine
  • 物理检测:Layer,碰撞检测,交叠检测,性能优化
  • 战斗逻辑:技能,伤害计算,子弹,视野、攻击范围,挂点,道具
  • 资源加载
  • 特效:显示、创建、销毁
  • UI系统:UI框架,头顶血条(Hud),常规UI
  • URP渲染技术:视野雾效,设置URP渲染管线,自定义RenderFeature、RenderPass,编写URP视野雾Shader
  • 结算和场景加载
  • 打包PC包

准备环境

本节介绍工程使用的开发环境

难度:入门

unity hub

https://public-cdn.cloud.unity3d.com/hub/prod/UnityHubSetup.exe

unity 2022.3.9f1

visual studio 2022

关卡

本节讲述设计关卡的思路和方法

难度:中级

  • 实体管理
  • 英雄
  • 怪物

配置数据

本节介绍游戏中各类配置数据

难度:入门

  • 配置关卡
  • 单位
  • 技能

AI状态机

这一节讲解什么是状态机,为什么用状态机开发AI,怎么利用状态机开发AI

难度:中级

  • unity动画状态机演示,让大家有个直观印象
  • 英雄状态机,分析游戏的英雄需要哪些状态,设计状态机
  • 怪物状态机,分析怪物需要哪些状态,设计状态机
  • 实现状态机框架

Unity寻路

这一节讲解在项目中使用2022之后Unity的新版寻路模块

难度:中级

  • 引入unity新版寻路package
  • 设置寻路表面
  • 设置寻路单位属性
  • 烘焙
  • 寻路接口

处理玩家操作和角色控制

本节讲解使用Unity的Input接口处理玩家的点击操作,进行角色控制

难度:初级

  • 点击寻路
  • 点击攻击

控制镜头

本节讲解控制镜头以便可以漫游场景,会用到cinemachine、物理引擎

难度:中级

  • 镜头控制器
  • cinemachine

物理检测

本节讲解游戏内物理模块的实现

难度:中级

  • 寻路
  • 索敌
  • 镜头
  • 视野范围
  • 攻击范围
  • 最近单位

战斗模块

本节讲解游戏战斗逻辑、表现的实现方法

难度:中高级

  • 技能
  • 伤害计算、扣血
  • 子弹
  • 视野
  • 攻击范围
  • 道具
  • 挂点

资源加载

本节讲解游戏中管理和加载资源的方法

难度:中级

  • AssetDatabase
  • Resources
  • AssetBundle
  • Addressable

特效

本节讲解游戏中特效的实现

难度:初级

  • 特效相机
  • 加载,使用,销毁

UI系统

本节讲解UI框架,实现各类功能的窗口

难度:中级

  • UI相机
  • UI窗口管理
  • 头顶血条(Hud)
  • 常规UI

URP渲染技术

本节基于视野雾的实现讲解URP渲染技术和Shader技术

难度:高级

  • 视野雾效
    • 雾算法
    • 实现思路
  • 配置URP渲染管线
    • 深度
  • 自定义RenderFeature、RenderPass
  • 编写URP视野雾Shader
    • shaderlab语法
    • hlsl语言
    • 采样深度贴图获得深度
    • 构建世界坐标

结算

本节讲解游戏结算的实现和场景加载

难度:入门

  • 触发结算
  • 显示结果
  • 场景加载

打PC包

本节讲解如何进行PC打包

难度:入门

相关推荐
SmalBox3 小时前
【节点】[Adjustment-WhiteBalance节点]原理解析与实际应用
unity3d·游戏开发·图形学
那个村的李富贵4 小时前
Unity打包Webgl后 本地运行测试
unity·webgl
nnsix4 小时前
Unity OpenXR开发HTC Vive Cosmos
unity·游戏引擎
nnsix5 小时前
Unity OpenXR,扳机键交互UI时,必须按下扳机才触发
unity·游戏引擎
nnsix5 小时前
Unity XR 编辑器VR设备模拟功能
unity·编辑器·xr
老朱佩琪!5 小时前
Unity访问者模式
unity·游戏引擎·访问者模式
不定时总结的那啥6 小时前
Unity实现点击Console消息自动选中预制体的方法
unity·游戏引擎
nnsix6 小时前
Unity OpenXR 关闭手柄的震动
unity·游戏引擎
CreasyChan6 小时前
Unity 中的反射使用详解
unity·c#·游戏引擎·游戏开发
Jessica巨人6 小时前
Shader显示为黑色
unity·shader