Saya mencoba memahami konsep pemetaan normal, tetapi saya bingung dengan beberapa hal. Singkatnya, saya tidak yakin apakah peta normal bergantung pada sudut pandang atau tidak (yaitu apakah Anda akan mendapatkan peta normal yang berbeda dari objek yang sama ketika Anda memutarnya). Kedua, saya tidak mengerti mengapa warna kebiruan adalah warna dominan di peta normal.
Bagaimana saya berpikir tentang normals, dan hubungannya dengan warna RGB, adalah sebagai berikut. Unit sphere mewakili setiap unit normal yang mungkin - dengan kata lain, komponen X, Y dan Z dari satuan vektor normal berkisar dari -1 hingga 1. Komponen warna RGB semuanya berkisar dari 0 hingga 255. Oleh karena itu, masuk akal untuk memetakan -1 (komponen normal) ke 0 (komponen warna), 0 hingga 127 atau 128, dan 1 hingga 255. Nilai apa pun di antaranya hanya diinterpolasi secara linier.
Menerapkan pemetaan ini ke normal objek 3D sewenang-wenang menghasilkan gambar yang sangat berwarna, sama sekali tidak didominasi biru. Misalnya, saat mengambil kubus, keenam wajah akan memiliki warna yang berbeda namun seragam. Misalnya, wajah dengan normal (1,0,0) akan menjadi (255,128,128), wajah dengan normal (0,0, -1) akan menjadi (128,128,0) dan seterusnya.
Namun, untuk beberapa alasan peta normal dari kubus yang saya temukan benar-benar kebiruan, yaitu (128.128.255). Namun yang jelas, normals tidak semuanya dalam arah z positif, yaitu (0,0,1). Bagaimana cara kerjanya?
[Sunting]
Ok, jadi pendekatan yang dijelaskan di atas tampaknya disebut sebagai objek peta normal ruang atau peta normal ruang dunia . Yang lainnya disebut peta normal ruang singgung . Saya mengerti bagaimana peta normal ruang singgung seperti itu dapat digunakan untuk memodifikasi normals dari suatu geometri, tetapi saya masih tidak sepenuhnya yakin bagaimana sebenarnya dihitung (lihat komentar saya di jawaban Nicol Bolas ').
[Sunting 2]
Saya mungkin harus menyebutkan bahwa saya bekerja dengan permukaan parametrik piecewise. Permukaan ini terdiri dari satu set tambalan permukaan , di mana setiap tambalan dikaitkan dengan ruang parametriknya sendiri (u, v) = [0,1] x [0,1]. Pada titik mana pun di permukaan, normal dapat dihitung dengan tepat. Rupanya, vektor T ( tangen ) dan B ( bi-tangen ) - diperlukan untuk span ruang tangen - bukan hanya turunan parsial dari patch permukaan ke arah u dan v ...