इस प्रोजेक्ट के बारे में

MoBaGEn (Module Based Game Engine) एक शैक्षिक ओपन-सोर्स प्रोजेक्ट है जिसका उद्देश्य गेम प्रोग्रामिंग अवधारणाओं को सिखाना है। यह एक ऐसे दर्शन पर आधारित है जो WebAssembly, एक छोटे बदले जा सकने वाले कोर और मॉड्यूलर डिज़ाइन पर जोर देता है। इंजन कोर C++ में लिखा गया है और यह Entity-Component-System (ECS) आर्किटेक्चर के साथ Data-Oriented Design का उपयोग करता है, जिसमें स्टैकलेस कोरूटीन जॉब्स, रिएक्टिव सिग्नल्स, एक लॉक-फ्री वर्क-स्टीलिंग शेड्यूलर और WebGPU/Dawn रेंडरिंग शामिल है। यह ऐप होस्ट के रूप में SDL3 का उपयोग करता है, वैकल्पिक ImGui/RmlUi GUI लेयर्स के साथ, और परीक्षण के लिए हेडलेस बिल्ड्स का समर्थन करता है। मॉड्यूल पोर्टेबल WASM पैकेज (`.plugin`) हैं जिन्हें एक मॉड्यूल मैनेजर द्वारा चलाया जाता है, डेस्कटॉप/मोबाइल पर WAMR नेटिव बैकएंड और वेब पर ब्राउज़र-इंजन बैकएंड के साथ। प्रोजेक्ट आर्किटेक्चर और मॉड्यूल ऑथरिंग के लिए दस्तावेज़ीकरण प्रदान करता है। इसमें ऑनलाइन डेमो शामिल हैं, जैसे एक फ्लॉकिंग डेमो और एक DICOM व्यूअर, और यह समुदाय के योगदान को प्रोत्साहित करता है। रोडमैप में कोर, जॉब/टास्क और रिसोर्स मैनेजर जैसे आवश्यक मॉड्यूल शामिल हैं, साथ ही ग्राफिक्स, फिजिक्स, साउंड, नेटवर्किंग, स्क्रिप्टिंग, GUI, इनपुट, गेम कंपोनेंट्स, सीन और लॉगर के लिए वैकल्पिक मॉड्यूल भी हैं। प्रोजेक्ट इमेज और गेम एडिटर एप्लिकेशन की भी योजना बना रहा है। Windows, Web, Linux और OSX के लिए CI बिल्ड्स बनाए रखे जाते हैं।