اساليب إضافة C++ Script إلى Unity Game Project
بالطبع ، وجود أشياء لا تتحرك في لعبتنا لا يجعل لعبتنا ممتعة حقًا.
لذا ، دعونا نفهم كيف يمكن استخدام Unity C++ Script لتحريك كائنات اللعبة ،
ومن هناك سننتقل إلى Rigidbodies.
أولا ، دعونا ننشئ نصا.
للقيام بذلك ، انقر بزر الماوس الأيمن في منطقة الأصول ، وانتقل إلى
Create → C++ Script .
سيؤدي ذلك إلى إنشاء ملف جديد بالاسم الافتراضي NewBehaviourScript .
أعد تسمية البرنامج النصي بالحركة ، واضغط على Enter.
سيؤدي هذا إلى إنشاء برنامج نصي جديد مع حركة الاسم في قسم الأصول.
انقر نقرًا مزدوجًا فوقه لفتحه ، ودعنا نرى ما سيحدث.
لا تكتب أي شيء في هذا البرنامج النصي في الوقت الحالي.
نظرًا لأننا ننتقل الآن إلى البرمجة النصية ،
دعني أستغرق بضع لحظات لأذكر أن Unity تشير إلى الكائنات الموجودة في
المشهد على أنها كائنات gameObjects .
لذلك ، من هذه النقطة فصاعدًا ، سوف نشير إلى الكائنات المستخدمة في المشهد باسم gameObjects .
سيشار الآن إلى الكائن على أنه كائن gameObject بدلاً من كائن.
ستلاحظ أن البرنامج النصي الذي أنشأناه للتو ، يأتي بطريقتين محددتين مسبقًا ،
وأن البرنامج النصي يرث تلقائيًا من فئة أساسية تسمى MonoBehaviour.
لنستعرض هذه واحدة تلو الأخرى ونحاول فهم ما تعنيه.
السلوك الأحادي MonoBehaviour
هذه هي الفئة الأساسية التي ترث منها جميع
البرامج النصية الخصائص الأساسية ، في Unity .
تحدد هذه الفئة وتوفر الكثير من القيم والطرق والخصائص المفيدة التي يمكنك
استخدامها في البرنامج النصي الخاص بك ، مما يوفر لك الكثير من المتاعب.
على سبيل المثال ، يحتوي MonoBehaviour على تعريفات لموضع
gameObject ( gameObject.transform.position.x/y/z) ،
مما يعني أنه يمكنك استخدام هذه القيم مباشرةً بدلاً من الاضطرار إلى تحديدها.
بشكل عام لا يجب أن تتخلص من إقرار الميراث ، لأنك ستحتاج في معظم الأوقات إلى
الأشياء التي توفرها هذه الفئة من الوالدين ، لإنجاز عملك.
يحتوي السلوك الأحادي أيضًا على تعريف التابع Start()and Update()، والذي سنشرحه مسبقًا.
Start() طريقة
يتم تشغيل هذه الطريقة بواسطة البرنامج النصي مرة واحدة ،
في بداية تشغيل gameObject وتمكينه.
هذا يعني أنه يتم تشغيل هذه الطريقة بمجرد أن يصبح الكائن نشطًا.
إذا كان الكائن نشطًا بالفعل عند فتح المشهد ، فإن عملية التهيئة والتمكين تعتبر متزامنة.
هذه الطريقة مفيدة جدًا عندما تحتاج إلى إعلان المكونات أو تعيين القيم.
على سبيل المثال ، يمكنك استخدام طريقة البدء لتعيين القيمة الأولية لعدد رصاصة البندقية.
يمكنك أيضًا استخدامه للوصول إلى المكونات الأخرى المرفقة بأي كائن gameObject ، كما سنرى لاحقًا.
تحقق من مثال الكود أدناه ، وتصفح التعليقات لفهمه.
Update() طريقة
تسمى هذه الطريقة 60 مرة في الثانية بواسطة Unity (أو 60 إطارًا في الثانية).
إنه المكان الذي يحدث فيه الإجراء الرئيسي لشفرتك عادةً.
على سبيل المثال ، اكتشاف المدخلات ، وإضافة القوى ، وإضافة النقاط ،
وتكاثر الأعداء أو الرصاص ، إلخ.
هناك الكثير من الأساليب الأخرى المحددة مسبقًا التي تقدمها لنا فئة MonoBehaviour.
يمكنك بالفعل العثور على قائمة بهذه الأساليب في وثائق Unity .
إنها لأغراض متنوعة ، ولكن في الوقت الحالي ، ولأغراض البساطة ،
سنلتزم فقط بهاتين الطريقتين والأخرى التي نحددها بأنفسنا.