Menu
CoddyTech

סדר מחזור החיים

חלק מהיחידה יסודות התכנות ב-Unity במסלול ה-Unity של Coddy. שיעור 58 מתוך 67.

Unity קוראת למתודות של סקריפט בסדר קבוע, מהרגע שהאובייקט שלו מופיע ועד לרגע שבו הוא מושמד:

  1. Awake(): פעם אחת, כשהאובייקט נטען או נוצר.
  2. OnEnable(): מיד לאחר מכן, ושוב בכל פעם שהאובייקט מוצג.
  3. Start(): פעם אחת, לפני הפריים הראשון של הסקריפט.
  4. FixedUpdate(): לפי שעון הפיזיקה, 50 פעמים בשנייה כברירת מחדל, ולכן אפס, פעם אחת או כמה פעמים בפריים, תמיד לפני Update() של אותו פריים.
  5. Update(): פעם אחת בכל פריים.
  6. LateUpdate(): פעם אחת בכל פריים, אחרי כל קריאות Update().
  7. OnDisable(): בכל פעם שהאובייקט מוסתר, ולפני שהוא מושמד.
  8. OnDestroy(): פעם אחת, כשהאובייקט מושמד.

שלבים 4 עד 6 חוזרים בכל פריים כל עוד האובייקט פעיל. אובייקט שנוצר עובר את אותה רשימה: Instantiate מפעילה את Awake() ואת OnEnable() של העותק לפני שהיא מחזירה את השליטה, ו-Start() של העותק מתבצעת לפני Update() הראשון שלו.

מהסדר הזה נובעים שני הרגלים. קוד ב-Awake() מאתחל את השדות של האובייקט עצמו בזמן, כך שיהיו מוכנים ל-Start() של כל אובייקט אחר. וקוד פיזיקה כותבים ב-FixedUpdate(), שהשלבים שלו תמיד מרוחקים זה מזה ב-0.02 שניות, בלי קשר למהירות או לאיטיות שבה הפריימים מגיעים.

נסו בעצמכם

השיעור הזה לא כולל אתגר קוד.

quiz iconבחנו את עצמכם

השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.

כל השיעורים ביחידה יסודות התכנות ב-Unity