如何从零基础小白成长为 Unity 高级程序员?【全篇学习内容免费!快来白嫖】
高能预警,下文包含从零基础新手到高级程序员一站式技术学习、学习方法、心态等内容,供各个阶段的同学进行参考。
从零基础到高级程序员
上干货
话不多说,上淘宝链接(捂嘴),啊不不不,上干货!
一、技术学习,一起点亮技能树!
技能树全览图
(一)入门
“入门”通关秘籍
写在前面,第一关“入门”的通关秘籍如下图
入门学习方法
想要打败“入门”关的BOSS需要拥有以下装备:
- 关于C#
可以用c#写一些简单的逻辑,别人的代码可以简单看懂。论什么是“会写一些简单的逻辑”?比如:
- 如何法师(Mage)、射⼿(Archer)、刺客(Assassin)、坦克 (Tank)、辅助(Support)、战⼠(Warrior),存储这些内容?
- 描述给定⼀个只包含⼩写字⺟的字符串,请你找出第⼀个仅出现⼀次的字符。如果没有,输出 no。
- “回⽂串”是⼀个正读和反读都⼀样的字符串,⽐如“level”或者“noon”等等就是回⽂串。请写⼀个 程序判断读⼊的字符串是否是“回⽂”。
- 关于unity
懂得Unity一些基本操作,会使用unity中常见的API,明白界面UI、Unity3D 动画系统(Mecanim和DOtween)、常见对象和结构API等内容。
关于unity知识图谱,推荐一篇博文,可以时不时用此博文内容查漏补缺。
【游戏开发指路】Unity学习路线,三万字大纲(面试题大纲 | 知识图谱 | Unity游戏开发工程师)blog.csdn.net/linxinfa/article/details/119731272正在上传…重新上传取消
说完通关秘籍,现在上推荐
- C#方面
书籍的优点之一就在于,它拥有完整的体系,从它的目录你就能看得出来,如果你好好地去读完一本书籍,那么你掌握的就是一个完整的知识体系,可以跟一些网课相比肩。
推荐书籍
- 《C#图解教程》适合进C#门槛的第一本书,迅速把握框架为主要目的,内容肯定是不够的,升华需看《C#本质论》
《C#图解教程》
购买地址:
《C#图解教程 第五5版 C#入门** C#*级编程 C#从入门到*通 学C# C#项目开发实战》 【简介_书评_在线阅读】 - 当当 - 人民邮电出版社官方旗舰店 (dangdang.com)product.dangdang.com/1547668385.html
- 《C#入门经典》适合纯小白
《C#入门经典》
购买地址:
当当网product.dangdang.com/29399374.html
- 《C#本质论》作者对C#的基础知识讲的很清楚,同时例子也很有代表性,对初学者来说有点难度但不是很大,读起来很顺畅,相比其他的C#书籍厚度也适中。
《C#本质论》
购买地址:
当当网product.dangdang.com/29382802.html
推荐网址
初学c#,菜鸟教程祝成功。
C# 教程 | 菜鸟教程www.runoob.com/csharp/csharp-tutorial.html
推荐课程
(以下推荐课程全部为免费内容,快来白嫖!)
- C#基础
C#编程-第一季-编程基础-宇宙最简单2021最新版 - unity|虚幻|java|python视频教程 - SiKi学院|SiKi学堂 (sikiedu.com)www.sikiedu.com/my/course/926
学完此教程,可以点亮关于c#的变量、分⽀语句 if switch、循环语句 while for、字符串、数组、函数、结构体、枚举技能点。
C#编程-第二季-面向对象-宇宙最简单2021最新版 - unity|虚幻|java|python视频教程 - SiKi学院|SiKi学堂 (sikiedu.com)www.sikiedu.com/my/course/931
快来get√c#中关于错误和异常处理、列表List类、什么是面向对象、类的定义和对象的创建、访问修饰符、内存 - 堆栈静态存储区、继承、静态类、interface、索引器、运算符重载、结构体和类的区别等的知识点。
- Unity与c#小“衔接”——unity中常见的API课程推荐:
Unity常用API方法与类详细讲解 - 知识理论篇 - unity|虚幻|java|python视频教程 - SiKi学院|SiKi学堂 (sikiedu.com)www.sikiedu.com/my/course/987
此课程可获取知识图谱奉上~
生命周期函数
unity常用API方法和类
- Unity方面
Unity官方文档
学习unity当然少不了Unity官方文档,英文好的可以扒一扒英文原版,中文版多少有些地方翻译不准确:
文档版本 - Unity 手册docs.unity.cn/cn/2019.4/Manual/ManualVersions.html
课程推荐:
(1)Unity入门小课程:
宇宙最简单Unity2021零基础入门教程-RollABall - unity|虚幻|java|python视频教程 - SiKi学院|SiKi学堂 (sikiedu.com)www.sikiedu.com/my/course/862
宇宙最简单Unity2021零基础入门教程-打砖块 - unity|虚幻|java|python视频教程 - SiKi学院|SiKi学堂 (sikiedu.com)www.sikiedu.com/my/course/890
学完以上两个课程,你可以收获两个略为简略的“小游戏”,并初步了解unity的部分操作。
(2)制作小游戏推荐
【Unity教程】零基础带你从小白到超神
【Unity教程】零基础带你从小白到超神_哔哩哔哩_bilibiliwww.bilibili.com/video/BV1gQ4y1e7SS/?spm_id_from=333.337.search-card.all.click正在上传…重新上传取消
【合集】Unity3D零基础入门,史上最全零基础入门视频教程
22-发布游戏与解决发布时出现的诡异bug_哔哩哔哩_bilibiliwww.bilibili.com/video/BV1zB4y1C7U9?p=170
内包含Rollball、打砖块、 古迹探险、UGUI、坦克大战、贪吃蛇、愤怒的小鸟足足7个小游戏合集!
【Unity2D 官方入门案例】- Ruby's Adventure
学习链接奉上:
Unity2D官方入门案例 - Ruby's Adventure_哔哩哔哩_bilibiliwww.bilibili.com/video/BV1fy4y1s7Yf/?spm_id_from=333.337.search-card.all.click正在上传…重新上传取消
[Unity 活动]-社区直播 零基础系列Ruby's Adventure: 2D Beginner 录播合辑_哔哩哔哩_bilibiliwww.bilibili.com/video/BV1mf4y1R7g3/?spm_id_from=333.337.search-card.all.click正在上传…重新上传取消
两个链接都是这个游戏的教程哦~可以任选一个来听。
(二)初级
- 数据结构
推荐书籍
- 《大话数据结构》没有古板的教科书式说教,每个几乎都有相应的例子,作者甚至还能用抽象的数据结构比喻人生。
《大话数据结构》
购买链接:
《大话数据结构 溢彩加强版》(程杰)【简介_书评_在线阅读】 - 当当图书 (dangdang.com)product.dangdang.com/29136285.html
- 团队协作工具(GIT、SVN等)
团队协作工具很多,下面拿git举例
(1)推荐博文:
【github】论怎么去写一个高大上的ReadMe - 外婆的 - 博客园www.cnblogs.com/penghuwan/p/11485101.html正在上传…重新上传取消
Git使用教程:最详细、最傻瓜、最浅显、真正手把手教!mp.weixin.qq.com/s/iIZNynZFKDMcnXZPfx2iqA正在上传…重新上传取消
看完这篇还不会用Git,那我就哭了! - 武培轩 - 博客园www.cnblogs.com/wupeixuan/p/11947343.html正在上传…重新上传取消
(2)推荐课程:(助力轻松入门git)
GIT版本管理工具轻松入门 - unity|虚幻|java|python视频教程 - SiKi学院|SiKi学堂 (sikiedu.com)www.sikiedu.com/my/course/775
- 数学基础
(1)推荐书籍
- 《3D数学基础:图形和游戏开发(第2版)》语言很幽默,把数学与游戏开发中用到的3d知识结合,看起来一点不枯燥,段代码还有解说,经验讲解。是一本值得的书。看过此书后推荐看一下《3D游戏编程大师技巧》了解熟悉各方面的流程,算法等。
《3D数学基础:图形和游戏开发(第2版)》
购买链接:
当当网product.dangdang.com/28552828.html
- 《3D游戏编程大师技巧》虽然时间很久远,但是里面的优化方法,和管线流程,万变不离其宗。
购买链接:
3D游戏编程大师技巧-当当网search.dangdang.com/?key=3D%D3%CE%CF%B7%B1%E0%B3%CC%B4%F3%CA%A6%BC%BC%C7%C9&act=input正在上传…重新上传取消
(2)推荐课程:
3Blue1Brownwww.3blue1brown.com/正在上传…重新上传取消
- 算法基础
(1)推荐书籍:
- 《算法第 4 版》- Robert Sedgewick 经典且适合初学者入门,书块头较大,英文版有900+页。(语言为java)
《算法第 4 版》
购买链接:
当当网product.dangdang.com/23931413.html
- 《算法图解》图文并茂,以让人容易理解的方式阐释了算法
《算法图解》
购买链接:
《算法图解》([美] 巴尔加瓦(Aditya Bhargava))【简介_书评_在线阅读】 - 当当图书product.dangdang.com/29283042.html正在上传…重新上传取消
- 《编程珠玑》本书包括很多针对海量数据的处理技巧
《编程珠玑》
购买链接:
《编程珠玑 第2版》([美] 乔恩·本特利(Jon Bentley))【简介_书评_在线阅读】 - 当当图书 (dangdang.com)product.dangdang.com/27951287.html
(2)推荐算法可视化的网站
visualgo
visualising data structures and algorithms through animationvisualgo.net/en
(3)刷题
看书的同时,不要忘了实践,刷刷刷起来!
刷题网站链接:
算法笔试题库
下专题为剑指offer专题,题目均来自《剑指offer》,里面每道题带有练习模式和考试模式,可还原考试模式进行模拟,也可通过练习模式进行练习。
算法刷题——剑指offer
- 热更新
- 什么是热更新以及为什么要使用热更新?
举例来说: 游戏上线后,玩家下载第一个版本(70M左右或者更大),在运营的过程中,如果需要更换UI显示,或者修改游戏的逻辑,这个时候,如果不使用热更新,就需要重新打包,然后让玩家重新下载(用户体验不好)。 热更新可以在不重新下载客户端的情况下,更新游戏的内容。 热更新一般应用在手机网游上。 - 课程推荐:
lua热更新、编辑器开发 Unity3D 最新强烈推荐_哔哩哔哩_bilibili
- 人工智能编程
为什么要学习人工智能编程?
借用《游戏开发中的人工智能》中简介的话:“你的游戏是否有角色不能任意走动?是否有角色走进障碍物?是否有非玩家角色不能按照团队运动?现在你就可以掌握高级人工智能(AI)技术以解决这些问题。”
(1)推荐课程
快速入门Unity机器学习_哔哩哔哩_bilibili
【Unity基础】Unity3d人工智能编程_哔哩哔哩_bilibili
(2)推荐书籍:
- 《游戏开发中的人工智能》年代比较久远,适合当成科普读物。
《游戏开发中的人工智能》
购买链接:
当当网product.dangdang.com/11221631283.html
(三)中级
- 掌握各种语言和多平台特性,比如c++/python/JS
为什么要掌握多种语言和多平台特性?
- 每一种编程语言、平台都有自己的特点。就好比拧不同的螺丝需要不同的螺丝刀,没有最好的编程语言,只有最适用的编程语言,针对不同的开发,选择不同的编程语言、平台,可以很方便地解决各类问题。
- 更有竞争力,拥有更多的就业机会学习第二门编程语言,有时能增加一倍你可胜任职位的数量。不过,这取决于你学习的语言。但是无论怎么说,这都能为你增加就业机会。
- 表明你能够学习新的语言你潜在雇主能够从中了解到你不是死板的程序员。
- 一个很有趣的过程学习新的东西可以充实你的大脑,帮助你在一个新领域中成长和提高。
- 紧跟当前的技术发展趋势知道哪个行业在独领风骚,就可以永远站在潮流的尖端。你的技能便不会过时。
- 常用及高级算法
推荐网站
力扣官网
力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台
- 计算机图形学
(1)推荐书籍:
《Fundamentals of Computer Graphics》
《Fundamentals of Computer Graphics》作者在全面的从底层实现原理去介绍图形学的基本概念,涉及到大量的线性代数计算,其中步骤比较跳跃,很多地方需要读者根据步骤自行推算。章节内容层层递进,前几章需要很认真很仔细的阅读,并且需要相应数学知识。(建议看英文原版)
(2)推荐课程:
强烈推荐闫令琪老师的GAMES101
GAMES101-现代计算机图形学入门-闫令琪_哔哩哔哩_bilibili
- 计算机内部结构
之前学习是将计算机各种运作当成一个”黑盒“,只需明白输入和输出即可。
学习的“黑盒”
现在,揭开黑盒匣子看看内部构造及工作原理。
打开黑盒子
(1)课程推荐:
- 比如,计算机是什么组成原理?
牛掰!B站终于有人把困扰我多年的【计算机组成原理】讲的如此详细透彻!_哔哩哔哩_bilibili
- 比如,CPU是如何工作的?CPU是什么?
关于CPU的一些基本知识总结 - 骏马金龙 - 博客园
- 比如,操作系统到底是什么东东?
【操作系统】常用总结 - Nemo& - 博客园 (cnblogs.com)
- Shader基础
(1)推荐图书:
- 《Unity Shader入门精要》经典入门书籍,本书不仅要教会读者如何使用Unity Shader,更重要的是要帮助读者学习Unity中的一些渲染机制以及如何使用Unity Shader实现各种自定义的渲染效果。
《Unity Shader入门精要》
购买链接:
当当网product.dangdang.com/29413844.html
- 《Unity着色器和屏幕特效开发秘笈》几乎包含了Unity着色器中常用的效果示例。主要内容包括基础的漫反射着色;两种高光类型Blinn和Phong,以及利用这些高光类型创造蒙版镜面、金属镜面等高光效果;反射的实现;创建自定义的光照模型;透明度在游戏当中的实现;访问存储在3D网格中的顶点信息;移动端是如何减少着色器中的内存开销的;着色器组的模块化,以及重用代码的必要性;使用渲染纹理实现屏幕特效。
《Unity着色器和屏幕特效开发秘笈》
购买链接:
当当网product.dangdang.com/1372950136.html
(2)博客推荐:
- 冯乐乐CSDN博客 ,《Unity Shader入门精要》的作者
《Unity Shader入门精要》的作者博客
冯乐乐CSDN博客
- 毛星云大佬的CSDN博客
毛星云大佬的博客
【Unity3D】【Shader】_浅墨_毛星云的博客-CSDN博客
(3)网站推荐
shader学习网站
Shadertoy BETA
(4)shader相关插件:
- ShaderForge插件
官网:http://www.acegikmo.com/shaderforge/
ShaderWeaver插件(2DUI效果)
官网:http://www.shaderweaver.com/tutorials.html
官网视频Youtube地址:https://www.youtube.com/playlist?list=PLkmI9RscSiFaHssekseeYC5fog1FC5gIG
- Amplify Shader Editor插件
官网:http://amplify.pt/unity/amplify-shader-editor/
B站官网视频教程:https://www.bilibili.com/video/av8037217/?from=search&seid=3943605845665746470
入门操作介绍:http://forum.china.unity3d.com/thread-23059-1-1.html
- 设计模式
(1)书籍推荐:
- 《游戏编程模式》这本书的示例部分是使用C++来呈现的,涉及到指针、虚函数、类型模板等用法。它们相比现代的编程风格有些过时。
《游戏编程模式》
购买链接:
《游戏编程模式 游戏设计 计算机 游戏开发 软件开发》 【简介_书评_在线阅读】 - 当当 - 人民邮电出版社官方旗舰店 (dangdang.com)product.dangdang.com/1229689097.html
- 《大话设计模式》以c#案例呈现,设计内容较为基础,建议多次阅读。
《大话设计模式》
购买链接:
当当网product.dangdang.com/20079096.html
- 《重构》书中清晰揭示了重构的过程,解释了重构的原理和实践方式,并给出了何时以及何地应该开始挖掘代码以求改善。书中给出了60多个可行的重构,每个重构都介绍了一种经过验证的代码变换手法的动机和技术。本书提出的重构准则将帮助开发人员一次一小步地修改代码,从而减少了开发过程中的风险。
《重构》
购买链接:
《重构 改善既有代码的设计 第2版 平装版》([美]马丁·福勒(Martin Fowler))【简介_书评_在线阅读】 - 当当图书 (dangdang.com)product.dangdang.com/27851757.html
(四)高级
高级程序员的评判标准:服务器端、客户端、开发引擎、工具开发、运营数据系统
(1)书籍推荐:
《Unity3D高级编程之进阶主程》书如其名
《Unity3D高级编程之进阶主程》
购买链接:
Unity 3D脚本编程与游戏开发product.dangdang.com/29233674.html正在上传…重新上传取消
- Shader高阶
- 游戏优化
关于使用unity做游戏性能优化推荐博文:
Unity 性能优化方法总结_九本才的博客-CSDN博客_unity性能优化blog.csdn.net/f402455894/article/details/120309344正在上传…重新上传取消
- 国内外新技术
互联网行业作为行业信息更新换代最快的行业之一,是需要不断去学习的,想要靠一门技术吃一辈子的时代早就已经过去了,每天都有新的编程技术出现,每年也都有新的编程语言出现,如果不提升自身技能水平,肯定会被行业所淘汰
- 大型项目经验
不论是网上的大型项目的教程亦或者是GitHub等有源码的大型项目,都应该从无到有的做过或分析过。(主要从中学习经验)
(1)教程推荐:
【全网最强】Unity教程 游戏开发从零C#基础到商业MMORPG网游 够学很多年了
【全网最强】Unity教程 游戏开发从零C#基础到商业MMORPG网游 够学很多年了_哔哩哔哩_bilibiliwww.bilibili.com/video/BV1c7411k72P/?spm_id_from=333.337.search-card.all.click正在上传…重新上传取消
这个有部分课程不全,主要是学习思想、游戏制作经验。
二、必习之术,锻炼身心向成功!
(一)人际沟通
从生活、工作中获得提升。人际交往技能的其他好处包括解决问题和做出正确决定的能力。你可以利用人际沟通技巧和理解他人的能力,为参与其中的每个人找到最好的解决方案或做出最好的决定
(二)学习方法
(1)找到自己真正感兴趣的方向,并为之不懈努力。——吾生也有涯,而知也无涯。以有涯随无涯,殆已。
游戏公司岗位简图
Unity岗位诸多,光游戏行业大方向就有程序、美术、技术美术等岗位,找到喜欢的方向。
(2)及时做笔记。记下笔记的这个过程,是帮助你理清思路,理解所学的知识,查漏自检的绝好办法。
(3)有一颗坚持的心,生活的道路一旦选定,就要勇敢地走到底,绝不回头。
(4)总结
- 总结很重要,总结可以增强记忆,把一些混乱的或者还没有清楚理解的东西梳理清楚, 对于一些遗漏的东西,也能在梳理过程中暴露出来,这样还可以提醒还需要学习什么。
- 如何总结:写博客、把一些技术特性写个DEMO或者lab。
(5)不论在学习或者生活中,少些抱怨,多些努力与研究技术。比如下面两种情况:
- 面对代码存在较多重复部分,改起来很费力时多想一想,用什么方法可以解决大量的代码重复问题?
反射,委托、封装都可以用来解决代码重复问题。
- 面对代码结构本身存在较多耦合之后混乱在一起,不知道改哪里时,多想一想如何让代码保持较好的结构?
设计模式可以解决代码结构混乱问题。
(6)学会提问
关于提问这件事,推荐一本书:《学会提问 原书第10版》
《学会提问(原书第10版)》([美]尼尔·布朗,[美]斯图尔特·基利)【摘要 书评 试读】- 京东图书item.jd.com/11141838.html?cu=true&utm_source=www.baidu.com&utm_medium=tuiguang&utm_campaign=t_1003608409_&utm_term=6bcab1ed433c41a4989967293135d215正在上传…重新上传取消
- 多花点时间来描述问题。
- 在向他人提问前尽可能尝试通过搜素网络资源解决问题.
(三)身体是革命的本钱
爱惜自己的身体,推荐巨赞博文:(内含面试、笔试、简历、职场生存指南、赚钱、买房、买车、学习与技术成长等内容)
Unity3DTraining/AboutJob at master · JackYan666/Unity3DTraininggithub.com/JackYan666/Unity3DTraining/tree/master/AboutJob正在上传…重新上传取消