我使用OpenGL ES在iPad上遇到了傳統的tile/mipmap問題。基本上,如果你有一個很大的紋理(大於1k X 1k),你可以將它分解成幾塊並將它們映射到單獨的多邊形上。你可以將紋理座標限制在邊緣,它大部分都可以工作,但是你會得到沿邊界的僞像。OpenGL ES平鋪紋理Mipmap問題 - iPad/iPhone
現在我知道你爲什麼這樣做,並知道傳統解決方案是什麼。換句話說,你在每個littler紋理的外部(比如說6個像素)做一個邊框。你從小紋理中抽取樣本到大樣本中,所以你只需要使用那些像素(比如256-2 * 6)。然後,將有效像素拖到邊框區域。最後,你映射你的紋理座標,只使用那些有效的內部像素。沒問題。
如果你現在還沒有點頭,不要試圖回答。 :-)
不管怎麼說,OpenGL在當天解決這個問題時引入了鉗位模式。我沒有在OpenGL ES中看到這些模式(至少在這個硬件上),並且我看到了對這個問題的其他引用。我想知道的是如果我錯過了什麼。有沒有更新的方法來解決我不知道的瓷磚/邊緣問題?
[更新] 結果的截圖附在此處。可見線位於一個紋理的末尾,另一個紋理的起始位置。這是使用CLAMP_TO_EDGE。
事實上,CLAMP_TO_EDGE應該做到這一點。它在OpenGL 1.2中做過,如果我還記得那麼久。雖然似乎不在這裏。這很好奇。 – mousebird 2011-02-18 18:56:37