本文整理汇总了C++中MovableObject::getUserObject方法的典型用法代码示例。如果您正苦于以下问题:C++ MovableObject::getUserObject方法的具体用法?C++ MovableObject::getUserObject怎么用?C++ MovableObject::getUserObject使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类MovableObject
的用法示例。
在下文中一共展示了MovableObject::getUserObject方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: _applyCollision
//-------------------------------------------------------------------------
void World::_applyCollision(void)
{
// Collision detection
IntersectionSceneQueryResult& results = mIntersectionQuery->execute();
// Movables to Movables
SceneQueryMovableIntersectionList::iterator it, itend;
itend = results.movables2movables.end();
for (it = results.movables2movables.begin(); it != itend; ++it)
{
/* debugging
MovableObject *mo1, *mo2;
mo1 = it->first;
mo2 = it->second;
*/
// Get user defined objects (generic in OGRE)
UserDefinedObject *uo1, *uo2;
uo1 = it->first->getUserObject();
uo2 = it->second->getUserObject();
// Only perform collision if we have UserDefinedObject links
if (uo1 && uo2)
{
// Cast to ApplicationObject
ApplicationObject *ao1, *ao2;
ao1 = static_cast<ApplicationObject*>(uo1);
ao2 = static_cast<ApplicationObject*>(uo2);
// Do detailed collision test
ao1->testCollide(ao2);
}
}
// Movables to World
SceneQueryMovableWorldFragmentIntersectionList::iterator wit, witend;
witend = results.movables2world.end();
for (wit = results.movables2world.begin(); wit != witend; ++wit)
{
MovableObject *mo = wit->first;
SceneQuery::WorldFragment *wf = wit->second;
// Get user defined objects (generic in OGRE)
UserDefinedObject *uo = mo->getUserObject();
// Only perform collision if we have UserDefinedObject link
if (uo)
{
// Cast to ApplicationObject
ApplicationObject *ao = static_cast<ApplicationObject*>(uo);
// Do detailed collision test
ao->testCollide(wf);
}
}
}