WebGL Path Tracer
ตัวอย่าง: webgl-path-tracer
รายงาน: Master_Thesis_Report.pdf
ฉากที่แสดงผล
ความคืบหน้า
- [+] การประมาณเหตุการณ์ถัดไปและการสุ่มตัวอย่างที่สำคัญหลายอย่างพอร์ตจาก Lighthouse2
- [+] อัลกอริทึมการเดินทาง BVH ที่สั่งซื้อนำไปใช้
- [+] พื้นผิว GL หลายอย่างถูกเอาเปรียบสำหรับการโหลดพื้นผิวของ Skydome และ Albedo
- [+] การโหลดไฟล์ GLTF ดีขึ้น: หลายตาข่ายที่มีการรองรับพื้นผิวที่แตกต่างกัน; การแก้ไขข้อผิดพลาดที่สำคัญเพียงไม่กี่อย่าง: อย่าคำนวณขนาดพื้นผิวของ GL ในเวลารันไทม์
- [+] การสุ่มตัวอย่าง Skydome
- [+] พื้นผิวสีและพื้นผิวอัลเบโด้รองรับ
- [+] การโหลดเรขาคณิตจากไฟล์ GLTF
- [+] อินเทอร์เฟซผู้ใช้ที่ปรับปรุงแล้ว: ปุ่มเว็บไซต์เพื่อควบคุมการกระทำเช่นการเปลี่ยนฉาก, หยุด/กลับมาทำงานเรนเดอร์เรนเดอร์
- [+] การควบคุมกล้องถ่ายฉากผ่านปุ่มเว็บไซต์หรือแป้นพิมพ์
- [+] shaders GLSL แยกออกเป็นไฟล์ภายนอก
- [+] วิธีรูเล็ตรัสเซียเพื่อประเมินความน่าจะเป็นของการอยู่รอดของเรย์
- [+] โครงสร้างการเร่งความเร็ว BVH นำไปใช้ สร้างขึ้นที่ด้าน JavaScript แล้วส่งผ่านไปยังส่วน shader ผ่านพื้นผิว GL ข้ามโดยใช้สแต็คที่ด้าน shader
- [+] สุ่มแสงตามเมล็ด {เวลาพิกเซลพิกเซลการวนซ้ำ}
- [+] ส่งฉากสามเหลี่ยมและไฟไปยัง Shader ผ่านพื้นผิว
การตั้งค่า
- ติดตั้งการพึ่งพาที่แสดงใน package.json จากนั้นรวมไฟล์แหล่งต้นฉบับ Javasscript
npm install
npm run develop
npm run build
- แปล Typescript เป็น JavaScript: เรียก ใช้งานสร้าง ในรหัส Visual Studio (
CTRL + SHIFT + B ) - ปรับใช้
/dist เนื้อหาบนเว็บเซิร์ฟเวอร์ไม่รวมโฟลเดอร์ /dist/.tmp