הטמעת מערכת LOD למשחקי מובייל ב-Unity וב-Unreal Engine

משחקי מובייל דורשים ביצועים גבוהים, אך מודלים מפורטים ללא אופטימיזציה מעמיסים על ה-GPU ומורידים את קצב הפריימים. אנו מפתחים ומיישמים מערכות LOD ב-Unity וב-Unreal Engine שמתאימות אוטומטית את רמת הפירוט לפי המרחק מהמצלמה. הצוות שלנו מספק פרויקטים סוהר—מבדיקת הסצנה הנוכחית ועד להגדרה ותמיכה שוטפת—ומבטיח משחקיות יציבה במגוון רחב של מכשירים.

פיתוח ותמיכה בכל סוגי היישומים הניידים:

יישומים ניידים למידע ובידור
אפליקציות חדשות, משחקים, מדריכים, קטלוגים מקוונים, אפליקציות מזג אוויר, אפליקציות כושר ובריאות, אפליקציות נסיעות, אפליקציות חינוכיות, רשתות חברתיות ומסנג'רים, חידונים, בלוגים ופודקאסטים, פורומים, אגרגטורים
יישומים ניידים למסחר אלקטרוני
חנויות מקוונות, אפליקציות B2B, מרקטפלייסים, בורסות מקוונות, שירותי קאשבק, בורסות, פלטפורמות דרופשיפינג, תוכניות נאמנות, משלוחי מזון ומוצרים, מערכות תשלום.
יישומים ניידים לניהול תהליכים עסקיים
מערכות CRM, מערכות ERP, ניהול פרויקטים, כלים לצוותי מכירות, ניהול פיננסי, ניהול ייצור, ניהול לוגיסטיקה ומשלוחים, ניהול משאבי אנוש, מערכות ניטור נתונים
יישומים ניידים לשירותים אלקטרוניים
פלטפורמות מודעות מסווגות, בתי ספר מקוונים, בתי קולנוע מקוונים, פלטפורמות שירות אלקטרוניות, פלטפורמות קאשבק, אירוח וידאו, פורטלים נושאיים, פלטפורמות הזמנות ותזמון מקוונות, פלטפורמות מסחר מקוונות

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

השירותים שאנו מציעים
מציג 1 מתוך 1כל 1734 השירותים
הטמעת מערכת LOD למשחקי מובייל ב-Unity וב-Unreal Engine
בינוני
~2-3 ימים

הכישורים שלנו:

שאלות נפוצות

העבודות האחרונות

  • פיתוח אפליקציית מובייל עבור FEEDME
    פיתוח אפליקציית מובייל עבור FEEDME
    971
  • פיתוח אפליקציית מובייל עבור XOOMER
    פיתוח אפליקציית מובייל עבור XOOMER
    869
  • פיתוח אפליקציית מובייל עבור RHL
    פיתוח אפליקציית מובייל עבור RHL
    1289
  • פיתוח אפליקציית מובייל עבור ZIPPY
    פיתוח אפליקציית מובייל עבור ZIPPY
    1143
  • פיתוח אפליקציית מובייל עבור Affhome
    פיתוח אפליקציית מובייל עבור Affhome
    1076
  • פיתוח אפליקציית מובייל עבור חברת FLAVORS
    פיתוח אפליקציית מובייל עבור חברת FLAVORS
    677

דמות עם 80,000 פוליגונים במרחק שני מטרים מהמצלמה נראית מצוין. אותה דמות במרחק 50 מטרים תופסת 40×60 פיקסלים על המסך – אבל ה-GPU עדיין מעבד 80,000 משולשים. LOD (רמת פירוט) הוא כלי מרכזי לניהול תקציב ה-GPU במשחקי מובייל. יש לנו למעלה מ-5 שנות ניסיון בפיתוח מובייל והעברנו יותר מ-10 פרויקטים עם אופטימיזציית LOD. מערכת LOD מוגדרת כראוי אינה נראית לשחקן ונראית בבירור בפרופיילר. רוצים ליישם LOD? הזמינו ביקורת ביצועים וקבלו ייעוץ מהמהנדסים שלנו.

יישום מערכות LOD ב-Unity וב-Unreal Engine לפרויקטי מובייל

מדוע LOD קריטי למשחקי מובייל

ל-GPUs במובייל יש זיכרון וכוח עיבוד מוגבלים. ללא LOD, כל אובייקט מעובד במספר הפוליגונים המקסימלי ללא קשר למרחק. זה מוביל לירידות ב-FPS והתחממות המכשיר. LOD מאפשר מעבר לגרסה מפושטת של האובייקט תוך כדי תנועה, ומפחית עומס מבלי לפגוע באיכות בטווח קרוב. מנגנונים מובנים ב-Unity וב-Unreal Engine מספקים פתרונות מוכנים אך דורשים כוונון עדין לחומרת היעד.

LOD ב-Unity (URP/Built-in)

LOD Group ב-Unity הוא הרכיב הבסיסי. הוסיפו LOD Group לאובייקט, והקצו רנדררים של mesh לכל רמה:

רמה אחוז שטח מסך פוליגונים שימוש
LOD 0 >30% 80,000 תקריב, סצנות קולנועיות
LOD 1 15–30% 20,000 דמויות פעילות בטווח בינוני
LOD 2 5–15% 5,000 דמויות רקע
LOD 3 1–5% 800 אובייקטים מרוחקים
Culled <1% — האובייקט אינו מעובד

פרמטר מפתח: LOD Bias ב-QualitySettings. בפלטפורמות מובייל – 0.5–0.7 לעומת 1.0 במחשב. זה מזיז את מעברי ה-LOD קרוב יותר למצלמה:

// Устанавливаем в зависимости от производительности устройства
QualitySettings.lodBias = SystemInfo.graphicsMemorySize > 4096 ? 0.75f : 0.5f;

נוסחה: LOD Bias = אחוז שטח מסך / מרחק בפועל. למכשירי מובייל עם זיכרון נמוך, השתמשו ב-0.5; למכשירי דגל, 0.75. זה מבטיח מעברים חלקים.

מעברי Cross-fade

מעבר LOD פתאומי גורם לאפקט לא נעים – "פופינג". // Устанавливаем в зависимости от производительности устройства QualitySettings.lodBias = SystemInfo.graphicsMemorySize > 4096 ? 0.75f : 0.5f; מאפשר מעברים חלקים באמצעות dithering. זה עולה זמן GPU נוסף, ולכן אנו משתמשים בזה רק למעבר LOD 0→1, שהוא הבולט ביותר. עבור LOD 2→3, הפופינג כמעט בלתי נראה. לפי מדריך Unity, cross-fade הוא חובה לפרויקטי מובייל עם גיאומטריה צפופה.

lodGroup.fadeMode = LODFadeMode.CrossFade; lodGroup.animateCrossFading = true; 

ב-URP, הוסיפו LOD Group → Fade Mode → Cross Fade ל-shader ו-lodGroup.fadeMode = LODFadeMode.CrossFade; lodGroup.animateCrossFading = true; .

כיצד מגדירים LOD ב-Unreal Engine למשחקי מובייל

ב-Unreal Engine, #pragma multi_compile _ LOD_FADE_CROSSFADE ו-UNITY_APPLY_DITHER_CROSSFADE(i.pos) תומכים ב-LOD כברירת מחדל. הגדרות בעורך Static Mesh: לשונית LOD Settings. יצירת LOD אוטומטית זמינה מגרסה 4.20:

// В Static Mesh Editor → LOD Settings
Number of LODs: 4
LOD 1: Reduction Settings → Triangle Percent = 50%
LOD 2: Triangle Percent = 20%
LOD 3: Triangle Percent = 8%

לפרויקטי מובייל, כדאי להגדיר StaticMeshComponent ב-SkeletalMeshComponent – מעברי LOD יתרחשו קרוב פי שניים למצלמה. עבור Skeletal Mesh ב-LOD 2+, הסירו עצמות שאינן נראות מרחוק באמצעות // В Static Mesh Editor → LOD Settings Number of LODs: 4 LOD 1: Reduction Settings → Triangle Percent = 50% LOD 2: Triangle Percent = 20% LOD 3: Triangle Percent = 8% . לדוגמה, הסירו אצבעות ועצמות פנים קטנות.

HLOD (Hierarchical LOD) לעולמות פתוחים

בסצנות עם מאות אובייקטים, HLOD ממזג מספר meshes סטטיים ל-mesh proxy יחיד במרחקים גדולים. ב-Unity, נעשה שימוש בחבילת r.StaticMeshLODDistanceScale 0.5 (com.unity.hlod). ב-Unreal, HLOD מובנה דרך DefaultEngine.ini. עיקרון: 100 עצים בודדים במרחק 200 מטרים מתמזגים ל-mesh אחד עם draw call אחד. זה מפחית את מספר ה-draw calls מ-100 ל-1 עבור כל הקבוצה. HLOD יעיל פי 4 מ-LOD רגיל לסצנות כאלה.

מקרה מבחן מהניסיון שלנו: עולם פתוח ב-Galaxy A34

משחק RPG איזומטרי: כניסה לעיר (מעל 400 אובייקטים) גרמה לירידת FPS מ-60 ל-22. מספר ה-draw calls הגיע ל-680 לפריים. לאובייקטים סטטיים לא היה LOD או batching.

שלבי האופטימיזציה:

  1. הוקצה LOD Group לכל המבנים והעצים – ארבע רמות, Culled ב-2% שטח מסך.
  2. הופעל Static Batching לאובייקטים ללא LOD (סלעים, חביות) – draw calls ירדו מ-680 ל-220.
  3. הוגדר HLOD לבלוקי עיר מרוחקים – mesh proxy עם 15K פוליגונים במקום 400 אובייקטים בודדים.
  4. הוגדר LOD Bias ל-0.6 עבור אנדרואיד דרך Quality Settings.

תוצאה: ה-FPS חזר ל-54 באותו אזור במפה. כך, LOD הגדיל את ה-FPS פי 2.5 בהשוואה לתצורה המקורית. החיסכון בעלויות הפיתוח הגיע עד $10,000 בזכות זמן פרופיילינג מופחת. פרויקט דומה חסך $8,000 ב-QA בזכות FPS יציב.

LOD פרוגרמטי ל-UI ואפקטים

LOD חל לא רק על גיאומטריה. עבור חלקיקים ב-Unity, השתמשו ב-LOD Reduction Settings → Remove Bones Below – הפחיתו Max Particles וקצב פליטה למקורות מרוחקים. פיצוץ במרחק 100 מטרים נראה מציאותי עם 10 חלקיקים במקום 200.

ניתן לווסת גם את איכות הצללים: בפלטפורמות מובייל, הגדירו HLOD System ל-30–50 מטרים:

QualitySettings.shadowDistance = 40f; QualitySettings.shadowCascades = 2; // хватит двух каскадов 

כלים לבדיקת LOD

לבדיקה ויזואלית ב-Unity, השתמשו ב-LOD Group Visualizer (Scene View → Debug Mode → LOD). קידוד צבעים: ירוק – LOD 0, צהוב – LOD 1, אדום – LOD 2+. פרוגרמטית, ניתן לקבל את הרמה הנוכחית כך:

var lodGroup = GetComponent<LODGroup>();
var lods = lodGroup.GetLODs();
// Camera.CalculateLODDistanceFactor помогает предварительно рассчитать расстояние

השוואה: Unity LOD לעומת Unreal LOD

קריטריון Unity Unreal Engine
הגדרת LOD Group דרך רכיב, אחוזי שטח מסך בעורך Static Mesh, ידני או אוטומטי
HLOD חבילת HLOD System מובנה דרך World Settings
Cross Fade נתמך דרך shaders מנגנון מובנה
כלי Debug LOD Group Visualizer צביעת LOD בעורך

שתי הפלטפורמות כוללות LOD כאופטימיזציית ליבה, אך Unreal מציעה פתרון שלם יותר לעולמות פתוחים, בעוד Unity גמישה יותר בהתאמות למכשירים ספציפיים.

מה כולל שירות יישום מערכות LOD שלנו?

אנו מציעים:

  • ביקורת סצנה: ניתוח draw calls, פוליגונים, צווארי בקבוק.
  • עיצוב קבוצות LOD לאובייקטים מרכזיים.
  • הגדרת LOD Bias, Fade Mode, Cross Fade לפלטפורמת היעד.
  • שילוב HLOD לרמות גדולות.
  • בדיקות על מכשירים אמיתיים עם פרופיילינג.
  • אופטימיזציית shader וצללים למעברי LOD.
  • תיעוד ומדריך תחזוקה.

לוח זמנים ועלות

הגדרת LOD ל-20–30 אובייקטים אורכת 2–3 ימים. מערכת LOD מלאה עם HLOD לכל המשחק אורכת שבוע עד שבועיים. העלות נקבעת באופן אישי לאחר ניתוח הפרויקט שלכם. קבלו ייעוץ על יישום LOD. אנו מבטיחים שיפור ב-FPS וביצועים יציבים. הזמינו ביקורת עוד היום.

מדריך Unity: LOD Group תיעוד Unreal Engine: LOD