‫أهلا ومرحبا.
‫في هذه المحاضرة ، سنضيف مكونًا جديدًا لمشغل BP لدينا ، وهو مقبض الفيزياء.
‫وسوف نتعلم كيف يمكننا الحصول على مؤشر له في مكون الإمساك.
‫سننظر أيضًا في كيفية حماية أنفسنا من تعطل المحرك عن طريق الخطأ.
‫دعونا نتعمق ونرى كيف.
‫الآن ، من أجل الإمساك بجسم ما ، نحتاج إلى التفاعل مع نظام الفيزياء.
‫وهناك عنصر في الواقع يمكننا استخدامه يسمى مقبض الفيزياء ، والذي يسمح لنا بالاستيلاء على الأشياء المادية وإخبارهم
‫بالمكان الذي نريد أن نكون فيه في العالم ، ولكن نفعل ذلك بطريقة تعترف بالقيود المادية لذلك
‫لا تفعل ذلك. ر عبر الجدران.
‫ويبدو نوعًا ما أن الكائن موجود في زنبرك بدلاً من اتباع نقطة معينة بشكل صارم ونطلب منه
‫الانتقال إليه.
‫لذلك سنستخدم هذه الفيزياء للتعامل مع المكونات.
‫سنذهب ونضيفه إلى لاعبنا ، BP ، جنبًا إلى جنب مع المنتزع.
‫لذلك دعنا ننتقل إلى زر الإضافة أسفل جزء المكونات ونبحث عن مقبض الفيزياء ونضيفه.
‫ويمكنك أن ترى أنه عنصر فاعل ، وليس مكون مشهد ، لأنه ينزل في القسم
‫السفلي لذلك لا يحتوي في الواقع على تحويل مادي خاص به.
‫ما نفعله بالمقبض الفيزيائي هو أننا نقول له الشيء الذي يجب أن يمسكه ثم نخبره حيث
‫نريده أن نضع الشيء الذي أمسكناه.
‫إذا انتقلت إلى الوثائق ، يمكنك رؤية ذلك في الوظائف المتاحة.
‫إذا قمت بالتمرير لأسفل إلى قسم الوظيفة ، يمكنك أن ترى أن هناك مكون إصدار ومكون انتزاع
‫في وظيفة الموقع.
‫هناك أيضًا موقع مستهدف محدد ودوران.
‫هذا هو المكان الذي يريد أن يحاول وضع الشيء فيه ، ولكن من الواضح أنه سيحترم
‫أي قيود مادية في القيام بذلك وسيفعل ذلك بطريقة سلسة كما لو كان في نبع.
‫الآن ، لن نستخدم هذه الوظائف حتى الآن ، لكننا بحاجة إلى إيجاد طريقة للحصول
‫على هذا المكون في مكون الإمساك.
‫فكيف لنا أن نفعل ذلك؟
‫حسنًا ، دعنا ننتقل إلى الحصول على CP الخاص بنا ونلقي نظرة على بدء اللعب ومحاولة الحصول عليه.
‫الآن هناك وظيفة على أي فاعل تسمح لنا بالعثور على مكون حسب نوعه.
‫لكن ما هو نوع المقبض المادي؟
‫حسنًا ، إنه عنصر معالجة فيزيائي لك.
‫الآن ، للحصول على هذا النوع ، نحتاج إلى استخدام التضمين ويمكنك أن ترى أن التضمين في التوثيق هو محرك
‫الفيزياء المائل للأمام ، ومكونات التعامل مع الفيزياء.
‫دعنا ننسخ ذلك إلى الاستيلاء على CP وإضافته تحت إضافة مساعدين تصحيح الأخطاء.
‫ثم ما سنفعله هو أننا سنقوم بالحصول على ONA للحصول
‫على مؤشر ، ثم عمل سهم وإيجاد عنصر رائع حسب الفصل.
‫الآن هذه الوظيفة هي نوع خاص من الوظائف تسمى دالة القالب في C ++ ، وهذا يعني
‫أنه يمكنك تمرير بعض المعلمات التي يتم تقييمها بالفعل عند الترجمة.
‫والطريقة التي تفعل بها ذلك هي استخدام أقواس زوايا كهذه.
‫لذلك تستخدم قوس زاوية بعد الوظيفة وتعطيه النوع الذي تريده أن يجد
‫، والذي في حالتنا هو عنصر التعامل مع الفيزياء مثل ذلك.
‫ثم تقوم بإغلاق أقواس الزاوية.
‫لكن لأنها دالة ، تحتاج إلى تسميتها باستخدام الأقواس العادية أيضًا.
‫ثم تضع المجموعة الثانية من الأقواس بعد ذلك.
‫لذلك يمكنك أن ترى أن وسيطات وقت التجميع هذه يتم تمريرها باستخدام أقواس الزاوية
‫ثم يتم تمريرها باستخدام الأقواس.
‫الآن ، مثل الوظيفة العادية ، سيكون لها قيمة إرجاع وفي هذه الحالة ستكون القيمة
‫المعادة هي أي نوع مررنا هنا.
‫ولكن كمؤشر ، يمكننا أن نأخذ مؤشرًا للفيزياء يتعامل مع مكون مكون وننشئ متغيرًا لذلك
‫الذي سنطلق عليه مقبض الفيزياء ونجعله مساويًا للحصول على مالك يجد مكونًا حسب الفصل.
‫الآن دعنا نتذكر فاصلة منقوطة في نهاية هذا السطر وهذا هو كل ما هو مطلوب
‫حتى نتمكن من الحصول على مكون آخر على نفس الممثل.
‫تذكر الآن أنني أخبرتك أن المؤشرات يمكن أن تكون خطيرة لأنها في بعض الأحيان يمكن أن تكون فارغة
‫ويمكن أن يؤدي ذلك إلى تعطل.
‫لذا تخيل أننا نسينا وضع عنصر مقبض فيزيائي على ممثلنا ، أو وضعنا ممسكًا على ممثل
‫جديد ولم نربطه بمكون مقبض فيزيائي بعد.
‫إذا كانت هذه هي الحالة ، فسيكون مؤشر مقبض الفيزياء مؤشرًا فارغًا.
‫وإذا حاولنا استخدام عامل تشغيل السهم أو عامل الإشارة على هذا المؤشر ، فسوف يتسبب ذلك في تعطل
‫محركنا وقد يكون من الصعب أحيانًا رؤية شكل هذا التعطل.
‫لذلك سأستمر وأتسبب في هذا الانهيار فقط لأظهر لك وقد تكون قادرًا على التعرف عليه إذا
‫حدث لك في المستقبل ، سأقوم بإعادة تعيين مؤشر مقبض الفيزياء الخاص بنا الذي
‫يساوي المؤشر الفارغ .
‫كلمة رئيسية خاصة.
‫كل شيء فارغ.
‫Peter هذه هي الطريقة التي تتهجى بها المؤشر الفارغ في C ++.
‫ثم تضع فاصلة منقوطة في النهاية ، ثم ما سنفعله هو أننا
‫سنفعل الفيزياء ، ونتعامل مع السهم ، ونحصل على اسم مثل ذلك.
‫وإذا مضينا قدمًا وقمنا بالتجميع باستخدام البرمجة الحية وعند الانتهاء من التجميع
‫، فسنمضي قدمًا ونتأكد ، أولاً وقبل كل شيء ، من حفظ أي شيء لدينا هنا في إعادة العرض لأنني
‫على وشك لتعطل المحرك وإذا تقدمت وضغطت على التشغيل ، فهذه هي النتيجة التي نحصل عليها.
‫المراسل وقد تميل إلى التفكير عندما ترى هذا أن شيئًا ما قد حدث بشكل غير واقعي ، ولكن في الواقع
‫هو الخطأ في التعليمات البرمجية الخاصة بك هنا.
‫يمكنك أن ترى أنه في تقرير التعطل هذا ، يشير السطر الأول إلى أن المشكلة تأتي من انتزاع نقطتين ،
‫ونقطتين ، وبدء اللعب.
‫وهو يعطينا رقم الخط أيضًا ، وهو الخط 28.
‫لذلك يمكنك أن ترى أنه في هذه المرحلة في السطر 28 ، عندما أشرنا إلى هذا المؤشر ، من
‫أجل استدعاء دالة عليه ، ارتكبنا خطأ فادحًا في عدم التحقق أولاً مما إذا كان هذا المؤشر فارغًا.
‫لذلك هذا ما نحتاج إلى القيام به.
‫ونفعل ذلك ببيان if.
‫نقول أساسًا إذا كان المقبض الفيزيائي لا يساوي مؤشر فارغ ، فيمكننا المضي قدمًا واستدعاء الأشياء على مقبض الفيزياء هذا حتى نتمكن من
‫وضع المقبض المادي ، والحصول على اسم داخل عبارة if وهذا يحمينا
‫لأن هذا الرمز ، هذا D لن يتم تنفيذ الكود المرجعي في حالة وجود
‫مؤشر فارغ.
‫لذلك سأقوم بإزالة السطر 27 الآن حيث نقوم بتعيينه على مؤشر فارغ.
‫وسوف أتحداك أن تطبع اسم المكون بنفسك.
‫لذا ، فقط إذا كان لدينا المكون الفعلي ، فنحن في الأساس لا نملك مؤشرًا فارغًا ونستخدم عنصرًا آخر للتحذير إذا لم
‫نتمكن من الحصول على هذا المكون ومحاولة إزالة المكون للتحقق ، وإيقاف الفيديو مؤقتًا
‫والحصول على الذهاب.
‫تمام.
‫مرحبًا بعودتك.
‫لذلك سنقوم بإنشاء رسالة تسجيل جديدة هنا وسنقول أن لديك معالجة فيزيائية للقولون sx ولدينا اسم
‫مقبض فيزيائي هذا الذي سأقوم بقصه ولصقه على أنه الوسيطات الثانية
‫أو الحجج الرابعة في سجل U.
‫وسأضع نجمة لأنها سلسلة.
‫الآن دعنا نضيف تعليمة else ضمن بيان if الخاص بنا.
‫وهنا سنضع سجل U آخر ، والذي سيكون هذه المرة بدلاً من
‫العرض ، سنضع رسالة تحذير من النوع الذي سيظهر باللون الأصفر وسنقول
‫لا تم العثور على مقبض فيزيائي ، علامة تعجب.
‫الآن لم أحصل على المحرر مفتوحًا ، لذلك سأقوم بتحويل التحكم B للبناء داخل كود Visual Studio
‫، وأغلق الجهاز عندما يكون ناجحًا وأعد تشغيله من المشروع الجديد.
‫بمجرد إطلاقه ، دعنا نمضي قدمًا ونضغط على تشغيل ، وافتح سجل الإخراج وسنرى رسالة السجل.
‫حصلت على معالجة الفيزياء ما هو الاسم.
‫ما يكفي من المرح ، التعامل مع الفيزياء.
‫الآن ماذا لو انتقلنا إلى مشغل الصفير الخاص بنا وقمنا بالفعل بإزالة هذا المقبض الفيزيائي والمضي
‫قدمًا واللعب.
‫ألقِ نظرة الآن على سجل الإخراج الخاص بنا وسيذهبون ، لدينا تحذير أصفر بأنه لم يتم العثور على أي مقبض
‫فيزيائي.
‫لذلك دعونا نتوقف عن اللعب.
‫دعنا نمضي قدمًا ونضيف مقبض الفيزياء للخلف لأننا نريده وسننقذ اللاعب.
‫صفير الاشياء العظيمة.
‫لذلك اكتشفنا كيف يمكننا الحصول على مكونات أخرى من داخل مكون وتعلمنا كيفية
‫التعامل مع المؤشرات الصفرية ولماذا نحتاج إلى توخي الحذر.
‫سأراك في المحاضرة القادمة.