इस प्रोजेक्ट के बारे में
2dog एक ऐसा प्रोजेक्ट है जो Godot और .NET के सामान्य संबंध को उलट देता है: Godot को लोड करने के बजाय, एक .NET एप्लिकेशन Godot को होस्ट करता है। यह एक libgodot को लाइब्रेरी के रूप में पैकेज करता है जिसे .NET एप्लिकेशन एम्बेड कर सकते हैं, ताकि प्रक्रिया का नियंत्रण .NET रनटाइम के पास रहे।
चूंकि .NET एप्लिकेशन को चलाता है, डेवलपर्स को browser-wasm के जरिए पब्लिशिंग, सामान्य dotnet टूलिंग, और यूनिट जैसी ऑटोमेशन सुविधाएं मिलती हैं। पहले से बनी नेटिव लाइब्रेरीज़ शिप की जाती हैं, इसलिए उपयोगकर्ताओं को Godot खुद कंपाइल नहीं करना पड़ता। एक उल्लेखनीय परिणाम Godot C# प्रोजेक्ट्स को वेब पर एक्सपोर्ट करने की क्षमता है।
शुरुआत करने के विकल्प:
- किसी मौजूदा Godot प्रोजेक्ट के लिए, प्रोजेक्ट डायरेक्टरी में `dnx 2dog add` चलाएं ताकि .NET होस्ट जोड़े जा सकें, फिर `dotnet run --project MyGame.2dog` चलाएं। कमांड दोबारा चलाने पर एक और होस्ट जुड़ता है।
- नए प्रोजेक्ट के लिए, `dnx 2dog add MyGame` चलाएं, फिर `dotnet run --project MyGame.2dog` चलाएं। `dotnet new install 2dog && dotnet new 2dog -n MyGame` के जरिए एक `dotnet new` टेम्पलेट भी उपलब्ध है।
- विजुअल सीन एडिटिंग के लिए परिचित Godot एडिटर वर्कफ़्लो अभी भी काम करता है।
वेब एक्सपोर्ट: जनरेट किए गए .NET एप्लिकेशन को wasm-tools वर्कलोड के साथ browser-wasm पर पब्लिश करें, फिर AppBundle डायरेक्टरी को dotnet-serve से सर्व करें। डॉक्युमेंटेशन साइट डेवलपमेंट वर्कफ़्लो, डिप्लॉयमेंट विकल्पों और मौजूदा सीमाओं को कवर करती है।
प्रोजेक्ट संरचना: 2dog सबडायरेक्टरीज़ जोड़ता है जिनमें "host" होते हैं जो एडिटर एक्जीक्यूटेबल के बजाय libgodot का उपयोग करके Godot प्रोजेक्ट चलाते हैं। एक सामान्य लेआउट में Godot प्रोजेक्ट रूट होता है जिसमें project.godot और गेम C# असेंबली होती है, साथ ही एक डेस्कटॉप होस्ट, एक ब्राउज़र WebAssembly होस्ट, और एक हेडलेस xUnit होस्ट होता है। प्रत्येक नेस्टेड होस्ट में एक .gdignore होता है ताकि Godot उसे अनदेखा कर दे, जिससे मूल गेम प्रोजेक्ट अपरिवर्तित रहता है जबकि प्रत्येक का अपना एंट्री पॉइंट और डिपेंडेंसीज़ होती हैं।
आवश्यकताएं और स्थिति:
- .NET SDK 10 या बाद का संस्करण, wasm-tools वर्कलोड के साथ
- Godot 4.7 आधिकारिक .NET एडिटर केवल तब जब विजुअल सीन एडिटिंग चाहिए
- समर्थित बिल्ड प्लेटफ़ॉर्म: win-x64, linux-x64, osx-arm64
- पब्लिश किए गए बिल्ड के लिए समर्थित प्लेटफ़ॉर्म: win-x64, linux-x64, osx-arm64, browser-wasm
- पैकेज NuGet और GitHub रिलीज़ पर उपलब्ध हैं
2dog का विकास: सबमॉड्यूल के साथ क्लोन करें और दिए गए poe टास्क का उपयोग करके नेटिव और .NET पैकेज बनाएं। एक शोकेस डेमो और टेस्ट सूट शामिल हैं। यह दस्तावेज़ित करता है कि कोडबेस के विभिन्न हिस्सों में LLM का उपयोग कैसे किया जाता है, जिसमें गेटिंग और Trusted Publishing के जरिए हस्ताक्षरित रिलीज़ शामिल हैं।
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.