文章目录
- 一、前言
- 二、我的大学
- 三、Unity学前
-
- 1、C#基础
-
- 1.1、数据类型
- 1.2、变量
- 1.3、常量
- 1.4、运算符
- 1.5、判断
- 1.6、循环
- 1.7、数组
- 1.8、枚举
- 1.9、字符串
- 1.10、命名空间
- 1.11、类
- 1.12、结构体
- 1.13、接口
- 1.14、方法
- 1.15、封装
- 1.16、继承
- 1.17、多态性
- 1.18、运算符重载
- 1.19、IO操作
- 1.20、预处理
- 1.21、异常处理
- 2、C#进阶
-
- 2.1、Attribute特性
- 2.2、反射
- 2.3、属性
- 2.4、索引器
- 2.5、委托
- 2.6、事件
- 2.7、集合
- 2.8、泛型
- 2.9、匿名方法
- 2.10、不安全代码
- 2.11、正则表达式
- 2.12、多线程
- 四、Unity入门
-
- 1、Unity的安装与激活
-
- 1.1、中国版与国际版
- 1.2、Unity下载
- 1.3、Unity激活
- 2、Unity 区
-
- 2.1、中文手册
- 2.2、技术专栏
- 2.3、技术问答
- 2.4、中文课堂
- 2.5、官方Bilibili
- 2.6、资源商店
- 3、IDE安装
-
- 3.1、Windows
- 3.2、MacOS
-
- 4.1、视图面板
- 4.2、常用菜单
- 5、工程目录结构
-
- 5.1、Assets目录
- 5.2、ProjectSettings目录
- 5.3、UserSettings目录
- 5.4、Library目录
- 6、图片
- 7、模型
- 8、材质球
- 9、声音
- 10、预设
- 11、GameObject
- 12、Transform
- 13、运行测试
- 14、Windows打包
- 五、Unity初级
-
- 1、C#脚本
- 2、UGUI
-
- 2.1、UGUI基础组件
- 2.2、UGUI实操
- 3、引擎常用组件
-
- 3.1、Audio组
- 3.2、Effects组
- 3.3、Event组
- 3.4、Layout组
- 3.5、Mesh组
- 3.6、Miscellaneous组
- 3.7、Nevigation组
- 3.8、Physics2D组
- 3.9、Physics组
- 3.10、Rendering组
- 4、发布
-
- 4.1、基础设置
- 4.2、平台发布
-
- 5.1、拓展Project视图
- 5.2、拓展Hierarchy视图
- 5.3、拓展Inspector视图
- 5.4、拓展Scene视图
- 5.5、拓展顶部菜单
- 六、Unity中级
-
- 1、UGUI案例
- 2、简单物理
-
- 2.1、刚体
- 2.2、碰撞
- 2.3、触发器
- 2.4、物理材质
- 2.5、射线
- 2.6、弹簧
- 3、动画
- 4、粒子系统
- 5、寻路导航
- 6、Json
- 7、二维码
- 8、插值缓动
- 9、Zip压缩与解压
- 10、Behavior Designer
- 11、Cinemachine
- 12、TimeLine
- 13、Tilemap
- 14、ProBuilder
- 15、版本管理
-
- 15.1、SVN
- 15.2、Git
- 16、Python语言
-
- 16.1、用途
- 16.2、Python语言基础
- 17、打包工具
- 18、实用工具
- 19、探索
- 七、Unity中高级
-
- 1、Lua语言
-
- 1.1、八大基本数据类型
- 1.2、注释
- 1.3、 变量
- 1.4、 循环
- 1.5、 流程控制
- 1.6、 函数
- 1.7、运算符
- 1.8、 字符串
- 1.9、 数组
- 1.10、 表table
- 1.11、 元表metatable
- 1.12、 模块module
- 1.13、 协程
- 1.14、 文件IO
- 1.15、 错误处理
- 1.16、 垃圾回收
- 1.17、 面向对象
- 1.18、 与C交互
- 2、通信协议
-
- 2.1、ProtoBuf
- 2.2、sproto
- 3、接入SDK
-
- 3.1、Android Studio
- 3.2、XCode
- 3.3、常见SDK
- 3.4、Plugins目录结构
- 3.5、Android平台
- 3.6、iOS平台
- 3.7、多SDK混接问题
- 4、ToLua框架
- 5、热更新
-
- 5.1、版本 管理
- 5.2、热更内容
- 5.3、打包热更包
- 5.4、执行热更新
- 6、发行
- 7、部署
- 八、Unity高级
-
- 1、设计模式
- 2、游戏框架
- 3、性能优化
-
- 3.1、CPU
- 3.2、 GPU
- 3.3、内存
- 3.4、 包体
- 3.5、 络
- 4、兼容、适配与稳定
- 5、自动化测试
- 6、图形学与渲染
-
- 6.1、OpenGL
- 6.2、Unity Shader
- 6.3、ShaderGraph
- 7、代码安全
- 8、逆向
-
- 8.1、编译技术
- 8.2、反编译技术
- 8.3、资源逆向
- 8.4、C#逆向
- 8.5、C++逆向
- 8.6、java逆向
- 8.7、AndroidManifest逆向
- 9、算法
- 九、管理与规范
-
- 1、svn管理
- 2、策划规范
- 3、美术规范
- 4、技术文档与沉淀
- 十、补充:数学基础
-
- 1、集合
- 2、函数
- 3、三角函数
- 4、向量
- 5、数列
- 6、不等式
- 7、解析几何
- 8、立体几何
- 9、排列、组合、概率
- 10、极限、导数
- 11、复数
- 12、平面几何
- 13、多项式
- 14、数学归纳法
- 15、初等数论
- 16、组合问题
- 十一、完毕
一、前言
嗨,大家好,我是新发。
有不少同学私信和评论让我讲讲Unity的学习顺序,说不知道怎么系统地去学,遇到很多问题不知道如何去处理。
嗯,那我就根据我自己的成长过程,写一下Unity的学习路线吧。
二、我的大学
首先说下我的大学,我是年毕业于华南理工大学,读的是信息工程专业,专业课程主要如下:
1.1、数据类型
- 值类型
- 引用类型
- 指针类型
- 装箱与拆箱
1.2、变量
- 定义
- 初始化
1.3、常量
- 定义
- 引用
1.4、运算符
- 算术运算符
- 关系运算符
- 逻辑运算符
- 位运算符
- 赋值运算符
1.5、判断
- if 语句
- if … else语句
- 嵌套 if 语句
- switch 语句
- 嵌套 switch 语句
- 条件运算符
1.6、循环
- while 循环
- for/foreach 循环
- do … while 循环
- 嵌套循环
- break 语句
- continue 语句
1.7、数组
- 声明
- 初始化
- 赋值
- 访问
- 遍历
- 多维数组
- Array与ArrayList的区别
1.8、枚举
- 声明
- 访问
- 与int、string的转换
- 判断枚举是否包含id
1.9、字符串
- 字符串比较
- 字符串替换
- 字符串连接
- 判断是否含有字符串
- 复制字符串
- 判断是否是以某个字符串结尾
- 判断是否是以某个字符串开头
- 字符串判等
- 字符串格式化
- 求索引
- 字符串判空
- 使用分隔符连接字符串数组
- 使用分隔符分割字符串
- 插入字符串
- 移除字符串
- 转char[]
- 大小写转换
- 去除前后空白字符
1.10、命名空间
- 定义
- using
- 嵌套命名空间
1.11、类
- 定义
- 成员函数
- 构造函数
- 析构函数
- 静态成员
- 密封类
- 静态类
1.12、结构体
- 定义
- 特点
- 类与结构体的区别
1.13、接口
- 定义
- 继承
1.14、方法
- 定义
- 调用
- 递归
- ref与out
- 不定参数
1.15、封装
- 访问修饰符
- 类与结构体的区别
1.16、继承
- 基类与派生类
- 接口多继承
- 抽象类与接口区别
1.17、多态性
- 函数重载
- 运算符重载
- 抽象类
- 虚方法
1.18、运算符重载
- 定义
- 执行
1.19、IO操作
- File类
- Directory类
- Path类
- FileStream类
- StreamReader类
- StreamWriter类
- BinaryReader类
- BinaryWriter类
1.20、预处理
- #define
- #undef
- #if
- #else
- #elif
- #endif
- #region
- #endregion
1.21、异常处理
- try、catch、finally 、throw
- 异常类
- 自定义异常
2、C#进阶
1、Unity的安装与激活
1.1、中国版与国际版
- 中国版
- https://unity.cn/
- 国际版
- https://unity.com/
1.2、Unity下载
- https://unity.cn/releases
1.3、Unity激活
- 专业版
- 加强版
- 个人版
2、Unity 区
2.1、中文手册
- https://docs.unity.cn/cn/current/Manual/index.html
2.2、技术专栏
- https://developer.unity.cn/articles
2.3、技术问答
- https://developer.unity.cn/ask/home
2.4、中文课堂
- https://learn.u3d.cn/
2.5、官方Bilibili
- https://space.bilibili.com/386224375
2.6、资源商店
- https://assetstore.unity.com/
3、IDE安装
3.1、Windows
- Visual Studio
- VS Code
- Sublime
3.2、MacOS
- VS Code
- XCode
- Sublime
4.1、视图面板
- Scene面板:上帝视角的场景
- Game面板:玩家视角的画面
- Hierarchy面板:层级面板
- Inspector面板:属性面板
- Paoject面板:工程目录
- Console面板:日志面板
4.2、常用菜单
- File / Open Project:打开工程
- File / Build Settings:打包设置
- Edit / Preferences:偏好设置
- Edit / Project Settings:工程设置
- Windows / Package Manager:插件包管理
5、工程目录结构
5.1、Assets目录
- Scripts:代码目录
- Plugins:插件目录
- Gizmos:绘图资源目录
- Resources:资源目录
- StreamingAssets:流式资源目录
- RawAssets (自定义):生肉资源目录
- GameAssets (自定义):熟肉资源目录
- Shaders:Shader代码目录
- Scenes:场景目录
5.2、ProjectSettings目录
- 工程设置目录
5.3、UserSettings目录
- 用户设置目录
5.4、Library目录
- 编译目录
6、图片
- 导入图片
- 设置格式
7、模型
- 创建:几何体模型
- 导入:外部模型
8、材质球
- 创建材质球
- 设置材质球
- 设置Shader
- 赋值给模型
- 调整参数
9、声音
- 导入
- 播放
10、预设
- 创建预设
- 保存预设
- 加载预设
- Resources.Load
- AssetDatabase.LoadAssetAtPath
- AssetBundle.LoadFromFile
- 实例化预设
- Object.Instantiate
11、GameObject
- 创建GameObject
- 设置父节点
- 挂脚本
- 隐藏与现实
- 销毁GameObject
12、Transform
- 移动
- 旋转
- 缩放
13、运行测试
- 运行
- 暂停
- 停止
14、Windows打包
- 打包:Windows
- 测试
五、Unity初级
1、UGUI案例
- 打图集
- UI适配分辨率
- UI界面分层
- 背景图适配文字宽度
- 模型显示在UI上
- 粒子显示在UI上
- UI裁切3D模型
- UI裁切粒子
- 艺术字体制作
- 不规则按钮
- 跑马灯
- 图文混排
- 图片镜像对称
- 多层嵌套滑动列表
- 摇杆
- 雷达图
- 折线图
- 循环列表
- 小地图
- 头顶文字
- 适配刘海屏
2、简单物理
2.1、刚体
- 类型
- 移动
- 重力
2.2、碰撞
- 条件
- 检测
2.3、触发器
- 设置
- 检测
2.4、物理材质
- 创建
- 摩擦力
- 弹性
- 设置引用
2.5、射线
- 发射
- 检测
- 结果
2.6、弹簧
- 设置
- 案例
3、动画
- Animator
- Animation
- 状态机变量
- 动画融合
- 状态切换
- 混合树
4、粒子系统
- 创建
- 制作
- 播放
- 案例
- 火焰
- 下雪
- 水花
- 闪电
- 激光
- 爆炸
- 烟雾
- 喷射
- 闪光
- 魔法阵
- 溅血
5、寻路导航
- 导航障碍物
- 导航烘焙
- 导航代理
- 点击寻路
- 寻路跳跃
6、Json
- LitJson库
- 构建JsonData
- JsonData与string的转换
- JsonData与数组和字典的转换
7、二维码
- ZXing库
- 生成二维码
- 保存为图片
8、插值缓动
- DoTween插件
- 平滑移动
- 平滑旋转
- 平滑缩放
- 平滑插值自定义变量
9、Zip压缩与解压
- Ionic.Zip.Unity插件
- 创建zip文件
- 解压zip文件
- 显示解压进度
10、Behavior Designer
- 插件下载
- 设置变量
- Composites类节点
- Decorators类节点
- Actions类节点
- Conditionals类节点
- 优先级与打断
- 行为树存储
- 行为树加载
- 行为树控制
11、Cinemachine
- 插件安装
- 摄像机跟随
- 自由视角跟随
- 固定视角跟随
- 轨道镜头
- 轨道镜头跟随
- 镜头融合
- 跟随目标组
- 切镜
- 自由观察摄像机
- 状态驱动摄像机
- 轨道物体
- 2D摄像机
- 与TimeLine配合使用
12、TimeLine
- 插件安装
- 创建TimeLine资源
- 创建轨道
- Activation Track轨道
- Animation Track轨道
- Audio Track轨道
- Control Track轨道
- Signal Track轨道
- Playable Track轨道
- TimeLine倒放
13、Tilemap
- 插件安装
- 创建调色板
- 制作瓦片
- 绘制瓦片
- 删除瓦片
- 填充瓦片
- 多瓦片涂刷
- 瓦片缝隙问题
- 瓦片序列帧
- 瓦片自适应方向
- 添加碰撞
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!