作者Splash5 (史不拉雞五)
看板GameDesign
標題[程式] Ogre貼圖座標的問題
時間Fri May 15 11:08:01 2009
我在用ogre作一些簡單的貼圖測試
最近在試一個東西
我的texture (512x512) 裡是很多n x n的圖型組成的
目的是我可以利用貼圖座標移動來選擇我要貼哪個小圖上去 這樣texture的數量可以減少
但遇到一個問題 當n = 16時 貼圖座標運算出來的結果 在畫面上結果都沒有問題 (index * 16 / 512)
但 n = 14 或是更小的值時 貼圖座標運算出來的結果 在畫面上會偏移
像 n = 14時 就會往右和下各偏1 pixel
不知道是哪邊出了問題 orz (浮點數運算不準的問題?)
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.114.88.247
1F:推 littleshan:512/14 除不盡呀 這樣你的小圖是有多大? 05/15 12:04
2F:推 msc0953:可以分享一下利用貼圖座標移動的資源嗎?一直不知道怎麼作? 05/15 12:07
3F:→ msc0953:如果可以的話.... 05/15 12:08
4F:→ Splash5:目前是14x14跟16x16兩種 不是用14/512算出每個小圖 05/15 14:43
5F:→ Splash5:在每張貼圖uv的"offset"嗎XD.. 05/15 14:45
6F:→ Splash5:14/512可以除盡且ieee754可以完整表示.. 05/15 14:46
7F:→ Splash5:512x512放 36x36個 14x14小圖.. 剩下的部份留空 05/15 14:48
8F:推 CatOnMars:請問你的貼圖座標是用什麼Format儲存的? 05/17 15:07
9F:→ CatOnMars:Geforce系列的float precision有12bit,16bit,32bit 05/17 15:30
10F:→ CatOnMars:我在想會不會是shader裡使用到低精準度的float... 05/17 15:31
11F:→ Splash5:float32.. shader(cg) 內也是float 不是half.. 05/17 16:57
12F:→ Splash5:且14/512是可以正確無誤差存入ieee754表示的float.. 05/17 16:58
13F:推 CatOnMars:我也是用512*512存很多張小圖......可是沒有你的問題耶 05/17 17:59
14F:→ CatOnMars:我是用HGE...自己改寫的DX9.0c版本 05/17 18:00
15F:→ CatOnMars:不過是Fixed pipeline 05/17 18:01
16F:→ Splash5:我的問題解決了 謝謝樓上 但遇到新問題 等解決後一起把 05/19 00:53
17F:→ Splash5:code整理完再丟上來分享 05/19 00:53