Mecanim 发表于 2021-4-2 13:52

目前大三,以后想从事游戏开发,需要学习什么语言或什么技术?

目前学的是软件工程,学校里讲的都是前端后端,网页设计什么的,不太喜欢,所以想学习一下游戏开发方面的技术,PC端的

zt3ff3n 发表于 2021-4-2 13:57

游戏开发中细分很多东西,题主似乎问的不是很明确,都讲讲好了。


游戏基础知识:
目前大部分游戏都是基于商业游戏引擎开发的,即Unity3d、Unreal、CryEngine之内,当然此外还有cocos和白鹭等等,以及部分游戏公司有自己的引擎,暂且不谈。
目前放眼游戏市场,Unity引擎和Unreal的使用数量几乎平分秋色。所以接下来说的也是针对这两个引擎。
注意,游戏引擎本身的使用(包括编辑器操作和开发方式)


1.游戏客户端
游戏客户端程序,就是在游戏引擎上实现游戏业务逻辑的工作。
其中,Unreal引擎的开发语言是(Unreal疯狂魔改版)的C++,和Unreal自己发明的Blueprint。在中大型项目中,基本上都是这两种语言混合完成游戏开发的。
Unity3d的官方开发语言是C#,在很多有热更新或是其他需求的游戏中,会用到第三方实现的Lua语言环境。
大概,游戏客户端方向需要学习的内容是
1.游戏引擎开发与操作
2.游戏引擎所用的开发语言的学习
3.计算机图形学


2. TA
TA,技术美术。游戏中,主角隐形之后的半透明效果,主角大招时候的技能效果,或者“我想要这个房子不受周围环境光的影响”、“我要这个logo大一点再小一点”“我想要五彩斑斓的黑”之类的,
简单的说,技术美术的工作就是编写针对GPU的程序,告诉GPU以何种方式渲染出游戏需要的效果。
需要学习的内容:
1. Shader(着色器)开发
2. OpenGL
3. 次世代美术基础


3. 服务端程序
在需要联网交互的游戏中,肯定就会有服务端程序的事。相较于客户端而言,服务端的技术栈就显得“五花八门”了,有Java的,有Cpp的,有Golang的,有C#的,(甚至还有PHP的。 根据游戏的类型,服务器也长得不太一样,有的用http处理类似常规服务端的业务逻辑,有的用udp处理帧同步的游戏。有的服务端需要计算游戏的大部分内容,有的就简单的增删改查。
对于这块的话,建议有常规服务端基础(比如能拿Java做个博客,拿C#做个BBS之类的)之后,找个游戏公司实习个一年半载。




此外,游戏开发领域还有二维美术、三维美术、关卡设计师、音效师、编曲、策划、导演等等各种有趣的值得学习的地方

kyuskoj 发表于 2021-4-2 14:00

计算机原理 c c++ 编译原理 这些学了不吃亏,不管做不做游戏,其他的随便学。学校教的东西挺好,保证出去能有饭吃,还稳定。


做游戏严重不推荐,误人,误事,误国!

RedZero9 发表于 2021-4-2 14:04

谢邀。15年从业经验。高数,线代,c语言,数据结构,这四门课最重要,最重要,最重要。再次一点的,网络,操作系统,数据库。还有其他的计算机科学与技术专业的课,都学一下。记住,没有一门课是多余的。
页: [1]
查看完整版本: 目前大三,以后想从事游戏开发,需要学习什么语言或什么技术?