ที่เก็บนี้เป็นเครื่องช่วยสอนสำหรับการบรรยายกราฟิกคอมพิวเตอร์ของฉัน มันไม่ได้หมายถึงการสร้างการแสดงผลที่ดีที่สุดหรือสมจริงทางร่างกาย มันหมายถึง ง่าย โครงการนี้มีการแจกจ่ายภายใต้สิ่งที่คุณต้องการให้มีใบอนุญาตสาธารณะ
ตรวจสอบบทความที่มาพร้อมกับซอร์สโค้ด
โครงการนี้เกี่ยวข้องอย่างใกล้ชิดกับซอฟต์แวร์ Raytracer ของฉัน หากคุณกำลังมองหาซอฟต์แวร์ Rasterizer ให้ตรวจสอบส่วนอื่น ๆ ของการบรรยาย
ในการบรรยายของฉันฉันมักจะหลีกเลี่ยงห้องสมุดบุคคลที่สามตราบใดที่มันสมเหตุสมผลเพราะมันบังคับให้เข้าใจสิ่งที่เกิดขึ้นภายใต้ประทุน ดังนั้น raytracing ใน 180 บรรทัดของ C ++ ธรรมดาจะสร้างผลลัพธ์นี้:
git clone https://github.com/ssloy/tinykaboom.git
cd tinykaboom
mkdir build
cd build
cmake ..
makeคุณสามารถเปิดโครงการใน Gitpod ซึ่งเป็น Evironment dev ออนไลน์ฟรีสำหรับ GitHub:
เมื่อเปิดตัวแก้ไขจะรวบรวมและเรียกใช้โปรแกรมรวมถึงเปิดภาพผลลัพธ์ในตัวอย่างของตัวแก้ไข เพียงเปลี่ยนรหัสในตัวแก้ไขและเรียกใช้สคริปต์อีกครั้ง (ใช้ประวัติของเทอร์มินัล) เพื่อดูภาพที่อัปเดต
ความเป็นไปได้คือ Infinte ตัวอย่างเช่นคุณสามารถเพิ่มแผนที่สภาพแวดล้อมและความโปร่งใสบางอย่าง:
เพิ่มวัตถุอื่น ๆ และส่องสว่าง: