首页 > 代码库 > 转: Orz是一个基于Ogre思想的游戏开发架构

转: Orz是一个基于Ogre思想的游戏开发架构

 

File:Orzlogo.gifOrz是一个基于Ogre思想的游戏开发架构,好的结构可以带来更多的功能。
Orz和其他的商业以及非商业游戏开发架构不同。Orz更专著于开发者的感受,简化开发者工作。
Orz可以用于集成其他Ogre3D之外的图形引擎。
Orz 0.4.0版本以及以后采用MIT开源授权。
关于Orz的评价,请看这里。

 

  • Orz是一个易扩展、易使用的面向对象游戏开发框架。Orz全称是Open Resources Zone,中文就是开放资源地带。Orz的目标是让每一个看电视的人,都能开发游戏。

作为对大家新春的贺礼,Ogre3D中文社区在鼠年最后一天里,把积累的代码资源捐献给社区,并承诺持续提交和维护相关项目资源和相关教程。希望对刚刚进入游戏开发领域的朋友们提供一些帮助。相关代码资源可以到,http://orz.ogre3d.cn 上面下载。我们把这个计划称为开放资源地带(open rescores zone 缩写为 Orz)。致力于游戏开发领域的技术代码交流和为新进游戏开发者提供系统提学习的资源。本计划把众多眼花缭乱的库整合,提供统一的简单流程以及相关教程,并把各种很难划分的小型工具整合发布。在后续的版本中会加入各位社区朋友们提供的的代码。


 

  • 囧:在这里什么是Orz?
    • 冏:在这个论坛中Orz = Open Resources Zone的意思,中文就是“开放资源地带”。

 

  • 囧:Open Resources Zone的宗旨是什么
    • 冏:Orz项目是一个基于LGPL的开源工程,目前他主要服务于小型休闲游戏开发(但不代表其只能开发小型游戏)。

 

  • 囧:分为哪几部分
    • 冏:Orz包括以下部分,开放的源代码,一系列开发工具集合,一些简单的框架,其他开发引擎的整合以及应用,相关的文档和社区。

 

  • 囧:Orz从何而来
    • 冏:整个工程源于一个普通程序员多年的积累,为了回报开源社区,把所有的代码捐献出来并作为整个Orz项目的基础。

 

  • 囧:我应该如何使用Orz,能从中得到什么
    • 冏:如果你是初学者的话,可以简单了解一下Orz工程所提供的知识。你也可以通过Orz框架更容易的开发一些Demo。如果你是一个从也多年的老鸟,希望你可以对Orz工程提供相应的批评和修改。如果你是一个小型企业(特别是使用OGRE3D引擎),在没有太多开发实力和经费的情况下,可以用其作为开发的基础。

 

  • 囧:是否Orz只能开发小型休闲游戏
    • 冏:虽然Orz被设计成为了更适合小型游戏开发的框架,但不限制开发大型的应用。但对与大型应用可能在这里不会提供完整的实现,需要用户自己把整个框架补充完整。

 

  • 囧:Orz能否商用
    • 冏:Orz本身是遵守LGPL协议的开源软件,但不限制用户在二次开发后进行商用。用户也不必在动态连接的情况下开源。

 

Orz(0.4.0)CDRom下载


虎年到来之际,我们社区给大家准备了新春贺礼。经过一年的不断完善和修正,Orz终于从最初的版本进化到第三个发布版本0.4(另外两个版本是0.1和0.2)。并秉承Ogre3D的服务大众精神,从LGPL授权过渡到MIT开源授权(是一个最少限制的开源授权)。


在这一年中,Orz不仅承接和完成了一些小型项目,在这个过程中,我们撰写了一系列相应的功能插件。很高兴Orz具有的良好扩展和重用能力,这些插件都可以作为Orz的一部分内容提供给大家使用。


另外在2009年的最后几个月里面,我们撰写完成了Orz的相关书籍,在这个过程中,我们对接口完整的进行了审核和调整,整个框架趋于稳定。我们希望这是一个良好的调整,更努力做到最后一次这种大规模接口变化。希望之后接口可以稳定下来。


在今后一年中,Nous和我将会有新的计划,Nous除了完善已有的OrzAsio传统网络引擎之外,还会开展OrzMPI(分布网络引擎)项目的开发。希望这些对于网络游戏的开发者有一定的帮助。当然Nous还有更大的目标,这些大家可以在以往的帖子中找到。


我个人在新的一年中,暂时放缓功能的开发,进行一些实质性的项目。除了完善程序和具体游戏开发之外之外,还要开始实践一些良好的编程习惯。这主要指的是《极限编程》中的方法学在游戏开发中的应用。不论这个过程中成功的或者失败的地方,我都会把这些经验记载在http://class.gd这个新的网站中。希望大家可以在我的经验和教训中得到一些有价值的东西。


在Orz发布的一年内,我们用其开发很多不同类型的项目。因为其具有良好的扩展性和重用性,在addons目录下我们提取了不同项目中的功能模块给大家分享。这里面包括Orz到一些功能性引擎的适配(OrzAomiUI),一些通用工具的实现(OrzTrigger),甚至一些从旧版本移植过来的Ogre3D插件(OgrePackFileSystem)等等。编译过程可以参照上面提供的方法。如果有其它问题欢迎到http://bbs.ogre3d.cn论坛交流。

 

  • OrzAomiUI

说明:Awesomium 到Orz的适配,需要依赖Ogre3D,只支持VC8.0和VC9.0。相关依赖文件在dependencies.7z。需要解压缩。

  • OrzLua

是《游戏变成精粹5》中对Lua框架的具体实现。

 

  • OrzOgreNewt

是Orz中对OgreNewt的适配。OgreNewt是Ogre中对Newton物理引擎的适配,这里提供版本为NewtonWin-2.16(发布本帖时最新),相关依赖文件在dependencies.7z。需要解压缩。

 

  • OrzQt

OrzQt是Qt中嵌套Orz的通用框架。

 

  • OrzTrigger

一个基于Orz消息系统的触发器实现,可以使用,但并未完成所有功能。

 

  • OrzScript

正在开发中的Orz脚本接口,未完成。

 

  • OgrePackFileSystem(是Ogre3D插件)

Ogre中使用有密码Zip文件的“档案”插件。

 

  • OrzMd5Checker

极其简单的MD5封装。


0.4的版本svn地址包括(还是建议大家下载光盘版,里面包括所有依赖文件以及文档)

  • 总地址(包括OrzSDK,addons插件,tutorial教程,example例子)
    • https://orzme.svn.sourceforge.net/svnroot/orzme/tags/0.4/
  • SDK地址
    • https://orzme.svn.sourceforge.net/svnroot/orzme/tags/0.4/OrzSDK


正在开发中的0.5版本svn地址在

https://orzme.svn.sourceforge.net/svnroot/orzme/branches/0.5

取自"http://wiki.ogre3d.cn/wiki/index.php?title=Orz_0.4.0_cdrom"

转: Orz是一个基于Ogre思想的游戏开发架构