電腦遊戲製作開發設計論壇 首頁 電腦遊戲製作開發設計論壇
任何可以在PC上跑的遊戲都可以討論,主要以遊戲之製作開發為主軸,希望讓台灣的遊戲人有個討論、交流、教學、經驗傳承的園地
 
 常見問題常見問題   搜尋搜尋   會員列表會員列表   會員群組會員群組   會員註冊會員註冊 
 個人資料個人資料   登入檢查您的私人訊息登入檢查您的私人訊息   登入登入 

Google
[請益] 關於 OGRE 材質檔名 取得問題

 
發表新主題   回覆主題    電腦遊戲製作開發設計論壇 首頁 -> 遊戲程式進階班:各種進階圖型引擎或遊戲引擎
上一篇主題 :: 下一篇主題  
發表人 內容
pleaselouis
時常出沒的會員


註冊時間: 2008-11-03
文章: 32

505.97 果凍幣

發表發表於: 2009-2-6, PM 5:56 星期五    文章主題: [請益] 關於 OGRE 材質檔名 取得問題 引言回覆

大家好 小弟我又來發問了 目前我要做的項目 是取得 材質檔名 但是有異常情形發生

以下是程式碼:

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 此圖檔

我想這一定是有很大的錯誤 也希望版上的各位前輩 可以一併解答 為小弟解惑

感謝大家的幫助 <(_ _)> 謝謝
回頂端
檢視會員個人資料 發送私人訊息
songfat
時常出沒的會員


註冊時間: 2008-01-25
文章: 34

192.68 果凍幣

發表發表於: 2009-2-6, PM 10:55 星期五    文章主題: 引言回覆

ㄝ...有幾點問題,
為什麼要用scenenode的getmaterial方法呢?
正確來說應該要用subentity的getmaterial方法。一個entity裡可能會有很多subentity,因為一個模型可能會用到很多materials,每一個material會對應到一個entity的subentity,所以用subentity的getmaterial方法才是正確的。
再來補充一點,若你是只對texture做位移或旋轉處理,直接使用material scripts就能做到嚕~在scripts中的Texture Units,有
# scroll
# scroll_anim
# rotate
# rotate_anim
# scale
# wave_xform
等等的功能可以使用,就不用再寫程式recompile嚕~直接寫在script裡就行了,在ogre manual裡都有寫。

話說,這個主題不是應該發表在"遊戲程式進階班:各種進階圖型引擎或遊戲引擎"裡嗎?

小弟我有一段時間沒用ogre了,希望這回覆有幫到你的忙。
回頂端
檢視會員個人資料 發送私人訊息
pleaselouis
時常出沒的會員


註冊時間: 2008-11-03
文章: 32

505.97 果凍幣

發表發表於: 2009-2-10, PM 4:05 星期二    文章主題: 引言回覆

非常感謝你的回答 幫了很大的忙 謝謝

>話說,這個主題不是應該發表在"遊戲程式進階班:各種進階圖型引擎或遊戲引擎"裡嗎?

不好意思 是小弟疏忽了 下次我會注意的 謝謝你
回頂端
檢視會員個人資料 發送私人訊息
從之前的文章開始顯示:   
發表新主題   回覆主題    電腦遊戲製作開發設計論壇 首頁 -> 遊戲程式進階班:各種進階圖型引擎或遊戲引擎 所有的時間均為 台灣時間 (GMT + 8 小時)
1頁(共1頁)

 
前往:  
無法 在這個版面發表文章
無法 在這個版面回覆文章
無法 在這個版面編輯文章
無法 在這個版面刪除文章
無法 在這個版面進行投票
可以 在這個版面附加檔案
可以 在這個版面下載檔案


Powered by phpBB © 2001, 2005 phpBB Group
正體中文語系由 phpbb-tw 維護製作