منصوبے کے بارے میں
Frent ایک C# لائبریری ہے جو گیمز اور سمولیشنز کو entity-component ترکیب کے گرد بنانے کے لیے استعمال ہوتی ہے۔ اس کا README اسے بنیادی طور پر EC (Entity Component) فریم ورک قرار دیتا ہے نہ کہ صرف ECS: اجزاء میں رویہ، عمر کا انتظام اور ایونٹس شامل ہو سکتے ہیں، لہٰذا کوڈ کا دوبارہ استعمال وراثت کے بجائے ترکیب سے ہوتا ہے اور boilerplate کم سے کم رہتا ہے۔ روایتی ECS انداز میں entities کو query کرنے کے لیے ایک اختیاری Systems API بھی فراہم کیا گیا ہے۔
اسٹوریج archetypes اور sparse sets کا ایک ہائبرڈ ہے، اور پروجیکٹ کے مطابق entities ان اسٹوریج حکمت عملیوں کے درمیان بغیر کسی رکاوٹ کے منتقل ہو سکتی ہیں۔ README میں 8 بائٹس کا ایک چھوٹا entity struct، فی entity 127 اجزاء تک کی حمایت، struct اور class دونوں قسم کے اجزاء، deltaTime جیسے uniform ڈیٹا کی خودکار منتقلی، صفر reflection کے ساتھ AOT مطابقت، entity relationships (links)، tags، ایونٹس، ایک command buffer، multithreading، خودکار ساختی تبدیلی کا انتظام، اور command buffer کے بغیر کسی بھی وقت entities بنانے کی صلاحیت درج ہے۔ تیز رسائی کے لیے EntityMarshal اور WorldMarshal پیش کیے گئے ہیں۔
ایک مختصر مثال میں World بنانا، Position اور Velocity اجزاء کے ساتھ entity spawn کرنا، world.Update() کال کرنا، اور اپ ڈیٹ شدہ Position واپس پڑھنا دکھایا گیا ہے۔ README نوٹ کرتا ہے کہ Frent ابھی beta میں ہے اور مکمل طور پر مستحکم نہیں۔ یہ دستاویزات، ایک interactive demo، اور MonoGame، Unity اور Godot کے samples کے لنکس دیتا ہے۔ ایک benchmark لنک بھی فراہم کیا گیا ہے، اس دعوے کے ساتھ کہ Frent زیادہ تر C# ECS implementations سے تیز ہے؛ یہ دعویٰ پروجیکٹ کا اپنا ہے اور یہاں آزادانہ طور پر تصدیق شدہ نہیں۔ شراکت کی رہنمائی صارفین سے کہتی ہے کہ bugs رپورٹ کریں، APIs تجویز کریں اور بڑی features شروع کرنے سے پہلے issue کھولیں۔
Comments
0 people shared their preference · Deer Point appears after 10 participants
Sign in to join the discussion.