Apa artinya "membakar lampu"?

36

Apa artinya memanggang lightmap? Saya mendengar ini di Unity3d, dan kembali menemukan plugin LightUp ini untuk sketchup yang membuat lightmap.

Dari apa yang saya amati, lightmap yang dipanggang memberi objek 3d kesan yang jauh lebih realistis. Apakah tujuan memanggang cahaya pada objek untuk memberikan tampilan animasi cg yang Anda lihat pada animasi yang dirender sebelumnya?

Kim Jong Woo
sumber
Juga, kapan saja Anda memanggang sesuatu, apakah itu fisika, pencahayaan atau apa pun. Itu berarti Anda telah menyiapkan sesuatu yang akan memakan waktu lama untuk membuat / memproses secara real time, atau Anda ingin memainkannya dengan cara yang sama setiap kali, jadi Anda hanya melakukannya sekali, dan menyimpan hasilnya untuk digunakan nanti, dan karena semua perhitungan dilakukan, menampilkan apa yang telah dipanggang cepat, dan selalu sama di semua permainan.
AttackingHobo
Menyerang HOBO, itu cara yang bagus untuk menjelaskannya. Saya mengerti sekarang. Tapi penasaran, bagaimana fisika akan dipanggang? Apakah Luxrender menghasilkan render fotorealistik karena mereka dapat menghitung fisika cahaya?
Kim Jong Woo
1
Fisika dapat dipanggang untuk adegan kompleks dengan sekali mensimulasikan dan menyimpan semua posisi objek, dan rotasi dll untuk setiap catatan waktu. Kemudian alih-alih menghitung ulang semua nilai lagi secara langsung, mereka hanya diputar ulang dari nilai yang disimpan.
AttackingHobo

Jawaban:

53

Saat Anda memiliki cahaya statis (tidak bergerak) dalam gim, Anda memiliki dua opsi untuk merender cahaya ini. Anda bisa menjadikannya sama dengan cahaya dinamis; yaitu, beri makan melalui pipa shader yang akan menghitung efeknya pada segala sesuatu di sekitarnya, setiap frame, dalam perjalanan ke layar. Ini jelas sangat mahal. Atau, seorang editor dapat membakar cahaya ke dalam adegan.

Apa yang saya selalu pikirkan tentang memanggang mungkin adalah versi yang lebih sederhana: pada dasarnya editor hanya mengambil tekstur dari segala sesuatu di sekitar cahaya, menghitung efek cahaya pada tekstur tersebut (mencerahkan mereka, mungkin warna mereka, bayangan, dll.) , dan menyimpannya sebagai tekstur pengganti untuk digunakan. Jadi semua tekstur di sekitar "cahaya" terlihat seperti mereka memiliki cetakan cahaya pada mereka, tetapi pada saat runtime sebenarnya tidak ada cahaya dari sudut pandang perhitungan; ini adalah ilusi optik, pada dasarnya.

Namun, Persatuan tampaknya menghasilkan peta cahaya . Ini mirip dengan gagasan di atas, tetapi pencahayaan yang dipanggang disimpan secara terpisah alih-alih memodifikasi tekstur yang mendasarinya, dan saya menganggap shader menggabungkan keduanya saat runtime. Ini akan memiliki keuntungan menjaga keuntungan dari tekstur ubin (yaitu penggunaan memori rendah), karena mereka tidak akan memiliki cahaya yang dipasangkan ke dalamnya sehingga mereka dapat tetap ubin, dan shader akan sangat ringan, terutama dibandingkan dengan merawat seringan dinamis.

Lampu jelas harus statis agar bisa bekerja; yaitu, Anda tidak dapat memindahkannya selama bermain game, karena cahaya telah dimasukkan ke dalam tekstur. Selain itu, objek dinamis apa pun di dalam ruangan (seperti karakter pemain) tidak akan memiliki cahaya yang menyinari mereka sehingga perlu ada semacam pengecualian, di mana cahaya diberikan untuk objek dinamis tetapi tidak (ditampilkan kembali) dihidupkan. pemandangan statis.

Ricket
sumber
12
Dan sebagian besar waktu karena pencahayaannya lunak, peta cahaya dapat disimpan dalam resolusi yang lebih rendah daripada sisa tekstur, masih terlihat bagus, tetapi membuatnya lebih cepat, dan membutuhkan lebih sedikit memori.
AttackingHobo
+1, ini adalah jawaban yang sangat bagus dan luas, terima kasih. :)
Xeo