שיפור הביצועים של משחק נייד ב-Unity

המשחקים בנייד התפתחו לא מעט בשנים האחרונות, ממשחקי 2D פשוטים להצעת חווית 3D מלאה. אך למרות זאת, עדיין יש לו כוח עיבוד מוגבל, כך שכדי לספק חווית משחק חלקה, צריך לעשות כמה שיקולים לגבי בחירות עיצוב.

להלן 5 הנקודות המובילות שכדאי להסתכל עליהן כדי לשפר את הביצועים במכשירים ניידים בעת פיתוח ב-Unity:

הימנע משקיפות

משיכת יתר של פיקסלים היא די יקרה ויכולה להפחית באופן דרסטי את קצב הפריימים במכשירים ניידים. כדי למנוע זאת, הימנעו משימוש ב-Transparent Shaders או בעצם כל Shader שמכיל שקיפות (לדוגמה, Partcle Shaders).

לגיאומטריה אטומה השתמש ב-Shaders מקטגוריית המובייל.

הימנע מצללים בזמן אמת

צללים בזמן אמת עשויים להיראות מגניבים, אבל הם דורשים די הרבה כוח עיבוד. אז עדיף לאפות אותם ל-Lightmaps במקום זאת.

השתמש באצווה סטטית כדי לצמצם שיחות Draw

Static Batching היא דרך לאפשר ל-h3* לשלב אובייקטים סטטיים יחד, שבתורו יקטין את מספר קריאות Draw, ובכך ישפר את ביצועי הרינדור.

כדי לאפשר אצווה סטטית סמן את כל האובייקטים הסטטיים בסצנה כ-"Batching Static" ואז עבור אל עריכה -> הגדרות פרויקט... -> נגן וודא ש-Static Batching מסומן.

השתמש באצווה דינמית בזהירות

אצווה דינמית שנויה במחלוקת במקצת. מצד אחד הוא מאפשר ל-Unity לשלב אובייקטים דינמיים לתוך פחות אובייקטים, מה שעשוי לשפר את הביצועים, אבל בצד השני, הוא צריך לעשות זאת בכל פריים שעלול לפגוע בביצועים במקום זאת.

בסך הכל עדיף להשבית את האצווה הדינמית בעת מיקוד לפלטפורמות ניידות.

הימנע משימוש ב-OnGUI

OnGUI מאפשר לך ליצור במהירות ממשק משתמש מקוד אבל הוא איטי מאוד בהשוואה ל-UI Canvas, אז השתמש בו רק ליצירת אב טיפוס.