【Ogre编程入门与进阶】第三章 Ogre框架配置及概要分析

3.1 Ogre支持的系统平台

        笔者认为,Ogre几乎可以支持所有的系统平台。这并不是天方夜谭,Ogre的确拥有很强的跨平台性。

       Ogre是一个用C++语言开发的图形渲染引擎,Ogre最开始主要应用于Windows系统平台。不过随着Ogre的不断发展,Ogre的核心团队吸纳了精通Mac OS X和Linux系统的人才,来开发适用于这两种系统平台的Ogre,目前,Ogre开发团队中有专门的人员来维护Mac OS X和Linux系统下的Ogre。因此,无论是Windows系统,还是Mac OS X和Linux系统Ogre都可以在源代码级别上对其提供良好的支持。

        另外,目前版本的Ogre已经开启了本地OpenGL的支持,因此,从理论上来说,目前的Ogre几乎可以支持所有拥有OpenGL硬件加速的系统。

        读到这里,有的读者可能会问,目前大大小小的系统平台远不止上文提到的这些,Ogre又怎么能说Ogre几乎可以支持所有的系统平台呢?其实,Ogre的发展离不开网友的支持。热心的网友提供非常多版本的Ogre以支持这些其它的系统平台。例如,Ogre并不能提供那些非Linux的UNIX的支持,但是有的热心网友已经将自己编写的支持这类UNIX系统的“Ogre”分享在网络上,方便大家共同学习。事实上,目前存在很多这样的非官方的Ogre团体,他们在某种层面上不断对Ogre进行完善。

 

笔者注:

        虽然目前的Ogre几乎支持所有的系统平台,但是最主要的Ogre开发平台还是Windows平台。

 

       总结一下,Ogre的这种跨平台性,可以说是一种独具匠心的设计。这种设计将各种系统平台之间的差异降到最低。对于不同的软件、硬件系统尽量提供同一种标准,及ISO C++标准。

 

3.2 Ogre依赖的软件和功能

        对于目前大多数软件开发公司来说,开发一个软件都不可能从“0”开始,也就是说,当今大多数软件的开发都会依赖于其他已有的软件或者功能,在这些已有的软件和功能的基础上来开发自己的软件,这样可以“窃取”别人的开发成果(当然是在合法的前提下),从而避免了很多重复冗余的工作,提高了软件开发的速度和效率,而且,这样做还有一个好处,那就是开发者可以将更多的时间和精力用于开发属于自己软件的“特色之处”,而不用将时间浪费在那些类似于其它软件的“固有的功能”上。

        另外,目前很多的软件都是开源的(Ogre也是开源的),这也就意味着用户可以在网上免费得到这些软件的源代码,方便用户学习这些软件的开发思想和具体的技术实现。这样一来,用户就可以依赖这些思想、技术、甚至是源码来方便快捷的开发出属于自己的应用程序。

作为一个开源的图形渲染引擎,Ogre也有一些依赖项目,不过Ogre要依赖的项目并不多,主要有如下几种:FreeType、OpenIL、zziplib和zlib等,这些依赖项目可以到自身的官方网站下载,也可以到Ogre官网下载已经整合好了的资源的压缩包。下面我们就分别向读者简要介绍这些Ogre所依赖的项目。

 

(1)FreeType:

        FreeType库是一个开源的字体引擎,它具有可移植性,并提供一组统一的接口来访问字体格式的文件,这些字体格式的文件包括TrueType, OpenType, Type1, CID, CFF, Windows FON/FNT, X11 PCF等。FreeType是使用ANSI C开发的,但是它也采用了面向对象的思想,方便用户对其功能进行筛选。

(2)OpenIL(即DevIL):

        OpenIL(DevIL),开发者图像库(Developer's Image Library),它是一个“图片读取”的库,它也是一个开源库,功能非常强大,可以读取很多类型的图像文件,比如BMP、JPG、PNG和等等。

(3)zziplib+zlib:

        Zziplib是一个用来对zip文件进行读取和压缩的库,其中zlib用于提供一些压缩算法,这些算法都是开源的。

 

笔者注:

        当读者在Windows系统平台下开发Ogre应用程序时,除了上文中提到的这三种依赖项目,还必须得到微软DirectX渲染库的支持,也就是说,电脑必须要安装对应版本的DirectX,才能正常开发并运行Ogre应用程序,相应的DirectX,可以到微软的DirectX主页直接下载。

 

        另外,Ogre可以支持HLSL和GLSL两种GPU着色语言,及其现在越来越流行的cg语言(C forGraphics是为GPU编程设计的高级绘制语言,由NVIDIA和微软联合开发)。

 

笔者注:

        不论是Direct3D,还是OpenGL,一般都是硬件厂商的驱动程序复杂支持3D图形的加速。

        Ogre所需要的Direct3D环境,被集成在了DirectX SDK的安装程序中,也就是说,当我们安装完DirectX SDK后,也就安装好了Ogre所需要的Direct3D环境;而当我们选择OpenGL,它所需要的环境被集成在了硬件厂商开发的驱动程序中。

        另外,还有一点需要说明,只有在Windows系统平台下开发Ogre应用程序,才能通过Direct3D来实现图形加速,而通过OpenGL实现图形加速可以被使用在所有不同的平台下。

 

3.3 Ogre环境配置

        在我们使用Ogre之前,首先要将Ogre“安装”到我们的电脑上,即配置Ogre所需的软件环境。从大的角度讲,Ogre的环境配置可以有两种不同的方法:利用Ogre官方提供SDK构建环境以及利用源码构建环境。利用SDK构建环境简单、快捷,只需简单的安装Ogre官方网站上提供的Ogre SDK安装包,然后对开发工具和系统环境变量稍作设置即可,但是如果您想要深入学习Ogre源代码的话,笔者建议您选用第二种方法:从源码构建Ogre环境。从源码构建Ogre环境相对于利用SDK配置环境的方法显得更加“专业”,因为SDK的方法只是游走于表面而无法深入,而利用源码构建Ogre环境可以让你“深入”的了解Ogre的内部构造,包括Ogre中每个函数的含义、作用、函数之间的关系,变量的作用、含义等,在这种方法中,我们可以从“源码”的级别调试Ogre程序,可以通过源码学习Ogre的整体架构(包括Ogre的设计思路、生成方法等),最重要的是,我们可以找出这些源代码中的不足,并针对这些不足对源代码进行修改,这些“修改”很可能就代表着下一个Ogre版本的诞生!

 

笔者注:

        在本书中,我们使用的Ogre环境是Windows系统下的Visual Studio 2008+Ogre_src_v 1-7-2版,当然读者朋友也可以采用其它开发环境。在笔者写本书时Ogre官网已经公布了Ogre1.8的RC版(发布候选版),大家也可以下载使用,不过对于我们初学者来说,没有太大区别,而且配置方法是一样的。

 

1.利用Ogre SDK构建。

        SDK的概念我们在第一章曾简单介绍过:SDK(SoftwareDevelopers Kit)是软件开发包的简称,我们可以把它理解为开发一套完整程序所用到的资源的集合。对程序编写人员来说,SDK是一套对系统底层的服务的封装,这就意味着,程序编写人员可以“无视”复杂的系统底层API,而仅需简单的调用SDK提供的封装即可方便快捷的完成所需要的功能。

        那么,我们可以把Ogre SDK看做是对Ogre功能的封装。通过它,我们可以简单的安装Ogre所需的系统环境。下面笔者将详细向读者介绍这种Ogre环境的配置方法。

        第一步,我们需要登录Ogre官网,下载相应版本的Ogre SDK。

        我们登录到Ogre官网: http://www.ogre3d.org/

        找到网页左侧的DOWNLOAD——SDK标签:

  • 4
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值