باختصار
- لاستخدام نظام Data Layers، يجب تفعيل World Partition في الخريطة.
- يوجد Data Layer Asset على مستوى المشروع، بينما يكون Data Layer Instance خاصًا بعالم محدد.
- يمكنك إسناد الممثلين إلى الطبقات عبر Data Layers Outliner أو قسم Data Layers في لوحة Details.
- قد يؤثر تحميل عدد كبير من المحتويات دفعة واحدة والإفراط في استخدام Runtime Data Layer Instances سلبًا في الأداء.
ما الذي ستتعلمه في هذا الدليل؟
قد يصبح من الصعب بمرور الوقت إدارة البنية والمناظر الطبيعية وعناصر العرض المختلفة ضمن مشهد واحد في مشروع تصوير معماري واسع. يقسّم World Partition في Unreal Engine مناطق المستويات الكبيرة إلى خلايا تُدار أثناء التشغيل. وعندما يقترب اللاعب أو مصدر بث آخر، تُحمّل الخلايا المعنية؛ ويمكن للنظام إزالتها عند انتفاء الحاجة إليها. أما Data Layers فتُستخدم لتجميع الممثلين في المحرر وأثناء التشغيل.
يتناول هذا الدليل خطوات إنشاء Data Layer Asset وInstance في خريطة مفعّل فيها World Partition، وإسناد ممثلي المشهد إلى الطبقات والتحكم في سلوك الرؤية والتحميل. لا تحسّن Data Layers جودة التصيير تلقائيًا؛ بل تساعد على تنظيم محتوى المشهد وإدارة المحتوى المطلوب.
المتطلبات والاستعداد
للبدء، تحتاج إلى خريطة Unreal Engine مفعّل فيها World Partition، وإلى Data Layers Outliner. عند إنشاء خريطة جديدة، يمكن اختيار نوع Open World من قائمة File > New Level. ووفقًا لدليل Epic Games، يكون World Partition وData Layers مفعّلين افتراضيًا لهذا النوع من الخرائط. ويمكن أيضًا تحويل مستوى موجود عبر قائمة Tools > Convert Level أو باستخدام World Partition Convert Commandlet.
يشترط دليل Data Layers تفعيل World Partition في الخريطة لكي يعمل النظام. كما توصي وثائق Level Streaming من Epic Games باستخدام World Partition بدلًا من نظام World Composition القديم في المشاريع التي تستخدم Unreal Engine 5.0 أو إصدارًا أحدث. ولا تذكر المصادر متطلبات حساب منفصلة لاستخدام Data Layers، أو حدًا أدنى لمواصفات الأجهزة، أو رقم إصدار حاليًا.
من الأفضل توخي الحذر وتجربة التحويل أو إعدادات التشغيل في مشهد صغير قبل تطبيقها على خريطة إنتاجية. وعند تحويل مستوى قائم على وجه الخصوص، تحقّق مسبقًا من ملاءمة الطريقة والنتيجة المتوقعة للمشروع.
سير عمل Data Layers: خطوة بخطوة
جهّز خريطة World Partition. إذا كنت تبدأ مشروعًا جديدًا، فاختر Open World من قائمة File > New Level. أما إذا كنت تعمل على مستوى موجود، فيمكنك بدء التحويل من قائمة Tools > Convert Level أو استخدام commandlet ذي الصلة. تتضمن طريقة سطر الأوامر اسم المشروع والخريطة المطلوب تحويلها ووسائط إضافية. كما يشرح دليل Epic Games وسائط اختيارية، مثل إنشاء تقرير تحويل وسجل تفصيلي.
افتح Data Layers Outliner. انتقل إلى Window > World Partition > Data Layer Outliner. تتيح لك هذه اللوحة عرض Data Layer Instances الحالية وإنشاء Instances جديدة، فضلًا عن متابعة نوع الطبقات ورؤيتها وحالة تحميلها. وانتبه أيضًا إلى تحديد العالم الصحيح؛ إذ يمكن لخيارات Outliner تحديد Instances العالم التي تظهر.
أنشئ Data Layer Asset. انتقل في Content Browser إلى المجلد الذي تريد حفظ أصل الطبقة فيه. انقر بزر الفأرة الأيمن على مساحة فارغة، ثم اختر Miscellaneous > Data Layer. يوجد Data Layer Asset على مستوى المشروع ولا يقتصر على عالم واحد. ويمكن تحديد نوع الأصل على أنه Editor أو Runtime: تُستخدم Editor Data Layers لإدارة التحرير والرؤية داخل المحرر، بينما تُخصص Runtime Data Layers للمجموعات التي يمكن التحكم بها أثناء التشغيل.
اربط Asset بـ Instance. انقر بزر الفأرة الأيمن في Data Layers Outliner، ثم استخدم الأمر Create New Data Layer لإنشاء Instance فارغ. بعد ذلك، اختر Asset الذي أعددته من القائمة المنسدلة في حقل Data Layer Asset ضمن Instance. ويمكنك بدلًا من ذلك سحب Asset إلى Outliner. وعند إسقاطه فوق Instance موجود، يمكن إنشاء Instance فرعي مرتبط بالـ Asset المحدد. يؤدي Asset وInstance وظيفتين مختلفتين: يخزّن Asset التعريف المشترك، بينما يمثّل Instance استخدام هذا التعريف في عالم محدد.
أسند ممثلي المشهد إلى الطبقة. حدّد الممثلين المعنيين في Viewport. انقر بزر الفأرة الأيمن على Instance المستهدف في Outliner، ثم استخدم الأمر Add Selected Actors to Selected Data Layers. ويمكنك أيضًا إجراء الإسناد من قسم Data Layers في لوحة Details للممثلين المحددين. في هذه الطريقة الثانية، يجب أن يكون هناك Instance في العالم تابع للـ Asset المحدد. فمثلًا، يمكنك تقسيم عناصر المناظر الطبيعية أو عناصر البيئة البديلة في مشهد عرض إلى مجموعات منفصلة؛ ويعتمد تحديد العناصر التي ستُدار معًا على احتياجات المشروع.
تحقّق من رؤية المحرر والإسنادات. غيّر رؤية الطبقات من Outliner لمعاينة تأثير المجموعات في المشهد. ويمكن أيضًا تحديد عدة Instances بوصفها السياق النشط ضمن Actor Editor Context. عند تفعيل هذا السياق، تُسنَد الممثلون المضافون تلقائيًا إلى Instances المحددة. وقد يقلل ذلك الحاجة إلى تجميع المحتويات من النوع نفسه يدويًا مرارًا.
أعدّ حالات التشغيل عند الحاجة. يمكن التحكم في Runtime Data Layers باستخدام Blueprint أو C++. في مثال Epic Games، تُبقي حالة Loaded المحتوى محمّلًا لكنها لا تجعله مرئيًا؛ أما حالة Activated فتحمّل المحتوى وتجعله مرئيًا في الوقت نفسه. إذا كنت بحاجة إلى التبديل بين مجموعات بيئة أو مشهد بديلة أثناء التشغيل، فيمكن اختبار هذه السلوكيات. أما إذا كان المطلوب هو التحرير داخل المحرر فقط، فلا يلزم استخدام طبقة Runtime.
الأخطاء الشائعة والأداء
من المشكلات الشائعة الخلط بين Data Layer Asset وInstance. يحتفظ Asset بالتعريف على مستوى المشروع، بينما يُستخدم Instance في عالم محدد. إذا لم يظهر المحتوى المتوقع في Data Layers Outliner، فتحقّق مما إذا كان العالم الصحيح محددًا، وما إذا كانت خيارات Outliner تخفي Editor Data Layers أو Runtime Data Layers.
التحميل والرؤية مفهومان منفصلان أيضًا. فتحميل محتوى طبقة إلى الذاكرة لا يعني أنه سيصبح مرئيًا تلقائيًا. وعند تحديد حالة Runtime، راعِ الفرق بين Loaded وActivated.
تشير Epic Games إلى أن تحميل قدر كبير جدًا من المحتوى عبر Data Layers في الوقت نفسه قد يؤدي إلى مشكلات في الأداء. كما أن إسناد الممثلين الشائعين إلى عدد كبير من Runtime Data Layer Instances قد يؤثر سلبًا في أداء البث في World Partition. وتتضمن وثائق World Partition أيضًا تحذيرًا من أن استخدام عدة شبكات تشغيل قد يخفض الأداء. لذلك، حدّد الفروق التي تحتاج فعلًا إلى إدارتها بدلًا من إنشاء طبقة منفصلة لكل مجموعة عناصر، واختبر النتيجة ضمن المشروع.
الخطوات التالية في سير عمل التصوير المعماري
ابدأ باختبار منطقة صغيرة أو عدد محدود من الممثلين. مثلًا، اختبر إظهار مجموعة تنسيق الموقع وإخفاءها بصورة مستقلة، مع إبقاء المبنى الرئيسي ثابتًا. ثم تحقّق أثناء العمل الجماعي من إسناد الممثلين إلى Instances الصحيحة، ومن أن تغييرات الطبقات تؤثر في المحتويات المتوقعة.
يركّز World Partition على إدارة التحميل المكاني للمشهد، بينما تُستخدم Data Layers لتنظيم المحتوى في مجموعات منطقية؛ لذا لا ينبغي اعتبار النظامين بديلين أحدهما للآخر. ومع توسّع المشروع، راجع حالات التحميل وعدد الطبقات. ولا تقدم الوثائق المصدرية متطلبات محددة للأجهزة، أو تكلفة ترخيص، أو قائمة توافق صالحة لكل مشروع. تحقّق من سلوك التحويل والتشغيل في اختبار صغير قبل نقله إلى مشهد الإنتاج الرئيسي.
المصادر والترخيص
أُعيدت كتابة هذا الدليل وتكييفه باللغة التركية بالاستناد إلى الأدلة الرسمية من Epic Games حول World Partition وWorld Partition – Data Layers وLevel Streaming. وقد ذُكر أن المصادر مرخّصة ترخيصًا حرًا.
المصادر
3 مصادرلا نعيد نشر نصوص المصادر؛ الاقتباسات القصيرة مشار إليها، وما تبقى ملخص وتعليق من إعدادنا.
بالنسبة إلى مكاتب الهندسة المعمارية وفرق التصوير المعماري في تركيا، تتمثل الفائدة الأساسية من Data Layers في جعل مجموعات المحتوى في المشاهد المكتظة أسهل إدارة. ويمكن لمن يرغبون في فصل عناصر البيئة البديلة أو العمل على أجزاء مختلفة من المشهد ضمن الفريق الاستفادة من هذا التنظيم. كما يوفر World Partition بنية تدعم إدارة تحميل المناطق الواسعة.
لكن الإفراط في زيادة عدد الطبقات قد يرفع أعباء الصيانة؛ وتحذّر وثائق Epic Games من التحميل المفرط واستخدام Runtime Instances بإفراط. ولا تتضمن المصادر تفاصيل عن تكلفة الأجهزة أو شروط الترخيص أو التوافق مع إصدارات محددة. ينبغي للمكاتب والطلاب التحقق من سلوك التحميل والرؤية في اختبار صغير قبل الانتقال إلى مشهد إنتاجي.
الأسئلة الشائعة
كيف تنشئ Data Layers في Unreal Engine؟
أنشئ Data Layer Asset في Content Browser عبر **Miscellaneous > Data Layer**. ثم أنشئ Instance في Data Layers Outliner وأسند إليه Asset.
ما الفرق بين Data Layer Asset وData Layer Instance؟
يوجد Data Layer Asset على مستوى المشروع ولا يقتصر على عالم معين. أما Data Layer Instance فيستخدم Asset في عالم محدد.
هل World Partition مطلوب لاستخدام Data Layers؟
وفقًا لدليل Data Layers من Epic Games، يجب تفعيل World Partition في الخريطة. ويمكن تحويل المستويات الحالية عبر قائمة **Tools > Convert Level** أو باستخدام commandlet ذي الصلة.



