สูตรแสง GLSL (ลดทอนสีและความเข้ม)
ฉันกำลังติดตั้งไฟจุดในเครื่องมือ Voxel ของฉันและฉันพยายามอย่างหนักเพื่อให้ได้แสงที่ดีจาก 100% ใกล้กับแหล่งกำเนิดแสงถึง 0% ที่รัศมีแสง ฉันมี 5 ข้อโต้แย้งสำหรับฟังก์ชั่น: สีอ่อน (Vec3) ความเข้มของแสง (ระยะทางจากแสงจนถึงระยะทางที่จุดตกหล่น 100%) ระยะทางจากแสงถึงชิ้นส่วน มุมจากชิ้นส่วนปกติถึงแสง ตำแหน่งของแสง ทุกคนสามารถผลักฉันไปในทิศทางที่ถูกต้องเพื่อสร้างฟังก์ชั่นสำหรับการคำนวณสีชิ้นส่วนได้หรือไม่? ภาพหนึ่งในการทดลองของฉัน: แก้ไข (รหัสปัจจุบันที่ขอโดย Byte) โปรดทราบว่านี่เป็นเพียงรหัสการทดสอบจากฝั่งฉัน ฉันได้รับข้อมูลจากเว็บไซต์และมันใช้งานได้ แต่ไกลจากความสมบูรณ์แบบ : void main() { // Light color vec3 torchColor = vec3(1.0f, 1.0f, 1.0f); float lightAdd = 0.0f; for (int i=0; i<5; i++) { vec3 …