الآباء والأبناء
جزء من قسم أساسيات البرمجة النصية في Unity في رحلة Unity على Coddy. الدرس 31 من 85.
في التسلسل الهرمي، يصبح الكائن الذي تسحبه إلى كائن آخر ابنًا له، ويظهر تحته بمسافة بادئة، بينما يصبح الكائن الآخر أبًا له. يتحرك الابن ويدور ويتغير حجمه مع أبيه: حرّك الأب، وسيتحرك معه كل ابن، من دون الحاجة إلى كتابة أي كود للأبناء.
يخزّن Unity موضع الابن نسبةً إلى أبيه. تمثّل transform.localPosition هذا الإزاحة، مقاسةً من الأب؛ أما transform.position فيمثّل الموضع في العالم. هذا الراكب ابنٌ لحصان، ويضعه النص البرمجي على ارتفاع وحدة واحدة فوق مركز الحصان، وعلى بُعد نصف وحدة إلى الخلف، أينما وقف الحصان:
void Start()
{
transform.localPosition = new Vector3(0, 1, -0.5f);
}عندما يكون الحصان عند (4, 0.5, 2)، تكون قيمة position للراكب (4, 1.5, 1.5)، بينما تظل قيمة localPosition لديه (0, 1, -0.5). عندما يمشي الحصان، تتغير قيمة position ولا تتغير قيمة localPosition. تُقاس الإزاحة على محاور الأب نفسه، لذا عندما يدور الأب أو يتغير حجمه، تدور الإزاحة ويتغير حجمها معه. بالنسبة إلى كائن ليس له أب، تكون localPosition وposition متساويتين.
التحدي
متوسطضع العلم عند قاعدة السارية، مقاسًا من موضع السفينة.
- في
Start()، تُقاس الأرقام (0.6, 1, 0) من موضع السفينة، وهي العنصر الأب للعلم. - في ذلك السطر، غيّر
transform.positionإلىtransform.localPosition.
اضغط على «العب»: سيستقر العلم عند قاعدة السارية على السفينة. ثم اضغط على «تحقق».
جرّب بنفسك
using UnityEngine;
public class Hoist : MonoBehaviour
{
public float climb = 1f;
void Start()
{
// قاعدة الصاري: 0.6 إلى اليمين و1 إلى الأعلى، قياسًا من Ship
transform.position = new Vector3(0.6f, 1, 0);
}
void Update()
{
// أثناء الضغط على سهم الأعلى، اصعد حتى يصبح الارتفاع عن Ship هو 4
}
}
جميع دروس أساسيات البرمجة النصية في Unity
1أساسيات C# في Unity
مرحبًا يا Unityالمتغيراتالأعداد العشرية تحتاج إلى fالنص في وحدة التحكممتغيرات تتذكرإذا وإلامقارنة الأعدادمراجعة: جامع العملات7الحلقات والدوال
التكرار باستخدام forحلقات داخل حلقاتكتابة دالةدوال تُعيد إجابةالمصفوفاتمراجعة: السُّلّم5المتجهات
جمع المتجهاتالاتجاهاتالفضاء المحلي والعالميالسرعة القُطريةالمسافة بين الأشياءVector3 بنية Structمراجعة: قيادة الطائرة المسيّرة8كائنات اللعبة والمكوّنات
المراجع في Inspectorالحصول على مكوّنالمكوّنات المفقودةإضافة مكوّنRequireComponentالإظهار والإخفاءمراجعة: مفتاح الإضاءة6التحويلات والتسلسل الهرمي
الآباء والأبناءارفع العلمالتحجيمانظر إلى الأشياءتحرّك نحو نقطةمراجعة: القمر في مدارهتدرّب بنفسك: Playground لـ Unity