大二数媒专业,想做游戏,比较迷茫,接下来的三年需要怎么办?

本人非985 211学校数字媒体技术大二学生,计算机学院还算不错,数媒专业偏计算机,但是我们专业对学生却没有一个好的指导,游戏方向的课程开设的比较晚,也不多,专业方向的比赛也不知如何下手。大一一年,学了C和Cpp,参加了ACM集训队,稍微学了一些算法,编程方面还是有不小的兴趣。学校里是班长,目前是学生会部长,还在考虑留不留主席。我对游戏行业有着很大的向往,发现系里并不会对学生有这方面的指引,所以想抓紧时间自己…
关注者
80
被浏览
12486

谢邀。个人经历,辩证看待。

赶紧的,你的时间刚刚好,学了一些语言,不知道能干嘛,我当时瞎看了很多书,真的是很多,最后发现有些弯路。我现在假设你学完了谭浩强的c,看完了c++编程深思想的两卷,课后习题至少做了四分之一。


第一步,你得知道游戏基础编程模型(框架),其实很简单,要不了多少时间就能弄懂。然后,请看这本书:
《Windows游戏编程大师技巧(第2版)(附光盘)》 拉莫斯 (André LaMothe), 沙鹰【摘要 书评 试读】图书
(豆瓣说我ip有问题)

注意看作者啊,淘宝别买错了。有人说这本书太老了,一个字,滚。

这本书以windows操作系统(最大众)为示例讲解了什么是游戏开发模型,基础模型,输入控制,网络,音频,图像精灵(sprite)处理,文件读取等等等,你学懂这个了,相当于九阳神功(内功)的前几层,你说你搞过acm,那也是九阳神功。

学习时间为2-5个月,每天4小时。别断啊,学完就能开发小游戏了,你是学生,有时间研究,用windows GDI函数,bitblt类函数画像素,bitmap文件做基础,别用现成的工具(unity)。

我相信,你搞懂的时候,特别想开发出来一个简单的游戏。我那时候就相当冲动,彻夜不眠干出来一个。。。巨简单的三消游戏。


第二步,大规模程序的构架,你如果搞acm,顶了天就100行程序,但是游戏可有上万行,你在上一步中如果自己开发一个小游戏,比如打地鼠,用了些面向对象的知识,你会发现代码太多之后必须会组织,不然无法掌控,希望你遇到了这个问题。

去看两本书:
《计算机科学丛书:设计模式 可复用面向对象软件的基础》 Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides, 李英军, 等【摘要 书评 试读】图书

《重构:改善既有代码的设计》 马丁·福勒 (Martin Fowler), 熊节【摘要 书评 试读】图书

(豆瓣还是说我ip有问题)

我给你介绍的都是神作啊,你还可以去买其他的书,综合看。中国的书就是便宜,我上学4年买了4大箱书,开始工作第一个月试用工资的一半就赚回来了。放心买。

记得啊,acm里面的函数,变量命名是有点问题,别把他放在实际大项目中,不然a,b,m,变量谁看得懂。

另外可以看看:

《代码大全(第2版)》 史蒂夫•迈克康奈尔 (Steve McConnell), 金戈【摘要 书评 试读】图书

一本名字和内容完全不想干的神作。当参考,不需要一次性看完。

到此时,你才完成了一半。能够理解什么叫游戏,可以开发简单的2d游戏。第一步加第二步我的小小小成就(Sea Diamond-GameRes游资网):


第三步,学习3d图形学。嗯,你的基础够,acm九阳神功,自己上3d图形学国外基础教程:

计算机图形学原理及实践:C语言描述(原书第2版) (平装)

说实在的这本书我自己花了3个月肯,娘希匹,就只啃了一半,还似懂非懂,他不是为了游戏而写的,所有只有基础,数学基础,非常难啃,所以评价不高。

接下来,还是那位AndreLamothe神人的神作:

《3D游戏编程大师技巧(套装共2册)》 拉莫斯(André LaMothe), 李祥瑞, 陈武【摘要 书评 试读】图书

这本书又花了4-5个月,整个大四寒假都在弄这个,异常痛苦,在说一些东西的时候(定点数),愣是花了好几天时间。后来根据这本书和我学习的一些软件构建知识在毕设设计一个3D软件渲染引擎(纯打像素点)。

然后在答辩的时候,全院老师看着大屏幕旋转的诺基亚手机模型,一愣一愣的听我讲,最后问了一个视域判断的问题(视椎体与圆形相交的问题),然后过了。唉,源码工程已丢,截图已丢。。。那天除了这个答辩,还是汶川大地震的日子,唉~所以影响特别深刻。最后那个引擎的代码也搞丢了,不过也没啥用,太原始了。扯远了。

注意哦,这个时候,完全没有OpenGL啊,CocosX啊,Unity啊,DirectX(D3D)什么事情哦。后来在工作时跟着老大一起做游戏,也和他学习了商业引擎开发的很多东西,那个时候用DX9。再后来因为看准了Unity,想学Unity,去到一个公司当程序,一开始被之前的程序鄙视,小样儿,连这么简单的Unity功能都不知道,2个月之后,我就开始鄙视他们,半年后当上主程。说的有点戏剧化,你就听听罢了。

歇息一下。

你知道,技术迭代有多快么?!

十年前UE,Orge,5年前cocos,现在unity,不知道以后是什么,但是,你有听过数学变了么?物理变了么?AndreLaMothe的书之所以老,是因为几乎没有人从数学、原理的角度出发,给你讲游戏制作,这么多年了,大多数书上来就给你讲一个工具怎么使用,点几个按钮,复制几段长长的API调用代码,实现某个功能。你知道那些API都干了些神马?


写到这里,我想起了一段剧情:

另外,给非学院派的半路子出家的一些建议在这里,我也放上来,你就随便一看:

给游戏开发萌新的一些建议 | 语盒游戏开发者日志