اوپن سورس ملٹی پلیئر گیم انجن ایمبیئنٹ کی پہلی ریلیز

ایک سال کی ترقی کے بعد، نئے اوپن سورس گیم انجن ایمبیئنٹ کی پہلی ریلیز پیش کی گئی ہے۔ انجن ملٹی پلیئر گیمز اور 3D ایپلی کیشنز بنانے کے لیے رن ٹائم فراہم کرتا ہے جو WebAssembly کی نمائندگی کے لیے مرتب کرتے ہیں اور رینڈرنگ کے لیے WebGPU API استعمال کرتے ہیں۔ کوڈ Rust میں لکھا گیا ہے اور MIT لائسنس کے تحت تقسیم کیا گیا ہے۔

ایمبیئنٹ کی ترقی کا ایک اہم مقصد ایسے ٹولز فراہم کرنا ہے جو ملٹی پلیئر گیمز کی ترقی کو آسان بناتے ہیں اور ان کی تخلیق کو سنگل پلیئر پروجیکٹس سے زیادہ مشکل نہیں بناتے ہیں۔ انجن کا مقصد ابتدائی طور پر ایک عالمگیر رن ٹائم بنانا ہے جو کسی بھی پروگرامنگ زبان میں گیمز اور ایپلی کیشنز کی ترقی میں معاونت کرتا ہے جس کے لیے WebAssembly انٹرمیڈیٹ کوڈ میں تالیف ممکن ہے۔ تاہم، پہلی ریلیز ابھی کے لیے صرف زنگ کی ترقی کی حمایت کرتی ہے۔

نئے انجن کی اہم خصوصیات:

  • شفاف نیٹ ورکنگ سپورٹ۔ انجن کلائنٹ اور سرور کے افعال کو یکجا کرتا ہے، کلائنٹ اور سرور لاجک بنانے کے لیے تمام ضروری اجزاء فراہم کرتا ہے، اور کلائنٹس کے درمیان سرور کی حالت کو خود بخود ہم آہنگ کرتا ہے۔ کلائنٹ اور سرور کے اطراف میں ایک عام ڈیٹا ماڈل استعمال کیا جاتا ہے، جو بیک اینڈ اور فرنٹ اینڈ کے درمیان کوڈ کی منتقلی کو آسان بناتا ہے۔
  • ہر ماڈیول کو اس کے اپنے الگ تھلگ ماحول میں چلانا، آپ کو ناقابل اعتماد کوڈ کے اثر کو محدود کرنے کی اجازت دیتا ہے۔ کسی ماڈیول کو کریش کرنے سے پوری ایپلیکیشن کریش نہیں ہوتی۔
  • ڈیٹا پر مبنی فن تعمیر۔ اجزاء کے نظام پر مبنی ڈیٹا ماڈل فراہم کرنا جس میں ہر WASM ماڈیول کے ذریعے ہیرا پھیری کی جا سکتی ہے۔ ای سی ایس (اینٹیٹی کمپوننٹ سسٹم) ڈیزائن پیٹرن کا استعمال۔ سرور پر ایک مرکزی ڈیٹا بیس میں تمام اجزاء کے ڈیٹا کو ذخیرہ کرنا، جس کی حالت خود بخود کلائنٹ کو نقل کر دی جاتی ہے، جو اس کی طرف سے مقامی حالت کو مدنظر رکھتے ہوئے ڈیٹا کو بڑھا سکتا ہے۔
  • کسی بھی پروگرامنگ لینگویج میں ایمبیئنٹ ماڈیولز بنانے کی اہلیت جو WebAssembly کو مرتب کرتی ہے (ابھی کے لیے صرف Rust تعاون یافتہ ہے)۔
  • یونیورسل ایگزیکیوٹیبل فائلوں کو آؤٹ پٹ کے طور پر بنانا جو ونڈوز، میک او ایس اور لینکس پر چل سکتی ہیں، اور کلائنٹ اور سرور دونوں کے طور پر کام کرتی ہیں۔
  • آپ کے اپنے اجزاء اور "تصورات" (اجزاء کے مجموعے) کی وضاحت کرنے کی صلاحیت۔ پروجیکٹس جو ایک جیسے اجزاء اور تصورات کو استعمال کرتے ہیں وہ ڈیٹا کی پورٹیبلٹی اور شیئرنگ کو قابل بناتے ہیں، چاہے وہ ڈیٹا مخصوص پروجیکٹس میں استعمال کے لیے خاص طور پر ڈیزائن نہ کیا گیا ہو۔
  • .glb اور .fbx سمیت مختلف فارمیٹس میں وسائل کو مرتب کرنے کے لیے معاونت۔ نیٹ ورک پر وسائل کی ڈاؤن لوڈنگ اسٹریمنگ کا امکان - سرور سے منسلک ہونے پر کلائنٹ تمام ضروری وسائل حاصل کرسکتا ہے (آپ تمام وسائل کے لوڈ ہونے کا انتظار کیے بغیر کھیلنا شروع کر سکتے ہیں)۔ FBX اور glTF ماڈل فارمیٹس، مختلف آڈیو اور امیج فارمیٹس کو سپورٹ کرتا ہے۔
  • ایک جدید رینڈرنگ سسٹم جو GPU کو رینڈرنگ کو تیز کرنے کے لیے استعمال کرتا ہے اور GPU سائیڈ کلپنگ اور ڈیٹیل لیول کی تبدیلیوں کو سپورٹ کرتا ہے۔ فزیکلی بیسڈ رینڈرنگ (PBR) کو بطور ڈیفالٹ استعمال کرتا ہے، اینی میشن اور کاسکیڈنگ شیڈو میپس کو سپورٹ کرتا ہے۔
  • PhysX انجن کی بنیاد پر جسمانی عمل کے تخروپن کے لیے معاونت۔
  • React کی طرح یوزر انٹرفیس بنانے کا نظام۔
  • ایک متحد ان پٹ سسٹم جو موجودہ پلیٹ فارم سے آزاد ہے۔
  • پلگ ان فلٹرز کے ساتھ مقامی ساؤنڈ سسٹم۔

ترقی ابھی بھی الفا ورژن کے مرحلے پر ہے۔ ان فعالیتوں میں جو ابھی تک لاگو نہیں ہوئی ہے، ہم ویب پر لانچ کرنے کی صلاحیت، ایک کلائنٹ API، ملٹی تھریڈنگ کے انتظام کے لیے ایک API، یوزر انٹرفیس بنانے کے لیے ایک لائبریری، آپ کے اپنے شیڈرز استعمال کرنے کے لیے ایک API، ساؤنڈ سپورٹ، کو نوٹ کر سکتے ہیں۔ ای سی ایس (اینٹیٹی کمپوننٹ سسٹم) کے اجزاء کو لوڈ اور محفوظ کرنا، فلائی پر وسائل کو دوبارہ لوڈ کرنا، خودکار سرور اسکیلنگ، گیم میپس اور گیم سینز کی باہمی تخلیق کے لیے ایڈیٹر۔



ماخذ: opennet.ru

نیا تبصرہ شامل کریں