Saya baru-baru ini membuat shader untuk logam yang bersih dan disikat untuk permainan saya yang sedang berlangsung dan saya cukup senang dengan hasilnya.
Logam bersih:
Fitur terpenting dalam percobaan saya adalah pantulan lingkungan dengan peta kubus. Saya menerapkannya dengan lingkungan render-to-tekstur realtime, tetapi juga gambar statis sering memberikan hasil yang baik dan lebih mudah untuk mengaburkannya. Fitur terpenting kedua adalah efek fresnel, yang membuat siluet objek lebih baik. Ini misalnya memberikan tampilan bola yang lebih bulat. Pencahayaan specular tidak selalu diperlukan, karena peta kubus dapat memberikan highlight secara langsung. Render HDR juga penting untuk membuat refleksi peta kubus terlihat bagus.
Logam yang
disikat : Untuk logam yang disikat Anda mendapatkan hasil yang baik dengan cukup mudah dengan menggunakan tekstur sikat, sesuatu seperti ini, bersama dengan pencahayaan anisotropik. Untuk pencahayaan anisotropik Anda dapat menemukan tutorial dari web, tapi saya menerapkannya sendiri dengan menggunakan blinn-phong sebagai dasarnya, tetapi dari setengah vektor saya menghilangkan 80% dari arah singgung. Ini berarti bahwa Anda memerlukan garis singgung atau bitangen selain dari normals dalam model Anda. Refleksi lingkungan sulit untuk logam disikat. Anda dapat mengambil sampel dari berbagai arah dari peta kubus berdasarkan pada arah tangen / bitangent, tetapi Anda mungkin membutuhkan banyak sampel untuk hasil yang baik. Namun ini tidak perlu, karena tekstur dan pencahayaan anisotropik dengan beberapa sumber cahaya sudah terlihat cukup bagus. Hasil akhir dalam kasus saya terlihat seperti ini: