‫أهلا ومرحبا.
‫في هذه المحاضرة سنقوم بعمل منصات متحركة ومتحركة.
‫سنفعل ذلك من خلال التعرف على نوع F rotator في C ++ حتى نتمكن من إضافة
‫عنصر آخر إلى اللغز الخاص بنا.
‫دعنا نتعمق ونكتشف كيف يعمل هذا.
‫لذلك دعونا نتحدث عن ملء وظيفة منصة التدوير الخاصة بنا.
‫لذلك من أجل القيام بالتناوب ، إنها تشبه إلى حد كبير الطريقة التي نحدد بها الموقع ولدينا وظائف متشابهة
‫جدًا.
‫يمكننا الاتصال بدلاً من الاتصال ، والحصول على موقع الممثل ، ويمكننا الاتصال ، والحصول على تناوب الممثل بدلاً من ذلك.
‫وإذا ذهبت ووضعت أقواسًا في نهاية هذا السطر وقمت فقط بالمرور فوق الوظيفة ،
‫فإن Visual Studio IntelliSense سيوضح لنا أن القيمة المعادة من هذا هو دوار F.
‫لقد استخدمنا المتجه F عند العمل مع المواقع وتحدثنا عن الدوارات في الأقسام السابقة.
‫لذلك دعونا نلقي نظرة على وضع هذا المحور F في متغير محلي.
‫لذا سيكون النوع هو F rotator وسنسمي هذا الدوران الحالي مساويًا لدوران الممثل ، ضع فاصلة
‫منقوطة في نهاية السطر.
‫سأقوم أيضًا بحذف بيان السجل لأننا لم نعد بحاجة إلى ذلك.
‫ثم ما نريد القيام به هو بالضبط نفس ما فعلناه مع سرعة المنصة ،
‫وهي نوع من سرعة الدوران مضروبة في زمن دلتا المضاف إلى الدوران الحالي.
‫إذن ما الذي يجب أن تكون عليه سرعة الدوران؟
‫حسنًا ، هذا هو المكان الذي نريد الانتقال إلى ملف الرأس وإضافة خاصية U جديدة.
‫لذا سأضيفها تحت مسافة التحرك وسأقوم بتعديل خاصية U في أي مكان ثم أعطيها فئة مساوية
‫لهذه المرة سأسميها تناوب وسأغير اسم الفئة من نقل النظام الأساسي
‫إلى التحرك في كلتا الحالتين.
‫لذلك سيكون لدينا فئة للحركة ، فئة للدوران.
‫ثم تحت الخاصية سنضع محور دوار F يسمى سرعة الدوران ولن نعطيه قيمة افتراضية هنا
‫لأنني افتراضيًا لا أريد أن تدور أي من منصاتنا.
‫لذا فإن القيمة الافتراضية ستكون 000 ، وهذا ما نحتاجه بالضبط.
‫سأضع فاصلة منقوطة في نهاية السطر هنا والآن يمكننا العودة إلى ملف
‫C ++ واستخدام متغير العضو في وظيفة تدوير النظام الأساسي.
‫إذن ما نريد فعله هو الدوران الحالي الذي يساوي الدوران الحالي بالإضافة إلى سرعة الدوران مضروبة في زمن دلتا
‫ووضع فاصلة منقوطة في نهاية السطر.
‫والآن فإن الجزء الأخير من اللغز هو تعيين ممثلنا على هذا الدوران الجديد.
‫لذلك تمامًا كما تتوقع ، ربما يكون التحدي الصغير بالنسبة لك ، في الواقع ، هو كيف ستمضي
‫قدمًا وتفعل ذلك بنفسك؟
‫حسنًا ، ما سنستخدمه هو وظيفة دوران الممثل المحدد وسنمرر في حجة الدوران الحالي
‫مثل ذلك ونضع فاصلة منقوطة في نهاية السطر.
‫الآن ، لسوء الحظ ، لا يعمل الأمر بهذه البساطة.
‫نما إلى علمي ، وقد أشار بعض الطلاب في التدريس المساعد.
‫لقد أشار دان ، شكرًا جزيلاً لك ، إلى أن مجرد إضافة الدورات معًا مثل هذا لن
‫ينجح دائمًا بسبب بعض التعقيدات حول الالتفاف حول نفسها.
‫إذا انتقلت إلى درجة دوران تصل إلى -90 درجة ، فستحتاج في مرحلة ما إلى الدوران بمقدار
‫90 درجة وما إلى ذلك.
‫لذا فإن أفضل طريقة للتغلب على هذا ، بدلاً من ضبط الدوران النشط ، هي استدعاء الدور المحلي للممثل
‫المضاف.
‫ويمكنك أن تلاحظ هنا أن هناك عددًا قليلاً من أشكال التحويل المحلية المضافة للممثل بالإضافة إلى الإزاحة المحلية الخاصة
‫بالموقع.
‫لذلك يمكنك استخدام ذلك أيضًا بدلاً من إضافة الموقع.
‫ومع ذلك ، لا توجد نفس المشاكل التي سنواجهها في حالات الحافة حول التدوير.
‫لذا فإن ما أوصيك بفعله هو إضافة دوران محلي للممثل هنا بدلاً من ذلك ، وبعد ذلك تقوم فقط
‫بوضع سرعة الدوران مضروبة في زمن دلتا ويقوم بعمل باقي هذا الرمز تلقائيًا نيابةً عنك.
‫لذا يمكننا المضي قدمًا والتخلص من هذه الخطوط.
‫ولديك إضافة مباشرة للدوران المحلي الجارية هنا ، ويمكنك أيضًا التخلص من هذا بالحصول
‫على الدوران الحالي لأننا لم نعد بحاجة إلى ذلك أيضًا.
‫لذلك دعونا نتوجه إلى المحرر ونضغط على زر الترجمة.
‫وعندما يتم ذلك ، أغلق السجل.
‫دعنا نختار أحد الأنظمة الأساسية في المستوى الذي سيفعله أي منها ونلقي نظرة على الفئات.
‫إذن فقد تحركنا ودورنا وحصلنا على سرعة الدوران إذن.
‫لذلك أريد أن أدور هذه المنصة حول محورها Z على الأرجح لنفترض أنها 90 درجة في الثانية.
‫لذلك يستغرق الأمر 4 ثوانٍ للقيام بالدوران الكامل.
‫دعنا نمضي قدما ونضرب اللعب.
‫وها أنت ذا.
‫لدينا منصة دوارة ومتحركة.
‫لذلك على عكس آلية المنصة المتحركة ، لا داعي للقلق بشأن رجوع منصتنا الدوارة إلى
‫الخلف والأمام.
‫إذا كنت تريد أن تفعل ذلك ، فهذا امتداد محتمل يمكنك التفكير فيه.
‫لكن بالنسبة لي هذا يكفي لأننا نريد فقط أن تستمر هذه الأشياء في الدوران في نفس
‫الاتجاه.
‫لذا دعني أذهب وأزيل الدوران من هذه المنصة المعينة لأننا لا نريد أن تدور هذه
‫المنصة.
‫لذلك أود أن أتحداك لإنشاء منصة دوارة للصفير ، وهي في الأساس متغير آخر لنا لاستخدامه
‫وإيجاد شبكة مناسبة.
‫سأختار شيئًا دائريًا بشكل غامض بحيث يكون منطقيًا كمنصة دوارة وأعطيه
‫سرعة دوران افتراضية وأضعه في المستوى لإنشاء جزء من أحجية منصة دوارة لتتمكن
‫من عبورها.
‫أوقف الفيديو واذهب.
‫تمام.
‫مرحبًا بعودتك.
‫لذلك سننتقل إلى درج المحتوى الخاص بنا وسنبحث عن فئات C ++ ، Obstacle Assault وانقر بزر الماوس الأيمن
‫فوق النظام الأساسي المتحرك لإنشاء جهاز فئة مخطط مشتق من هذا.
‫سنسميها منصة دوارة للخط السفلي من BP وسنضعها في مسار المحتوى
‫وننشئ فئة المخطط.
‫بمجرد ظهور المحرر ، فلنقم بإرسائه في نافذتنا الرئيسية.
‫سأغلق متصفح المحتوى الخاص بي الذي يبدو أنه يريد الظهور في كل مرة ، وسأنتقل إلى مستوانا الرئيسي
‫وأذهب إلى الجزيرة مع جميع أصول الاختبار الخاصة بنا عند النقر بزر الماوس الأيمن.
‫اذهب هنا ودعنا نرى ما إذا كان هناك أي شيء يبدو جيدًا.
‫أنا أحب مظهر هذه المنصات هنا.
‫إذا قمت بالنقر بزر الماوس الأيمن فوقه أو إذا قمت بالنقر فوقه فقط ، فإن الشبكة المستخدمة هنا في الشبكة
‫الثابتة هي SM platform A لذلك دعونا نبحث عن تلك الشبكة.
‫دعنا ننتقل إلى المخططات الخاصة بنا ، ونفتح المحتوى ، ونرسم ، وننتقل إلى الكل ، ثم نبحث عن
‫الشرطة السفلية للمنصة M ، والشرطة السفلية A ، ثم لدينا الشبكة ، وهي هذه هنا.
‫الثاني على طول بالنسبة لي.
‫سأقوم بسحبه إلى منفذ العرض الخاص بنا للحصول على منصتنا.
‫الآن دعنا نرى أين يتمركز هذا.
‫هل يتركز في المنتصف؟
‫نعم ، إنه أمر جيد ومهم لأننا نحتاج إليه للدوران حول المنتصف.
‫وإلا فإن هذه المنصة الدائرية ستبدو غريبة بعض الشيء.
‫يمكننا أيضًا توسيعه قليلاً في البعدين x و Y لجعل هذه المنصة أكبر قليلاً ويمكننا الانتقال إلى الإعدادات
‫الافتراضية للفئة لإزالة أي سرعة للمنصة لأننا لا نريد أن تتحرك وتعيين مسافة التحرك لأسفل
‫إلى الصفر المحتمل ثم انظر إلى قسم التدوير وضبط ذلك على نحو جيد ، حاولنا 90
‫درجة في الثانية وبدا ذلك معقولًا إلى حد ما.
‫لذلك دعونا نمضي قدمًا ونحفظ هذه المنصة الدوارة.
‫سوف ننتقل إلى المستوى الرئيسي لدينا ثم انقر بزر الماوس الأيمن على الجزيرة العائمة الصغيرة حيث قمنا بإعداد مستوانا اللغز
‫الخاص بنا ، انقر فوق ، اذهب هنا.
‫ثم على قمة هذه الجزيرة ، أريد أن أضع مخططنا الجديد.
‫لذلك دعونا نلغي البحث ، ونذهب إلى جذر المحتوى ونجد منصتنا الدوارة ونضعها في المستوى.
‫وعلى الفور أرى أنني في الواقع أريده أن يكون أكبر قليلاً.
‫لذلك دعونا نمضي قدمًا ونوسع نطاقه.
‫بضع وحدات أخرى ، ربما ثلاث مرات يجب أن تكون جيدة.
‫دعنا نذهب ونلقي نظرة.
‫الآن ، أعتقد أنه يمكن أن يكون أكبر من ذلك ، لذا سأقوم بالتوسع أكثر قليلاً بحيث يكون في
‫الأساس في X و Y أكبر بخمس مرات مما كان عليه في الأصل.
‫حسنًا ، هذا قرص دوار عريض لطيف وقد يكون من الصعب جدًا بالنسبة لنا عبوره.
‫لذلك سأقوم بتكرار هذه باستخدام بديل واسحب لإنشاء عدد قليل منها عبر النظام
‫الأساسي ومحاولة وضعها بشكل مناسب ثم سحب بديل آخر.
‫لذلك لدينا مجموعة صغيرة لطيفة من الألغاز هنا لنحاول عبورها.
‫لذلك هزتهم قليلاً حتى أتمكن من الحصول عليهم من الحافة إلى الحافة.
‫وهنا حيث تساعد القدرة على الحصول على وضع اللعبة حقًا لأنه يمكننا النقر بزر الماوس الأيمن بالقرب
‫من الأنظمة الأساسية والنقر فوق التشغيل من هنا ، وهنا جميع منصاتنا الدوارة لكي نتقدم عليها.
‫إنه تحدٍ صغير الآن بالنسبة لنا أن نجد طريقنا عبر هذه المنصات المتحركة بطريقة لطيفة وسهلة.
‫الآن هناك هذه المنطقة الميتة في المنتصف والتي يمكننا أن نحاول إخلاءها
‫، ولكن في الواقع من الصعب جدًا الوصول إلى المنطقة الميتة والبقاء فيها ، لذلك لن أحاول وضع أي شيء هناك على وجه
‫التحديد لمحاولة إيقاف ذلك.
‫لكن يمكنك أن ترى هناك تذهب.
‫إنه تحد قابل للتنفيذ يمكننا تجاوزه ، لكنه صعب بعض الشيء وهذا ممتع.
‫أشياء عظيمة.
‫لذلك في هذه المحاضرة ، رأينا كيف نصنع منصات دوارة من خلال التعرف على نوع جديد
‫، الدوار F وكيف يمكننا استخدامه لضبط دوران الممثلين لدينا.
‫سأراك في المحاضرة القادمة.