[程式] Ogre貼圖座標的問題

看板GameDesign (遊戲設計)作者 (史不拉雞五)時間16年前 (2009/05/15 11:08), 編輯推噓4(4013)
留言17則, 4人參與, 最新討論串1/1
我在用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

05/15 12:04, , 1F
512/14 除不盡呀 這樣你的小圖是有多大?
05/15 12:04, 1F

05/15 12:07, , 2F
可以分享一下利用貼圖座標移動的資源嗎?一直不知道怎麼作?
05/15 12:07, 2F

05/15 12:08, , 3F
如果可以的話....
05/15 12:08, 3F

05/15 14:43, , 4F
目前是14x14跟16x16兩種 不是用14/512算出每個小圖
05/15 14:43, 4F

05/15 14:45, , 5F
在每張貼圖uv的"offset"嗎XD..
05/15 14:45, 5F

05/15 14:46, , 6F
14/512可以除盡且ieee754可以完整表示..
05/15 14:46, 6F

05/15 14:48, , 7F
512x512放 36x36個 14x14小圖.. 剩下的部份留空
05/15 14:48, 7F

05/17 15:07, , 8F
請問你的貼圖座標是用什麼Format儲存的?
05/17 15:07, 8F

05/17 15:30, , 9F
Geforce系列的float precision有12bit,16bit,32bit
05/17 15:30, 9F

05/17 15:31, , 10F
我在想會不會是shader裡使用到低精準度的float...
05/17 15:31, 10F

05/17 16:57, , 11F
float32.. shader(cg) 內也是float 不是half..
05/17 16:57, 11F

05/17 16:58, , 12F
且14/512是可以正確無誤差存入ieee754表示的float..
05/17 16:58, 12F

05/17 17:59, , 13F
我也是用512*512存很多張小圖......可是沒有你的問題耶
05/17 17:59, 13F

05/17 18:00, , 14F
我是用HGE...自己改寫的DX9.0c版本
05/17 18:00, 14F

05/17 18:01, , 15F
不過是Fixed pipeline
05/17 18:01, 15F

05/19 00:53, , 16F
我的問題解決了 謝謝樓上 但遇到新問題 等解決後一起把
05/19 00:53, 16F

05/19 00:53, , 17F
code整理完再丟上來分享
05/19 00:53, 17F
文章代碼(AID): #1A3DoIra (GameDesign)
文章代碼(AID): #1A3DoIra (GameDesign)