‫أهلا ومرحبا.
‫في هذه المحاضرة ، سننشئ مكونًا جديدًا في C ++ ، صندوق المشغل هذا ، والذي سيبلغنا
‫عندما نخطو داخل الكوة أو نضع أي كائن في الكوة.
‫يمكنك أن ترى أننا نتلقى رسالة مخطط صغيرة في أعلى الزاوية اليسرى.
‫وللقيام بذلك ، سيتعين علينا أن نفهم كيف تتصرف التداخلات والمنع واستجابات
‫الاصطدام المختلفة في Unreal.
‫دعنا نتعمق ونكتشف.
‫الآن أصبحنا على دراية بكيفية عمل قنوات التتبع.
‫نعلم أنه يمكنك تتبع الردود على الأشياء المختلفة في مشهدنا ، مثل هذه الشجيرة.
‫هنا ، يمكنك أن ترى أن لديها استجابة تجاهل لآثار الأسلحة ، لكنها تمنع آثار الرؤية.
‫ثم هناك مثال على الزجاج المضاد للرصاص.
‫إنه يحجب الأسلحة ولكنه يسمح بالرؤية من خلال جدار من الطوب الذي يحجب كليهما.
‫لذا يمكنك أن ترى كيف يعمل هذا النظام مع قنوات التتبع.
‫الآن ، ماذا يحدث إذا كنا نحاول تحديد أي الأشياء يمكن أن تتداخل مع بعضها البعض ، وأي منها يمر
‫، وأي منها يحجب بعضها البعض؟
‫يمكن أن يصبح الأمر أكثر تعقيدًا بعض الشيء.
‫لقد رأينا هذا بالفعل عندما حاولنا جعل الجرغول يتداخل مع بيدقنا.
‫الآن هذه هي الطريقة التي يعمل بها.
‫بشكل أساسي ، نستخدم أنواع الكائنات هذه.
‫يمكن أن ينتمي كل كائن إلى نوع كائن معين.
‫وهذا يختلف عن نوع نظام الكتابة في C ++.
‫هذه هي أنواع الاصطدام.
‫لذلك قد يكون لديك الكائن A والعنصر B وفي إعداداتهما ، إذا ذهبنا وألقينا نظرة على الإعدادات الموجودة على
‫الجرغول لدينا ، على سبيل المثال ، يمكنك أن ترى أن لديهم نوع الكائن الخاص بهم.
‫هذا هو كائن عالمي ثابت ، ولكن بعد ذلك في الأسفل لديهم استجاباتهم لأنواع أخرى من الكائنات
‫أيضًا.
‫لذلك يمكنك أن ترى أن هذا الكائن سوف يحجب الإحصائيات العالمية الأخرى ، وسوف يحجب ديناميات العالم الأخرى
‫، وسوف يتداخل مع أنواع البيدق ، وسوف يحجب الأجسام الفيزيائية ويمنع كل الأنواع الأخرى إلى حد كبير.
‫ومن الواضح أن البيدق نفسه إذا ذهبنا ووجدنا لاعب BP الخاص بنا.
‫وانظر في مكون الكبسولة ، وانظر إلى التفاصيل وانتقل لأسفل إلى حيث تم ضبط التصادم مسبقًا.
‫إذا تمكنا من توسيع الإعداد المسبق لـ Pawn Collision ، فلا يمكننا تحريره ، لكن يمكننا رؤية ما يفعله.
‫ويمكنك أن ترى أن لها استجابتها الخاصة للعالم الساكن.
‫لذا فإن استجابتها للعالم الساكن ستكون منعه.
‫إذن لدينا خياران مختلفان هنا.
‫البيدق يقول أنني أحجب استاتيكات العالم ، لكن الجرغول يقول إنني أتداخل مع بيادق.
‫إذن ما الذي يجب أن يحدث؟
‫حسنًا ، هذا هو المكان الذي يأتي فيه هذا الجدول ولدي رابط إلى منشور المدونة هذا
‫إذا كنت تريد قراءته بالكامل في موارد المحاضرات.
‫لذلك يمكنك أن ترى أن الأمر يتطلب أقل تفاعل بين الاثنين.
‫إذا كان الكائن A هو البيدق ونحن نقول ، مهلاً ، يجب أن أحجب ذلك الجرغول ، لكن الكائن الجرغول B وهو يقول
‫، مهلاً ، يجب أن أتداخل مع هذا البيدق.
‫لذلك سوف يستغرق الأمر أقل حظر من هذين الاثنين وسيتداخل.
‫لذا فهذا يعني أنك إذا كنت تريد شيئين يحظران بعضهما البعض ، يجب أن يتفق كلاهما على أن هذا ما
‫يريدان القيام به.
‫لنلق نظرة على مثال آخر هنا.
‫لدينا لاعب من نوع الكائن بيدق ، واستجابة الكائن لبيادق أخرى هي منعهم
‫والأشياء الثابتة في العالم هي منعهم.
‫جدار القرميد هو كائن عالمي ثابت.
‫يمكنه منع البيادق ومنع الكهرباء الساكنة في العالم.
‫لذلك فإن هذين الاثنين سيتفقان مع بعضهما البعض.
‫الآن الشجيرة هي أيضًا ثابتة في العالم ، لكنها تتداخل مع البيادق.
‫إنه يشبه إلى حد كبير الجرغول لدينا ، لكنه يحجب الإحصائيات العالمية.
‫لذا ، إذا نزلت وألقيت نظرة على ما سيحدث ، فإن البيدق سيحاول السفر عبر الأدغال ويمكن
‫أن يحدث لأنه يأخذ أقل خيار حظر ، وهو التداخل ويولد حدثًا تداخلًا يمكننا
‫ربطه في الكود أو مخطط ، في حين أنه لن يكون قادرًا على المرور عبر جدار القرميد
‫ويقوم بإنشاء حدث ناجح مرة أخرى ، وهو شيء يمكننا ربطه في Blueprint أو
‫C ++.
‫فلماذا أخوض في كل هذا العمق؟
‫لأن ما أريد القيام به هو وضع جسم غير مرئي بشكل أساسي داخل هذا الجدار الذي يسمح لنا
‫بوضع الغرغرة هنا ونحصل على حدث عندما يحدث ذلك.
‫لذا فإن الجرغول سوف يدعم حدثًا ويقول ، مرحبًا ، لدي شيء متداخل معي.
‫فلماذا كل هذا مهم؟
‫لأنني أريد أن أضع شيئًا غير مرئي ولكنه سيتداخل مع الجرغول وأخبرنا بهذه الحقيقة.
‫يمكننا بعد ذلك الاستعلام عنها من C ++ أو يمكننا الحصول على الأحداث في Blueprint في كلتا الحالتين.
‫والطريقة التي سنقوم بها هي ، أولاً وقبل كل شيء ، إنشاء مخطط من هذا الجدار المحصن.
‫لذلك سأقوم بالنقر فوق زر المخطط في جزء التفاصيل ، وإنشاء
‫فئة فرعية جديدة ، وسأقوم بتسميتها صفيرًا ، وتأكيد الجدار السري ، وسنضغط على زر التحديد لإنشائه وجدول أعمالنا
‫الرئيسي نافذة ولها محرك عليها.
‫ما أريد إضافته هنا هو في الأساس مكون يسمى تصادم الصندوق.
‫لذلك إذا نقرنا على صندوق الاصطدام ، يمكنك أن ترى أنه غير مرئي تمامًا.
‫إنه يمنحك فقط بعض نطاقات الصناديق التي يمكننا تغييرها ، ويمكننا جعلها أكبر بحيث في أي
‫مكان نضع فيه الجرغول في هذا الصندوق ، فإنه سيقبله.
‫ويمكننا أن نرى أنه يحتوي على خيارات تصادم هنا.
‫لدينا تداخل ديناميكي كإعداد افتراضي ، ولكن كإعداد مسبق افتراضي.
‫ولكن إذا وصلنا إلى Custom ، يمكنك أن ترى أنه يمكننا تغيير أنواع الكائنات ويمكننا تغيير كيفية استجابتها
‫لأشياء مختلفة هنا.
‫وأعتقد أن الأهم من ذلك ، كما ترى ، تم إعداده للتداخل مع معظم أنواع الكائنات ، مما يعني أنه حتى
‫لو لم يتم ضبطها على التداخل مع ديناميكية العالم ، فسوف تتداخل.
‫لن يمنع أي شيء.
‫سوف يسمح لنا بوضع الجرغول هنا.
‫لذا سأذهب وأحذف هذا المكون من المشهد ، لأن ما أريد فعله
‫هو إنشاء مكون جديد في C ++ قائم على تصادم الصندوق.
‫الآن أريد فقط أن أوضح لك أنه باستخدام هذا المربع ، إذا قمنا بإعادة تعيينه إلى الإعداد المسبق الافتراضي
‫الذي كان قيد التشغيل ، والذي كان يتداخل مع كل ديناميكي أعتقده ونحن نتحقق منه أو كما تم تحديده بالفعل ، يتم بالفعل تحديد أحداث
‫تداخل.
‫ثم يمكننا الانتقال إلى الرسم البياني للحدث الخاص بنا ويمكننا النقر بزر الماوس الأيمن هنا والبحث عن التداخل.
‫وفي الجزء العلوي مباشرةً ، يمكنك رؤية إضافة مكونة تبدأ في التداخل مع المربع.
‫لذلك إذا نقرنا على ذلك ودعنا في الواقع نعيد تسمية مكون الصندوق لتشغيل منطقة مثل.
‫إذن ، إذا تداخلنا مع منطقة الزناد ، فسنحصل على قائمة بخصائص الشيء الذي يتداخل
‫معنا حتى نتمكن من أخذ.
‫إنها متداخلة.
‫يمكننا الحصول على اسمه.
‫لذا الحصول على اسم العرض هو اسم العقدة.
‫وبعد ذلك يمكننا أخذ ذلك وطباعة سلسلة النتيجة وربطها بدبوس التنفيذ ويمكننا المضي قدمًا
‫والضغط على التشغيل.
‫وإذا مشينا إلى المنطقة ، يمكنك أن ترى أنها تقول أن مشغل الصفير هو الشيء الذي يتداخل معها.
‫الآن لا يمكنني رؤية تلك المنطقة لأنها مظلمة للغاية.
‫لذا سأذهب إلى الجدار السري مرة أخرى ، صفيرًا وسأضيف عنصرًا موضعيًا للضوء ، والذي سأضعه
‫في هذه الكوة الصغيرة ، وأديرها لتتجه لأسفل وتضيء الفضاء حيث
‫نريد الشيء.
‫الآن في المشهد ، يمكننا رؤيته بوضوح شديد.
‫لذلك دعونا نمضي قدمًا ونضرب اللعب ويمكننا المشي إلى تلك الكوة.
‫إذا قمنا بتداخله ، فإنه يقول أن هناك تداخل مشغل الصفير ويمكننا الذهاب والاستيلاء على الجرغول
‫الخاص بنا من هذه الخلية باستخدام أداة الإمساك التي تم سكها حديثًا ، ويمكننا أخذ هذه الجرغول ووضعها في هذه المنطقة.
‫ومع ذلك ، لا يبدو أنه يولد أي أحداث متداخلة ، وذلك لأنه مثلما نحتاج تمامًا ، هناك طرفان
‫في التصادم.
‫هناك أيضًا طرفان لتوليد أحداث متداخلة.
‫لذا ، لمجرد أننا قمنا بتمكينه في مكون الصندوق هذا لا يعني أن الجرغول الذي يتحرك فيه سينبهنا
‫بالفعل إلى أي أحداث متداخلة.
‫لذا ما يتعين علينا القيام به هو أن نذهب إلى الجرغول ونتحقق منه ، وننشئ أحداثًا متداخلة أيضًا.
‫إذن ، يجب أن تحدث أحداث التداخل.
‫دعنا نذهب ونلتقط الجرغول ، نأخذه إلى الكوة ونلصقه فيه.
‫والآن نحضر حدثًا قادمًا.
‫عندما يحدث ذلك ، يتم بالفعل تسجيل تمثال Gargoyle.
‫الآن ، لا أريد استخدام أحداث المخطط في هذه الحالة بالذات.
‫لذا ما أريد القيام به هو أخذ مكون منطقة الزناد الخاص بنا وتحويله في الواقع إلى مكون C ++ يمكنه
‫تقييم ما إذا كان قد حصل على تمثال Gargoyle في وقت واحد أم لا بالفعل.
‫الطريقة التي سنقوم بها هي أننا سنذهب إلى إضافة المكونات ، وإنشاء مكون C ++ جديد.
‫وباعتبارنا الفصل الرئيسي ، فبدلاً من اختيار مكون نشط أو مكون مشهد
‫، سنذهب إلى جميع الفئات وسنبحث عن مكون الصندوق بدلاً من ذلك.
‫ويمكنك أن ترى مكونات الشكل ، ومكونات الصندوق ، والمكونات التي نريدها ويمكننا المضي قدمًا والضغط
‫التالي.
‫لذا أود أن أتحداك لإنشاء هذا المكون الآن بعد أن أوضحت لك كيفية تعيين الفصل
‫الرئيسي.
‫لذلك ستقوم بتسمية مكونات المشغل وسيتعين عليك نسخ بعض الأشياء من المكونات الأخرى التي
‫أنشأناها لأنها لم يتم إعدادها بنفس الطريقة.
‫نظرًا لأننا نشتق من والد مختلف ، فسيتعين عليك نسخ سطر صفك.
‫هذا السطر بأكمله فارغ بشكل أساسي على مكون المشغل حيث ستقوم بإنشائه.
‫لذا قم بنسخ ذلك إما من جهاز الإمساك الخاص بك أو المحرك الخاص بك ، وإلا فلن تتمكن من إضافة مكوناتك
‫إلى مخططاتك.
‫إذن ، يجب عليك استخدام مكونات المشغل الجديدة هذه لاستبدال مكون الصندوق الحالي وطباعة شيء ما من Begin
‫Play.
‫مرة أخرى ، لن يتم إعداده بشكل كبير في التشغيل تلقائيًا ، لذلك سيتعين عليك
‫النسخ من ملف الرأس وملف C ++ لمكوناتنا الأخرى من أجل إعداده.
‫أوقف الفيديو واذهب.
‫تمام.
‫مرحبًا بعودتك.
‫لذا سأسميها مكون المشغل.
‫كل كلمة واحدة واضغط لإنشاء فصل دراسي.
‫لذا ، كما توقعت ، لا يوجد شيء داخل خط الفصل الدراسي الخاص بك ، وإذا ذهبنا وألقينا نظرة على محررنا وانتقلنا
‫إلى الجدار السري لشركة BP ، وحاول إضافة هذا المكون وابحث عن المشغل ، يمكنك
‫رؤية أي شيء يظهر.
‫والسبب في ذلك هو أننا إذا انتقلنا إلى الاستيلاء على نقطة H وألقينا نظرة على سطر فئة الاستخدام
‫، يمكنك أن ترى أن هناك القليل هنا يقول مخطط تفرخ مكون قادر.
‫لذا بشكل حاسم ، نحتاج إلى نسخ هذا.
‫كما أن لديها مجموعة صفية.
‫قد نقوم أيضًا بنسخ كل شيء لأن هذا يسمح لنا بإنشاء هذا المكون في مخطط
‫حتى نتمكن من الذهاب ولصقه كسطر فئة لمكون المشغل.
‫ثم الشيء الآخر ، إذا ذهبنا للاستيلاء ، يمكنك أن ترى أنه أصبح كبيرًا
‫في اللعب ، إنه داخل قسم محمي ويمكننا فقط نسخ تعريف وظيفة بدء التشغيل هذه ، ونسخها في مكون
‫المشغل الخاص بنا ووضعها على شكل كان في المنتزع ، أسفل الجسم المتولد.
‫ثم يمكننا أن ندخل في عملية الاستيلاء على CP ونرى كيف تم تحديد حجم اللعب.
‫هنا يمكنك أن ترى أن اللعبة تتمتع بهذه الروعة إلى الكبيرة جدًا وهي مهمة في الواقع.
‫لذلك سنقوم بنسخ ذلك ، وانتقل إلى مكون المشغل.
‫CP وسنقوم بتغيير ما تحصل عليه من القولون القولون إلى عنصر الزناد ، ابدأ اللعب.
‫وبعد ذلك هنا يمكننا أن نضع في سجلنا الخاص بك وسنقوم فقط بكتابة رسالة بسيطة مثل عنصر المشغل
‫على قيد الحياة وسنمضي قدمًا ونجمعها.
‫قد يستغرق هذا بعض الوقت ، نظرًا لأننا أجرينا بعض التغييرات المهمة إلى حد ما على ملف الرأس الخاص بنا.
‫وبمجرد الانتهاء من ذلك ، يمكننا الذهاب إلى جدار BP السري الخاص بنا ، والانتقال إلى الإضافة والبحث عن المشغل.
‫وهنا يمكنك أن ترى أن لدينا عنصر الزناد هذا.
‫يمكننا الآن إضافة ذلك في.
‫يمكننا إزالة منطقة المشغل التي أنشأناها مسبقًا.
‫ما عليك سوى المضي قدمًا وحذف ذلك والتحقق من أننا نريد حذفه.
‫سيؤدي ذلك إلى إبطال هذا الحدث الذي أنشأناه بشكل أساسي ويمكننا التحقق من أن التصادمات تم إعدادها
‫كما نريد على المشغل إذا كنا سنلقي نظرة.
‫ومع ذلك ، فقد تم ضبطه على تداخل كل العناصر الديناميكية وإنشاء أحداث متداخلة.
‫وأخيرًا ، ما نحتاج إلى استبداله هو هذا الحدث هنا حيث سنقوم بتحديد الزناد
‫الخاص بنا بالنقر بزر الماوس الأيمن والانتقال إلى فتح حدث الإضافة لتصادم المشغل وإضافة عنصر بدء التداخل.
‫هذا ما كنا نستخدمه من قبل.
‫اربط الدبوس النشط واربط دبوس التنفيذ للتوجه إلى مستوى الأبراج المحصنة.
‫اذهب والتقط الغرغرة ، وحاول لصقها في الكوة ونلاحظ أن هذا لا يعمل.
‫الآن لدينا هذا المشغل معدة.
‫دعنا ننتقل إلى منفذ العرض ويمكنك أن ترى أن المشغل لم يكن في الواقع لم يكن كبيرًا بما يكفي.
‫لم نضعها بشكل صحيح.
‫فلننطلق ونضعه في وسط التجويف ودعنا نزيد خصائص مدى الصندوق حتى نلتقط
‫كل ما وضعناه داخل منطقة التجويف هذه.
‫لا يهم إذا كان أكبر قليلاً ويمنحنا هامش أمان ويمكننا الذهاب إلى الزنزانة والضغط
‫على اللعب ثم الدخول إلى الكوة.
‫ومن المؤكد أنه اكتشف أن لاعب BP قد دخل إلى تلك الكوة.
‫أشياء عظيمة.
‫في هذه المحاضرة ، تعلمنا كل شيء عن أنواع الكائنات واستجابات أنواع الكائنات ، واستخدمنا
‫ذلك لإعداد مكون المشغل هذا.
‫سأراك في المحاضرة القادمة.