幻想森林

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 7804|回复: 5

搭建你的跨平台游戏开发环境

[复制链接]

1

主题

5

帖子

167

积分

③业余

积分
167
QQ
发表于 2010-4-5 16:46:07 | 显示全部楼层 |阅读模式
虽然目前大部分游戏都是闻都死(windows)平台的,但是毕竟是商业游戏居多,独立游戏普遍都是跨平台的,或者说并不是为了跨平台而去跨平台,而是由于其他各种因素决定,至于跨平台的好坏那就仁者见仁智者见智,这里不讨论,下面开始讲解如何搭建你的跨平台游戏开发环境(这里的跨平台指闻都死和牛克死(Linux),其他类Unix和移动平台游戏机平台什么的不管)

首先,选择一款开发语言,当然是有IDE的最好,这里只说C/C++,跨平台的IDE有很多,比如Eclipse、NetBeans、Dev-cpp、CB(Code::Blocks)等等,我个人推荐使用CB,关于他的介绍什么的详见官网Code::Blocks

然后,选择一个图形SDK或者引擎,跨平台的不是很多,OpenGL这是最底层的,必须学习,我们重点看看在他之上包装的SDK或引擎。几乎开源的引擎都是跨平台的,比如SDL(Simple DirectMedia Layer),Irrlicht,Ogre 3D,OSG(OpenSceneGraph)等等,这里我个人推荐2D使用SDL,3D使用OGRE。SDL包含了大部分常用的功能,从显示到音乐,从输入到视频回放等等,Ogre 3D则因为结构化美,插件式,底层无关性等特点而被诸多使用,比如搜狐的《天龙八部》。

现在来看看其他游戏开发需要用到的SDK,开源为主。

音视频:推荐FMoD和FFmpeg,FMoD音频SDK用于非商业游戏可自由使用,FFmpeg则是包含音视频的著名开源方案,暴风影音、KMP、QQ影音什么都是用他编解码(这三个软件已经被列为FFmpeg的耻辱 = =b),觉得前两种太大的话,可以选择Ogg Vorbis和Theora,一个处理音频,后一个处理视频。
输入控制:一般输入控制键盘啊鼠标啊手柄啊什么的用系统API就可以,当然,想省事的话也有OIS(Object Oriented Input System),凡是输入设备基本都支持了。
GUI:一般GUI都是自己设计的,当然,也有偷懒用的,推荐CEGUIMyGUI
网络:惭愧,网络接触的少,除了自己设计,只推荐RakNet,要想实行更大规模的网络连接,可以看看TrinityCore2
物理:一个完整的游戏是少不了物理支持的,可以供我们免费使用的物理模块不少,但是以HavokPhysX为最多使用的,所以我们这里只需其中一个。

游戏开发套件:
Torque 3D - 国外独立或小型制作者工作室等最多使用的套件,包含游戏用到的所有功能和内嵌编辑器,工具,新的T3D可以开发Web 3D,特别是购买完全版还能获得源代码。
Unity 3D - 新兴的游戏套件,同样包含游戏用到的所有功能和内嵌编辑器,工具,使用类C#的语言(mono)作为脚本,他的主攻方向是Web 3D,可以开发出在网页运行的3D游戏,对于独立开发可以免费使用。
Unreal Development Kit - Epic公司新近推出的,基于Unreal 3的游戏开发包,包括Unreal 3的所有功能和编辑器,工具等,对于独立开发可以免费使用。嘛,这个就不能跨平台了。

基本上游戏开发的都已经列出来的,善用谷歌,其他资料工具什么的都能很容易找到。

下面开始讲解CB+wxWidgets+Ogre 3D+FFmpeg+CEGUI+RakNet的教程,与君共勉!

1.下载CB。进入http://www.codeblocks.org/downloads/5选择codeblocks-8.02mingw-setup.exe并下载安装,如果你是在闻都死平台,那么还要进入http://forums.codeblocks.org/index.php/board,20.0.html选择最新一期的unicode windows wxWidget dll和mingw10m.dll,还有下方的build下载并覆盖原文件,mingw10m.dll放在 CB文件夹\MinGW\bin 下面。

2.下载wxWidgets。这是用来开发跨平台GUI的库,比如窗口,控件什么的,进入http://www.wxwindows.org/downloads/选择wxMSW下载并解压,为了后续方便解说,我把它解压到 CB文件夹\Projects\wxMSW。

3.下载Ogre 3D,FFmpeg,CEGUI,RakNet。
Ogre 3D:进入http://www.ogre3d.org/download/source下载(CB文件夹\Projects\Ogre)。还要下载MinGW Precompiled Dependencies。进入http://sourceforge.net/projects/ogrescenebuilde/files/下载地图编辑器(CB文件夹\Projects\Ogre\Ogitor,进入http://www.ogremax.com/downloads下载对应的用来导出3D建模软件的模型到OGRE的工具(CB文件夹\Projects\OGRE\Ogre Max
FFmpeg使用任一Subversion客户端(比如TortoiseSVN)从svn://svn.ffmpeg.org/ffmpeg/trunk(CB文件夹\Projects\FFmpeg检出完整源代码。
CEGUI:分别进入http://www.cegui.org.uk/wiki/index.php/CEGUI_Downloads_0.7.1(CB文件夹\Projects\CEGUI\CEGUIhttp://www.cegui.org.uk/wiki/index.php/CELayoutEditor_Downloads_0.7.1(CB文件夹\Projects\CEGUI\LayoutEditorhttp://www.cegui.org.uk/wiki/index.php/CEImagesetEditor_Downloads_0.7.1下载(CB文件夹\Projects\CEGUI\ImagesetEditor
RakNet:进入http://www.jenkinssoftware.com/下载(CB文件夹\Projects\RakNet

4.准备工作已经完成,下面开始逐个编译。
wxWidgets:参考http://blog.csdn.net/joliny/archive/2008/12/12/3505566.aspx
Ogre 3D:参考http://www.ogre3d.org/wiki/index.php/Building_Ogre_With_CMake,Ogitor参考http://wiki.ogitor.org/Building+Ogitor&structure=Development
FFmpeg:参考http://ffmpeg.org/general.html
CEGUI:拿来后可以直接编译。
RakNet:拿来后可以直接编译。
Havok/PhysX:拿来后不用编译。

到此,我们已经有了可以使用图形,音视频,用户界面,编辑器,网络各种库文件,可以开始我们的游戏开发之旅了~民那,钢巴列!(也许会写个游戏开发教程,再说吧 >.<)
[7Y]七曜石动漫社:109184857
回复

使用道具 举报

136

主题

1751

帖子

548

积分

版主

Rank: 7Rank: 7Rank: 7

积分
548
发表于 2010-4-5 20:06:54 | 显示全部楼层
期待早日看到你的游戏开发教程。
え~え~お!!!
回复 支持 反对

使用道具 举报

50

主题

742

帖子

402

积分

版主

自定义头衔

Rank: 7Rank: 7Rank: 7

积分
402
发表于 2010-4-5 21:26:18 | 显示全部楼层
之前为了编译VLC,费了很大力气,最后在QT4的无限编译时间前倒下了- -不过FFMPEG装好了……

E8200 编译了5小时未果= =终于放弃了,之后才看到有配置可以精简- -

PS:个人还是觉得跨平台实在不怎么有趣- -|||
Style-C
回复 支持 反对

使用道具 举报

1

主题

5

帖子

167

积分

③业余

积分
167
QQ
 楼主| 发表于 2010-5-1 10:14:28 | 显示全部楼层
嘛,跨平台主要是让那些懒得在日后进行移植工作而用的,虽然配置麻烦,但真的是一次搞定多平台齐发~
[7Y]七曜石动漫社:109184857
回复 支持 反对

使用道具 举报

24

主题

117

帖子

1274

积分

⑥精研

积分
1274
QQ
发表于 2010-6-10 02:22:59 | 显示全部楼层
于是个人觉得一个Win32平台+DirectX足矣……
Tamashii是啥意思? 魂! ======================= 我真是败给C++的面向对象了啊……
回复 支持 反对

使用道具 举报

136

主题

1751

帖子

548

积分

版主

Rank: 7Rank: 7Rank: 7

积分
548
发表于 2010-6-14 08:54:46 | 显示全部楼层
各人有各人的想法和需求。
え~え~お!!!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|幻想森林

GMT+8, 2024-4-19 03:29 , Processed in 0.039593 second(s), 21 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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