الحصول على مكوّن
جزء من قسم أساسيات البرمجة النصية في Unity في رحلة Unity على Coddy. الدرس 44 من 85.
GameObject هو حاوية تضم مكوّنات: مكوّن Transform، ومكوّن MeshRenderer الذي يرسمه، ومصادم، والبرامج النصية الخاصة بك. يعيد GetComponent<Renderer>() المكوّن من ذلك النوع الموجود على الكائن نفسه، ومن خلاله يغيّر برنامجك النصي ما يفعله هذا المكوّن. يُعدّ transform اختصارًا جاهزًا لمكوّن Transform؛ أما كل مكوّن آخر فعليك جلبه بنفسك.
يتحول هذا المكعب إلى اللون الأحمر عند الضغط على Space. يبحث عن مكوّن Renderer مرة واحدة في Start()، ويحتفظ به في حقل: يبحث GetComponent في مكوّنات الكائن في كل مرة يُستدعى فيها، والنتيجة لا تتغير.
Renderer rend;
void Start()
{
rend = GetComponent<Renderer>();
}
void Update()
{
if (Input.GetKeyDown(KeyCode.Space))
{
rend.material.color = Color.red;
}
}يعطي rend.material هذا الكائن نسخته الخاصة من مادته في المرة الأولى التي تستخدمه فيها، لذلك تحتفظ الكائنات الأخرى التي تشاركت المادة بلونها. يوفّر Unity أسماءً لبعض الألوان، مثل Color.red وColor.green وColor.blue وColor.yellow وColor.gray؛ أما new Color(r, g, b) فينشئ أي لون آخر، بحيث تكون قيمة كل جزء من 0 إلى 1.
التحدي
متوسطمع كل نقرة، ينتقل ضوء الإشارة إلى اللون التالي: الأحمر، ثم الأصفر، ثم الأخضر، ثم الأحمر مجددًا.
- أضف حقلًا من النوع
Renderer rend;واضبطه فيStart()باستخدامGetComponent<Renderer>(). - عند
Input.GetMouseButtonDown(0)، أضف 1 إلى الحقلint step، وأعده إلى 0 عندما يصل إلى 3. - اضبط
rend.material.colorعلىColor.redأوColor.yellowأوColor.greenللخطوات 0 أو 1 أو 2.
اضغط على «العب» وانقر على اللعبة: سيتغير لون الضوء. ثم اضغط على «تحقق».
جرّب بنفسك
using UnityEngine;
public class SignalLight : MonoBehaviour
{
void Start()
{
}
void Update()
{
// مع كل نقرة: أحمر، ثم أصفر، ثم أخضر، ثم أحمر مجددًا
}
}
جميع دروس أساسيات البرمجة النصية في Unity
1أساسيات C# في Unity
مرحبًا يا Unityالمتغيراتالأعداد العشرية تحتاج إلى fالنص في وحدة التحكممتغيرات تتذكرإذا وإلامقارنة الأعدادمراجعة: جامع العملات7الحلقات والدوال
التكرار باستخدام forحلقات داخل حلقاتكتابة دالةدوال تُعيد إجابةالمصفوفاتمراجعة: السُّلّم5المتجهات
جمع المتجهاتالاتجاهاتالفضاء المحلي والعالميالسرعة القُطريةالمسافة بين الأشياءVector3 بنية Structمراجعة: قيادة الطائرة المسيّرة8كائنات اللعبة والمكوّنات
المراجع في Inspectorالحصول على مكوّنالمكوّنات المفقودةإضافة مكوّنRequireComponentالإظهار والإخفاءمراجعة: مفتاح الإضاءة6التحويلات والتسلسل الهرمي
الآباء والأبناءارفع العلمالتحجيمانظر إلى الأشياءتحرّك نحو نقطةمراجعة: القمر في مدارهتدرّب بنفسك: Playground لـ Unity