ภาพรวมทางเทคนิคของ O3DE
(o3de.org)- O3DE 26.05 ได้รับการระบุว่าเป็นรีลีสล่าสุด และสามารถตรวจสอบสถานะปัจจุบันของเอนจินได้ผ่านบันทึกประจำรุ่นและเอกสารภาพรวม
- เอนจินนี้เป็น เอนจิน 3D แบบโมดูลาร์โอเพนซอร์ส โดยชูคุณสมบัติหลักคือการทำงานร่วมกันได้, รองรับหลายแพลตฟอร์ม, เป็นมิตรกับคลาวด์ และการพัฒนาที่ขับเคลื่อนโดยชุมชน
- ขอบเขตการใช้งานครอบคลุมไปถึง การพัฒนาเกม, โรโบติกส์, เมตาเวิร์ส และการศึกษา โดยในด้านโรโบติกส์เน้นการผสานรวมเชิงลึกกับ Robot Operating System(ROS)
- โชว์เคสรวบรวมผลงานสร้างสรรค์และซิมูเลชันจากผู้ใช้และผู้มีส่วนร่วมทั่วโลก โดยมีตัวอย่างอย่าง Bistro Example, Robotic Warehouse Simulation, Stealth และ Paper Kid
- บริษัทและองค์กรต่าง ๆ สามารถเข้าร่วมเป็นสมาชิกของ Open 3D Foundation เพื่อสนับสนุน O3DE และมีส่วนร่วมกำหนดทิศทางในอนาคตของเอนจินได้
รีลีสล่าสุดและเส้นทางเริ่มต้น
- O3DE 26.05 มีให้ใช้งานในฐานะรีลีสล่าสุด
- O3DE ได้รับการแนะนำว่าเป็น เอนจิน 3D โอเพนซอร์ส ที่พัฒนาอย่างต่อเนื่อง
- ผู้ใช้สามารถเลือกเส้นทางเพื่อเริ่มสร้างผลงานหรือมีส่วนร่วมกับชุมชนได้ทันที
- เน้นบทบาทของ ชุมชน ที่ผู้ใช้และผู้มีส่วนร่วมสำรวจไปด้วยกัน รวมถึงองค์กรสมาชิกที่ร่วมกันกำหนดอนาคตของเอนจิน
พื้นที่การใช้งานและโชว์เคส
- คุณสมบัติหลักของ O3DE สรุปได้ว่าเป็น คุณภาพสูง, แบบโมดูลาร์, ทำงานร่วมกันได้, รองรับหลายแพลตฟอร์ม, ขับเคลื่อนโดยชุมชน, โอเพนซอร์ส และเป็นมิตรกับคลาวด์
- สามารถใช้เป็นพื้นฐานของโปรเจกต์ 3D ในหลากหลายอุตสาหกรรม แอปพลิเคชัน และแพลตฟอร์ม
- Gaming: สามารถสร้างโลกที่รองรับการเล่าเรื่องและเกมเพลย์ด้วยเครื่องมือโอเพนซอร์สแบบโมดูลาร์
- Robotics: สามารถสร้างซิมูเลชันด้านโรโบติกส์ได้ด้วยการผสานรวม ROS และคอมโพเนนต์ต่าง ๆ
- Metaverse: มุ่งนำเสนอประสบการณ์แบบสมจริงและสินทรัพย์ดิจิทัล 3D
- Education: สนับสนุนวิธีการเรียนรู้ในห้องเรียนยุคใหม่ด้วยเทคโนโลยี 3D
- O3DE showcase รวบรวมผลงานสร้างสรรค์และซิมูเลชันของผู้ใช้และผู้มีส่วนร่วม
- ตัวอย่างได้แก่ Bistro Example, Robotic Warehouse Simulation, Robotic Arm, Stealth, Chain Arc skill using PopcornFX, Kythera AI, Planet Survival Game และ Paper Kid
- มีรายการบล็อกที่เกี่ยวข้องกับชุมชนให้ดูควบคู่กันด้วย
- บริษัทต่าง ๆ สามารถสนับสนุน O3DE ได้ด้วยการเป็นสมาชิกของ Open 3D Foundation
1 ความคิดเห็น
ความคิดเห็นจาก Hacker News
กำลังคอยติดตาม O3DE อยู่เรื่อย ๆ การออกแบบของ Godot ดูไม่ค่อยเหมาะกับ งานที่ต้องการประสิทธิภาพสูง หรือการจัดการ actor จำนวนมากนัก
แม้จะไม่เคยมีกรณีที่ต้องใช้ actor จำนวนมหาศาล แต่มีหลายครั้งที่ต้องใช้ Observer อยู่บ่อย ๆ ถึงอย่างนั้น ในแง่ของการออกแบบที่เรียบง่าย Godot ใกล้เคียงกับ Unity มากกว่า และในหลายด้านก็ได้เปรียบเรื่องความสามารถในการขยายและการใช้งานจาก ระบบ Node
ควรจะจัดการ actor ระดับหลายหมื่นตัวได้โดยไม่มีปัญหา แต่ถ้าไปถึงระดับหลายล้านตัว อาจต้องเขียนโมดูลเอง โชคดีที่ codebase ของ Godot ถือว่าค่อนข้างน่าใช้งานทีเดียวสำหรับโปรเจกต์ C++ ที่ซับซ้อนอย่าง game engine หลายแพลตฟอร์มที่มี rendering backend หลายตัว
ผู้พัฒนา Cassette Beasts พูดถึงเรื่องนี้เล็กน้อยในบทสัมภาษณ์นี้: https://godotengine.org/article/godot-showcase-cassette-beas...
O3DE มีพื้นฐานจาก Amazon Lumberyard และ Lumberyard ก็มีพื้นฐานจาก CryEngine 5 ของ Crytek ที่ผ่านการพิสูจน์ในอุตสาหกรรมมาแล้ว
codebase ถูกทำให้ทันสมัยเป็น C++17 และ engine เรนเดอร์แบบขนาน Atom รองรับ Vulkan, DirectX 12 และ ray tracing แบบเรียลไทม์
การที่เกมถูกปล่อยออกมาไม่ได้หมายความว่าเทคโนโลยีข้างใต้นั้นดีหรือใช้งานแล้วสนุก เกมส่วนใหญ่ผมมองว่าถูกปล่อยออกมาได้ด้วยพลังใจล้วน ๆ ไม่ใช่เพราะโค้ดดี
ผมเองก็สงสัยเหมือนกันว่าทำไมไม่มีใครพูดถึงเรื่องนี้ คิดว่าประวัติทั้งหมดของ engine นี้น่าสนใจมาก
CryEngine ดูหมดแรงลงอย่างชัดเจน และดูเหมือนประสิทธิภาพในเกมสมัยใหม่จะไม่ดีนัก เคยเล่น Hunt Showdown แล้วมันก็ดูค่อนข้างดี แต่ไม่ได้ถึงขั้นสุดยอด และประสิทธิภาพก็แย่พอสมควร โดยเฉพาะต้นไม้ที่รู้สึกว่ากินประสิทธิภาพหนักมาก
Sniper Ghost Warrior 3 ก็น่าจะใช้ CryEngine เหมือนกัน ซึ่งประสิทธิภาพดีกว่าและในบางแง่ก็ดูดีกว่าด้วย แม้ผมจะชอบทิศทางศิลป์ของ Hunt Showdown แต่ฝั่ง Ghost Warrior ดู “ดีกว่า” บางอย่าง อย่างไรก็ตาม ในช่วงที่มีต้นไม้เยอะ ประสิทธิภาพก็ตกลงอย่างเห็นได้ชัด
CryEngine ตอนนี้ก็ยังเป็นซอร์สปิดอยู่ เลยสงสัยจริง ๆ ว่า Amazon ไปทำข้อตกลงใหญ่โตอะไรกับ Crytek ถึงได้สร้าง Lumberyard บนพื้นฐาน CryEngine แล้วภายหลังเปิดเป็นโอเพนซอร์สพร้อมเปลี่ยนชื่อเป็น O3DE ได้ จากที่อ่านมา ดูเหมือนพวกเขาโฟกัสกับการใส่การเชื่อมต่อกับคลาวด์ของ Amazon มากกว่าส่วนเรนเดอร์ 3D จริง ๆ
มันดูเป็น engine โอเพนซอร์สที่ค่อนข้างดี และแค่นั้นก็พิเศษแล้ว แต่กลับไม่มีใครทำอะไรหรือพูดถึงกันมากนัก ไม่เข้าใจว่าทำไมในเว็บถึงไม่มี showcase ที่เป็นที่รู้จักหรือแสดงอะไรที่ยอดเยี่ยม
New World ใช้ engine นี้ แต่ก็ไม่เห็นถูกพูดถึง มันควรเป็น showcase หลักไม่ใช่หรือ? ถึงเกมจะไม่ได้ยอดเยี่ยมหรือดูน่าประทับใจมากนัก แต่ก็ยังเป็นไตเติลใหญ่ที่สร้างด้วย engine นี้
มีอธิบายละเอียดกว่านี้ในคอมเมนต์อื่น: https://news.ycombinator.com/item?id=37968280
แปลกที่ลองดูอยู่ราว 5 นาทีแล้วก็ยังไม่รู้ว่า ภาษาที่รองรับ คืออะไร
ถ้าจะให้แพ็กเกจ
.debแล้ว ทำไมต้องจงใจเมิน FHS แล้วเทไฟล์ติดตั้งลงใน/optด้วยก็ไม่รู้/optก็เป็นส่วนหนึ่งของ FHS ไม่ใช่เหรอ? ผมพลาดอะไรไปหรือเปล่า?ตอนที่เกิดเหตุการณ์ Unity คนส่วนใหญ่ดูแค่ Godot หรือ Unreal และแทบไม่มีใครพูดถึงหรือสนใจอย่าง O3DE เลย ซึ่งรู้สึกแปลก
แน่นอนว่าอาจได้รับอิทธิพลจากคอมเมนต์จำนวนมากเกี่ยวกับความสะดวกในการใช้งานด้วย
ถ้าชม Godot กันมากเพราะเป็นโอเพนซอร์ส ก็น่าจะเป็นเรื่องธรรมชาติที่จะชอบ O3DE ในลักษณะคล้ายกันมากกว่า Unreal: https://github.com/o3de/o3de/blob/development/LICENSE.txt ไม่รู้ว่าทำไมถึงใช้ทั้ง Apache 2 และ MIT แต่ต่างจากไลเซนส์ของ Unreal: https://www.unrealengine.com/en-US/license
เว้นแต่ว่าจริง ๆ แล้วผู้คนให้ความสำคัญกับตัวเลือกและฟีเจอร์ที่ได้รับความนิยมพอจะดึงดูดความสนใจได้มากกว่า และมองไลเซนส์เป็นเพียงข้อดีมากกว่าจะเป็นปัจจัยหลัก Unreal เองก็ขึ้นราคาเล็กน้อยหลังจากนั้นไม่นาน: https://www.unreal-university.blog/post/unreal-engine-5-pric...
อย่างไรก็ตาม ไม่ว่าจะรายละเอียดไลเซนส์เป็นอย่างไร การมีตัวเลือกมากก็เป็นเรื่องดี เพียงแต่ก็มีด้านที่นักพัฒนากระจายตัวไปหลายโปรเจกต์ นอกจาก Godot, O3DE, Stride, Unreal แล้ว ยังมี jMonkeyEngine ซึ่งเป็นเอนจิน/เอดิเตอร์ 3D บน Java ที่หาได้ยาก หรือ NeoAxis ที่เคยมีวิธีแก้ปัญหา voxel LOD ที่ยอดเยี่ยม แต่ประสิทธิภาพบนฮาร์ดแวร์ AMD แย่
แม้ O3DE จะทรงพลังกว่า Godot ก็ไม่น่าแปลกใจ แต่การเลือกเอนจินนั้นความเข้ากันได้ระหว่างทีมกับเอนจินสำคัญกว่า สำหรับทีมอินดี้ส่วนใหญ่ O3DE ดูจะค่อนข้างหนักหนา
ไม่ได้ลงไปดูเชิงลึกเอง เป็นเพียงการถ่ายทอดสิ่งที่อ่านมา การพัฒนาดูค่อนข้างคึกคัก จึงมีโอกาสเปลี่ยนไปได้มากในอนาคต
สตูดิโอใหญ่ที่มีทีมพัฒนาตั้งหลักดีแล้วอาจจะใช้ได้
เอกสารและเครื่องมือของ O3DE ยังมีจุดที่ต้องปรับปรุงอีกมากเมื่อเทียบกับ Godot คอมมูนิตี้ก็ต้องเติบโตขึ้นด้วย แต่กว่าจะเป็นแบบนั้นได้ ต้องปรับปรุงเอกสารและเครื่องมือก่อน
สุดท้ายก็หวังให้ทั้ง Godot และ O3DE ประสบความสำเร็จ สนับสนุนทั้งสองโปรเจกต์ และเคยพยายามดึง O3DE เข้ามาในการถกเถียงแบบนี้ด้วย แต่ถ้าวันนี้มีเวลาเริ่มทำเกมในฐานะนักพัฒนาอินดี้ ก็คงเลือก Godot อย่างไรก็ตาม ทั้งสองเอนจินก็มีสิ่งให้มากมาย
นักพัฒนา O3DE ซึ่งส่วนใหญ่คือ Amazon แม้จะมีคนบ่นว่า Amazon ไม่ได้มีส่วนร่วมกับโอเพนซอร์ส แต่พวกเขาดูเหมือนจะรู้จุดอ่อนของตัวเอง และพยายามอย่างเต็มที่ในการรีแฟกเตอร์โค้ด ปรับปรุงเครื่องมือและเอกสาร เพื่อให้ใช้งานง่ายขึ้น มันคงต้องใช้เวลา และหวังว่าจะออกดอกออกผลด้วยการสนับสนุนจากคอมมูนิตี้และการสนับสนุนอย่างต่อเนื่องจาก Amazon ขอบคุณสำหรับการมีส่วนร่วมโอเพนซอร์สจำนวนมากของ Amazon แม้จะไม่ได้เห็นด้วยกับทุกอย่างที่บริษัททำ แต่ไม่เห็นด้วยอย่างยิ่งกับความคิดที่ว่าพวกเขาไม่คืนอะไรกลับมาเลย
เพราะแบบนั้นจึงให้ไลเซนส์คู่เป็น MIT ซึ่งเข้ากันได้กับ GPL2 ด้วย
โปรเจกต์ Rust ก็มีปัญหาเดียวกัน จึงใช้ไลเซนส์คู่ Apache2 + MIT
คืออยากได้ Apache 2 เพราะมีการให้สิทธิบัตรอย่างชัดเจน แต่ในขณะเดียวกันก็อยากให้โปรเจกต์ GPL2 ใช้โค้ดได้ด้วย
แม้แต่ทีมภายใน Amazon เองที่ใช้ Lumberyard แล้วเจอความยากลำบากในการพัฒนา ก็ไม่ได้ทำให้รู้สึกเชื่อมั่นนัก
ถึงอย่างนั้น การเปิดเป็นโอเพนซอร์สก็ถือว่าเป็นการตัดสินใจที่ถูกต้อง และหวังว่าจะดีขึ้นต่อไป
ไม่ได้เรียบง่ายเหมือน Unity หรือ Unreal และการติดตั้งก็ใช้เวลามาก นอกจากนี้ asset pipeline ก็เป็นความทรมานอีกอย่างหนึ่ง ไม่รู้ว่าปรับปรุงแล้วหรือยัง O3DE คือเอนจิน Lumberyard ของ Amazon และ Lumberyard เป็นเอนจินที่แยกสายมาจาก CryEngine
เช่นเดียวกับตั้งแต่ก่อน Lumberyard O3DE ในฐานะเกมเอนจินนั้นแย่มากจริง ๆ
ได้ยินแต่เรื่องเลวร้ายที่สุดจากทีมที่ถูกบังคับให้ใช้ Lumberyard
อย่าสับสนกับ O3D ซึ่งเป็นเอนจินเรนเดอร์ของ Google ใน Chrome สมัยก่อน: https://hn.algolia.com/?q=o3d
มีใครจำเดโม Beach https://www.youtube.com/watch?v=uofWfXOzX-g ได้ไหม? เหมือนจะมีแค่ผมคนเดียว
เจอไฟล์ดึงโมเดล 3D และหน้าเดโม Beach ที่ถูกเก็บถาวรแล้ว แต่ปลั๊กอินเบราว์เซอร์จริงไม่ได้ถูกเก็บไว้ และก็ไม่อยากตั้งค่าระบบ build ที่เก่ากว่า 10 ปีเพื่อปลั๊กอินเบราว์เซอร์เก่า ๆ คิดถึงยุคนั้น
samples.zip[1] ขนาดใหญ่มีโฟลเดอร์o3d-webglอยู่ ซึ่งดูเหมือนเป็น API bridge ที่เชื่อมสองโลกเข้าด้วยกันตัวอย่างที่ชี้ไปยังสคริปต์นี้ทำงานได้บนเบราว์เซอร์สมัยใหม่โดยไม่ต้องใช้ปลั๊กอิน
[1] http://web.archive.org/web/20100308001327/http://code.google...
น่าสนใจที่เทคโนโลยีบางอย่างหายไป และบางอย่างก็อยู่รอด
เมื่อหลายปีก่อนมี ODE และเคยใช้มันที่ ode.org เพื่อจำลองอัลกอริทึมไมโครเมาส์ร่วมกับฟิสิกส์ เห็นชื่อนี้แล้วนึกถึงความทรงจำนั้นขึ้นมา
แค่เปิดหน้าแรกก็ดาวน์โหลดวิดีโอขนาดเกือบ 200MB แล้ว