‫أهلا ومرحبا.
‫في هذه المحاضرة ، سنقوم بإعداد أول تتبع هندسي لدينا بحيث عندما نذهب وننظر
‫إلى الجرغول لدينا ونقترب بما فيه الكفاية ضمن النطاق ، ثم تأكد من أنه يطبع اسم
‫الممثل الذي تم ضربه التتبع.
‫دعنا نتعمق ونرى كيف يمكننا القيام بذلك حتى نكون مستعدين أخيرًا لمعالجة هذا المسح الفردي بقناة.
‫كان هناك الكثير من القطع التي كان علينا توفيرها لإنجاحها.
‫لكن أخيرًا ، نحن هنا.
‫لذلك دعونا نلقي نظرة على صيغة هذه الوظيفة.
‫لذلك نحن في مكان أفضل بكثير لفهم ما كان يحدث هنا في هذه الأنواع.
‫لذا فإن القيمة المرتجعة هي قيمة منطقية ، والتي تخبرنا أساسًا ما إذا كنا قد وجدنا أي شيء باستخدام عملية المسح
‫أم لا.
‫الآن الحجة الثانية ، كما ترون هنا ، هي مرجع.
‫لقد حصلت على علامة العطف هذه.
‫ولا يهم ما إذا كانت هناك مسافة بعد علامة العطف أو مسافة بين
‫اسم المتغير ، فكلها متشابهة طالما أن هناك علامة علامة بعد النوع تقول أن
‫هذا النوع هو مرجع ونوع يسمى نتيجة ضرب F ، يمكنك أن ترى أنه هيكل.
‫إذن هذه النتيجة F هي الضربة الخارجة.
‫هذه هي النتيجة التي خرجت من عملية المسح.
‫يمكننا أن نرى الأشياء التي تم ضربها وهناك هيكل لأن هناك عدة أشياء مختلفة ، أجزاء من
‫المعلومات يمكن أن تخرج من هذا المسح.
‫ثم لدينا مرجع متجه ثابت f.
‫إذن هذا يأخذنا متجه البداية بالرجوع إليه بدلاً من نسخه.
‫نفس الشيء مع متجه النهاية ، ثم لدينا دوران.
‫هذا هو دوران الشكل باستخدام f quat ، وهي بنية بديلة لاستخدام f rotator.
‫سنرى كيف يمكننا وضع دوران صفري هنا لأننا نستخدم كرة.
‫لا يهم حقًا.
‫الشيء التالي الذي يأتي هو قناة التتبع وسنرى كيفية معرفة ما تسمى قناة التتبع
‫الخاصة بنا في C ++.
‫ثم حصلنا على شكل التصادم ، والذي سيكون الحجة الأخيرة التي نحتاج إلى توفيرها ، وسنرى
‫كيف يمكننا إنشاء كرة بنصف قطر معين من خلال القيام بذلك.
‫لكن قبل أن نبدأ ، سنحتاج إلى معرفة نصف القطر هذا وكيف تم تكوينه.
‫لذلك سننتقل إلى الاستيلاء على النقطة h ، وسنقوم بإزالة هذه الوظائف التي كنا
‫نستخدمها كأمثلة للمراجع المرجعية والمعلمات الخارجية.
‫وسنقوم بإنشاء خاصية جديدة سيتم تعديلها في أي مكان وستكون
‫عوامة تسمى نصف قطر الإمساك وسنقوم بضبطها على 101 متر.
‫لذلك دعنا ننتقل إلى C ++ الآن ونزيل الإشارات إلى تلف الطباعة ولديه تلف
‫ويمكننا إزالة أي من ذلك من مكون التجزئة أيضًا.
‫جملة if الكاملة وأين نمرر في الضرر لأننا هنا نرسم خط التصحيح الخاص بنا والآن
‫نريد إجراء مكالمة إلى عملية المسح الخاصة بنا مفردة تلو الأخرى.
‫لذلك سنقوم بكتابة مسح.
‫سنكتب أقواس العالم لأننا نعلم أن هذه دالة على كائن العالم الجديد.
‫بعد ذلك ، يمكننا عمل سهم لأننا نعلم أن جعل العالم يعيد مؤشرًا
‫، ثم سنقوم بعملية مسح واحدة تلو الأخرى مثل ذلك ، وسنضطر إلى إدخال معلمة خارجية لتعبئتها باعتبارها الوسيطة
‫الأولى هنا.
‫لذلك سننشئ متغيرًا سيكون فارغًا ، وسيتم ملؤه بالنوع
‫الصحيح.
‫لذلك ستكون نتيجة إذا كانت f تصل ، وسنقوم فقط باستدعاء المتغير نفسه نتيجة ضرب ، ووضع فاصلة
‫منقوطة في النهاية لأننا لا نهيئها ، ولا نعطيها أي قيمة ، لكننا " سوف
‫نقوم بتمريرها للحصول على قيمة من خلال وظيفة الاجتياح المفردة بقناة.
‫إذن هذه هي نتيجة نجاحنا.
‫ثم نحتاج إلى المرور في متجهات البداية والنهاية التي نعلم أنه لن يتم نسخها ولكن سيتم الرجوع
‫إليها.
‫الآن نحن بحاجة لملء الدوران الذي يمكننا القيام به باستخدام علامة اقتباس f بسيطة ، وهوية القولون
‫، والتي تخبرنا بشكل أساسي أن هذا ليس دورانًا.
‫هذه مجرد لغة غريبة بعض الشيء بالنسبة لها.
‫إنه حديث رياضي عن معنى أن هذا ليس تناوبًا.
‫بعد ذلك ، نحتاج إلى قناة اصطدام التتبع.
‫الآن ، كيف يمكننا البحث عن قناة اصطدام التتبع تلك؟
‫حسنًا ، إذا انتقلنا إلى المجلد الذي يحتوي على مشروعنا وذهبنا إلى التكوين ثم انتقلنا
‫إلى المحرك الافتراضي INI ، انقر عليه وافتح رمز Visual Studio.
‫وهنا أود البحث عن Grabber.
‫لذا ستتمكن من رؤية قناة استجابة الاصطدام للمختطف.
‫وقد تم إعداده هنا في المحرك الافتراضي INI.
‫تم ذكره مرة واحدة فقط في الملف بأكمله ويمكنك رؤية اسم القناة.
‫هذا هو اسم القناة في C ++.
‫انها ليست جدا.
‫نعم ، لكنها s. ه. ج.
‫قناة تتبع اللعبة الثانية ، حتى نتمكن من المضي قدمًا ونسخها ، ومن ثم يمكننا العودة إلى الحصول
‫على CP ولصقه هنا كقناة التتبع التي نريدها.
‫الآن ، أصبح هذا الخط طويلاً نوعًا ما ، وما يمكننا فعله للتعويض عن ذلك هو أنه يمكننا
‫بالفعل وضع كل من هذه المعلمات في سطور منفصلة ، أو على الأقل نشرها.
‫لذلك ربما تكون البداية والنهاية متشابهتين.
‫معيار الهوية في سطر واحد ، وقناة التتبع على سطر آخر مثل ذلك.
‫وهذا يمنحنا مساحة أكبر قليلاً لقراءة قوائم الحجج الطويلة هذه.
‫الآن ، إذا عدنا إلى التوثيق ، يمكننا أن نرى أن الشيء التالي الذي
‫نحتاج إلى تمريره هنا هو شكل اصطدام F.
‫لذلك نحن بحاجة لبناء شكل.
‫ربما سنفعل هذا كمتغير منفصل في الأعلى.
‫سأفعل ذلك قبل نتيجة الضربة F لتوضيح أن نتيجة F هي في الواقع معلمة
‫خارج.
‫سأترك ذلك دائمًا على أنه آخر شيء قبل استدعاء الوظيفة.
‫لذلك سنقوم بإنشاء شكل تصادم F ، والذي سنسميه الكرة ، وسنجعله مساويًا
‫لشكل الاصطدام F ، والنقطتان ، والنقطتان ، ونصنع الكرة.
‫هذا سيخلق لنا كرة جديدة ، شكل تصادم.
‫وسعة هذه الدالة هي نصف قطر الكرة الذي حصلنا عليه باعتباره متغير نصف قطر الإمساك الذي قمنا
‫بتكوينه كخاصية U لكن فاصلة منقوطة في نهاية هذا الخط ويمكننا أن نمرر في
‫الكرة كوسيطة أخيرة إلى مسح وظيفة القناة ووضع فاصلة منقوطة في نهاية ذلك السطر.
‫هناك شيء آخر هو أن هذه الدالة التي نعرفها تعيد قيمة منطقية ، وهي ما إذا كنا قد وصلنا إلى أي شيء.
‫لذا سأضع النتيجة في متغير منطقي يسمى قد ضرب وهذا ما سنستخدمه لاحقًا
‫في هذه الوظيفة.
‫لذا أود أن أتحداك أن تطبع اسم الممثل الناجح.
‫والآن لدينا هذا الاكتساح يحدث.
‫يجب أن نكون قادرين على الحصول على بعض النتائج منه.
‫لذا استخدم عبارة if للطباعة إذا كان لدينا أي شيء على الإطلاق.
‫إذا كان هذا منطقيًا صحيحًا ، فحينئذٍ سنطبع اسم الممثل.
‫ستحصل على الممثل الذي تم ضرب Sphere Trace باستخدام بنية نتيجة النتيجة.
‫إنها تحتوي على طريقة يمكنك الوصول إليها باستخدام عامل تشغيل نقطي لأنها بنية.
‫إنه ليس مؤشرًا للبنية.
‫يمكنك عمل نقطة والحصول على ممثل واستخدام الأقواس ويعيد لك مؤشر الممثل.
‫بعد ذلك ، باستخدام هذا المؤشر النشط ، يمكنك الحصول على اسم الممثل باستخدام طريقة الحصول
‫على اسم الممثل أو طريقة التسمية والتفكير فيما إذا كنت تريد استخدام عامل النقطة أو عامل السهم لهذا ثم تجميع واختبار
‫بعد طباعة اسم الممثل هذا ومعرفة ما تريده. يمكن أن تضرب في المشهد.
‫أوقف الفيديو واذهب.
‫تمام.
‫مرحبًا بعودتك.
‫لذلك سنبدأ بإنشاء عبارة if.
‫إذا تم ذلك ، فسنضع بعض الأقواس وسنفعل أولاً وقبل كل شيء ، نريد الحصول على نقطة
‫الممثل هذه.
‫لذا فإن الممثل النجم النجمي يساوي نتيجة النجاح.
‫الحصول على نقطة.
‫الممثل.
‫أقواس.
‫يحب.
‫ثم سنقوم بعمل سجل u وسنقوم بكتابة ضرب الممثل النقطتين في المائة sx ويمكننا أن نفعل ضرب الممثل
‫ولأنه مؤشر هنا ، يمكننا ضرب سهم الممثل ، والحصول على اسم الممثل أو التسمية ، ثم بعض
‫أقواس.
‫ولأن هذا هو الخيط ، علينا أن نضع نجمة في الجزء الأمامي من shebang بأكمله حتى يتمكن من عرضها
‫بشكل صحيح في سجل Yui الخاص بنا.
‫حسنًا ، علينا الآن المضي قدمًا وتجميع هذا.
‫ثم بمجرد أن نكون في المشهد ، دعنا نفتح سجل الإخراج ونضعه في التخطيط حتى نتمكن من رؤيته
‫أثناء اللعب والضغط على زر التشغيل.
‫وعلى الفور يمكنك أن ترى أننا ضربنا تمثال المرغول.
‫إذا استدرت ونظرت إلى شيء آخر يمكنك رؤيته ، حسنًا ، ليس من الواضح تمامًا ما إذا كنت
‫لا أصيب أي شيء أو ما إذا كان لا يعرض شيئًا.
‫لذا ما سأفعله هو أنني سأقوم بوضع آخر لبيان if الخاص بنا هنا ، ضع بعض الأقواس
‫وسأقوم بعمل سجل U آخر.
‫وهذه المرة سيقول النص ، لم يضرب أي ممثل ، فلنقم بإعادة الترجمة ونذهب ونلعب في المحرر.
‫ويمكنك رؤيته الآن.
‫إنه يقول أنه لا يوجد ممثل يضرب طوال الوقت حتى أذهب وأبدأ في النظر إلى الجرغول.
‫والآن يقول أن الجرغول هو الشيء الذي يتم ضربه.
‫إذا تحركت بعيدًا بعيدًا عن هناك حتى أتمكن من الوصول إلى المدى ، يمكنك أن ترى أنني أقول إنه لم يتم ضرب
‫أي ممثل مرة أخرى.
‫أشياء عظيمة.
‫لذلك قمنا الآن بمسح هندسي بجسم كروي ويمكننا أن نرى أنه يتفاعل بالفعل فقط مع الممثلين في
‫قناة التتبع الخاصة بنا ، مثل Gargoyle هو الوحيد الذي أنشأناه في الوقت
‫الحالي.
‫لذلك هذا هو الوحيد الذي وجده.
‫سأراك في المحاضرة القادمة.