הפניות ב-Inspector
חלק מהיחידה יסודות הסקריפטים ב-Unity במסלול ה-Unity של Coddy. שיעור 43 מתוך 85.
שדה יכול להכיל אובייקט אחר. תן לו טיפוס כמו Transform או GameObject, וה־Inspector יציג משבצת ריקה שתוכל למלא על ידי גרירת אובייקט מה־Hierarchy אליה. סקריפט המצלמה הזה עוקב אחרי האובייקט שנגרר אל player, ונשאר 3 יחידות מעליו ו־6 מאחוריו:
public Transform player;
void Update()
{
transform.position = player.position + new Vector3(0, 3, -6);
}משבצת שנשארה ריקה מציגה None, והשורה הראשונה שמשתמשת בה זורקת בכל פריים: UnassignedReferenceException: The variable player of CameraFollow has not been assigned. בשורה הבאה של ההודעה כתוב מה לעשות: You probably need to assign the player variable of the CameraFollow script in the inspector. היא מציינת את השדה ואת הסקריפט, כדי שתדע איזו משבצת למלא.
סקריפטים מסוימים צריכים לפעול גם כשהמשבצת ריקה. Unity גורמת למשבצת ריקה להיחשב שווה ל־null, ולכן סקריפט כזה בודק לפני השימוש בה. כשעוטפים את השורה ב־Update() בתנאי if (player != null), מצלמה ללא שחקן נשארת במקומה במקום לזרוק שגיאה.
אתגר
בינונישלח כל שומר לעמדה שהמפקח שלו מציין.
- הוסף את השדה
public Transform post;. המשבצת של Guard1 מכילה את Post1; זו של Guard2 ריקה. - ב־
Update(), כאשרpost == null, בצעreturn;כדי ששומר ללא עמדה יישאר במקומו. - לאחר מכן הזז באמצעות
Vector3.MoveTowards(transform.position, post.position, speed * Time.deltaTime).
לחץ על "שחק": Guard1 הולך לעמדה שלו ו־Guard2 ממתין. לאחר מכן לחץ על "בדיקה".
נסו בעצמכם
using UnityEngine;
public class Guard : MonoBehaviour
{
// post: ה-Transform שאליו השומר הזה הולך, מוגדר ב-Inspector
public float speed = 2f;
void Update()
{
// לך אל post במהירות speed. שומר ששדה post שלו ריק נשאר במקומו.
}
}
כל השיעורים ביחידה יסודות הסקריפטים ב-Unity
1יסודות C# ב-Unity
שלום, Unityמשתניםמספרים עשרוניים צריכים fטקסט ב-Consoleמשתנים ששומרים ערכיםאם ואחרתהשוואת מספריםחזרה: אוסף המטבעות5וקטורים
חיבור וקטוריםכיווניםמרחב מקומי ומרחב עולמימהירות אלכסוניתהמרחק בין עצמיםVector3 הוא מבנה נתוניםסיכום: הטסת רחפן8אובייקטי משחק ורכיבים
הפניות ב-Inspectorקבלת רכיברכיבים חסריםהוספת רכיבRequireComponentהצגה והסתרהחזרה: מתג תאורה6טרנספורמציות והיררכיה
הורים וילדיםלהניף את הדגלקנה מידהלהסתכל על דבריםלנוע לעבר נקודהסיכום: הירח המקיף12מחזור החיים של הסקריפט
Awake ו-StartUpdate ו-LateUpdateOnEnable ו-OnDisableסדר מחזור החייםסיכום: יומן מחזור החייםתרגלו בעצמכם: Unity אונליין