作者pleaselouis (LOUISN)
看板GameDesign
標題[請益] 關於 OGRE 材質檔名 取得問題
時間Fri Feb 6 17:50:26 2009
大家好 小弟我又來發問了 目前我要做的項目 是取得 材質檔名 但是有異常情形發生
以下是程式碼:
Entity * et = mSceneMgr->createEntity( "Test" , "Test.mesh" );
SceneNode * sn =
mSceneMgr->getRootSceneNode()->createChildSceneNode( "TestNode" );
sn->attachObject( et );
String temp = sn->getMaterial()->getTechnique(0)->getPass(0)->
getTextureUnitState(0)->getTextureName();
基本上 我原本以為如此一來 便會取得此一Mesh所對應到的 材質檔 檔名
但是不知為何 總是回傳 axes.png 此圖檔 而不是此Mesh應該對應的圖檔
因此跟大家請益 到底是哪邊出錯 煩請大家解惑
又 我其實是為了要對已載入 Mesh 的 材質 做處理 如: 位移 平移 縮放 其他特效 等等
而我目前的作法 是先 Create 一個新的 material 將其材質設為原本Mseh的材質
再對材質做處理 最後再用 setMaterialName 把新建立的 material set 過去
就是因為這樣 所以我才會需要抓取 Mesh 的 材質檔名
但是我最一開始 是使用如下的方法 :
MaterialPtr material = MaterialManager::getSingleton().load(
sn->getMaterial()->getName() , sn->getMaterial()->getGroup() );
但是這樣抓到的 material 竟然還是一樣是 axes.png 此圖檔
我想這一定是有很大的錯誤 也希望版上的各位前輩 可以一併解答 為小弟解惑
感謝大家的幫助 <(_ _)> 謝謝
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 211.76.190.21
※ 編輯: pleaselouis 來自: 211.76.190.21 (02/06 17:51)