Ogre MeshLod实现
2016-07-24 22:29
232 查看
Ogre MeshLod的LodMesh由两种方式生成。一种是在美术的建模工具中生成具体各个Lod层级的网格mesh,在本体Mesh数据中中指定各个Lod层级的MeshName,然后在Entity初始化函数中生成各个mesh,放到mLodEntityList中。在Entity::_updateRenderQueue()中根据mMeshLodIndex和mLodEntityList决定渲染使用的具体网格。
另外一种是自动生成,在加载网格时,subMesh中mLodFaceList会添加相应的IndexData,数据来源于Mesh数据,在Entity::_updateRenderQueue()时,渲染网格始终为本体网格,但是在调用下面的函数时会决定IndexData,
SceneManager::_issueRenderOp()
--Renderable->getRenderOperation(ro);
--SubEntity::_getRenderOperation()
--SubMesh::_getRenderOperation()在这个函数里决定了IndexData的来源,如果是自动生成的MeshLod,IndexData来源于mLodFaceList列表中的某一个,由mMeshLodIndex索引,稍后我们会分析这个决定LOD层级的索引。
mMeshLodIndex由相机和相应的MeshStrategy决定。
另外一种是自动生成,在加载网格时,subMesh中mLodFaceList会添加相应的IndexData,数据来源于Mesh数据,在Entity::_updateRenderQueue()时,渲染网格始终为本体网格,但是在调用下面的函数时会决定IndexData,
SceneManager::_issueRenderOp()
--Renderable->getRenderOperation(ro);
--SubEntity::_getRenderOperation()
--SubMesh::_getRenderOperation()在这个函数里决定了IndexData的来源,如果是自动生成的MeshLod,IndexData来源于mLodFaceList列表中的某一个,由mMeshLodIndex索引,稍后我们会分析这个决定LOD层级的索引。
mMeshLodIndex由相机和相应的MeshStrategy决定。
相关文章推荐
- SAP的模块化服务应用市场Hybris,前景如何?
- 锤子剪子布游戏
- 【杭电 5363】Key Set
- 【杭电2004】成绩转换
- ActivityManifest里面windowSoftInputMode属性简介
- 技术干货的选择性问题
- iOS应用程序生命周期(前后台切换,应用的各种状态)详解
- 整合SSH框架 (Struts2.x+Spring3.x+hibernate3.x+oracle)
- 【Linux】进程等待&程序替换
- 释迦牟尼:最经典和灵性的4句话
- 如何合理利用业余时间
- 【Android】使用http的Post和Get方式获取网络数据
- Linux下Perl的安装 此博文包含图片
- 加速npm下载的方法
- JavaWeb核心编程之(三.5)HTTP请求和接受表单数据
- Android多线程之HandlerThread
- 背景图片每次刷新以后随机切换和背景图片隔一段时间换一个
- hihocoder 1121
- 工业4.0提出者孔翰宁详解工业4.0
- 操作系统