ogre 脚本 完全说明

ogre 脚本 完全说明

ID:40490078

大小:73.39 KB

页数:31页

时间:2019-08-03

ogre  脚本  完全说明_第1页
ogre  脚本  完全说明_第2页
ogre  脚本  完全说明_第3页
ogre  脚本  完全说明_第4页
ogre  脚本  完全说明_第5页
资源描述:

《ogre 脚本 完全说明》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、Ogre学习记录2008-04-2109:16 3213人阅读 评论(3) 收藏 举报blend脚本border汇编网格scroll 1:设计初衷它设计初衷是完全跨平台的。抽象的接口隐藏了平台相关的细节。它设计初衷是大幅度支持扩展的。支持多种场景类型,独立出平台和3D接口限制。2:基本类结构关系Roo:对象为一切的入口,它负责创建Ogre的所有基础元素,三大基础元素大致包括:场景管理器,绘制系统,资源管理器。场景管理器:场景节点,动态对象。资源管理器:资源组管理,资源管理渲染模块:硬件缓冲区管理,

2、渲染系统,渲染窗口3:关键词Root::Ogre系统入口,程序一开始就应当创建,最后释放,它帮助我们获得其他元素的指针。甚至包括StartRender()RenderSystem::渲染系统。是对3D渲染API的一个封装。一般来说无需手工调用,场景管理器对对其进行控制,只有在实现一些特殊需要的时候,可以获取使用。SceneManager:负责对整个场景中内容的创建和管理。包括静态地形场景,摄象机,动态对象,光线,材质等都归属其管理。场景管理器根据室内室外等渲染管理进行了不同类型的优化,在创建时可以

3、传参进行选择。ResourceGroupManager:资源组管理器包含多种的资源管理器,例如纹理,网格Mesh等的资源加载管理器,他们各司其职管理其所负责的资源数据对象。和渲染系统一样,大多数情况下他们会被自动调用的进行资源加载,我们仅需要做的就是Root::getSingleton().addRessourceLocation()告诉Ogre从哪儿加载资源即可,除非个别特殊需求,我们动态的手工控制时候可以TextureManager::getSingleton()获取相应的资源管理器进行处理。

4、Mesh对象:就是一个具体的模型,而在一些情况下,Mesh对象仅指那些能够移动的对象,那些静态对象即不属于Mesh对象之列。Ogre有自己的一套定义的Mesh结构,即.mesh,该文件格式可以被网格工具编辑。Entity实体:是一个可移动的对象实例。和Mesh的不同是,实体包括网格,但若网格未和场景结点绑定起来,则不可使用该实体。我们可以修改场景结点来获得实体的修改,但此时Mesh实际是没有变化的。注意:实体是允许有子实体的,网格也一样有子网格。每一个子网格可以有自己的材质。相关函数如下:Scen

5、eManager::CreateEntity()由场景管理器去创建实体对象,Entity::GetSubEntity()获取子实体指针,再SetMaterialName()修改材质。材质:它是由资源管理器管理,但在场景管理器中也保存着一份材质的列表。它的属性有默认的,SceneManager::GetDefaultMaterialSetting()函数可以获取其默认属性,当然也可以修改。值得注意的是,OGRE允许在程序运行时,通过材质脚本对材质进行设置。Overlays层:一般是拿来做一些不接收用

6、户交互信息的UI面层的。当然游戏中也可以设置一些层元素作为游戏内容,例如飞机驾驶舱,不接受任何用户交互信息,并且要求最前端显示。层有一个专门的层管理器,它负责层的创建释放等工作。每个层有自己的一个Z深度信息,通过它进行遮挡关系的计算。另外,每几个层可以分为一个小组进行统一控制,这个在Ogre中被称为层容器OverlayContainer。每个层可以进行独立的旋转缩放等功能。它允许是2D或3D。OverlayManager::getSingleton().createOverlayElement(“

7、Panel”,“myNewPanel”)。4:Ogre的脚本1:材质脚本。在资源组管理器初始化完毕时,装载材质脚本,OGRE会自动的在组相关的资源位置查找”.materal”扩展名的文件,并对这些脚本进行语法解析。手动解析也可以MaterialSerializer::parseScript()但是注意的是:解析脚本时并没有对脚本中定义的全部纹理等资源进行加载。所以,在我们访问一个材质的时候,一定要确保它已经装载,或者,我们手动将此材质Load()一次再进行访问。另外,材质名必须唯一,且不可有”:”

8、号。格式:以{},空格,//作为标识符。//后跟注释,不支持多行注释。{}之间代表为一个解析单元每一个materialXXX代表是一个材质单元。其中,每一个technique代表一个材质渲染手法,pass是每个渲染通路模式,texture_unit则是一个纹理单元。一个材质脚本允许有多个渲染手法技术,一个渲染手法技术中允许有多个渲染通路模式,一个渲染通道允许有多个纹理单元。 渲染手法技术Techinique:一个“渲染手法技术”就是一个单独的渲染物体的方法。多个技术的存在原因是为适

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。