প্রকল্প সম্পর্কে
2dog হলো এমন একটি প্রকল্প যা Godot ও .NET-এর স্বাভাবিক সম্পর্ক উল্টে দেয়: Godot .NET লোড করার বদলে একটি .NET অ্যাপ্লিকেশন Godot-কে হোস্ট করে। এটি সামান্য পরিবর্তিত libgodot-কে একটি লাইব্রেরি হিসেবে প্যাকেজ করে যা .NET অ্যাপ্লিকেশন এমবেড করতে পারে, ফলে প্রক্রিয়াটির নিয়ন্ত্রণ থাকে .NET রানটাইমের হাতে।
যেহেতু .NET অ্যাপ্লিকেশন পরিচালনা করে, তাই ডেভেলপাররা browser-wasm-এর মাধ্যমে ব্রাউজার প্রকাশ, সাধারণ dotnet টুলিং এবং ইউনিট টেস্টের মতো অটোমেশন সুবিধা পান। আগেই তৈরি নেটিভ লাইব্রেরি সরবরাহ করা হয়, তাই ব্যবহারকারীদের নিজেদের Godot কম্পাইল করতে হয় না। একটি উল্লেখযোগ্য ফলাফল হলো Godot C# প্রকল্প ওয়েবে এক্সপোর্ট করার সক্ষমতা।
শুরু করার বিকল্প:
- বিদ্যমান Godot প্রকল্পের জন্য, প্রকল্প ডিরেক্টরির ভিতরে `dnx 2dog add` চালিয়ে নেস্টেড .NET হোস্ট যোগ করুন, তারপর `dotnet run --project MyGame.2dog` চালান। আবার কমান্ড চালালে আরেকটি হোস্ট যোগ হয়।
- নতুন প্রকল্পের জন্য, `dnx 2dog new MyGame` চালান, তারপর `dotnet run --project MyGame.2dog`। `dotnet new install 2dog && dotnet new 2dog -n MyGame`-এর মাধ্যমে একটি `dotnet new` টেমপ্লেটও দেওয়া হয়।
- ভিজ্যুয়াল দৃশ্য সম্পাদনার জন্য পরিচিত Godot এডিটর ওয়ার্কফ্লো এখনও কাজ করে।
ওয়েব এক্সপোর্ট: wasm-tools ওয়ার্কলোড ব্যবহার করে তৈরি .NET অ্যাপটি browser-wasm-এ প্রকাশ করুন, তারপর dotnet-serve দিয়ে AppBundle ডিরেক্টরি সার্ভ করুন। ডকুমেন্টেশন সাইটে ডেভেলপমেন্ট লুপ, ডিপ্লয়মেন্ট অপশন এবং বর্তমান সীমাবদ্ধতা আলোচনা করা হয়েছে।
প্রকল্পের কাঠামো: 2dog এমন সাবডিরেক্টরি যোগ করে যেগুলোতে "হোস্ট" থাকে, যারা এক্সপোর্ট টেমপ্লেট বা এডিটর এক্সিকিউটেবলের বদলে libgodot ব্যবহার করে Godot প্রকল্প চালায়। একটি সাধারণ লেআউটে থাকে Godot প্রকল্পের রুট যেখানে project.godot ও গেমের C# অ্যাসেম্বলি, সঙ্গে একটি ডেস্কটপ .NET হোস্ট, একটি ব্রাউজার WebAssembly হোস্ট এবং একটি হেডলেস xUnit টেস্ট হোস্ট। প্রতিটি নেস্টেড হোস্টে একটি .gdignore থাকে যাতে Godot এটিকে উপেক্ষা করে, ফলে মূল গেম প্রকল্প অপরিবর্তিত থাকে এবং প্রতিটি হোস্টের নিজস্ব এন্ট্রি পয়েন্ট ও ডিপেন্ডেন্সি থাকে।
প্রয়োজনীয়তা ও অবস্থা:
- .NET SDK 10.0 বা তার পরের সংস্করণ, সঙ্গে wasm-tools ওয়ার্কলোড
- শুধু ভিজ্যুয়াল দৃশ্য সম্পাদনার প্রয়োজন হলে Godot 4.7.x অফিসিয়াল .NET এডিটর
- সমর্থিত বিল্ড প্ল্যাটফর্ম: win-x64, linux-x64, osx-arm64
- প্রকাশিত বিল্ডের জন্য সমর্থিত RID: win-x64, linux-x64, osx-arm64, browser-wasm
- প্যাকেজ NuGet ও GitHub releases-এ পাওয়া যায়
2dog নিজেই ডেভেলপ করা: সাবমডিউলসহ ক্লোন করুন এবং দেওয়া poe টাস্ক ব্যবহার করে নেটিভ ও .NET প্যাকেজ বিল্ড করুন। একটি শোকেস ডেমো ও টেস্ট স্যুট অন্তর্ভুক্ত আছে। প্রকল্পটি কোডবেসের বিভিন্ন অংশে LLM ব্যবহারের কথা নথিভুক্ত করে, যার মধ্যে রয়েছে রিভিউ গেটিং এবং Trusted Publishing-এর মাধ্যমে মানব-স্বাক্ষরিত রিলিজ।
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.