当前位置: 首页>>代码示例>>C++>>正文


C++ SceneNode::getCreator方法代码示例

本文整理汇总了C++中ogre::SceneNode::getCreator方法的典型用法代码示例。如果您正苦于以下问题:C++ SceneNode::getCreator方法的具体用法?C++ SceneNode::getCreator怎么用?C++ SceneNode::getCreator使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在ogre::SceneNode的用法示例。


在下文中一共展示了SceneNode::getCreator方法的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: destroyTerrainLiquid

    //-----------------------------------------------------------------------
    void TerrainLiquidObject::destroyTerrainLiquid(void)
    {
        _deleteRenderTextureRelative();

        assert(mTerrainLiquid);

        Ogre::SceneNode* parent = mTerrainLiquid->getParentSceneNode();
        assert(parent);

        if (!mProjectionMaterial.isNull())
        {
            Ogre::MaterialManager::getSingleton().remove(mProjectionMaterial->getHandle());
            mProjectionMaterial.setNull();
        }

        if (mProjectionCamera)
        {
            parent->getCreator()->destroyCamera(mProjectionCamera);
            mProjectionCamera = 0;
        }

        parent->getCreator()->destroySceneNode(parent);
		parent = NULL;

        delete mTerrainLiquid;
        mTerrainLiquid = NULL;
    }
开发者ID:dodong471520,项目名称:pap,代码行数:28,代码来源:FairyTerrainLiquidObject.cpp

示例2:

	/**
	 * @brief Dtor.
	 */
	~EntityPointMarker()
	{
		if (mMarkerEntity) {
			mMarkerEntity->_getManager()->destroyEntity(mMarkerEntity);
		}
		if (mMarkerNode) {
			mMarkerNode->getCreator()->destroySceneNode(mMarkerNode);
		}

		delete mMarkerDirectionIndicator;
	}
开发者ID:Laefy,项目名称:ember,代码行数:14,代码来源:EntityEditor.cpp

示例3: createActor

//-----------------------------------------------------------------------
void ActorObject::createActor(void)
{
    assert(!mActor);
    assert(mProxy && !mActorName.empty());

    Ogre::SceneNode* parent = getSceneNode();
    assert(parent);
    Ogre::SceneManager* creator = parent->getCreator();
    assert(creator);

    mActor = new Actor(mSystem, parent->getName(), mActorName, parent);
    mActor->setUserObject(mProxy);
}
开发者ID:gitrider,项目名称:wxsj2,代码行数:14,代码来源:FairyActorObject.cpp

示例4: _destroyBillboardSet

	//---------------------------------------------------------------------
	void BillboardSetElement::_destroyBillboardSet(void)
	{		
		if (mBillboardSet)
		{
			Ogre::SceneNode* parent = mBillboardSet->getParentSceneNode();
			assert(parent);
			Ogre::SceneManager* creator = parent->getCreator();
			assert(creator);

			parent->detachObject(mBillboardSet->getName());

			creator->destroyBillboardSet(mBillboardSet);
		}
	}
开发者ID:brock7,项目名称:TianLong,代码行数:15,代码来源:WXBillboardSetElement.cpp

示例5: displayGeometryVisualization

void AuthoringManager::displayGeometryVisualization(EmberEntity& entity) {
	if (!mGeometryVisualizations.count(&entity)) {
		Ogre::SceneNode* node = mWorld.getScene().getSceneManager().getRootSceneNode()->createChildSceneNode();
		GeometryVisualization* vis(nullptr);
		try {
			vis = new GeometryVisualization(entity, node);
		} catch (const std::exception& ex) {
			S_LOG_WARNING("Error when displaying geometry." << ex);
			//just delete the node and return
			node->getCreator()->destroySceneNode(node);
			return;
		}
		sigc::connection conn = entity.BeingDeleted.connect([&]() {hideGeometryVisualization(entity); });
		mGeometryVisualizations.insert(std::make_pair(&entity, std::make_pair(vis, conn)));
	}
}
开发者ID:,项目名称:,代码行数:16,代码来源:

示例6: displaySimpleEntityVisualization

void AuthoringManager::displaySimpleEntityVisualization(EmberEntity& entity)
{
	if (!mSimpleVisualizations.count(&entity)) {
		Ogre::SceneNode* node = mWorld.getScene().getSceneManager().getRootSceneNode()->createChildSceneNode();
		SimpleEntityVisualization* vis(0);
		try {
			vis = new SimpleEntityVisualization(entity, node);
		} catch (const std::exception& ex) {
			//just delete the node and return
			node->getCreator()->destroySceneNode(node);
			return;
		}
		sigc::connection conn = entity.BeingDeleted.connect(sigc::bind(sigc::mem_fun(*this, &AuthoringManager::simpleEntityVisualizationBeingDeleted), &entity));
		mSimpleVisualizations.insert(SimpleEntityVisualizationStore::value_type(&entity, std::make_pair(vis, conn)));
	}

}
开发者ID:Chimangoo,项目名称:ember,代码行数:17,代码来源:AuthoringManager.cpp

示例7: createParticleSystem

    //-----------------------------------------------------------------------
    void ParticleSystemObject::createParticleSystem(void)
    {
        assert( mParticleSystem == NULL );
        assert(!mParticleSystemName.empty());

        Ogre::SceneNode* parent = getSceneNode();

        if (parent)
        {
            mParticleSystem = parent->getCreator()->createParticleSystem( parent->getName(), mParticleSystemName );
            assert(mParticleSystem);

            // Set render queue for particle system, the particle system should be render after world geometry 2
            mParticleSystem->setRenderQueueGroup(Ogre::RENDER_QUEUE_8);

            parent->attachObject(mParticleSystem);
        }
    }
开发者ID:ueverything,项目名称:mmo-resourse,代码行数:19,代码来源:WXParticleSystemObject.cpp

示例8: modifyMesh

    //-----------------------------------------------------------------------
	void MeshParticleVisualData::modifyMesh(const String &meshName)
	{
		// destroy old entity
		assert(mEntity);

		Ogre::SceneNode* parent = mEntity->getParentSceneNode();
		assert(parent);
		Ogre::SceneManager* creator = parent->getCreator();
		assert(creator);

		parent->detachObject(mEntity->getName());
		creator->destroyMovableObject(mEntity);

		mEntity = NULL;

		// create new entity
		mEntity = creator->createEntity( mSceneNode->getName(), meshName );
		assert (mEntity);

		mSceneNode->attachObject(mEntity);
	}
开发者ID:ueverything,项目名称:mmo-resourse,代码行数:22,代码来源:OgreMeshParticleVisualData.cpp

示例9: _destroyProjector

    void DisableDecalGrids::_destroyProjector(void)
    {
        if (mProjector)
        {
            Ogre::SceneNode* parent = mProjector->getParentSceneNode();
            assert(parent);
            Ogre::SceneManager* creator = parent->getCreator();
            assert(creator);

            assert (parent == mProjectorNode);

            parent->detachObject(mProjector->getName());

            getSceneManipulator()->getSceneManager()->destroyMovableObject(mProjector);

            mProjector = NULL;

            if (mProjectorNode)
            {
                getSceneManager()->destroySceneNode(mProjectorNode);
				mProjectorNode = NULL;
            }
        }
    }
开发者ID:jjiezheng,项目名称:pap_full,代码行数:24,代码来源:IntersectGrids.cpp


注:本文中的ogre::SceneNode::getCreator方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。