找回密码
 立即注册
查看: 177|回复: 0

如何规划大学生涯----游戏开发

[复制链接]
发表于 2022-5-23 14:08 | 显示全部楼层 |阅读模式
这是一份给准备入行游戏的大学生的大学期间学习规划建议。
本文设计目标是进入国内一线游戏大厂,腾讯、网易等

这里筛选出成为一名游戏开发工程师最需好的具备的知识。同时也吻合大学课程设计路线。

路线图


大一
课程
C语言程序设计
数据结构
高等数学
线性代数
目标
大一的目标是熟悉一门编程语言,重点在基础的编程能力。这时候,并不建议学习游戏引擎开始做游戏。
不急躁,一步一个脚印,反而走的更远。编程能力是基本功,也是现在大厂必备的考核项。
这个时候把基本功打劳,可以一开始养成编程的好习惯,比如思考时间、空间消耗,思考边界问题,DEBUG等。这些是在整个编程生涯都极其重要。

学习路径
1. C语言程序设计
初学者,对程序设计基本没有概念。这时候并不建议啃教材。尤其是上来就是《C++ prime》,这基本上给人劝退。
资料
入门建议看视频为主,书本为辅。
学习平台很多,包括慕课、网易云公开课、B站。找一款听着简单易懂的。慕课网的翁凯老师的视频:这里《C和C++游戏趣味编程》书籍和视频:这里
不建议太沉迷在实现一个个小游戏。大一的核心还是算法和数据结构。
练习
练习核心是程序设计题。也就是算法。
这一步,在学了基本的语法之后就可以开始。
网上练习的OJ很多,学校也会有自己的OJ,可以咨询课程老师或者学长学姐。
网上OJ包括,杭州电子科技大学、北京大学,都适合大一新生训练。
杭州电子科技大学的OJ大概是国内最火的OJ之一 :这里
POJ,北京大学的OJ,也是国内最火的OJ之一:这里
Codeforces俄罗斯网站,每周都有不同难度的比赛。网址:这里
洛谷上很多的基础题:这里


此外,求职相关的
牛客网的算法库:这里
力扣:这里

不建议,大一新生去求职平台刷。

Tip:
大学一般都有ACM队,目标就是参加程序设计大赛,会有专门老师指导。
如果大一上学期就进入,在里面磨练一年,那么你的算法能力一定能达到很高的水平,至少面试那些难度的对你来说都是毛毛雨。
具体怎么进入,一可以留心下学校的各种比赛信息,二咨询老师、学长学姐。

2. 数据结构
算法和数据结构,有的学校大二才开设。
但是在你接触程序设计题那一刻起,就注定开启了自学之路。不需要跟着教学安排推进。
数据结构怎么学呢? 以问题导向。在刷程序设计题的过程中,会遇到很多打破脑袋也想不出解决办法的问题。如树、链表、搜索、图论、动态规划等等。这时候根据遇到的问题,反过来学习。效果会非常好,而且理解也会很深入。

资料
入门:《啊哈!算法》、《大话数据结构》
深入:《算法导论》
实战:《剑指offer》
视频
【郝斌】数据结构入门 :这里
【陈越】数据结构-浙江大学 :这里



练习
练习继续在各大OJ上,开始挑战一定难度的题。
此外,也有程序设计比赛,《各省程序设计大赛》《全国程序设计大赛》、也有只需要报名就可以参加的《CCF SCP认证》。达到CCFCSP 300分以上就合格了,优秀的可以挑战400分以上。

再强调一遍
算法很重要很重要!
算法很重要很重要!
算法不过关,大厂无缘!

高等数学、线性代数
为什么突出这两个,因为这是为编译原理、图形学等其他课程打下基础。这一块也不需要额外学习。跟着学校的课程安排就行。

2大二

课程
unity/UE     
C++进阶      
计算机组成原理      
操作系统      
编译原理      
计算机网络      
数据库

目标

大二正式开始接触游戏,整个大二目标为打好计算机理论基础 + 游戏开发基础。
在大二结束的时候,应该有一两款自己的游戏demo,参加过一两次游戏设计竞赛。

学习路径
1.unity/UE
这时候面临一个选择,选择unity还是UE。这地方根据个人爱好,选择一个就好。不建议选择一个再转另一个。以目前市场游戏份儿来看,unity是比UE火的。对于没有明确目标要做3A等大型游戏的初学者,个人建议从unity入手。unity学习资料也比UE多许多。

资料
《Unity3D 游戏开发》
《C# 图解教程》
《Unreal Engine4从入门到精通》
视频
C#开发轻松入门:这里
Michael的Unity教程 入门第一款游戏制作:这里
【UE4教程】:这里

练习
《Unity 游戏案例开发大全》这本书里面有很多案例可以参考
推荐复刻一个现有的游戏的简版。比如吃鸡、赛车、塔防等等

2. C++进阶
C++开设接触面向对象、内存管理、STL等等,一些深入的知识。
这里说一说为什么不特意学C#,因为C#可以理解为C++的简化版,C++转C#非常快,而且C#只是用于unity写脚本逻辑,在学Unity的过程中弥补即可,待以后深入引擎、深入图形学等等,都是C++。

资料
首推侯捷老师的系列视频教程,包括
《C++内存管理》
《C++面向对象高级编程》
《C++11 新特性》
《C++Startup揭秘:C++程序的生前死后》
《C++ STL标准库和 C++ 泛型编程》
书籍
《C++ Primer》:全面而且权威的一本书,即适合初学者也适合中高级程序员,还适合做工具书
《Effective C++》和《More effective C++》:介绍了55条准则,可让你写出更好的C++代码
《Effective STL》和《STL源码剖析》:STL基础概念以及深入
《深度探索C++对象模型》:C++面向对象程序设计的底层机制

3. 操作系统
资料
《现代操作系统》
  【南京大学-蒋炎岩】  操作系统:设计与实现
    【MIT】 6.828: Operating System Engineering :视频 源码

4. 计算机网络
计算机网络在整个计算机领域的地位,等同于语言,都是根基。在面试中,有一个经典的问题就是,在浏览器中输入一个网址,到网址内容显示出来,中间经历了什么?
资料
《计算机网络:自定向下方法》
视频
    韩立刚老师的计算机网络
    计算机网络微课堂

5. 计算机组成原理
计算机组成原理可以让你从整体了解到,计算机底层是怎么工作的,hello world是怎么从一行代码,最终显示你的面去。
资料
《深入理解计算机系统》
视频 CMU 15-213 CSAPP:这里

6. 编译原理
了解C/Java/python这类高级语言,是如何转化成二进制被计算机识别的。
资料
《编译原理》
    【斯坦福】编译原理课程:这里
    【哈工大陈鄞老师】 编译原理:这里

7. 数据库
SQL是一门数据库查询语言,了解数据库是后台开发基础。并且SQL学起来很快,跟着教程学下来,3-7天能搞定。
资料
    《SQL必知必会》
    SQL教程:这里
    MySQL基础入门:这里

3大三
课程
     图形学
     游戏引擎架构
     LUA/python程序设计
     设计模式

目标
大三开始进入游戏开发深入进阶。只会使用引擎做游戏,是远远不够的,也很难进入大厂。
希望通过大三一年的深入学习,在大三暑假,能够拿到一份游戏开发岗位的实习offer。
一份实习会使大四真正找工作的时候,非常有优势,大厂offer基本稳了。

1. 图形学
现在游戏开发基本都会问一些图形学的知识。大三阶段也并不需要学的太深,如对实时渲染、离线渲染各个点都深入,但是需要知道一些基础的东西,如视锥体、渲染管线、深度/模板测试等等

资料
《计算机图形学基础》
    【闫令其老师的图形学课】:这里
    OpenGL:这里

2. 游戏引擎架构
虽然会使用unity/UE引擎,也接触到其中一些模块,如物理、动画等,但是对其原理、以及对游戏引擎整体,很难有深入认知。
游戏引擎架构,则很好地弥补了这个缺陷。可以从全局视角了解游戏引擎包含的各个模块,以及对每个模块原理有基本的了解。
资料
《游戏引擎架构》视频
华南理工大学-陈泽林老师《3D游戏引擎架构设计基础》



3. 设计模式
除了会写基本的业务逻辑,好的代码框架可以极大的提高开发效率。
资料
    《游戏设计模式》
4. LUA/python程序设计
除了C++一门主要的编程语言,会用一门脚本语言也很重。脚本语言的简单、轻量级、兼容性等等,非常适应一些业务,如热更、游戏逻辑等等。而且上手很快。
资料
《Lua设计与实现》
《Lua 教程》:这里
《Python编程 从入门到实践》
    python资料太多了,慕课、网易公开课、B站随便搜

实习
进入大三,尤其是在大三下学期,就开始着手找工作了。这时候,除了学习游戏进阶的知识,同时需要关注招聘信息,也要为面试做准备。这又是一大块,以后单独讲。

4大四
如果经历了大三暑假实习,大四的找工作相对来说会轻松很多。这时候对未来选择的方向也会有自己的想法。大四期间,可以根据自己想发展的方向,客户端、服务端、引擎,进行深入。这里推荐各个方向深入的一个点,仅供参考。到这个时候,其实也不需要参考了,会有自己的见解。
这时候再来看网上的一些技术博客,不会如看天书,而是真正的学习、吸收。

课程
    shader
    实时渲染
    网络编程
    动画物理
资料
1. shader
《Unity Shader 入门精要》
2. 实时渲染
《实时渲染第4版》
3. 网络编程
《网络多人游戏架构与编程》
4. 动画物理
《基于物理的建模与动画》
视频《GAMES201:高级物理引擎实战指南》

部分书籍可在公众号【游戏君五尘】后台,搜索关键字【c++】【游戏编程】【图形学】获取
若对你有帮助,点赞、关注、收藏支持下吧~

相信经过四年系统的学习,毕业的时候已经获取了游戏程序开发的知识,而且具备非常好的专业素养。随后便是在工作中,在项目中积累、深入。职业之路,由此开启....

微信搜索【游戏君五尘】,关注我,游戏开发路上不孤单~
入行 | 求职 | 技术 | 科普欢迎关注~

节选自【如何规划大学生涯----游戏开发】原文链接

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Unity开发者联盟 ( 粤ICP备20003399号 )

GMT+8, 2024-11-27 04:17 , Processed in 0.094566 second(s), 26 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表