在Ogre中使用LOD(Levels of Detail)技术


作者:CYM

点击打开链接

Levels of Detail,意为多细节层次,LOD技术指根据物体模型的节点在显示环境中所处的位置和重要度,决定物体渲染的资源分配,降低非重要物体的面数和细节度,从而获得高效率的渲染运算。

Ogre的网格可以在建模软件中设置LOD,也可以在程序中自定义,注意如果一个mesh文件的LOD等级大于1的话就不能被自定义LOD

在Ogre中可以通过Mesh接口来自定义LOD级别,Ogre会根据用户定义的LOD级别以及摄像机与模型的距离自动给出相应的LOD模型

//载入初始网格

MeshPtr mesh=MeshManager::getSingleton().load("athene.mesh",ResourceGroupManager::DEFAULT_RESOURCE_GROUP_NAME);

//创建LOD模型,第一个参数是和摄像机的距离,第二个是LOD模型资源

mesh->createManualLodLevel(250,"athene_LOD1.mesh");

mesh->createManualLodLevel(500,"athene_LOD2.mesh");

//创建实体

m_entity=render->m_sm->createEntity(mesh->getName());

m_node=render->m_sm->getRootSceneNode()->createChildSceneNode();

m_node->attachObject(m_entity);

m_node->scale(0.1f,0.1f,0.1f);

m_node->setPosition(0.0f,500.0f,0.0f);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值