游戏软件编程要先学什么

本人对游戏编程很感兴趣,对电脑的基础很扎实,现在是大二学生,由于上大学报错专业了,很后悔,现在想自学编程,请问编程的高手们,要学习编程需先学哪方面的知识,需要那些软件,还... 本人对游戏编程很感兴趣,对电脑的基础很扎实,现在是大二学生,由于上大学报错专业了,很后悔,现在想自学编程,请问编程的高手们,要学习编程需先学哪方面的知识,需要那些软件,还有就是推荐一些自学的书籍,有好的网站就发几个连接,有好的QQ群也发上来,本人真的很想学编程,小弟在此谢过了 展开
 我来答
guangzhoukin
2010-07-05 · TA获得超过1399个赞
知道小有建树答主
回答量:621
采纳率:0%
帮助的人:645万
展开全部
首先,别的都不管,一定要先学精以下数学科目:线性代数、空间解析几何、微积分。都要学到比较深的程度,千万不能囫囵吞枣,否则往后的压力会越来越大。现在本科的内容其实不够的,例如quaternion你在课本里就没学,但游戏里绝对用得多。还有,课本里大概也不会教你怎样判断任意两个多面体是否相交。这些都要靠自己多钻研、多琢磨,不能满足课本内容的。

然后,看你是侧重图形、物理、还是AI方向。

图形方面,其实基本上就是几何和光学问题,关键是熟悉API(DirectX或OpenGL)。如果想获得尖端效果,则要先学一些光学基础,然后才能进入可编程Shader的美妙境界。

物理方面,本人经验太少,只能说:这真的是太太复杂了。AI方面:本人也没经验。就不多说了。

最后才说C++编程:其实C++编程这东西真的很奇怪。我们先是在课堂上学了一套东西,然后实际开发的时候人们又会告诉我们那套东西是不能用的(理由一般就是性能低啦、不安全啦,等等),反正又得学另一套东西。搞C++特别是游戏的人,都有一种近乎病态的完美主义倾向,企图用目前并不完美的语言工具实现完美的目标(最典型的病态就是那个const,什么都加const,其实你就算加了const,人家用强制类型转换,一样可以转成非const)。还有那个指针,如果你真的用CObject *pObj这样的形式,肯定要被人骂。他们要用所谓的“smart pointer”。诸如此类,都相当变态。

其实真的要做AAA级的游戏,简直就和强迫自己开发一套操作系统、加上一套程序框架、加上实现绝大多数的数据结构和算法一样痛苦。

为什么那么痛苦那么麻烦?想想:做一个游戏,本质上就是想用有限的资源模拟出无限的显示世界,而创造这个复杂的世界是上帝才能胜任的事情,那你想模拟它出来,不就是要和上帝竞争吗?(本人不信教,呵呵。)

当然,如果你只是满足比较不那么出众的游戏,或许并不用那么痛苦,随便拿个所谓的“引擎”过来用就行。或者用C#,也可以吧。
lxf2580
2010-07-05 · 超过41用户采纳过TA的回答
知道小有建树答主
回答量:113
采纳率:54%
帮助的人:38.7万
展开全部
C语言编程,这是基础。
如果可能的话,把《离散数学》,《数据结构》,《操作系统》都学一下,对将来编程水平的提高非常有帮助。
然后做游戏的话建议最好是学习C++和VC++,这个在游戏开发应用方面比较广。
当然也可以学习Flash,这个可以做Flash游戏,不过和编程好像是两个东西。
再然后就可以学习用于开发游戏的OPGL编程或者是DirectX编程。
再往下还要学什么就需要先看你的工作处于游戏开发的什么岗位而定了,本人也曾想过开发游戏,但与之无缘,所以知道的也仅此而已了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
千锋教育
2017-02-20 · 做真实的自己 用良心做教育
千锋教育
千锋教育专注HTML5大前端、JavaEE、Python、人工智能、UI&UE、云计算、全栈软件测试、大数据、物联网+嵌入式、Unity游戏开发、网络安全、互联网营销、Go语言等培训教育。
向TA提问
展开全部
学习软件编程是一个漫长而痛苦的过程,需要持之以恒的耐心,千万不能急于求成。对于一名初学者来说,最重要的还是打好基础,建议从C语言开始入门,C语言作为基础语言,大多数的高级编程语言都是在C语言的基础上演化而来的,学好了C语言,有助于掌握其他的高级语言,并掌握软件编程。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
江西新华电脑学院
2019-10-16 · 品牌创于1988,专注IT教育
江西新华电脑学院
江西新华电脑学院开设电子商务、软件开发、电竞、动漫设计、UI设计、室内设计、网络工程、互联网财务、VR等专业。 来校参观报销路费,报名享受国家学费减免政策,签订就业合同,毕业推荐高薪工作。
向TA提问
展开全部
SQL Server2005数据库设计和高级查询、数据结构、C#面向对象程序设计、HTML5与CSS3开发、JavaScript、jQuery高级编程、PHP开发、软件工程、JAVA面向对象程序设计、J2EE服务器端高级编程、APP应用程序开发、oracle数据库、Android应用开发等。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
persoul
2010-07-04 · 超过37用户采纳过TA的回答
知道小有建树答主
回答量:217
采纳率:0%
帮助的人:92.5万
展开全部
现在多数游戏都用java吧,如果你有志向向网页游戏发展就学ActionScript码
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(6)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式