Mip Maps pada Sprite 2D menyebabkan garis hitam di atas. Kenapa ini?

8

Saya baru mengenal Unity. Saya mencoba dan menggunakan Futile untuk pendekatan kode-pertama, tetapi masih mengimpor tekstur menggunakan sistem Unity.

Masalah yang saya alami adalah bahwa ketika saya menggunakan peta mip untuk skala sprite besar ke ukuran lebih kecil tanpa tepi bergerigi, saya mendapatkan artefak garis hitam di atas sprite kata.

Sulit untuk dilihat

Agak sulit dilihat, tetapi mereka ada di sana. Jika saya menolak resolusi, Anda dapat dengan jelas melihatnya:

Lebih mudah dilihat

Ini adalah pengaturan tekstur saya:

Pengaturan

Pertanyaan saya adalah, mengapa garis-garis hitam ini ada di sini? Apakah ini kesalahan yang saya buat? Apakah itu hanya efek samping yang umum? Bagaimana saya bisa mengurangi ini? Juga, jika ini adalah pendekatan yang salah, bagaimana saya bisa menggunakan sprite halus dalam permainan dengan kemampuan bagi mereka untuk meningkatkan skala dengan lancar?

Terima kasih!

Adam K. Dean
sumber
1
Anda menggunakan atlas, bukan?
Heisenbug

Jawaban:

10

Ada banyak alasan mengapa Anda mungkin mendapatkan kalimat itu. Saya menulis jawaban yang lebih rinci di sini , tetapi intinya adalah:

Jangan lakukan atlasing dan pemetaan pada saat yang sama.

Untuk 2D, secara umum, Anda tidak ingin / perlu melakukan pemetaan. Itu berguna sebagian besar dalam 3D di mana Anda tidak tahu ukuran tekstur Anda, tetapi itu biasanya tidak biasa dalam 2D.

Jika Anda pasti memiliki tekstur yang akan turun secara agresif, maka jangan memasukkannya dalam atlas.

Dan saya juga merekomendasikan Anda mematikan anisotropi. Itu dimaksudkan untuk memberi Anda hasil yang lebih baik ketika Anda melihat tekstur besar dari sudut yang sangat tajam, yang tidak akan terjadi jika gim Anda 2D.

Piyama Panda
sumber
sebenarnya padding yang tepat harus memungkinkan atlas dan mipmap untuk digunakan bersama, apakah saya salah? +1 btw
Heisenbug
2
@Heisenbug dengan menambahkan padding, semua yang Anda lakukan adalah memindahkan masalah ke level mip yang lebih rendah. Jika Anda harus memiliki mipmaps dan atlas, maka pertimbangkan untuk membuatnya secara manual, dan hanya sampai ke tingkat di mana objek terkecil Anda adalah 1x1 piksel. Tetapi dalam 2D ​​Anda biasanya tidak menurunkan tekstur cukup untuk membutuhkan pemetaan, jadi saya sarankan Anda tidak mencampur atlasing dan pemetaan.
Piyama Panda