อ่าน 6 นาที
บาบิโลน.เจเอส
Babylon.js เป็น ไลบรารี JavaScript และเอนจิ้น 3 มิติสำหรับแสดง กราฟิก 3 มิติแบบเรี ยลไทม์ ในเว็บเบราว์เซอร์ผ่าน HTML5 ซอร์สโค้ดมีให้ใช้งานบน GitHub และเผยแพร่ภายใต้ Apache License...
บาบิโลน.เจเอส
| บาบิโลน.เจเอส | |
|---|---|
| ผู้เขียนต้นฉบับ | เดวิด คาทูเฮ[ 1 ] |
| นักพัฒนา | ไมโครซอฟต์[ 2 ]และผู้มีส่วนร่วม[ 3 ] |
| ปล่อย | 2013 |
| เวอร์ชันเสถียร | 9.2.1 / 13 เมษายน 2569 |
| เขียนเป็น | TypeScript , JavaScript |
| พิมพ์ | เครื่องยนต์ 3 มิติ |
| ใบอนุญาต | ใบอนุญาต Apache 2.0 |
| เว็บไซต์ | www.babylonjs.com |
| ที่เก็บข้อมูล | https://github.com/BabylonJS/Babylon.js |
Babylon.jsเป็น ไลบรารี JavaScriptและเอนจิ้น 3 มิติสำหรับแสดงกราฟิก 3 มิติแบบเรียลไทม์ ในเว็บเบราว์เซอร์ผ่านHTML5ซอร์สโค้ดมีให้ใช้งานบนGitHubและเผยแพร่ภายใต้Apache License 2.0
ประวัติศาสตร์และความก้าวหน้า
Babylon.js เปิดตัวครั้งแรกในปี 2013 ภายใต้ใบอนุญาตสาธารณะของ Microsoftโดยได้รับการพัฒนาโดย พนักงาน ของ Microsoft สองคน ในช่วงเวลาว่างเป็นโครงการเสริม David Catuhe สร้างเอ็นจิ้นเกม 3 มิติ ในขณะที่ David Rousset พัฒนา ระบบ VR , Gamepad และIndexedDBทั้งสองได้รับความช่วยเหลือจากศิลปิน Michel Rousseau ซึ่งมีส่วนร่วมในการสร้างฉาก 3 มิติหลายฉาก Babylon.js มีพื้นฐานมาจากเอ็นจิ้นเกมรุ่นก่อนหน้าสำหรับระบบ 3 มิติแบบWPFของSilverlight [ 4 ] [ 5 ] โครงการเสริมของ Catuhe กลายเป็นงานประจำของเขา และเป็นจุดสนใจหลักของทีม[ 6 ] ในปี 2015 ได้มีการนำเสนอในงานWebGL Conferenceที่ปารีส[ 7 ]หลังจากการส่งเสริม[ 8 ] [ 9 ]และการนำไปใช้ในเกม[ 10 ]ผู้จัดจำหน่ายวิดีโอเกมUbisoftได้วางจำหน่าย เกม Assassin's Creedที่สร้างขึ้นบนไลบรารีนี้ในปี 2014 [ 11 ]ณ ปี 2024 โครงการนี้มีผู้ร่วมสนับสนุนมากกว่า 500 คน[ 12 ]
การใช้งานได้พัฒนาไปสู่หลากหลายสาขา เช่น:
- โลกเสมือนจริง[ 13 ]
- การแสดงภาพข้อมูลอาชญากรรม[ 14 ]
- การศึกษาทางการแพทย์[ 15 ] [ 16 ]
- อวตารแฟชั่น[ 17 ]
- การจัดการKinectบนเว็บ[ 18 ]
- การฝึกทหาร[ 19 ]
- การสร้างแบบจำลองสถานที่ทางประวัติศาสตร์[ 20 ] [ 21 ]
- การออกแบบผลิตภัณฑ์[ 22 ] [ 23 ]
- กราฟ RDF [ 24 ]
- การสร้างแบบจำลองโครงสร้างพื้นฐานใต้ดินในเมือง[ 25 ]
Babylon.js 8.0 เปิดตัวเมื่อวันที่ 27 มีนาคม พ.ศ. 2568 [ 26 ]
คำอธิบายทางเทคนิค
ซอร์สโค้ดเขียนด้วยTypeScriptแล้วคอมไพล์เป็น เวอร์ชัน JavaScriptเวอร์ชัน JavaScript นี้พร้อมใช้งานสำหรับผู้ใช้ปลายทางผ่านNPMหรือCDNซึ่งผู้ใช้สามารถเขียนโค้ดโปรเจ็กต์ของตนเองด้วย JavaScript โดยเข้าถึง API ของเอนจินได้ เอนจิน 3 มิติ Babylon.js และโค้ดของผู้ใช้จะถูกตีความโดยเบราว์เซอร์ที่รองรับ มาตรฐาน HTML5และWebGLเพื่อทำการเร นเดอร์ 3 มิติ
ระเบียบวิธีการสร้างแบบจำลอง
กระบวนการสร้างแบบจำลอง 3 มิติ ที่ใช้คือการสร้างแบบ จำลองรูปหลายเหลี่ยมโดยใช้หน้าสามเหลี่ยมแทนด้วยแบบจำลองเปลือก[ 27 ]การใช้งานเรขาคณิตของแข็งเชิงสร้างสรรค์นั้นทำได้จำกัด แต่เป็นเพียงวิธีการเปลี่ยนผ่านเพื่อสร้างการรวม การลบ และการตัดกันของแบบจำลองเปลือก[ 28 ]เมื่อสร้างแบบจำลองแล้ว แบบจำลองจะถูกเรนเดอร์บนองค์ประกอบ canvas ของHTML 5 โดยใช้ โปรแกรม shaderซึ่งกำหนดตำแหน่งพิกเซลและสีบน canvas โดยใช้แบบจำลองรูปหลายเหลี่ยมพื้นผิวที่ใช้กับแต่ละแบบจำลองกล้องและแสงในฉาก พร้อมกับเมทริก ซ์โลก 4 x 4 สำหรับแต่ละวัตถุซึ่งจัดเก็บตำแหน่ง การหมุน และขนาด[ 29 ]เทคนิคที่ใช้ในการสร้าง ภาพ ที่สมจริงคือการเรนเดอร์ตามหลักฟิสิกส์[ 30 ]พร้อมกับวิธีการประมวลผลภายหลัง[ 31 ]เพื่อจำลองการชนกันระหว่างแบบจำลองและการกระทำทางกายภาพในโลกแห่งความเป็นจริงอื่นๆ จำเป็นต้องเพิ่มเอ็นจิ้ นฟิสิกส์ หนึ่งในสองตัว เป็นปลั๊กอิน ได้แก่Cannon.jsและ Oimo [ 32 ]แอนิเมชันที่เกี่ยวข้องกับการเปลี่ยนแปลงตำแหน่งหรือสีของโมเดล เช่น จะทำได้โดยการใช้ วัตถุแอนิเมชัน แบบคีย์เฟรมที่เรียกว่า "animatables" ในขณะที่แอนิเมชันตัวละครแบบเต็มรูปแบบจะทำได้โดยการใช้โครงกระดูกที่มีน้ำหนักการผสม[ 31 ] [ 33 ]
ดูเพิ่มเติม
อ่านเพิ่มเติม
- เอลสเตอร์, จอช (2022). ก้าวไปให้ไกลกับ Babylon.js: การสร้างแอปพลิเคชันเชิงโต้ตอบบนเว็บเบราว์เซอร์ที่ขยายได้ บำรุงรักษาได้ และน่าดึงดูด ตั้งแต่เริ่มต้นจนจบ . สำนักพิมพ์แพคต์. ISBN 978-1801076586.
- Chenard, Julian (2017). การเรียนรู้ Babylon.js: เรียนรู้พื้นฐานของเฟรมเวิร์ก 3 มิติ Babylon.js โดยการสร้างเกมทั้งเกม!จัดพิมพ์โดยอิสระISBN 978-1520730448.
- โมโร-มาติส, จูเลียน (2016) สิ่งจำเป็นสำหรับ Babylon.js สำนักพิมพ์แพคต์ไอเอสบีเอ็น 978-1785884795เก็บถาวรจากต้นฉบับเมื่อวันที่ 11 เมษายน 2562 เรียกดูเมื่อวันที่ 9 กันยายน 2561
- Chenard, Julien (2015). การเรียนรู้ BabylonJS . เก็บถาวรจากต้นฉบับ(อีบุ๊ก)เมื่อ 2016-08-23 . สืบค้นเมื่อ2018-09-09 .
- Cozzi, Patrick (2015). "การออกแบบเอ็นจิ้น WebGL ใน Babylon.js" . WebGL Insights . CRC Press . ISBN 978-1498716079.
- เชนาร์ด, จูเลียน; โมโร-มาติส, จูเลียน (2016) "Réaliser un jeu en 3D avec BabylonJS" [การสร้างเกม 3 มิติด้วย BabylonJS] (PDF ) โปรแกรมเมซ! (ในภาษาฝรั่งเศส)
- บูสกิเอ, เฌโรม (2015) "La 3D sur le Web avec BabylonJS" [3D บนเว็บด้วย BabylonJS] (PDF ) โปรแกรมเมซ! (ในภาษาฝรั่งเศส)
- คาตูเฮ, เดวิด (2014) "Sous le capot d'un moteur 3D" [ภายใต้ประทุนของเอ็นจิ้น 3 มิติ] (PDF ) โปรแกรมเมซ! (ในภาษาฝรั่งเศส)
ลิงก์ภายนอก
- เว็บไซต์อย่างเป็นทางการ
สรุปเนื้อหา
ข้อมูลสำคัญจากบทความ
ข้อมูลสำคัญเกี่ยวกับ บาบิโลน.เจเอส
Babylon.js เป็น ไลบรารี JavaScript และเอนจิ้น 3 มิติสำหรับแสดง กราฟิก 3 มิติแบบเรี ยลไทม์ ในเว็บเบราว์เซอร์ผ่าน HTML5 ซอร์สโค้ดมีให้ใช้งานบน GitHub และเผยแพร่ภายใต้ Apache License...
ประวัติศาสตร์และความก้าวหน้า
Babylon.js เปิดตัวครั้งแรกในปี 2013 ภายใต้ ใบอนุญาตสาธารณะของ Microsoft โดยได้รับการพัฒนาโดย พนักงาน ของ Microsoft สองคน ในช่วงเวลาว่างเป็นโครงการเสริม David Catuhe สร้าง เอ็นจิ้นเกม 3 มิติ ในขณะที่ David Rousset พัฒนา ระบบ VR , Gamepad และ IndexedDB...
คำอธิบายทางเทคนิค
ซอร์สโค้ดเขียนด้วย TypeScript แล้ว คอมไพล์ เป็น เวอร์ชัน JavaScript เวอร์ชัน JavaScript นี้พร้อมใช้งานสำหรับผู้ใช้ปลายทางผ่าน NPM หรือ CDN ซึ่งผู้ใช้สามารถเขียนโค้ดโปรเจ็กต์ของตนเองด้วย JavaScript โดยเข้าถึง API ของเอนจินได้ เอนจิน 3 มิติ Babylon.
ระเบียบวิธีการสร้างแบบจำลอง
กระบวนการสร้างแบบจำลอง 3 มิติ ที่ใช้คือการสร้างแบบ จำลอง รูปหลายเหลี่ยมโดยใช้หน้าสามเหลี่ยมแทนด้วยแบบจำลองเปลือก [ 27 ] การใช้งาน เรขาคณิตของแข็งเชิงสร้างสรรค์ นั้นทำได้จำกัด แต่เป็นเพียงวิธีการเปลี่ยนผ่านเพื่อสร้างการรวม การลบ และการตัดกันของแบบจำลองเปลือก [...