


全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
浅谈OSG与游戏引擎1、 前言 3D游戏就是三维游戏,3D 中的D是Dimensional(维)的缩写。三维游戏中的点的位置由三个坐标决定的1。客观存在的现实空间就是三维空间,具有长、宽、高三种度量。三维游戏(3D游戏)是相对于二维游戏(2D游戏)而言的,因其采用了立体空间的概念,所以更显真实,而且对空间操作的随意性也较强。也更容易吸引人。特点是游戏的视角可以随意变动,具有较强的视觉冲击力。而3D游戏中的游戏引擎则是整个游戏的核心2,一个好的游戏引擎能够为游戏带来莫大的优势。2、 三维图形图像及3D游戏的引擎讨论早期有一段时间,游戏开发者关心的只是如何尽量多地开发出新的游戏,并把它们推销给玩家。尽管那时的游戏大多简单粗糙,但每款游戏的平均开发周期也要达到810个月以上3。这一方面是由于技术的原因,另一方面则是因为几乎每款游戏都要从头编写代码,造成了大量的重复劳动3。渐渐的,一些有经验的开发者摸索出了一条“偷懒”的方法,他们借用上一款类似题材游戏中的部分代码作为新游戏的基本框架,以节省开发时间和开发费用。游戏引擎的概念就是在这种背景下诞生的。游戏引擎是指一些已经编写好的可编辑游戏系统或者一些互交式实时图像应用程序的核心组件4。游戏引擎实现的功能主要是游戏要素如地形、天空、建筑、任务、动画、声音、环境等,这些都是三维游戏所不能缺少的。从编程角度看,游戏引擎是加上是一个面向游戏开发的通用内核,它把游戏程序设计中最常见的、最通用的、最核心的功能集成为一个通用的游戏开发平台和集成环境。在此基础上在进行游戏开发,游戏编程人员不需要从头做起,简单的通过API、COM接口等,直接调用游戏引擎提供的强大功能,就可以方便和快速地开发新游戏。从游戏开发角度来看,引擎相当于游戏的底层框架平台。框架平台搭建好后,只要往里填充内容就可以了。如果把游戏引擎比拟为一个“游戏操作系统”,那么最终的游戏产品则可以比拟为一个个具体运行在“ 游戏操作系统”上的应用程序。3近几年来,由于3D硬件绘图技术的突破,使得实时描绘的画面越来越精致,而且3D游戏性更多元化更逼近真实世界,因此在游戏产业中,3D游戏已经逐渐取代2D游戏而成为游戏市场的主流,即使是网络游戏,也慢慢趋向3D化。在3D游戏制作方面,欧美和日本的一些厂商都拥有自己成熟的3D游戏引擎,他们所制作的游戏也有庞大且固定的玩家群,诸如虚幻系列、合金装备2等,甚至被奉为经典,市场潜力巨大。国内3D游戏近年来也不乏精品,如长久以来倍受好评的轩辕剑,仙剑系列都开始向3D游戏过渡。 目前流行的3D游戏开发技术主要有Direct3D和OpenGL。OGRE和OSG本身被定位为一个纯粹的图形引擎,其中OpenSceneGraph(简称OSG)使用OpenGL技术开发,是一套基于C+平台的应用程序接口(API)。OSG开发的主要意义在于,将3D场景定义为空间中一系列连续的对象,以进行三维世界的管理。正是由于场景及其参数定义的特点,通过状态转化、绘图管道和自定制等操作,OSG还可以用于优化渲染性能。OGRE(Object-Oriented Graphics Rendering Engine,即:面向对象图形渲染引擎)是一个用C+开发的面向场景、非常灵活的3D引擎,它旨在让开发人员更容易、更直接地利用硬件加速的3D图形系统开发应用5。这个类库隐藏了底层系统库(如:Direct3D和OpenGL)的所有细节,提供了一个基于世界对象和其他直观类的接口。OSG引擎有一系列图形学相关的功能模块组成,主要为图形图像应用程序的开发提供场景管理和图形渲染优化的功能6。它使用可移植的ANSI C+编写,并使用已成为工业标准的OPENGL底层渲染API。OSG具备跨平台的特性,可以运行在大多数类型的操作系统系统上,并使用抽象层的概念,使OSG的函数接口可以独立于用户的本地操作系统使用;但是OSG也包含了针对某些平台相关的支持代码。OSG主要具备以下一些优势:快速开发。OSG场景图形内核封装了几乎全部的Openggl底层接口,并随时支持最新的扩展特性。应用程序的开发者可以将重心放在三维程序开发的实质性内容以及与各种场景对象交互的方法上,而不再过多的关注底层的代码。2高品质。OSG经历了许多开发成员的反复检查、测试和改善,直接参与OSG核心代码开发并有所贡献的开发人员已经接近400人。7高性能。OSG的核心代码支持多种场景裁剪技术、细节层次节点、渲染状态排序、顶点数组、现实列表、VBO、PBO、FBO、Opengl着色语言等;以及文字显示,粒子系统,阴影系统,雨、雪、火焰、烟雾等特效模拟,场景的动态调度,多线程渲染等各种机制。他们共同使OSG逐渐成为一个高性能的三维图形引擎。高质量代码。要编写高质量的程序,开发者必须了解自己所用的引擎结构。如果引擎不开放代码,那么与他相光的开发信息就被封闭起来,用户只能借助开发商的文档和客户支持来获得开发信息。开放源代码使得程序员可以检查和调试所有开发包的源代码,充分了解代码内部信息。可扩展性。基于场景图形的扩展思想,OSG提供了强大的可扩展能力,包括各类型的扩展节点、扩展渲染属性、扩展回调、扩展交互事件处理器等,为用户的程序开发提供了灵活的支持能力。可移植性。OSG提供了Windows、UNIX、Linux、Mac OS X、IRIX、Solaris、HP-UX、AIX和FreeBSD系统的移植能力,基于OSG开发的程序只要经过一次编写,就可以编译运行在这些平台之上,不需要关心更多的代码移植的细节。3、 总结 随着CG产业的不断的发展,OSG和OGRE也将会更加的完善和高效,在游戏引擎中对其的依赖性会不断增加,我们只有
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 贵阳幼儿师范高等专科学校《现当代小说研究》2023-2024学年第二学期期末试卷
- 昭通学院《马克思主义五观研究》2023-2024学年第二学期期末试卷
- 浙江横店影视职业学院《首饰绘制基础》2023-2024学年第二学期期末试卷
- 渭南师范学院《医学影像成像理论》2023-2024学年第二学期期末试卷
- 内蒙古民族幼儿师范高等专科学校《数字媒体非线性编辑》2023-2024学年第二学期期末试卷
- 心理引导在教育中的实践激发学生潜能的技巧
- 南通大学杏林学院《基础拓扑(Ⅰ)》2023-2024学年第二学期期末试卷
- 首钢工学院《形体训练与健美》2023-2024学年第二学期期末试卷
- 开封大学《健身操(一)》2023-2024学年第二学期期末试卷
- 佛山科学技术学院《室内设计二》2023-2024学年第二学期期末试卷
- 新疆开放大学2025年春《国家安全教育》形考作业1-4终考作业答案
- 管网工程有限空间内清淤作业检测修复安全专项施工方案
- 成本预算绩效分析实施案例
- 河道养护工作总结
- 2025年中质协注册质量经理认证考试题库大全(含答案)
- 电缆敷设施工方案及安全措施完整
- 2025届高三语文二轮复习:典型题各个击破之表达效果类语用题型(含答案解析)
- 2025年四级听力试题及原文答案
- 数字媒体制作技术规范及操作指南
- 不要慌太阳下山有月光二部合唱线谱
- 南京科远KD200变频器使用手册
评论
0/150
提交评论