如何建立开源3d引擎游戏引擎Ogre3D开发环境

中国领先的IT技术网站
51CTO旗下网站
OGRE 3D游戏开发框架指南 前言
《OGRE 3D游戏开发框架指南》本书主要用来帮助读者从一个引擎研究者成为一个游戏开发人员,本书的最大特点是依靠代码来推进进度,以三周21天的时间顺序来编排主体内容,帮助读者熟悉OGRE 3D演示程序所使用的框架,并完成一款《打地鼠》游戏,采用Orz框架来代替OGRE 3D演示程序框架实现《太空侵略者》这款经典游戏,以及Orz框架的使用细节。本节为前言部分。
作者:邸锐(免费打工仔)来源:电子工业出版社| 16:27
2006年,我们翻译了"PRO OGRE 3D PROGRAMMING"这本书,创建了OGRE 3D引擎的中文社区(),并把这本书的电子版本提供给国内的朋友下载学习。几年之后,OGRE 3D图形引擎在中国已经遍地开花,包括九城、久游、吉比特、搜狐畅游、麒麟游戏,以及网域等游戏公司都在不同程度地使用这款图形引擎,同时也有越来越多的朋友开始关注它。得到电子工业出版社的首肯,笔者有幸能撰写一本关于Ogre3D使用开发的图书。
从2006年我们建立OGRE 3D中文社区开始,不断地得到热心朋友的帮助,翻译了大量的OGRE 3D相关文档,其中包括《Ogre手册》、《基础教程》、《中级教程》,以及相关的一系列文章,以至于今天笔者准备从头撰写一本OGRE 3D相关知识的书籍时,竟然发现大部分的知识内容已经可以在网络上找到,几乎不可能再原创一本专注于OGRE 3D使用的书籍。
笔者绝对不敢冒险东拼西凑提供一本"学术腐败"的论文集给大家看,与其重复那些网络上已有的知识,不如另辟蹊径,即从代码入手讲解如何通过游戏开发框架,在学会OGRE 3D引擎之后进一步完成完整的游戏。
这本书不会告诉读者图形引擎的基础,而是希望告诉读者在了解一款图形引擎之后还缺少哪些工具来完成一个完整的游戏。本书定位于希望进一步了解如何以OGRE 3D为基础开发一款完整游戏的朋友们。
我们在光盘中提供了"PRO OGRE 3D PROGRAMMING"中文版本的下载地址,那里详细地介绍了OGRE 3D相关的知识和细节。希望读者可以结合这两本书来阅读。在这里需要感谢我的编辑袁金敏女士,正是因为她的肯定才让笔者有信心来完成这本书。
基于以上定位,这本书应该是学习OGRE 3D游戏开发的第2本书,帮助读者从一位引擎研究者成为一位可以实战的游戏开发人员。读者可能还没有接触OGRE 3D图形引擎,偶然在书店中看到这本书,正在决定是否加入OGRE 3D的开发人员队伍中来。这本书的第1章将会帮助读者解决疑惑,从一个宏观的角度来描述OGRE 3D图形引擎的发展史及相关资源。我们尽量做到简短和精辟,让读者站在书店的书架旁边就能看完,决定是否有必要学习OGRE 3D,以及是否需要掏钱买这本书。如果发现其中有您感兴趣的游戏开发工具,那么本书一定在某一天会给您的工作带来"雪中送碳"的效用。
本书阅读指南
这本书的最大特点是依赖代码来推进进度。从第2章开始的几乎每一个课程都有相关的代码工程提供给读者参考,这样做可以让读者更直观地了解本书介绍的内容。
网上说行为学的研究表明,如果坚持21天,你就很可能改变或养成一个新的习惯。虽然我不是这方面的专家,但是还是按照《21天精通XXX》书籍的惯例把这个章节的课程划分到3个星期中。每周讲解一个完整工程,至少这样做可使读者很方便地安排自己的阅读时间。
在每个星期的第1天(星期日),我们会讲解一下本周课程的具体内容和背景知识,在接下来的星期一~星期六的课程中会把一个完整的工程分解成为6个部分逐渐完善并依次讲解。
OGRE 3D把自身定位成一个纯粹的图形引擎,优秀的独立性带来的副作用是如果需要完成一款完整的游戏,OGRE 3D并不足够,还需要类似音频引擎、网络引擎、输入引擎等功能性库,以及一个高效稳定且功能强大的框架。不论读者是否做过完整的游戏,都应该能感觉到一个好的框架对于一款游戏是多么重要。本书将着重介绍这方面的知识,在第2章第1周的课程中,我们介绍读者熟悉的OGRE 3D演示程序所使用的框架,并完成一款《打地鼠》游戏。虽然这个框架不足以强壮到完成一款商业游戏,但是至少可以帮助读者了解框架在游戏开发中的重要作用。
OGRE 3D中文社区除了有翻译的大量的文档之外,同时在做一件很有意义的工作,就是开发并完善一款商业强度且基于OGRE 3D思想的游戏开发框架Orz(Open Resources Zone)。在其宣布开源的一年的时间里,我们得到了业内很多朋友的肯定和支持(甚至包括海峡对岸的朋友)。
在第2周的课程中,我们采用Orz框架来代替OGRE 3D演示程序框架实现了《太空侵略者》这款经典游戏。在这周的课程中我们采用快速开发方式来完成游戏原型,没有过多使用Orz框架中的高级特性。这样做可以使读者在不用掌握复杂背景知识的前提下,了解如何通过框架来提高游戏的开发速度和质量。而在实际的商业应用中,Orz确实带来了工作效率的大幅度提升。
如果读者接触了一些其他公司内部的开发框架,会发现Orz并不比这些商业的产品差,甚至在很多方面强于其他产品。
Orz框架有自己的野心,它不仅仅是一款帮助读者提高开发效率的工具,还在框架设计上提供了"理想式分布式开发"的游戏设计方法学基础。我们通过强大的消息系统、插件体系及ID管理器等工具,尽可能减少开发人员之间的沟通成本,实现可以让开发人员在很少协调成本的情况下合作开发巨大型游戏的基础。
基于这个理念,OGRE 3D中文社区曾经组织了一些开发人员各自完成自己的代码,在没有互相沟通的情况下实现了一个《搏击俱乐部》的类游戏。故而,我们在第3周的课程中以这个现实活动作为背景,讲解如何采用"理想的分布式开发"模型来完成一款游戏。在这里我们使用了大量Orz的高级特性和工具,从一个更高的层次来审视Orz游戏开发框架所带来的"甜品"。
不知道这些"甜品"有没有吸引读者的胃口,如果没有,我们在之后的第3章还准备了"大餐",详细地介绍了Orz框架的使用细节。
Orz在框架的设计上尽可能遵循MVC模式,我们相信一个良好的设计等于简单的框架加上丰富的工具。在框架的设计过程中,我们尽量把一些游戏开发的模块作为独立的工具在相关章节中来依次讲解,读者可以有选择地采用这些工具来简化游戏开发过程。如果读者打算从头构造一款游戏,并准备采用完整的Orz框架,这里也有对其中简单框架的详细介绍。当然和之前的课程一样,我们不仅提供了所有Orz框架的代码,还提供了与每一课程对应的例程。
我相信,在中国土壤中成长出来的游戏开发人员,很多都希望实现一个网络MMO游戏,而不是单机的"俄罗斯方砖"。
感谢熊小磊先生的无私奉献,在Orz中确实存在这样一个独立的游戏开发网络库OrzAsio。OrzAsio是一个高效并可扩展的跨平台异步网络库,目的是为用户提供高效、可靠和灵活的网络程序开发组件,方便用户构建高效且灵活的网络程序。而OrzAsio的一个重要目标是为大型多人在线游戏开发网络模块,并能良好地满足大吞吐量及高负载的网络游戏服务器需求。OrzAsio的网络底层基于boost::asio,这是一个高效、可扩展和跨平台的网络库。如果关心我们的社区,读者会了解熊小磊先生正在完成一个更加前卫且基于公共对象请求代理体系结构规范(CORBA规范)的网络游戏的网络开发架构。
在本书的随附光盘中提供了OrzAsio网络库及其依赖工具Toolkit_Plus的文档。
笔者希望读者都能喜欢我们精心准备的大餐。如果您能开心享用,那是我们的荣幸。然而制作一款完整的游戏并不是一本书能够完全讲清楚的事情,所以我们在这本书的最后提供了这个创造乐园的地图。在& 本书的附录中我们提供了Boost库、设计模式及OGRE 3D的简单概述。
好莱坞奥斯卡的获奖者都会在最重要的时间讲一些感谢的话,我们要说的话如下。
谢谢我现在和之前的老板及同事的支持与鼓励,当然请相信我并没有在上班时间来写作,也没有耽误工作进度。
感谢OGRE 3D社区提供了这么好的软件,虽然引擎的核心开发人员大部分都不懂中文,但是在这本中文书中我还是由衷地感谢他们。
谢谢那些为OGRE 3D引擎在中国普及而努力的人们,Mega的游戏开发小组、盛崇山老师、燕尘,以及谢建华(音译)先生,让我分享了你们的荣誉。
感谢熊小磊先生捐献的网络库和相应文档,感谢Mega的游戏开发小组的任晓宇先生提供《OGRE使用指南》部分章节的授权,感谢梁国栋的"附录C",感谢兄弟们找的错字。
感谢我的家人对我的关心,感谢父母能容忍我的任性。感谢女朋友对我的支持,竟然接受我每天在外地写稿子,而不是给他们打电话。
如果不是觉得我家里人会看到这本书,那我一定第一个感谢的就是您--现在看到这里的读者。如果您买了这本书,那么便是在经济上援助了我;如果您让身边的朋友阅读了这本书,那就是在梦想上援助了我。
这个梦想是:
让每个看电视的人都能开发游戏。【责任编辑: TEL:(010)】&&&&&&
大家都在看猜你喜欢
热点热点头条头条热点
24H热文一周话题本月最赞
讲师:161154人学习过
讲师:12600人学习过
讲师:12170人学习过
精选博文论坛热帖下载排行
本书是关于EJB 3.0的专业技术教程,专注于EJB的概念、方法、开发过程的介绍。同时,本书还研究许多高端的EJB知识,使得开发者能够真正理解...
订阅51CTO邮刊四大开源3d游戏引擎探究----irrlicht与orge对比 - CSDN博客
四大开源3d游戏引擎探究----irrlicht与orge对比
四大开源3d游戏引擎探究
水平有限,只对于长久以来研究的几个经典3d游戏引擎的设计思想、程序架构和应用行深入剖析的结果与游戏开发同行分享,文档有不妥之处请指出,期待我们的共同进步。
引擎名称:
1.& orge(鬼怪)
2.& Irrlicht(鬼火),
3. Nebula(星云)
4.klayGE(。。)
前言:目前,开源3d游戏引擎已经趋近于商业化引擎标准,许多引擎在图形渲染,内存分配,网络通讯方面甚超越了许多商业引擎。这些开源引擎的共同特点是这样的:
(1)引擎框架:多数的3d引擎框架为树形结构。框架最为清晰、经典的游戏引擎是Nebula星云引擎。父子节点构成了整个框架的层次,首先nebula有一个叫nRoot的类,它是所有对象类的基类,nRoot中有一个名字变量,有一个parent指针指向它的父结点,
  还有一个childlist链表保存它所拥有的子结点.因为结点也是nRoot类,所有结点的子结点中也可能有子结点,
  这样就形成了一个树形目录结构.nRoot中有一个nRoot* Find( const char* name )方法,功能很简单,就是遍历自已的
  childlist链表对比每一个nRoot结点对象的名字,如果相同就返回些对象的指针.。其他引擎也有类似的框架,比如orge的root根节点下面子节点代表每一个功能模块。
(2)内存管理:多数采取引用计数模式(引用计数为每当初始化一个指针,在函数运行完毕后自动释放,并且把这个过程进行计数)这样的好处在于对于项目的可控性很有保障,避免内存泄漏,重命名对象等。但是这种
(3)图形处理:多采取三个经典模块:场景管理器,资源管理器,渲染器。这种划分模式以orge鬼怪引擎和irrlicht鬼火引擎最为典型。先进的引擎还配有一套专门从事对于图形编程的脚本语言。比如orge内置一套脚本,可以控制场景管理器,资源管理器的图形参数及图形算法进行编辑,这样可以跳过c++繁冗的程序编写过程和漫长的项目编译时间而直接运行察看修改后程序的效果。当然,这种脚本语言模式有些效仿目前最著名的商业游戏引擎unreal3虚幻3引擎。关于场景的图形算法大多数采用8叉树与bsp(二叉空间分割)方法,支持大游戏场景的局部渲染功能。
(4)跨平台性:
本文要介绍的4个3d引擎都具有跨平台开发性能,一般可以支持多种操作系统和开发工具,比如windous下的vs.net,linux下的codewarrior等。而且像irrilicht鬼火这种引擎还支持多种语言,vc,vb等,但是目前版本其本身并无脚本可用。这些引擎还支持多种底层图形api,比如dx,opengl等。开发者可以随意选择熟悉的3d渲染api来驱动游戏程序。注意:KlayGE是本文唯一入选的国产引擎,但该引擎没有支持多api渲染机制,底层图形方面只是用opengl实现。
(5)网络部分功能较差:目前说到的几个引擎在网络方面都不是很强大,比如著名的orge引擎就是专注的图形引擎,不具备服务器-客户端的网络工作模式。目前,只有北京涂鸦产的起点引擎在网络方面在国产引擎中可以算是比较出色。值得一提的是在网络方面比较强大的商业引擎目前最火的就是bigworld,如果利用适当的渲染算法该引擎可以轻松支撑上百人
的在线pk。
(6)可接收多种3d美术资源,比如鬼火引擎可以接受Maya,3DStudio Max,COLLADA,DeleD,Milkshape,Quake 3 levels,Quake2 models,DirectX,Pulsar,My3DTools,FSRad以及Cartography Shop工具导出的资源。但是orge可接受的种类要更多。
支持骨骼动画和关键贞动画两种经典动画形式。
好了,目前我们基本了解了市面上著名的3d引擎的基本共同点,那么下面就列举以下他们的特性及优缺点。
1.Orge鬼怪:
优点:(1)强悍的图形渲染质量。该引擎的粒子系统很强,制作的光影,雾化效果极佳,图形方面全面超过torque,朱比特等普通商业引擎的能力。
(2)高效的图形编程机制。内置的特殊脚本语言,并且具有可视化的编辑工具,可以直接进行外部数据修改,内部调试。
缺点:(1)网络部分的空白
(2)高度计算量和高精度的渲染模式,使得内存和显存的压力都很大,做出的程序整体效率不高。没有相关随着硬件加速调整渲染算法和参数的api。
2.Irrlicht鬼火:
优点:(1)精悍的引擎框架,和orge及其相似。
(2)高质量的图形渲染,虽然没有orge的质量优越,但是比起一般的商业引擎仍然略胜一筹。
(3)清晰单一的c++语言实现使得引擎没有繁冗庞大的外部脚本编译器。
(4)支持根据硬件加速调整渲染模块的参数和算法的机制。整体程序会跑得很快流畅,但是画质降低。牺牲画质来保证性能。
缺点:(1)缺乏高效开发的脚本。无法像orge那样高质量高效率的进行图形编程。
(2)相对其它游戏引擎鬼火的框架可扩展性不强,设计模式相对单调而简洁。
(3)支持图形算法单一,比如骨骼动画多贴图需要很麻烦的过程
原文地址:.cn/s/blog_60b8bfd60100oh4t.html
本文已收录于以下专栏:
相关文章推荐
初衷:将登录用户的用户名 密码form提交到页面2(jsp就是servlet  提交到servlet的就不说了) 由页面2判断用户名密码的正确性继而决定跳转的方向 下面是几种实现方法
使用href超...
1. 已经安装了Ogre工程向导,VS;新建项目就可以看得OGRE的工程模版了,建立一个空项目,由于安装了Orge工程助手,所以免去了麻烦的配置过程(安装Orge工程助手步骤可以参考 Ogre...
在oracle中一个用户相当于一个数据库,因它下面可以有许多表,所以当需要验证升级脚本的正确性时,可以在某个用户下刷脚本。
那么如果访问另外一个机器上的用户的表呢
1  可以直接用select *...
大名鼎鼎的两款2D引擎不用多介绍了。只是原版的源代码编译环境vc6.0很多无法通过。
     所以这次将WIN7+VS2010编译通过的源代码放上。并附上自己找的一些例程源代码 
风魂引擎
...
OGRE独立于平台(windows or linux or MacOS),独立于3D接口(Direct3D和OpenGL),独立于场景类型(不论是室内场景还是室外场景)。OGRE中没有对窗体类型的依赖...
3.1 Ogre支持的系统平台
        笔者认为,Ogre几乎可以支持所有的系统平台。这并不是天方夜谭,Ogre的确拥有很强的跨平台性。
       Ogre是一个用C++语言开发的图形渲染...
开源图像引擎ORGE
下载了个开源图像引擎ORGE,之前在搭建天龙八部服务端时就知道这个引擎不少网游也在用,天龙就是个例子,下载后文件有50多mb,解压后将sample拖到VS上,光加载...
Irrlicht简介Irrlicht在国内也被叫做“鬼火”引擎,是一款用C++编写的开放源代码的高性能游戏引擎。而且是跨平台的,具有很好的移植性,Irrlicht支持OpenGl、Direcx3D渲染...
他的最新文章
讲师:吴岸城
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)龙芯平台上构建开源3D游戏引擎OGRE指南
我的图书馆
龙芯平台上构建开源3D游戏引擎OGRE指南
初识OGRE&&&&&&&&OGRE,是Object-OrientedGraphics Rendering Engine(面向对象的图形渲染引擎)的缩写,是一款开源的跨平台的图形渲染引擎。引擎通过采用面向对象的设计方式,把3D图形API和操作系统接口的差别抽象为通用接口,将大量的上下文相关状态和操作封装起来,开发者可以用通用且简明易懂的代码在不同平台下、使用不同3D API接口进行操作,从而减少了不必要的重复工作。&&&&&&&&ogre也有食人魔的含义,所以OGRE选择了食人魔的头像作为自己的形象标识。今天我们就从OGRE源码开始,逐步在龙芯3A0主机、Fedora21社区操作系统的平台上构建OGRE。下载OGRE源码& & & & OGRE是一个开源引擎,将引擎源码开放在bitbucket,首先从bitbucket上克隆源码,执行如下命令:&&&&cd ~&&&&hg clone&https://bitbucket.org/sinbad/ogre&&&&&&&&然后克隆OGRE所需的依赖库,执行如下命令:&&&&hg clone&https://bitbucket.org/cabalistic/ogredeps&&&&&&&&上述命令要求您的电脑中安装了mercurial工具。如果您的电脑中没有预装mercurial,可以通过如下命令快速安装:&&&&sudo yum install mercurial从源代码构建OGRE安装cmake-gui&&&&&&&&构建OGRE需要cmake-gui工具的支持,首先安装cmake-gui工具,命令如下:&&&&sudoyum install cmake-gui构建OGRE依赖库&&&&&&&&OGRE的构建依赖于一些第三方库,开发者可以选择通过手动安装或者采用OGRE提供的依赖库源码整合包进行安装。依赖库说明如表中所示:依赖库详细信息备注freetypehttp://www.freetype.org必备boost-date-timehttp://www.boost.org推荐boost-threadhttp://www.boost.org推荐nvidia-cg-toolkit/object/cg_toolkit.html推荐zlib1ghttp://www.zlib.net推荐zziphttp://zziplib.sourceforge.net推荐cppunithttp://cppunit.sourceforge.net可选doxygenhttp://doxygen.org可选xtx11 toolkit可选xaw7X11 Athena Widget可选xxf86vmX11 XFree86 video mode extension library可选xrandrX11 RandR extension library可选gluOpenGL Utility可选OIShttp://sourceforge.net/projects/wgois可选POCOhttp://pocoproject.org可选TBBhttp://www.threadingbuildingblocks.org可选&&&&&&&&本文中将采用编译OGRE提供的依赖库源码包的方式构建OGRE的依赖库,执行命令如下&&&&cd ogredeps&&& mkdirbuild&&& cdbuild&&& cmake..&&& make&&& makeinstall构建OGRE&&&&&&&&编译安装完OGRE的依赖库后,我们开始编译安装OGRE,命令如下:&&&&cd ogre&&& mkdirbuild&&& cmake-gui&&&&&&&&&进入Cmake-gui后,执行如下操作:&&&&配置源码目录为YOUR_PATH/ogre,&&&&配置构建目录为YOUR_PATH/ogre/build&&& &&&&点击Configure&&&&&&&&将OGRE_DEPENDENCIES_DIR项设为YOUR_PATH/ogredeps/build/ogredeps&&&&&&&&点击Configure&&&&&&&&如果产生错误则按照提示解决即可,比如缺少Xaw库,执行如下命令:&&&&sudoyum install xaw-devel&&&&&&& 再次Configure,直到没有错误并进入Build选项,如下图所示&&&&&&&&OGRE的Build选项较多,这里只做一些简单的介绍:&&&&&&&&OGRE_BUILD_COMPONENT_XXX选项控制对应的XXX组件是否会被添加到OGRE中&&&&&&&&OGRE_RENDERSYSTEM_XXX选项控制OGRE可以选用的渲染系统,在本文中采用了GL作为渲染系统,开发者也可以选择自己想要使用的渲染系统。&&&&&&&&OGRE_INSTALL_DOCS选项控制是否要生成OGRE文档,需要提前安装doxygen,安装命令如下:&&&&sudo yuminstall doxygen&&&&&&&&OGRE_INSTALL_SAMPLES选项控制是否要生成OGRE的示例选择完成后,点击Generate&&&&&&&&操作成功后退出cmake-gui,回到命令行操作,执行如下命令:& &&cd build&&& make&&& make install&&&&&&&&至此,OGRE在龙芯3A2000上的构建和安装就完成了,让我们去看看安装成果吧,执行如下命令:& &&#查看头文件&&& ls/usr/local/include/OGRE&&& #查看库文件&&& ls/usr/local/lib/libOgre*&&&&#查看OGRE资源文件&&& ls/usr/local/share/OGRE&&&&&&&&如果查看到了想要得到所有东西,恭喜你,OGRE已经安装成功了,让我们尽情畅游OGRE吧!畅游OGRE&&&&&&&&让我们一起进入OGRE的世界吧,打开OGRE实例浏览器的命令如下:&&&&cdogre/build/bin&&&&./SampleBrowser&&&&&&&&配置好相关选项后就可以进入OGRE的实例浏览器了,下面有一些实例的截图分享给大家。NewInstances示例Ocean示例Character实例&&&&&&&&这样OGRE构建和预览就完成了,开发者可以仔细研究一下每个例子的技术和相关选项的配置,一定也能有所收获。总结& & & & OGRE作为一个被应用与成功的商业游戏的渲染引擎,在龙芯平台上构建成功,给了开发者更多的图形开发选择。但由于笔者采用了集成显卡,目前一些示例的帧数有些偏低,但随着龙芯芯片的发展和开发者使用更好的显卡,一定可以获得更好的显示效果,做出更炫更酷的效果。
TA的最新馆藏
喜欢该文的人也喜欢十大开源游戏引擎深入比较
本文所属图书&>&
Panda3D是美国卡内基梅隆大学为娱乐巨头华特迪斯尼研发的开源、商业化三维游戏引擎,是世界十大开源游戏引擎中功能最完整、性能最稳定、商业化限制最少的一款。目前,迪斯尼仍在使用。卡内基梅隆大学在校学生及世...&&
在国内外,业界盛传有十大开源游戏引擎,分别是OGRE、Irrlicht、Panda3D、Crystal Space、jME、Blender Game Engine、Reality Factory、The Nebula Device 2、RealmForge、OpenScene- Graph。我们对这十款开源游戏引擎深入进行分析。
(1)&OGRE是面向对象图形渲染引擎(Object-Oriented Graphics Rendering Engine)的缩写,采用C++开发,以MIT许可证发布,可以在Windows、、Mac上运行。OGRE自己也说明本身不是游戏引擎。
其主要特征如下:
面向对象,插件扩展架构,具有文档支持。
支持脚本。可以通过脚本管理材质资产并进行多路渲染。
支持物理碰撞检测。
支持顶点灯光、像素灯光、灯光映射。
支持阴影映射、三维阴影。
支持多纹理、凹凸贴图、多重材质贴图、立体投影。
支持顶点、像素、高级着色。
支持场景管理,具有多种数据结构。
支持逆向运动动画、骨架动画、变形动画、混合动画及姿态动画。
支持网格加载、皮肤、渐进网格。
支持环境映射、镜头眩光、公告牌、粒子、运动模糊、天空、水、雾、丝带轨迹、透明对象。
支持XML文件转换。
引擎特性全面( ),稳定性好( ),支持全面( ),不容易上手和使用( )。
(2)&Irrlicht采用C++开发,以zlib/libpng许可证发布,可以在Windows、、Mac、Solaris、FreeBSD、Xbox上运行。Irrlicht自己也说明本身不是游戏引擎。
其主要特征如下:
面向对象,插件扩展架构,具有文档支持。
支持内建场景、灯光、GUI编辑器。
支持物理碰撞检测。
支持顶点灯光、像素灯光、灯光映射。
支持阴影映射、三维阴影、模板缓冲区阴影。
支持多纹理、凹凸贴图、多重材质贴图、立体投影。
支持顶点、像素、高级着色。
支持场景管理,具有多种数据结构,允许无缝集成室内及室外场景。
支持骨架动画、变形动画及混合动画。
支持网格加载。
支持环境映射、公告牌、粒子、天空、水、雾。
支持地形渲染。
引擎特性全面( ),稳定性好( ),支持全面( ),容易上手和使用( )。
(3)&Panda3D采用C++和开发,以BSD许可证发布,可以在Windows、Linux、Mac、SunOS上使用。Panda3D是一个完整的游戏引擎。
其主要特征如下:
面向对象,脚本扩展架构,具有文档支持。
支持内建场景、粒子、关卡编辑器。
支持物理碰撞检测,可以用于运动物体。
支持顶点灯光、像素灯光、灯光映射。
支持阴影映射、三维阴影、模板缓冲区阴影。
支持多纹理、凹凸贴图、多重材质贴图、立体投影。
支持顶点、像素、高级着色。
支持场景管理,具有多种数据结构。
支持骨架动画。
支持网格加载及皮肤。
支持环境映射、公告牌、粒子、雾、火。
支持地形渲染。
支持&客户端/服务器&网络模式。
支持2D、3D和流音效。
支持有限状态机、人工智能。
引擎特性全面( ),稳定性很好( ),支持很全面( ),很容易上手和使用( )。
(4)&Crystal Space采用C++开发,以LGPL许可证发布,可以在Windows、Linux、Mac上使用。Crystal Space是一个完整的游戏引擎。
其主要特征如下:
面向对象,扩展架构,具有文档支持。
支持内建场景、灯光、GUI编辑器。
支持物理碰撞检测,可以用于运动物体。
支持顶点灯光、灯光映射。
支持阴影映射、三维阴影。
支持多纹理、多重材质贴图。
支持顶点、像素着色。
支持场景管理,具有多种数据结构。
支持骨架动画、帧动画、变形动画。
支持网格加载、渐进网格。
支持环境映射、镜头眩光、公告牌、粒子、天空、镜像。
支持地形渲染。
支持2D、3D音效。
支持游戏世界管理。
通过有限状态机、行为树、神经网络、遗传算法支持人工智能。
引擎特性很全面( ),稳定性好( ),支持很全面( ),不容易上手和使用( )。
(5)&jME是jMonkey Engine的缩写,采用开发,以BSD许可证发布,可以在Windows、Linux、Mac上使用。JME的目标是提供一个语言3D游戏引擎,但业界目前也有人认为jME还不是一个游戏引擎。
其主要特征如下:
面向对象,插件扩展架构,具有文档支持。
支持内建游戏世界编辑器。
支持物理碰撞检测。
支持顶点灯光、灯光映射。
支持三维阴影。
支持多纹理、多重材质贴图。
支持顶点、像素、高级着色。
支持场景管理,具有多种数据结构。
支持骨架动画、帧动画。
支持网格加载及皮肤。
支持环境映射、镜头眩光、公告牌、粒子、天空、水、火、爆炸、雾。
支持地形渲染。
支持3D音效。
引擎特性全面( ),稳定性好( ),支持很全面( ),容易上手和使用( )。
(6)&Blender游戏引擎是采用C++和开发,以GPL许可证发布,可以在Windows、Linux、Mac、Solaris、FreeBSD、Irix上使用。Blender是一个完整的游戏引擎。
其主要特征如下:
面向对象,插件及脚本扩展架构,具有文档支持。
支持内建工作流、GUI、、角色等编辑器。
支持物理碰撞检测,可以用于运动物体。
支持顶点灯光、像素灯光。
支持阴影映射。
支持多纹理、凹凸贴图。
支持顶点、像素着色。
支持场景管理,具有多种数据结构。
支持逆向运动动画、帧动画。
支持网格加载及皮肤。
支持环境映射、粒子、天空、水、雾。
支持地形渲染。
支持&客户端/服务器&网络模式。
支持2D及3D音效。
通过脚本方式支持人工智能。
引擎特性基本全面( ),稳定性基本不错( ),支持全面( ),不容易上手和使用( )。
(7)&Reality Factory是采用C++开发,以MIT许可证发布,可以在Windows上使用。Reality Factory自称游戏无需。
其主要特征如下:
面向对象,脚本扩展架构,具有文档支持。
支持内建几何形体编辑器。
支持物理碰撞检测。
支持顶点灯光、像素灯光、辐射灯光、三维灯光。
支持阴影映射。
支持多纹理、凹凸贴图、多重材质贴图、投影。
支持顶点、像素着色。
支持场景管理,具有多种数据结构。
支持骨架动画、帧动画及混合动画。
支持网格加载及皮肤。
支持环境映射、公告牌、粒子、天空、水、火、爆炸、雾、贴花、天气、镜像。
支持地形渲染。
支持&客户端/服务器&网络模式。
支持3D及流音效。
通过路径查找、决策及脚本方式支持人工智能。
引擎特性基本全面( ),稳定性基本不错( ),支持基本全面( ),容易上手和使用( )。
(8)&The Nebula Device 2是采用C++开发,以MIT许可证发布,可以在Windows、Linux上使用。Nebula Device是一个完整的游戏引擎。
其主要特征如下:
面向对象,插件及脚本扩展架构,具有文档支持。
支持内建几何形体编辑器。
支持物理碰撞检测。
支持顶点灯光、像素灯光、灯光映射、光泽映射。
支持阴影映射。
支持多纹理、凹凸贴图、多重材质贴图、投影。
支持顶点、像素、高级着色。
支持场景管理,具有多种数据结构。
支持骨架动画、帧动画、变形动画及混合动画。
支持网格加载及皮肤。
支持环境映射、镜头眩光、公告牌、粒子、天空。
支持地形渲染。
支持&客户端/服务器&、P2P网络模式。
支持2D、3D及流音效。
通过脚本方式支持人工智能。
引擎特性全面( ),稳定性好( ),支持基本全面( ),不容易上手和使用( )。
(9)&RealmForge是采用C#在OGRE上开发,以LGPL许可证发布,可以在Windows、Linux、Mac、Solaris、HP/UX、FreeBSD上使用。RealmForge是一个完整的游戏引擎,现在已经转入商业化运作。
其主要特征如下:
面向对象,插件及脚本扩展架构,具有文档支持。
支持内建游戏编辑器。
支持物理碰撞检测,可以用于运动物体。
支持顶点灯光、像素灯光、灯光映射。
支持阴影映射、投影面、立体投影。
支持多纹理、凹凸贴图、多重材质贴图、投影。
支持顶点、像素、高级着色。
支持场景管理,具有多种数据结构。
支持骨架动画、帧动画、面部动画及混合动画。
支持网格加载、皮肤及渐进网格。
支持环境映射、镜头眩光、公告牌、粒子、天空、水、火、爆炸、贴花、雾、天气、镜像。
支持地形渲染。
支持&客户端/服务器&、P2P网络、主控服务器模式。
支持3D及流音效。
通过路径查找、决策、优先状态机、脚本、神经网络等方式支持人工智能。
引擎特性全面( ),稳定性基本不错( ),支持基本全面( ),不容易上手和使用( )。
(10)&OpenSceneGraph是采用C++开发,以LGPL许可证发布,可以在Windows、Linux、Mac、Solaris、SunOS、FreeBSD、Irix、Playstation上使用。OpenSceneGraph是一个完整的游戏引擎。
其主要特征如下:
面向对象,插件及脚本扩展架构,具有文档支持。
支持内建场景编辑器。
支持物理碰撞检测。
支持顶点灯光、各向异性灯光。
支持投影面、立体投影。
支持多纹理、多重材质贴图、投影。
支持顶点、像素、高级着色。
支持场景管理,具有多种数据结构。
支持骨架动画、帧动画及混合动画。
支持网格加载及皮肤。
支持环境映射、公告牌、粒子、镜像。
支持地形渲染。
支持&客户端/服务器&、P2P网络、主控服务器模式。
支持2D、3D及流音效。
引擎特性全面( ),稳定性好( ),支持还可以( ),上手和使用比较难( )。
一般说来,选择开源游戏引擎一定需要获取、好的文档及开放式支持。稳定性对于商业化运作是一个双刃剑,利于产品的开发运营,但需要有效引入新的游戏技术革新。引擎涵盖特性是一个积累过程,可以不断添加和改进。上手和使用性也反映了设计开发游戏引擎的团队的内在价值取向&&以技术为主,还是以应用为主。
游戏开发商都希望研制、运营一个万众瞩目的游戏产品,但是,使用按照不同许可证发布的游戏引擎开发的游戏产品需要遵循相应的知识产权法规。因此,游戏引擎的软件许可证成为选择时的一个极其重要的考虑因素。
您对本文章有什么意见或着疑问吗?请到您的关注和建议是我们前行的参考和动力&&
您的浏览器不支持嵌入式框架,或者当前配置为不显示嵌入式框架。
文章下载读书}

我要回帖

更多关于 开源搜索引擎 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信