מדריך Unity לעבודה עם Prefabs
Prefabs הם נכסים מיוחדים המאפשרים למפתחים לאחסן את GameObjects יחד עם הרכיבים שלהם ונתונים אחרים בתבניות הניתנות להגדרה, שניתן לעשות בהן שימוש חוזר מאוחר יותר בין הסצנות, ופרויקטים אחרים, או ליצור מופע באמצעות סקריפט, ללא צורך להגדיר אותם שוב.
מקרים שבהם Prefabs שימושיים:
- נכסי איכות הסביבה (עצים, שיחים, סלעים וכו')
- NPCs (דמויות ללא שחקנים)
- קליעים
- מופעי שחקן
- כל אובייקט שיש לעשות בהם שימוש חוזר במשחק
שימוש לדוגמה
בעת גרירה ושחרור של דגמים ישירות לסצנה, הם יתחילו לעתים קרובות עם כמה בעיות, כגון:
- חסרים טקסטורות
- קנה מידה שגוי
- סיבוב שגוי
ניתן לתקן בקלות את הבעיות שלמעלה בסצנה (הקצאת החומרים הנכונים, שינוי קנה המידה/סיבוב וכו'):
עם זאת, אם אתם מתכננים להשתמש במודל שוב ושוב ו/או בסצנות שונות, חזרה על השלבים שלמעלה תהפוך במהירות למשימה מייגעת, כך שבמקום זאת, נוכל לשמור את הדגם ל-Prefab.
כיצד ליצור Prefab
- כדי ליצור Prefab ב-Unity, פשוט גרור ושחרר את האובייקט מתצוגת הסצנה לתצוגת הפרויקט.
- לאחר יצירת ה-Prefab, ניתן לשחרר אותו לכל סצנה, וליצור עותק מדויק:
עריכת Prefabs
עריכת Prefab קיימות מתבצעת ב-2 דרכים: על ידי שינוים בעורך Prefab או על ידי שינוים בסצנה.
שינוי בעורך הטרומי
- בחר את Prefab בתצוגת הפרויקט, ולאחר מכן בתצוגת המפקח לחץ "Open Prefab"
- ה-Prefab ייפתח בעורך, שם תוכל לשנות אותו.
- כשתסיים לשנות, לחץ על החץ לאחור בתצוגת ההיררכיה כדי לצאת מהעריכה ולשמור את השינויים.
שינוי בסצנה
- שחרר את ה-Prefab לתצוגת הסצנה ואז ערוך אותו שם.
- במקרה שלי, הוספתי אובייקט נוסף להיררכיה (שים לב לסמל (+) ליד הסמל)
- בעת שינוי Prefab בסצנה, השינויים אינם נשמרים אוטומטית, במקום זאת, עליך לבחור ידנית את אובייקט הבסיס של Prefab, ובתצוגה של Inspector לחץ על "Overrides" ואז לחץ על "Apply All" כדי לשמור את השינויים, או "Revert All" כדי לבטל את השינויים.
- חלק מהפעולות אינן נתמכות בעת עריכת Prefab ישירות בסצנה, לדוגמה, אם אתה צריך לבנות מחדש את ההיררכיה, תוצג בפניך ההודעה "Cannot restructure Prefab instance" ועם אפשרויות ל-"Open Prefab" או "Cancel".
כדי לבנות מחדש את המופע Prefab, לחץ על 'Open Prefab' או לחץ לחיצה ימנית על ה-Prefab בתצוגת ההיררכיה ואז לחץ על Prefab -> Unpack או Prefab -> Unpack Completely.
פריקת Prefab תסיר את השיוך שלו ל-Prefab הראשי, ובכך תהפוך אותו לניתן לעריכה מלאה בסצנה.
כדי לשמור את ה-Prefab שנפרק בחזרה, בחר את התיקיה שבה ממוקמת ה-Prefab המקורי, ולאחר מכן גרור ושחרר את האובייקט ששונה מתצוגת ההיררכיה אל אותה Prefab.
לפעמים, אם השינויים דרסטיים מדי, תוצג בפניך הודעת אישור.
הקפד לבדוק שוב שאתה משנה את ה-Prefab הנכון ולאחר מכן לחץ על "Replace Anyway" כדי לסיים את הפעולה או על "אל תחליף" כדי לבטל את הפעולה.
ה-Prefab החדש נשמר כעת ומוכן לשימוש.