Untuk memulai, saya sangat menyarankan membaca presentasi Siggraph Naty Hoffman yang meliputi fisika rendering. Yang mengatakan, saya akan mencoba menjawab pertanyaan spesifik Anda, meminjam gambar dari presentasinya.
Melihat satu partikel cahaya yang mengenai titik pada permukaan material, ia dapat melakukan 2 hal: memantulkan, atau membiaskan. Cahaya yang dipantulkan akan terpental menjauh dari permukaan, mirip dengan cermin. Cahaya yang memantul memantul ke dalam di dalam material, dan mungkin keluar dari material agak jauh dari tempat ia masuk. Akhirnya, setiap kali cahaya berinteraksi dengan molekul material, ia kehilangan sejumlah energi. Jika ia kehilangan cukup energinya, kami menganggapnya sepenuhnya diserap.
Mengutip Naty, "Cahaya terdiri dari gelombang elektromagnetik. Jadi, sifat-sifat optik suatu zat sangat terkait dengan sifat listriknya." Inilah sebabnya kami mengelompokkan bahan sebagai logam atau non-logam.
Non logam akan menunjukkan refleksi dan refraksi.
Bahan logam hanya memiliki pantulan. Semua cahaya yang dibiaskan diserap.
Akan sangat mahal untuk mencoba memodelkan interaksi partikel cahaya dengan molekul material. Kami sebaliknya, membuat beberapa asumsi dan penyederhanaan.
Jika ukuran piksel atau area bayangan lebih besar dibandingkan dengan jarak masuk-keluar, kita dapat membuat asumsi bahwa jarak efektif nol. Untuk kenyamanan, kami membagi interaksi cahaya menjadi dua istilah yang berbeda. Kami menyebut istilah refleksi permukaan "specular" dan istilah yang dihasilkan dari refraksi, penyerapan, hamburan, dan refraksi ulang yang kami sebut "difus".
Namun, ini asumsi yang cukup besar. Untuk sebagian besar bahan buram, asumsi ini baik-baik saja dan tidak berbeda jauh dari kehidupan nyata. Namun, untuk bahan dengan segala jenis transparansi, anggapan itu gagal. Misalnya, susu, kulit, sabun, dll.
Warna yang diamati material adalah cahaya yang tidak diserap. Ini adalah kombinasi dari kedua cahaya yang dipantulkan, serta cahaya yang dibiaskan yang keluar dari material. Misalnya, bahan hijau murni akan menyerap semua cahaya yang bukan hijau, jadi satu-satunya cahaya yang sampai ke mata kita adalah lampu hijau.
Oleh karena itu seorang seniman memodelkan warna suatu material dengan memberi kita fungsi atenuasi untuk material tersebut, yaitu bagaimana cahaya akan diserap oleh material tersebut. Dalam model difus / specular kami yang disederhanakan, ini dapat diwakili oleh dua warna, warna difus, dan warna specular. Kembali sebelum bahan berbasis fisik digunakan, artis akan secara sewenang-wenang memilih masing-masing warna ini. Namun, harus jelas bahwa kedua warna ini harus terkait. Di sinilah warna albedo masuk. Misalnya, di UE4, mereka menghitung warna difus dan specular sebagai berikut:
DiffuseColor = AlbedoColor - AlbedoColor * Metallic;
SpecColor = lerp(0.08 * Specular.xxx, AlbedoColor, Metallic)
di mana Metallic adalah 0 untuk non-logam dan 1 untuk logam. Parameter 'Specular' mengontrol specularity suatu objek (tetapi biasanya 0,5 untuk 99% material)
Saya sebenarnya bertanya-tanya tentang hal ini beberapa hari yang lalu. Tidak menemukan sumber daya dalam komunitas grafis, saya benar-benar berjalan ke departemen Fisika di universitas saya dan bertanya .
Ternyata ada banyak kebohongan yang kami yakini oleh orang-orang.
Pertama, ketika cahaya menyentuh permukaan, persamaan Fresnel berlaku. Proporsi cahaya yang dipantulkan / dibiaskan tergantung padanya. Anda mungkin tahu ini.
Tidak ada yang namanya "warna specular"
Apa yang Anda mungkin tidak tahu adalah bahwa persamaan Fresnel bervariasi berdasarkan panjang gelombang, karena indeks bias bervariasi berdasarkan pada panjang gelombang. Variasi ini relatif kecil untuk dielektrik (dispersi, siapa?), Tetapi bisa sangat besar untuk logam (saya kira ini ada hubungannya dengan struktur listrik yang berbeda dari bahan-bahan ini).
Oleh karena itu, istilah refleksi Fresnel bervariasi berdasarkan panjang gelombang, dan oleh karena itu panjang gelombang yang berbeda tercermin secara istimewa . Terlihat di bawah iluminasi spektrum luas, inilah yang menyebabkan warna specular. Tetapi secara khusus, tidak ada penyerapan yang secara ajaib terjadi di permukaan (warna lain hanya dibiaskan).
Tidak ada yang namanya "refleksi difus"
Seperti yang dikatakan Naty Hoffman dalam pembicaraan yang dikaitkan dengan jawaban yang lain, ini benar-benar merupakan perkiraan untuk hamburan permukaan bawah yang tersebar.
Logam DO mentransmisikan cahaya
Naty Hoffman salah (lebih tepatnya, menyederhanakan). Cahaya tidak tidak bisa segera diserap oleh logam. Bahkan, ia akan melewati material yang cukup tebal setebal beberapa nanometer. (Misalnya, untuk emas, dibutuhkan 11.6633nm untuk menipiskan cahaya 587.6nm (kuning) setengahnya.)
Penyerapan, seperti dalam dielektrik, disebabkan oleh Hukum Beer-Lambert. Untuk logam, koefisien absorpsi hanya jauh lebih besar (α = 4πκ / λ, di mana κ adalah komponen imajiner dari indeks bias (untuk logam ~ 0,5 ke atas), dan λ diberikan dalam meter ).
Transmisi ini (atau lebih tepatnya SSS yang dihasilkannya) sebenarnya bertanggung jawab atas sebagian besar warna logam (walaupun memang benar bahwa penampilan logam didominasi oleh specularnya).
sumber