סדר מחזור החיים
חלק מהיחידה יסודות התכנות ב-Unity במסלול ה-Unity של Coddy. שיעור 58 מתוך 67.
Unity קוראת למתודות של סקריפט בסדר קבוע, מהרגע שהאובייקט שלו מופיע ועד לרגע שבו הוא מושמד:
Awake(): פעם אחת, כשהאובייקט נטען או נוצר.OnEnable(): מיד לאחר מכן, ושוב בכל פעם שהאובייקט מוצג.Start(): פעם אחת, לפני הפריים הראשון של הסקריפט.FixedUpdate(): לפי שעון הפיזיקה, 50 פעמים בשנייה כברירת מחדל, ולכן אפס, פעם אחת או כמה פעמים בפריים, תמיד לפניUpdate()של אותו פריים.Update(): פעם אחת בכל פריים.LateUpdate(): פעם אחת בכל פריים, אחרי כל קריאותUpdate().OnDisable(): בכל פעם שהאובייקט מוסתר, ולפני שהוא מושמד.OnDestroy(): פעם אחת, כשהאובייקט מושמד.
שלבים 4 עד 6 חוזרים בכל פריים כל עוד האובייקט פעיל. אובייקט שנוצר עובר את אותה רשימה: Instantiate מפעילה את Awake() ואת OnEnable() של העותק לפני שהיא מחזירה את השליטה, ו-Start() של העותק מתבצעת לפני Update() הראשון שלו.
מהסדר הזה נובעים שני הרגלים. קוד ב-Awake() מאתחל את השדות של האובייקט עצמו בזמן, כך שיהיו מוכנים ל-Start() של כל אובייקט אחר. וקוד פיזיקה כותבים ב-FixedUpdate(), שהשלבים שלו תמיד מרוחקים זה מזה ב-0.02 שניות, בלי קשר למהירות או לאיטיות שבה הפריימים מגיעים.
נסו בעצמכם
השיעור הזה לא כולל אתגר קוד.
השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה יסודות התכנות ב-Unity
1הסקריפט הראשון שלך
שלום, Unityהצב את הקובייהזוז בכל פרייםהסתובב בכל שנייהנווט בעזרת המקשיםסיכום: נהג בקובייה4וקטורים
חיבור וקטוריםכיווניםמרחב מקומי ומרחב עולמימהירות אלכסוניתהמרחק בין עצמיםVector3 הוא מבנה נתוניםסיכום: הטסת רחפן10מחזור החיים של הסקריפט
Awake ו-StartUpdate ו-LateUpdateOnEnable ו-OnDisableסדר מחזור החייםסיכום: מתעד מחזור החיים