2011-11-13 39 views
1

我正在使用紋理四邊形來渲染精靈表中的貼圖網格。不幸的是渲染時,有個別瓷磚之間的小間隙:使用紋理貼圖精靈時防止空白/邊框

visual gaps between tiled quads

改變紋理參數規模使用GL_NEAREST而不是GL_LINEAR修復了這個的質感,但結果在紋理四自身內的文物。有沒有辦法阻止GL_LINEAR使用指定UV座標之外的像素進行插值?任何其他建議如何解決這個問題?

以供參考,這是我現在用的是精靈表:

tile sheet that causes gaps

回答

0

看起來像一個精密的問題與您的紋理貼圖,您使用浮點數(32位)或更小的東西?你如何計算座標?

在紋理之間留下1像素邊框有時也有幫助(有時您總是會遇到舍入錯誤)。

自己,我使用這個程序http://www.texturepacker.com/(不以任何方式附屬),你會得到紋理貼圖和UV從中協調,還可以指定周圍的紋理填充,並且它也可以擠出圍繞你的紋理最後一種顏色,所以即使得到奇怪的圓形探測器,你也可以獲得完美的接縫。

我會先檢查你的精度和計算。

+0

我使用浮動,並通過簡單地將x和y整數瓦片座標除以8.0f來計算uv座標。 U = tile_x/8.0f; U + 1 =(tile_x + 1)/8.0f ;.我很確定這是紋理過濾的問題,在指定內部瓦片時,紋理過濾不能正確地限制紋理。爲每個tile添加邊界似乎是目前唯一合理的方式,但這很奇怪,因爲我沒有在其他程序的精靈表中看到它。 – zennehoy

+0

我在回答中寫到的那個程序有兩個選項來糾正這些問題,所以它在一些情況下必須發生,但從未發生在我身上。 – led42