看板 GameDesign 關於我們 聯絡資訊
小弟正在練習 關於 OGRE 2D的顯示部分 目前的進度是 最前面顯示一張 2D圖片 大約只佔視窗的1/5 剩下的部份 就像是在背景執行3D場景的互動 : 可以 點選 托拉 Mesh等等 但是再加入2D的顯示部份後 由於有採用以下的程式碼: AxisAlignedBox aabInf; aabInf.setInfinite(); rect->setBoundingBox(aabInf); 便可以造成讓 2D圖片可以一直顯示於最上層 類似 OverLay的效果 雖然不是... 但是問題來了 由於是使用一個無限大的 BoundingBox 來讓它顯示最上層 因此還會造成 無法跟背景執行的3D場景做互動 也就是 點選 托拉 Mesh等等 如果單純把上述的程式碼註解掉 雖然就可以跟背景執行的3D場景做互動 但是在移動Camera時 背景的Mesh若是跟 2D圖片 有所重疊的情況下 2D圖片便會消失不見 除非再移動Camera 才會有機會讓圖片在顯示出來 因此請教各位前輩 有辦法讓 2D圖片一直顯示最上層 又能跟背景執行的3D場景做互動嗎 謝謝各位的幫忙 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 59.112.139.43
darkflier:我怎麼第一個想法是skybox才是你想要的 11/07 19:19
pleaselouis:請問skybox可以將多張圖片 都顯示在最上層嗎?? 11/07 23:11
tainjoy:我記得好像OGRE有直接畫2D圖片的方法,不是用3D的 11/07 23:25
tainjoy:或者你可以用OGRE的billboard,不過這種我不確定他是否有 11/07 23:29
pleaselouis:我有用SKYBOX 他的圖都在最下層啊 11/07 23:29
tainjoy:boundingBox會仿礙到後面的3D物件 11/07 23:30
pleaselouis:我是用 Rectangle2D 啦 不過就是會產生我說的問題 11/07 23:33
tainjoy:不然的話,如果你是用它的射線來偵測的話,其實所有一直線 11/07 23:35
tainjoy:過去的物件都會在結果中,你依距離排序後,再判斷非你第一 11/07 23:36
tainjoy:一個圖的BoundingBox的名字之外,的第一個物件,應該就可 11/07 23:36
tainjoy:以忽略它了 11/07 23:37
pleaselouis:非常謝謝你 我會朝這方面努力看看 多謝你 <(_ _)> 11/07 23:42