Luxe engine - เอนจินเกมข้ามแพลตฟอร์ม
(luxeengine.com)- เอนจินเกมสำหรับพัฒนาอย่างรวดเร็วแบบข้ามแพลตฟอร์ม ที่รองรับหลายแพลตฟอร์ม เช่น Mac, Linux, Windows และ Web
- ออกแบบมาเพื่อให้ แม้แต่มือใหม่ก็สร้างเกม 2D และ 3D ได้อย่างรวดเร็ว
- มอบ ชุดเครื่องมือที่ใช้งานง่ายและเวิร์กโฟลว์ที่รวดเร็วซึ่งเหมาะกับการพัฒนาเกม 2D พร้อมรองรับฟีเจอร์ขั้นสูงอย่าง 3D rendering, shader และ asset pipeline
- พัฒนาด้วย C++ เพื่อรับประกันประสิทธิภาพสูง และการพัฒนาเกมจะใช้ภาษา Wren แบบปรับแต่งเอง (มีแผนรองรับการเชื่อมต่อกับภาษาในตระกูล C ภายหลัง)
- เหมาะทั้งสำหรับการทำงานคนเดียวและเป็นทีม ด้วย โครงสร้างแบบโมดูลาร์ เวิร์กโฟลว์ที่เน้นโค้ด ตัวแก้ไขที่เป็นตัวเลือก และการพัฒนาที่ขับเคลื่อนโดยชุมชน
- ให้เฉพาะความสามารถที่จำเป็นเป็นเครื่องมือหลัก ทำให้พัฒนาเกมแบบปรับแต่งตามลักษณะโปรเจ็กต์ได้ง่าย โดยไม่ทำให้เอนจินเทอะทะ
ภาพรวมและปรัชญาของเอนจิน
- luxe คือเอนจินข้ามแพลตฟอร์มสำหรับการพัฒนาเกมที่ง่ายและรวดเร็ว (รองรับ Mac, Linux, Windows, Web และกำลังพัฒนาสำหรับคอนโซล)
- ถูกออกแบบโดยให้ การพัฒนาเกม 2D เป็นลำดับความสำคัญสูงสุด จึงมีชุดเครื่องมือ 2D ที่ทรงพลัง รองรับได้ตั้งแต่โปรเจ็กต์ขนาดเล็กที่ใช้เวลาทำ 1 ชั่วโมง ไปจนถึงโปรเจ็กต์ขนาดใหญ่ที่กินเวลาหลายปี
- นอกจาก 2D แล้ว ยังรองรับฟีเจอร์ 3D ที่หลากหลายได้ผ่าน renderer แบบใช้ฮาร์ดแวร์ที่ทรงพลังและเข้าถึงง่าย เช่น shader, asset pipeline และ render path
- ปรับให้เหมาะกับการเปลี่ยนไอเดียให้เป็นจริงด้วย การทำซ้ำอย่างรวดเร็ว เวิร์กโฟลว์ที่เข้าใจง่าย และชุดเครื่องมือแบบโมดูลาร์
- เอนจินถูกเขียนด้วย c++ และโดยพื้นฐานแล้วนักพัฒนาเกมจะใช้ภาษา Wren เวอร์ชันปรับแต่งเอง โดยในอนาคตมีแผนขยายให้รองรับหลายภาษาที่ทำงานร่วมกับ C ได้
สตูดิโอผู้พัฒนาและการใช้งานจริง
Luxe เป็นเอนจินที่ทีมผู้พัฒนาเอนจินนำไปใช้พัฒนาเกมจริงด้วยตนเอง
- ทีมพัฒนาเอนจินดำเนินสตูดิโอเกมเอง และนำไปใช้ในการสร้างเกมจริงได้ทันที
- มีการใช้งานในโปรเจ็กต์จริง เช่น Mossfield Origins และ Mossfield Archives
- สนับสนุนชุมชนเกม รวมถึงนักพัฒนา ศิลปิน และนักออกแบบอย่างต่อเนื่อง และสะท้อนปรัชญาสตูดิโอที่ให้ความสำคัญกับความหลากหลายและความยั่งยืน
การพัฒนาและชุมชน
- ขณะนี้เปิดเผยเวอร์ชันพรีวิวอยู่ พร้อมบล็อกสำหรับอัปเดตสำคัญและบันทึกการพัฒนา
- สามารถติดตามข่าวการพัฒนา เข้าสู่พอร์ทัลชุมชน และเข้าร่วม Discord ทางการได้
- การเปิดตัวของเอนจิน Luxe และข่าวการพัฒนาสำคัญ จะแจ้งผ่านเว็บไซต์ทางการ ชุมชน และ Discord
ปรัชญาการออกแบบ
- โครงสร้างแบบโมดูลาร์: แกนหลักของเอนจินถูกออกแบบให้เล็กและเป็นระเบียบ และสามารถเลือกใช้เฉพาะเครื่องมือที่ต้องการผ่านระบบโมดูล
- เวิร์กโฟลว์ที่ยืดหยุ่น: ยึดหลักการทำซ้ำอย่างรวดเร็วและการถ่ายทอดเจตนาเป็นหัวใจสำคัญ โดยเน้นประสิทธิภาพของเวิร์กโฟลว์การพัฒนา
- ยึดผู้ใช้เป็นศูนย์กลาง: ออกแบบจากมุมมองการใช้งานจริงโดยนักพัฒนาที่สร้างเกมด้วยตัวเอง ให้ความสำคัญกับประสบการณ์ผู้ใช้ของนักออกแบบ นักพัฒนา ศิลปิน และผู้ที่ใช้งานในชีวิตประจำวัน
เวิร์กโฟลว์และตัวแก้ไข
ตัวแก้ไขของ Luxe เป็นทางเลือก
- Luxe รองรับทั้งนักพัฒนาเดี่ยวและทีม โดยสามารถใช้ เวิร์กโฟลว์ที่เน้นโค้ด ควบคู่กับ ตัวแก้ไขและเครื่องมือ ได้
- ตัวแก้ไขสามารถปรับแต่งให้เหมาะกับแนวเกมเฉพาะได้อย่างง่ายดาย หรือแชร์และขยายผ่านโมดูลได้
- มี เครื่องมือที่นำไปใช้ได้กับหลายวัตถุประสงค์ เช่น แอนิเมชัน, UI และการสร้างโลกในเกม
โครงสร้างที่เน้นเครื่องมือและระบบ
- แยกความสามารถและเครื่องมือที่จำเป็นต่อการพัฒนาเกมออกจากกันอย่างชัดเจน และ เลือกประกอบเฉพาะส่วนที่ต้องใช้ให้เหมาะกับลักษณะของแต่ละเกมได้
- ตัวเอนจินเองไม่ใหญ่เทอะทะ และสามารถโหลดเฉพาะโมดูลที่จำเป็นเพื่อเพิ่มความแม่นยำและความยืดหยุ่นของเกม
- ใช้แนวทางแบบ toolbox ที่ประกอบเกมขึ้นจากการผสานระบบทั้งระดับสูงและระดับต่ำ
- มีฟีเจอร์ Outlines เพื่อช่วยจัดเวิร์กโฟลว์เฉพาะทางได้อย่างรวดเร็วให้เหมาะกับโปรเจ็กต์หลายประเภท เช่น เกมแพลตฟอร์ม 2D หรือ 3D FPS
- สามารถนำองค์ประกอบที่จำเป็นต่อเกมมาประกอบและเริ่มต้นได้ทันทีอย่างรวดเร็ว
ใช้ได้เบาเท่าที่จำเป็น และตัดฟีเจอร์ที่ไม่จำเป็นออก
การเรนเดอร์สำหรับทุกคน
- renderer ที่ง่ายและยืดหยุ่น: เลือกสไตล์การเรนเดอร์ที่เหมาะกับแต่ละเกมได้อย่างอิสระ และสร้างปฏิสัมพันธ์ระดับสูงได้
- รองรับ backend หลายแพลตฟอร์ม ภาษาสำหรับ shading แบบเฉพาะตัวใหม่ และ render pipeline แบบสคริปต์
- แม้แต่มือใหม่ก็เรียนรู้โครงสร้างการเรนเดอร์ได้ง่ายและทดลองได้อย่างรวดเร็ว
การขยายความสามารถแบบโมดูลาร์
ออกแบบโดยมีระบบโมดูลเป็นศูนย์กลาง
- โดยพื้นฐานแล้วมีชุดระบบที่ครบถ้วน แต่ยังคงความเบาไว้ด้วยการ ไม่ฝังทุกแนวเกม/ทุกฟีเจอร์ไว้ในเอนจิน
- หากไม่มีฟังก์ชันที่ต้องการ ก็สามารถขยายเครื่องมือและระบบผ่าน โมดูล ได้
- API และระบบทั้งหมดถูกจัดเป็นโมดูล:
- แม้แต่ Luxe API เองก็ถูกจัดให้ใช้งานในรูปแบบโมดูล แสดงให้เห็นว่าโครงสร้างโมดูลมีบทบาทสำคัญอย่างยิ่ง
- แกนหลักของเอนจินก็แจกจ่ายเป็นโมดูลเช่นกัน เพื่อเพิ่มประสิทธิภาพโดยไม่มีฟีเจอร์เกินจำเป็น
- การใช้งานภาษาโปรแกรมอื่น ๆ ก็รองรับผ่านโมดูล
1 ความคิดเห็น
ความคิดเห็นบน Hacker News
ในมุมของคนที่เคยลองทดสอบเอนจินนี้อยู่ช่วงสั้น ๆ เมื่อไม่กี่เดือนก่อน ผมคิดว่าเป็นโปรเจ็กต์ที่น่าสนใจ แต่ให้ความรู้สึกว่าไม่ค่อยเข้ากับผมเท่าไร คล้ายกับ Wren ตรงที่มีส่วนที่เป็นโครงสร้างชัดเจนและค่อนข้างยืดยาวอยู่มาก เลยให้ความรู้สึกว่าไม่ตอบทั้งอิสระที่อยากได้จากภาษาระดับสูง และความยืดหยุ่นที่คาดหวังจากภาษาระดับต่ำได้อย่างเต็มที่ ด้านความใช้งานง่ายผมชอบ Godot มากกว่า ส่วนการควบคุมละเอียดชอบ Raylib มากกว่า สำหรับบริบทของผมคือเป็นนักพัฒนาเดี่ยวขนาดเล็กและทำเกมเป็นงานอดิเรก ซึ่ง Luxe ดูจะเหมาะกับเวิร์กโฟลว์ของสตูดิโอมากกว่า โดยเฉพาะการให้ความสำคัญกับเครื่องมือที่เน้นศิลปินเป็นศูนย์กลางซึ่งน่าประทับใจ แม้จะถูกนำไปเทียบกับ Godot ในฐานะเอนจินโอเพนซอร์สตัวใหม่ แต่จริง ๆ แล้วดูใกล้เคียงกับการแข่งกับ Unreal มากกว่า ตอนนี้ยังอยู่ในช่วงอัลฟา เอกสารและตัวอย่างยังมีน้อยจึงรู้สึกว่าเรียนรู้ยาก แต่บล็อกโพสต์มีคำอธิบายละเอียดมากและเป็นแหล่งข้อมูลที่อยากแนะนำ
ในฐานะคนที่ใช้เอนจินนี้มาค่อนข้างนาน เห็นว่ามีข้อดีหลายอย่างที่ชอบมาก
โดยรวมให้ความรู้สึกว่าเป็นเอนจินที่เหมาะกับทีมขนาดเล็กและเวิร์กโฟลว์แบบทดลอง คนที่กำลังมองหาทางเลือกแทน Unity ควรลองอย่างยิ่ง
มีความเห็นว่าน่าสนใจที่เอนจินนี้ใช้ Wren (ภาษาที่สร้างโดย Bob Nystrom) เป็นภาษาสคริปต์ และพัฒนาต่อเนื่องมาหลายปี
เมื่อดูหัวข้อ “ข้อจำกัด” แล้ว รู้สึกว่าการทำให้เป็น FOSS (ซอฟต์แวร์โอเพนซอร์สอย่างแท้จริง) คงเป็นไปไม่ได้ในทางปฏิบัติ และถ้าไม่ได้ให้ความสำคัญกับความเป็นโอเพนซอร์ส ก็คิดว่ายังไม่มีข้อได้เปรียบที่ชัดเจนเมื่อเทียบกับ Unreal หรือ Unity
รู้สึกว่าเป็นเรื่องเท่มากที่เอนจินนี้สร้างโดยทีมพัฒนาผู้หญิงทั้งหมด และหวังว่าอุตสาหกรรมเกมจะเติบโตไปในทิศทางที่มีนักพัฒนา/สตูดิโอที่นำโดยผู้หญิงและคนกลุ่มน้อยมากขึ้น
เกี่ยวกับคำอธิบายที่ว่า luxe “เขียนด้วย c++” มีความเห็นว่าตอนแรกจำได้ว่ามันสร้างด้วย Haxe เลยอยากเช็กว่าเข้าใจผิดหรือไม่
พอดูแล้วพบว่ามีบันทึกว่าเวอร์ชันเก่าเคยพัฒนาบน Haxe จริง เอนจิน Haxe รุ่นก่อน เวอร์ชันอัลฟาช่วงปี 2015~2016 แยกจากเอนจินปัจจุบัน และสามารถดูเอนจินใหม่ได้ที่เว็บไซต์ทางการ เวอร์ชันเก่าเคยเป็นโอเพนซอร์ส แต่ตอนนี้ในเรโปทางการเหลือเพียงเอกสาร
มีความเห็นว่าอาจกำลังสับสนกับเอนจินเกมชื่อ Armory
มีการกล่าวถึงเธรดบน Hacker News ในปี 2018
ไม่มีความเกี่ยวข้องกับเกม Lux ของ Sillysoft (แค่สะกดคล้ายกัน)
แม้จะมีการพูดถึงเกมสองเกมที่กำลังทำอยู่ในสตูดิโอของผู้พัฒนาเอนจิน แต่ก็สงสัยว่ามีเกมไหนที่ออกวางจำหน่ายด้วยเฟรมเวิร์กนี้แล้วบ้างหรือยัง
รู้สึกเสียดายที่อยากเป็นนักพัฒนาเกมวิดีโอมาก แต่ในความเป็นจริงมันยากเหลือเกิน