现在的位置: 首页 > 综合 > 正文

如何加载OgreSE导出的文件到项目中

2013年12月01日 ⁄ 综合 ⁄ 共 858字 ⁄ 字号 评论关闭

将Ogrese中的核心代码抽出来做成了一个软件,这个软件能够加载Ogrese导出的文件。

这款软件的核心是负责加载Ogrese导出文件,并不负责编辑,所以我去除了所有的地形编辑 流体编辑 实体编辑的内容。

但是为了以后方便在场景中加入我的第一人称视角的游戏,所以我还是使他能够加载实体对象。也就是AddObject函数。

 

值得注意的是CSceneView文件中的 OnSetFocus函数

void CSceneView::OnSetFocus(CWnd* pOldWnd)
{
 if (!m_pCamera)
 {
  CSceneDoc* pSceneDoc = (CSceneDoc*)GetDocument();

  Ogre::Camera* pCamera = pSceneDoc->GetSceneManager()->createCamera(Ogre::StringConverter::toString(UINT(this)));
  pCamera->setNearClipDistance(5);
  pCamera->setFarClipDistance(10000);
  Ogre::SceneNode* pNode = pSceneDoc->GetSceneManager()->getRootSceneNode()->createChildSceneNode();
  pNode->setPosition(0,200,0);
  pNode->attachObject(pCamera);
  SetCamera(pCamera);
  m_pRenderWindow->getViewport(0)->setBackgroundColour(pSceneDoc->GetBackgroundColour());
 }

 CRenderView::OnSetFocus(pOldWnd);

 ((CSceneDoc*)GetDocument())->SetActiveView(this);
}

只有使用这个函数才使得摄像机能够被创建了了。

 

 

.

 

抱歉!评论已关闭.