باختصار
- يُعدّ المشروع النموذجي باستخدام قالب Side Scroller وBlueprint وStarter Content.
- يُحوّل Actor يحتوي على مكعّب ومكوّن Box Collision إلى Blueprint Class.
- تُضبط فعالية حدث On Component Begin Overlap بحيث لا يعمل إلا عند اكتشاف Pawn اللاعب.
- تُختبر آلية العمل النموذجية بإدخال القيمة 3000 في حقل Z ضمن وظيفة Launch Character.
ما الذي ستتعلّمه في هذا الدليل؟
في Unreal Engine، يتيح Blueprint، وهو نظام برمجة مرئية، إنشاء الوظائف والسلوكيات من خلال ربط العقد بعضها ببعض. في هذا الدليل، ستحوّل Actor إلى Blueprint Class قابلة لإعادة الاستخدام، وتضيف إليها منصة مرئية ومنطقة تصادم، ثم تنشئ تدفقًا بسيطًا يحرّك الشخصية عند وقوع حدث.
ينشئ المثال منصة إطلاق. أما الفائدة الأساسية في مجال التصوّر المعماري، فليست المنصة المحددة بحد ذاتها؛ بل طريقة جمع المكوّنات، وربط حدث بـActor، ووضع عدة نسخ من الفئة نفسها في المشهد. كما يعرّفك هذا الأساس إلى طريقة التفكير في إنشاء عناصر تفاعلية مثل الأبواب أو المفاتيح في Unreal Engine. وتدعم قابلية إعادة الاستخدام إمكانية تطبيق التعديلات التي تجريها على Blueprint Class على النسخ المنشأة من تلك الفئة.
المتطلبات
تحتاج إلى إعداد يتيح إنشاء مشروع جديد في Unreal Engine واستخدام محرر Blueprint. يستخدم دليل البدء السريع من Epic قالب Side Scroller ضمن فئة Games، ونوع المشروع Blueprint، وخيار With Starter Content. وبالنسبة إلى إعدادات قابلية التوسع والجودة، يوصي الدليل باختيار ما يناسب جهازك. لا تذكر المصادر متطلبات محددة للأجهزة أو اشتراطًا لإنشاء حساب.
تتضمن المصادر أيضًا الفهرس العام لوثائق Unreal Engine 5.8، لكن دليل البدء السريع الخاص بمنصة الإطلاق لا يذكر رقم إصدار في صفحته. لذلك تتبع الخطوات أدناه أسماء الواجهة الواردة في الدليل؛ وقد تختلف بعض القوائم أو التسميات بين الإصدارات. ولا تتضمن المصادر معلومات عن رسوم ترخيص محددة أو تكاليف الأجهزة.
إنشاء Blueprint خطوة بخطوة
1. ابدأ المشروع
من قسم New Project في Unreal Project Browser، اختر فئة Games. استخدم قالب Side Scroller، ونوع المشروع Blueprint، وخيار المحتوى With Starter Content. حدّد خيارات قابلية التوسع والجودة وفقًا لنظامك، ثم أنشئ المشروع. عند فتحه، سيظهر المستوى الذي ستضيف إليه Actor النموذجي.
2. أنشئ Actor المنصة باستخدام المكوّنات
في Level Editor، انتقل من زر Modes إلى خيار Select لفتح لوحة Place Actors. اسحب Empty Actor من قسم Basic إلى المستوى. بعد تحديد Actor، غيّر اسمه إلى LaunchPad من أعلى لوحة Details.
من اللوحة نفسها، اضغط Add Component وأضف Cube من قسم Common. اسحب المكعّب إلى DefaultSceneRoot ليصبح مكوّن الجذر الجديد. بعد تحديد المكعّب، اضبط قيم Scale على X: 1.0 وY: 1.0 وZ: 0.1. ينشئ ذلك الجزء المرئي من المنصة النموذجية.
بعد ذلك، أضف مكوّن Box Collision من قسم Collision عبر Add Component. أدخل قيم المقياس التالية لـBox Collision: X: 1.25 وY: 1.25 وZ: 9.75؛ وقيم الموقع: X: 0 وY: 0 وZ: 200. تنقل هذه القيم النموذجية صندوق التصادم إلى أعلى المنصة وفوقها لتحديد المنطقة التي ستُكتشف فيها الشخصية.
3. حوّل Actor إلى Blueprint Class
استخدم زر Blueprint/Add Script في لوحة Details. في نافذة Create Blueprint from Selection التي تظهر، عدّل المسار الافتراضي إلى Game/SideScrollerBP/Blueprints. يمكنك الإبقاء على الاسم الافتراضي LaunchPad_Blueprint أو تغييره، ثم اضغط زر الإنشاء.
سيظهر Blueprint الآن في Content Browser. يمكنك سحب نسخ من هذه الفئة إلى المستوى. ومن النقاط المهمة التي تميّزه عن نسخة Actor منفردة تُستخدم مرة واحدة، أن التعديلات التي تجريها على الفئة يمكن استخدامها أيضًا في النسخ المنشأة من هذا Blueprint.
4. أضف حدث التصادم
انقر نقرًا مزدوجًا على Blueprint Class في Content Browser لفتح Blueprint Editor. اختر المكوّن Box من قائمة Components؛ ويجرّب دليل البدء السريع قيمة الموقع X: 0 وY: 0 وZ: 350 لهذا المكوّن. بعد ذلك، انتقل إلى علامة التبويب Event Graph.
انقر بزر الفأرة الأيمن في مساحة فارغة من الرسم البياني. وسّع قائمة Add Event for Box وأضف حدث On Component Begin Overlap من قسم Collision. يُفعّل هذا الحدث عند اصطدام شيء بمكوّن Box. يمكنك تحريك الرسم البياني بالسحب مع الضغط على زر الفأرة الأيمن، والتكبير أو التصغير بعجلة الفأرة، واستخدام المفتاح F لتوسيط العقدة المحددة، والمفتاح A لعرض الرسم البياني كاملًا.
5. قصر الحدث على Pawn اللاعب
قد يُفعّل حدث التصادم لأي Actor يدخل الصندوق. في المثال، المطلوب أن يحدث السلوك فقط مع Pawn الذي يتحكم فيه اللاعب. اسحب من مخرج Other Actor في عقدة OnComponentBeginOverlap وأضف عقدة Equal (Object). انقر بزر الفأرة الأيمن في مساحة فارغة وابحث عن عقدة Get Player Pawn؛ ثم صِل مخرج Return Value الخاص بها بالمدخل الآخر لعقدة المقارنة.
صِل عقدة Branch بمخرج التنفيذ الخاص بعقدة الحدث. وعندما تصل نتيجة المقارنة المنطقية إلى مدخل Condition في Branch، يتفرع التدفق بحسب إجابة السؤال: هل Actor الذي اصطدم هو Pawn اللاعب؟ وبذلك لن يعمل السلوك اللاحق تلقائيًا عند كل اصطدام.
6. حرّك الشخصية واختبر النتيجة
أنشئ اتصالًا من مخرج Return Value في عقدة Get Player Pawn إلى عقدة Cast to Character. هذه الخطوة مهمة؛ إذ لا تعمل وظيفة Launch Character إلا مع النوع Character. صِل مخرج النجاح في عملية التحويل بمدخل Launch Character، وصِل مخرج True في Branch بمدخل التنفيذ في عقدة Cast. وبهذا لا يُنفّذ هذا الجزء إلا إذا اجتاز Pawn اللاعب المقارنة.
في المثال، تُدخل القيمة 3000 في حقل Z لعقدة Launch Character. تضيف الوظيفة السرعة المحددة إلى سرعة الشخصية الحالية. نفّذ Compile لـBlueprint من شريط الأدوات، واحفظه باستخدام Save، ثم أغلق المحرر واسحب عدة نسخ من Content Browser إلى المستوى. اضغط Play واختبر النتيجة بملامسة المنصات.
ما فائدته في سير عمل التصوّر المعماري؟
يوضح هذا التمرين أن عناصر المشهد في العروض المعمارية التفاعلية ليست مجرد أجسام نمذجية، بل يمكنها اكتساب سلوك عبر منطق المكوّنات والأحداث. وتتمثل فائدته للمكاتب المعمارية والطلاب في تجربة أساسيات التدفق القائم على العقد من دون كتابة كود، ووضع نسخ قابلة لإعادة الاستخدام في المشهد انطلاقًا من Blueprint Class. وتشير وثائق Epic إلى إمكانية استخدام Blueprint Class للأصول التفاعلية، وإلى إمكانية توظيف Construction Script للعناصر القابلة للتخصيص وسير عمل فناني البيئات.
هذا المثال الخاص بمنصة الإطلاق ليس قالبًا جاهزًا لعرض معماري. أما الأفكار القابلة للتطبيق منه، فهي جمع المكوّنات ضمن فئة، والتحقق من Actor الذي ينطبق عليه الحدث، وتنظيم السلوك القابل للتكرار في Blueprint واحد. تحقّق من توافق أسماء الواجهة مع إصدار Unreal Engine المستخدم في المشروع؛ ولأن المصادر لا تذكر شروط الترخيص أو الرسوم أو متطلبات الأجهزة الخاصة، ينبغي التحقق من هذه الجوانب بشكل منفصل قبل الإنتاج الفعلي.
أخطاء شائعة
إغفال أن حدث التصادم قد يُفعّل مع أي Actor: قارن Pawn اللاعب واربط النتيجة بشرط Branch.
تخطي التحقق من نوع Character: يتضمن التدفق النموذجي Cast to Character قبل Launch Character؛ تذكّر أن الوظيفة لا تعمل إلا على Character.
الاختبار من دون حفظ Blueprint: أكمل خطوتي Compile وSave قبل التجربة.
الخلط بين Blueprint Class ونسخة منفردة أُضيفت إلى المشهد: أضف الفئة من Content Browser لإنشاء عدة نسخ، ثم تحقّق من كيفية انعكاس تعديلات الفئة عليها.
الخطوات التالية
بعد تشغيل التدفق الأساسي، يمكنك الانتقال إلى التمارين التي يقترحها دليل البدء السريع من Epic: إضافة Audio Component لتشغيل صوت عند إطلاق الشخصية، وإنشاء متغير يخزّن سرعة الإطلاق ويمكن ضبطه لكل نسخة، واستخدام Particle System من Starter Content، أو إضافة Arrow Component لتحديد الاتجاه. كما يقترح الدليل استخدام Timelines لتحريك Box Mesh. هذه الخطوات اختيارية؛ وبعد استيعاب تدفق الأحداث الأساسي، جرّب كلًا منها على حدة لتتعرف إلى تنظيم المكوّنات والسلوكيات في Blueprint.
المصادر والترخيص
أُعد هذا الدليل بتكييف محتوى وثائق Epic Games التالية إلى التركية: مقدمة إلى Blueprint Visual Scripting ونظرة عامة على Blueprints ودليل البدء السريع لـBlueprints. وقد وُصف الترخيص في المصادر المقدمة بأنه مجاني؛ ولم تُنقل الجمل النموذجية حرفيًا، بل صيغت الخطوات بأسلوب أصلي.
المصادر
3 مصادرلا نعيد نشر نصوص المصادر؛ الاقتباسات القصيرة مشار إليها، وما تبقى ملخص وتعليق من إعدادنا.
تكمن قيمة هذا التمرين للمكاتب المعمارية والطلاب في تركيا في تعليمه منطق Actor القابل لإعادة الاستخدام داخل مشهد التصوّر، من خلال مثال صغير يمكن قياسه. ويوفّر إنشاء عدة عناصر من Blueprint Class واحدة بداية جيدة لتنظيم السلوكيات داخل المشهد، لكن سلوك منصة الإطلاق وحده لا يلبي احتياجات العرض المعماري.
قبل الإنتاج، ينبغي تقييم الواجهة في إصدار Unreal Engine المستخدم، وشروط ترخيص المشروع، وأداء العمل في الوقت الفعلي على الأجهزة المتاحة. لا تذكر المصادر الأسعار أو رسوم الترخيص أو متطلبات أجهزة خاصة. لذلك، يُفضّل أن تختبر المكاتب المثال أولًا ضمن مشروع تجريبي صغير، ثم تكيّفه مع سيناريوهات العرض الخاصة بها.
الأسئلة الشائعة
ما هو Unreal Engine Blueprint؟
Blueprint نظام برمجة مرئية يتيح إنشاء الوظائف والسلوكيات باستخدام واجهة قائمة على العقد، من دون كتابة كود. وتحدد الروابط بين العقد تدفق الأحداث والوظائف.
هل يمكن إنشاء عدة عناصر للمشهد باستخدام Blueprint Class؟
نعم. تحدد Blueprint Class نوعًا جديدًا من Actor يمكن وضع نسخه في الخريطة. ووفقًا لوثائق Epic، تُطبّق التعديلات التي تُجرى على الفئة على نسخها.
هل تعمل وظيفة Launch Character مع كل Actor؟
لا. يذكر دليل البدء السريع أن وظيفة Launch Character لا تعمل إلا مع Character. لذلك يستخدم المثال Cast to Character قبل الوظيفة.



