知道美河 | 上传资料 | VIP申请 | 精品课程 | 资料搜索 | 问题反馈 | 会员手册 | 积分消费 | 积分充值 | 帐号保护
美河学习学习在线赞助VIP

美河学习在线(主站) eimhe.com

 找回密码
 建立账号
查看: 62818|回复: 33

[原创] 游戏引擎开发之路

[复制链接]
发表于 2009-1-12 23:00:51 | 显示全部楼层 |阅读模式
这条路很长,因为需要知道和用到的东西太多了。6 r; O# H6 ?% M! w6 B0 P0 L& L
1 C1 ?! A; ~2 G) }4 X- g, r1 H
学习次序
4 T; M4 k  D8 o4 y2 U1、首先是语言方面,这个问题没有太多的选择的余地,基本上是用C和C++;VB的也有,但是很少;C#因为微软的力挺,在游戏开发中也逐渐多了示例。了解基本语义和语法就可以下一步了。如果想C++学精通了在往下学,估计就没有机会往下学了,因为你的热情可能在这都耗费了。这个的学习是要不断重复的,想一遍学好是不可能的。+ ]* x- b- Q9 E; m4 K
2、数据结构的知识。这是基本的,而且对于算法的优化,速度的提升,在游戏开发中也是极为讲究的。教程很多,关键还是自己的思考和把握。' K7 @! o* \& k1 J  l
3、Visual Studio 环境的使用。这个比较简单但是却十分重要,如果连筷子都不会用,想吃面条,那是比较费劲的,呵呵。看MSDN中相关帮助部分。+ H* o. j' _- L7 ]1 r  X# n5 ^# B
4、Win32编程。想全面就看《Windows 程序设计》就可以。网上有电子版,中英文都有,自己搜。想粗略了解就看《Windows游戏编程大师技巧》第一部分。
/ x, |& a, D/ Z5、COM接口的使用。想粗略了解就看《Windows游戏编程大师技巧》第二部分。$ ~! J( I& R. @2 `
6、图形学。这个是理论部分的内容,我认为可以先看DirectX或者OpenGL,然后再翻回头看这个。其实我是看了DirectX之后,又看了两遍图形学,才对图形学有了切实的感觉。2 ?2 \) M6 j& L4 `3 }: n0 \3 c* g$ |1 B
7、图形软件开发包。主要是DirectX和OpenGL。任选一个深入地学,学好之后,再学另一个,否则就会白白地浪费很多精力,因为他们相通或者相同的东西是主要的,不同的地方是次要的。
- l6 I; U. N5 z4 o+ p; ~8、软件工程。任何一个大型软件的开发,都离不开软件工程的支持。引擎开发就是一个大的工程。所以应该对软件工程有个大概了解。
# x! I* H  }3 k) J" W  B2 G, }- i9、设计模式。有不少引擎大量地应用设计模式提高软件的性能,比如Ogre。- X8 C. j/ Z) w2 z& x6 Z. J- y/ D
其实还有,但是最主要的就是上面这些了。其他的内容,等上面这些了解了,就自然知道下一步要干什么了。/ M: j0 {( s0 c5 ?& F' _5 l( V1 \

' ~4 S1 r2 P" T5 Z图书推荐
% @  ]" n. R3 N1 V不要被上面的说法唬住,呵呵。如果想开始,那么按照下面的推荐书籍顺序看,应该入门比较轻松一些。这是我走过之后,发现的一个比较好的学习路径。当然我买了很多内容级别重复的书,在此就不推荐了。, @+ C. ], z8 S8 p! C! n: @
1、概述部分:《游戏的设计与开发——梦开始的地方》(网上有中文电子版,是本了解游戏全貌的好书。)  t/ k& B- e) r6 ~0 p+ q& G
2、基础部分:《Windows游戏编程大师技巧》 《精通DirectX 3D图形与动画程序设计》0 l# G& }  E* ?* i$ y, M8 D% S% j
3、提高部分:《advanced animation with directx》(中文版翻译的很烂,有不少错句,假如你认真看的话,可能看不懂。如果有时间,还是看英文的好。)《DirectX 游戏开发终极指南》# s1 Q/ v/ Q! ^
4、高端部分:《3D Game Engine Programming》(网上有电子版,但没有中文版,以后我时间充裕了可能会翻译部分章节。),然后是开源引擎分析,比如Ogre
. B) R+ q* @1 H, R" f5、终极部分:自己开发,然后改进。
0 |% e. K) T. A+ ~, N
4 [, n) U* p( O% t2 n图形学是以数学为基础的(其实用到的数学并不难),而无数经典资料是英文的,而且没有合适的翻译,或者根本没有翻译。这就需要大家的英语要好。所以,英语数学很重要。不要小看了你的四级,过了看一些英文文章就没有什么大的障碍;不要逃避你的高数,如果深入研究,高数哪都用得到。6 h5 Y3 q6 @$ U5 Z/ w5 o
这是我自己的切身经验,希望对大家有用。8 b, k4 I" k! ?6 N

9 H; {; O! E0 ?! b+ L% v# k# [5 g1 i/ k
补充内容:
" _5 d) k0 t: E! @5 Q( H: _! x) e上面分析的主要是图形引擎部分,而没有涉及到其他的引擎部分,比如人工智能引擎、物理引擎、网络引擎等等部分。当上面的熟悉了之后,自然就会看过很多的资料,然后自己肯定知道下面应该怎么走,在此,我就不多说了,因为我也没有走的更深入,呵呵。
: |# e  R$ X6 H( v! b9 ?# f, t4 o5 X6楼的bluebirddm说的网络部分,其实如果都搜索的话,还是有一些资料的,不过大多是英文的。《3D Game Engine Programming》的第12章介绍的就是。能够搜到的资料还有Developer's.Guide.To.Multiplayer.Games.pdf和Programming.Multiplayer.Games.(2004).EEn;.BM.OCR.6.0.ShareConnector.pdf。
2 J+ B1 f( f. w' A# S+ O' @* I3 L, p8 P' l; a5 R: w) g! x
原创内容,版权所有。
( K! J# h& g% b% s0 W
# a' t. [. ^8 @$ x: N& r  @[ 本帖最后由 gehan 于 2009-2-13 22:57 编辑 ]
发表于 2009-1-13 09:39:16 | 显示全部楼层
发表于 2009-1-14 15:29:51 | 显示全部楼层
 楼主| 发表于 2009-1-17 16:41:40 | 显示全部楼层
有必要说一下,游戏引擎开发和游戏开发并不一样。游戏开发相对来说要容易些。引擎开发的要求和难度要大一些。游戏引擎就相当于计算机的操作系统,游戏相当于计算机中的应用程序。游戏引擎封装一些基本操作供游戏调用。7 c6 k2 H0 D$ q6 E4 g% }  V
市面上见到的所有的游戏都有自己的引擎,有一些游戏还使用相同的引擎。

评分

1

查看全部评分

发表于 2009-1-30 14:21:22 | 显示全部楼层
想问一下楼主有没有涉及到网络的部分,如果有麻烦指点一下,国内这方面的资料太少了
发表于 2009-2-2 19:49:48 | 显示全部楼层
 楼主| 发表于 2009-2-13 23:04:30 | 显示全部楼层
原帖由 bluebirddm 于 2009-1-30 14:21 发表 : [* z1 g' F) r" a3 c
想问一下楼主有没有涉及到网络的部分,如果有麻烦指点一下,国内这方面的资料太少了
3 W+ ?. ]4 i& M7 `/ B1 h4 ~( r( D7 e# k
国内资料的确是不多,我接触的也大多是英文的,中文的资料也有,但介绍的太浅显。具体网络编程书目,可以去当当搜索。我只粗略看过游戏学院的那本,网上都可以买。
发表于 2009-4-1 22:26:00 | 显示全部楼层
发表于 2009-4-8 12:39:56 | 显示全部楼层
非常感谢楼主~~~看了发现要学的东西真的好多,还要看英文版的书 ,我英文现在很菜的,恐怕看起来很吃力啊 ,数学也忘记很多了
 楼主| 发表于 2009-4-8 13:45:20 | 显示全部楼层
原帖由 lunaaiyu 于 2009-4-8 12:39 发表 6 w3 e, J' b' R( u6 {
非常感谢楼主~~~看了发现要学的东西真的好多,还要看英文版的书 ,我英文现在很菜的,恐怕看起来很吃力啊 ,数学也忘记很多了

  m1 ?- h5 u; \+ ^8 S- O' f我认为大家对于外语恐惧的态度,主要是心态问题。我也曾经有过这种恐惧,只能尽量去看,看多了就好了。
发表于 2009-4-11 07:58:47 | 显示全部楼层
多谢楼主介绍。不过游戏在我眼里一直是神秘的东西,呵呵
发表于 2009-4-11 14:39:28 | 显示全部楼层
发表于 2009-4-13 16:56:12 | 显示全部楼层
发表于 2009-4-19 13:09:01 | 显示全部楼层
发表于 2009-4-20 19:29:04 | 显示全部楼层
发表于 2009-4-23 18:59:37 | 显示全部楼层
原帖由 mhxznxb 于 2009-4-20 19:29 发表   |. W# f6 s" \# r4 ?% Y
游戏开发
( t5 A3 J9 D1 t2 D5 W' ?( L! K0 ?看不懂哦
$ y6 Q9 n  o) m- |9 E$ B

1 @0 W1 o+ a" b9 ~# T楼主说这个不是游戏开发,是游戏引擎开发,o(∩_∩)o...
发表于 2009-4-24 11:44:14 | 显示全部楼层
发表于 2009-4-29 13:32:35 | 显示全部楼层
发表于 2009-5-10 16:23:15 | 显示全部楼层
发表于 2009-7-19 09:13:18 | 显示全部楼层
发表于 2009-7-20 11:08:22 | 显示全部楼层
发表于 2009-10-13 11:31:34 | 显示全部楼层
以前最想干的就是游戏开发,但后来知道,游戏开发的编程人员还比不上游戏里的美术设计和规划人员,他们说游戏里的编程人员就好像起房子的那些建筑工人而已,听得这有点心寒~
发表于 2009-10-13 12:38:38 | 显示全部楼层
发表于 2009-12-4 08:08:48 | 显示全部楼层
发表于 2010-1-31 15:52:00 | 显示全部楼层
发表于 2010-3-18 20:30:47 | 显示全部楼层
您需要登录后才可以回帖 登录 | 建立账号

本版积分规则

 
QQ在线咨询

QQ|小黑屋|手机版|Archiver|美河学习在线 ( 浙网备33020302000026号 )

GMT+8, 2026-6-4 17:30

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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