找回密码
 立即注册
查看: 333|回复: 6

游戏开发该学精哪一门语言?

[复制链接]
发表于 2021-9-26 12:41 | 显示全部楼层 |阅读模式
大一计算机新生想毕业后从事游戏设计方面开发,该如何选择学习?必须是c#,unity3d么,java,python又该学到什么深度呢?美术会不会耗费特别多时间?
发表于 2021-9-26 12:49 | 显示全部楼层
谢邀。
题主已经确定想要逐步走上游戏开发道路,非常值得肯定。
要说哪种语言流行,主流的有:
    Unity。C#,LuaUE4。蓝图,C++H5游戏,例如微信小游戏、网页游戏。主要用到JavaScript和相关技术其他。独立游戏圈流行的MonoDevelop、Love2D等等;还有大厂采用自研引擎的,但是近几年大量转向UE4和Unity。
如果要从“现在流行什么语言开发游戏”推导出现在该学什么语言,我觉着对于已经进入社会的人来说,这么想是对的。而对于大一计算机新生来说,又太急功近利了,长远来看并不是好的发展路线。

所以,不应该关心目前流行的游戏引擎使用的是哪一种语言,而是应该从长线来看,先看看大学期间想在游戏方面深入,应当学习什么:
    编程基础。C/C++,算法,数据结构。(最重要)游戏引擎方向——3D数学(退一步说线性代数要学透),图形学语言方向——往大了说,学编译原理。往实际说,要尽可能多了解Lua或者某种动态语言的的底层实现。Gameplay方向——玩游戏时,对游戏逻辑保持敏感性,游戏逻辑往往非常抽象和巧妙,可以在玩游戏时进行思考。例如简单的斗地主,实现上也有很多值得深入分析思考的问题。
以上几点看着就非常头疼,因为缺少实现游戏的乐趣。有一些“软”一点的方向可以作为补充:
    直接学习Unity或者UE4开发自己想做的游戏,素材和资源多在网上找,有兴趣的也可以自己搭建像素、体素的素材。开发游戏中用到的小工具,或是实现某一个游戏功能Demo。
后面两点的好处是可以获得兴趣和正反馈,帮助你坚持下去。

本回答的重点就是提醒计算机专业的同学,不要被游戏开发表面上的乐趣所迷惑,越是基础的东西,它的重要性就越大,越是经得起时间的考验。
未来真的要做出原创性的游戏的时候,就是对我们综合能力的考验了。比如下面这个东西,就是一个非“专业程序”开发者搞出来的东西:


【卡姐翻译】《雨世界》的动画制作过程 GDC 2016 The Rain World Animation Process_哔哩哔哩 (゜-゜)つロ 干杯~-bilibili
总之,大树只有根深才能枝繁叶茂。最后回答楼主的问题:一定要深入掌握某些语言的话,选择C和C++。

本帖子中包含更多资源

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

×
发表于 2021-9-26 12:53 | 显示全部楼层
谢邀。
其他人回答的都差不多了,我提一句:题主你想好是做游戏设计,还是做游戏工程师,这俩可不一样,单论设计分美术设计和游戏策划,这俩跟程序可没太多直接关系。
发表于 2021-9-26 12:58 | 显示全部楼层
回过头来看3年前的答案,感觉当年自己还是很浅薄的,很多回答也不太对,如今在计算机方向越走越远,不过却早已不在游戏行业了

—————分割线———
感觉从小就想学计算机的同学有一半是为了成为黑客,有一半是为了游戏开发233333(勿喷)。
题主是计算机专业的新生,那我作为一个也想做,并且正在做,也来也要做游戏开发的老生来谈一谈自己自学3年多的经验。
1:游戏引擎是必学的,u3d ue4 cocos 主流的三款引擎。
u3d:我就用的是这个,因为做手游的用的比较多,而且从题主的描述来看是想搞独立游戏开发,那手游是一个体量比较合适的选择,pc端游一个人或者一个小团队还是比较难搞的。
u3d用起来还是比较舒服的(可能是用的比较多…),不过不开源,所以有时候会遇到(基本遇不到)一些bug,你不知道是自己的问题还是引擎本身的问题。但是相比cocos个人感觉还是比较适合手游开发的。
cocos:我用起来体验很差,可能是我自己太垃圾了…前一段时间做h5小游戏被迫用了一下,引擎本身各种问题,反正感觉很不好,只能搞2D,换句话说cocos就是抄了一下u3d,不过改版成2d了…(不喜勿喷)
ue4我没用过,不好评价,只知道比较重,比较强大,手机上跑ue4的游戏性能是个瓶颈。不过最近ue4也开始转行向手游靠拢了。
2:编程
当你想好使用哪一款引擎的时候,就去学习引擎配套的语言,u3d就c#  这个是客户端,为了热更新可以学习lua 然后,后台服务器需要学习c 和c++ 同时学习linux服务器的一些东西,《unix网络编程》认真看,然后还有一些设计模式啊,操作系统啊什么的。编译原理,计组什么的感觉就是扯淡,我目前觉得没必要(用位运算优化一下加减乘除什么鬼东西吧?),可能我境界达不到吧…
算法什么的,可以了解一下ACM(滑稽)
3:非计算机专业知识
我劝你还是放弃吧,时间精力是有限的,专业的东西交给专业人事去处理(君子性非异也,善假于物也),如果你时间多完全可以去学习计算机专业知识(相信我,你学不完的)。
4:计算机图形学 我没学过,我不会,我不评价,我肯定要学!差不多就这么多,有兴趣搞搞AI,人工智能的,可以写游戏AI。python可以学习下,爬爬数据什么的,搞一搞大数据分析,看一下市场动向??
至于题主说的学到什么程度????往深里学,每个类型1K页的像砖一样的这种书,融会贯通就差不多了。

还有什么游戏设计的方法论之类的策划要学的东西。
发表于 2021-9-26 13:04 | 显示全部楼层
C
发表于 2021-9-26 13:13 | 显示全部楼层
C/c++,c#,
发表于 2021-9-26 13:20 | 显示全部楼层
英语是最基本的
懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-11-24 16:41 , Processed in 0.094377 second(s), 26 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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