在使用libGDX時,我注意到偶爾我畫到屏幕上的紋理沒有被繪製到確切的像素上,而是從各個邊上的其他紋理的邊緣的小部分繪製(例如,來自頭髮頂部的像素線正被呈現在玩家腳下)。爲什麼我的libGDX TextureAtlas不正確地渲染spritesheet紋理?
當我擴展我的比賽,以不同的大小,黑色線條出現在從我只能假設是相鄰的紋理兩側。
試圖呈現從TextureAtlas文件中的文本字段的字體,當我得到了同樣的問題。
我使用Nearest Neighbor從TextureAtlas加載這些紋理。這裏是我的精靈表,這些都是我的TextureAtlas從精靈表
player.png
size: 64, 128
format: RGBA8888
filter: Nearest,Nearest
repeat: none
player1moveDown
rotate: false
xy: 0, 0
size: 10, 16
orig: 10, 16
offset: 0, 0
index: 1
player1moveDown
rotate: false
xy: 10, 0
size: 10, 16
orig: 10, 16
offset: 0, 0
index: 2
player1moveDown
rotate: false
xy: 20, 0
size: 10, 16
orig: 10, 16
offset: 0, 0
index: 3
作出選擇,是否有任何合理的解釋,爲什麼我的TextureAtlas沒有完全切斷了圖像?
作爲一個後續問題,有什麼我可以做的解決它,或者我應該在每個紋理周圍添加一些透明填充?
編輯: 我在GUI TexturePacker中找到了該設置。在窗口的右側,在「雪碧」,你可以通過修改「形狀填充」值