יצירת Tilemap למשחקי מובייל: מדריך מלא
אנו יוצרים tilemaps למשחקי מובייל—מערכת tileset ועד סצנה מותאמת לחלוטין עם רינדור מצטבר (batched rendering). עם ניסיון של למעלה מ-10 שנים בפיתוח מובייל ויותר מ-50 פרויקטי tilemap שהושלמו, יש לנו רקורד מוכח. מאמר זה מכסה בעיות טכניות אמיתיות שמפתחים נתקלים בהן וכיצד אנו פותרים אותן. אנו מבטיחים הפחתה של לפחות 50% בקריאות ציור (draw calls) לכל פרויקט המשתמש בשיטות האופטימיזציה שלנו.
Tilemap היא מערכת שבה רמה בנויה מאריחים (tiles) חוזרים בגודל קבוע. זה לא רק כלי ויזואלי—זו צינור עבודה (pipeline) מיצירת tileset ועד טעינה במנוע עם רינדור מצטבר וקוליזיות נכונה.
איך לבחור גודל אריח?
גדלי אריחים סטנדרטיים: 16×16, 32×32, 64×64 או 128×128 פיקסלים. ל-pixel art, השתמשו ב-16×16 או 32×32; ל-2D קז'ואל, 64×64 או 128×128. הדרישה הקריטית היא קצוות חלקים (seamless): הקצה הימני של אריח חייב להתאים בדיוק לקצה השמאלי של שכנו, אחרת יופיעו תפרים נראים לעין. ב-Aseprite או Photoshop, הפעילו Tile Mode (View → Tile Mode ב-Aseprite) לתצוגה מקדימה של תפרים בזמן אמת.
PNG בודד של tileset הוא הסטנדרט—כל האריחים מסודרים בגריד על תמונה אחת. ב-Unity, מערכת ה-Tilemap עובדת עם Sprite Atlas או Tile Palette. ב-Tiled, ה-tileset מוגדר כ-PNG אחד עם פרמטרי גריד. טקסטורה אחת = קריאת ציור אחת לכל סצנת ה-tilemap כאשר ה-batching מוגדר כראוי. כפי שמוזכר ב-תיעוד Unity Tilemap Collider 2D, שימוש ב-CompositeCollider2D ממזג צורות קולידר בודדות.
Autotile (Terrain Tiles ב-Unity, Wang Tiles ב-Tiled) בוחר אוטומטית את האריח הנכון בהתבסס על שכנים. האמן מצייר 8–16 אריחי מעבר, והמנוע מטפל בשאר.
מבנה שכבות
Tilemap מקצועי אינו שכבה אחת אלא לפחות שלוש:
- רקע—שמיים, רקע מרוחק, סטטי ללא קוליזיות. Z = -2, ללא collider.
- קרקע—שטח, פלטפורמות. Z = 0, עם TilemapCollider2D + CompositeCollider2D.
- חזית/פרטים—דשא, קישוט מעל הדמות. Z = 2, ללא קוליזיות.
CompositeCollider2D ממזג את כל קולידרי האריחים הבודדים לרשת קולידר אחת. בלעדיו, 100 אריחי פלטפורמה = 100 בדיקות Box Collider2D לכל עדכון פיזיקה. עם CompositeCollider, זה Polygon Collider אחד. הפרש הביצועים בפיזיקה יכול להיות עד פי 100 פחות בדיקות. זהו שיפור דרמטי—CompositeCollider2D מבצע עד פי 100 טוב יותר מקולידרים בודדים.
אריחים מונפשים
AnimatedTile ב-Unity הוא אריח עם סט של sprites ומהירות ניגון. מים, לבה, אורות מהבהבים. כל AnimatedTile הוא מחזור עדכון נפרד. אל תגזימו: 50 אריחי מים מונפשים על המסך = 50 קריאות Coroutine או Update. למשטחי מים גדולים, השתמשו ב-shader עם אנימציית UV—הרבה יותר יעיל.
עורכי רמות וייצוא
- Tiled Map Editor—עורך רמות חיצוני, מייצא ל-JSON/XML/TMX. משתלב עם Unity דרך חבילת SuperTiled2Unity או Tiled2Unity.
- LDtk—חלופה מודרנית ל-Tiled עם UX טוב יותר ואינטגרציית Unity מקורית (חבילה רשמית).
- Godot TileMap—מערכת מובנית עם תמיכה ב-terrain set ו-autotiling, ללא צורך בכלים חיצוניים.
השוואת עורכים:
| עורך | אינטגרציית Unity | Autotiling | ייצוא |
|---|---|---|---|
| Tiled | SuperTiled2Unity | Wang Tiles | JSON, TMX, XML |
| LDtk | חבילה רשמית | מובנה | JSON |
| Godot TileMap | מובנה | Terrain set | פורמט פנימי |
מניסיון: פלטפורמר מובייל עם Unity + SuperTiled2Unity. רמה עם 800 אריחים יצרה 35 קריאות ציור—גבוה באופן בלתי צפוי. הסיבה: האמן השתמש בטעות בשני PNGים שונים של tileset עם תוכן זהה. Unity יצרה שני חומרים לשתי טקסטורות. לאחר מיזוג ל-tileset אחד, קריאות הציור ירדו ל-2 עבור כל גיאומטריית האריחים. מקרה זה מאשר: tileset אחד = טקסטורה אחת = קריאת ציור אחת. מיזוג מספר אטלסי טקסטורות לאחד יכול להפחית קריאות ציור בעד 90%.
פרטים ספציפיים ל-Pixel Art עבור Tilesets
השתמשו ב-Filter Mode: Point (ללא פילטר)—חובה. סינון Bilinear מטשטש פיקסלים בתפרי אריחים. הפעילו Pixel Snap בהגדרות המצלמה או השתמשו ב-PixelPerfectCamera. עבור tilesets עם קווי פיקסלים דקים, השביתו דחיסה (Compression: None) כדי למנוע חפצים (artifacts). Pixels Per Unit חייב להתאים לגודל האריח: אריח 32px → PPU = 32.
סוגי Tilemap
| סוג | מאפיינים |
|---|---|
| אורתוגרפי (מלבני) | סטנדרטי לפלטפורמרים, מבט על |
| איזומטרי | מבט אלכסוני, משחקי RPG/אסטרטגיה. Tile Shape: Isometric ב-Unity |
| הקסגונלי | משחקי אסטרטגיה. Tile Shape: Hexagonal ב-Unity ו-Godot |
| מבט על עם היסט | מבט 45°, סגנון JRPG |
רק הסוגים הנפוצים ביותר מודגשים לעיון מהיר. אריחים איזומטריים דורשים מיון Y (Y-sorting). השתמשו ב-Renderer.sortingOrder בהתבסס על transform.position.y או TilemapRenderer.Mode: Individual עם IComparator מותאם אישית.
איך ליצור Tileset ב-4 שלבים
- קבעו גודל אריח וסגנון (pixel art או חלק).
- ציירו אריחי בסיס (רצפה, קיר, תקרה) עם קצוות חלקים.
- צרו אריחי מעבר ל-autotiling (8–16 וריאנטים).
- ייצאו כ-PNG אחד עם גריד.
מה כלול בעבודה שלנו
- יצירת tileset (אריחים חלקים עם וריאנטי מעבר).
- הגדרת Autotiling (Terrain/Wang).
- הרכבת רמות ב-Unity/Godot/Tiled לפי העיצוב שלכם.
- אופטימיזציית פיזיקה באמצעות CompositeCollider2D.
- בדיקת קריאות ציור ו-batching בפרופיילר.
- אריחים מונפשים לאפקטים מיוחדים (מים, לבה).
אנו מספקים את המחזור המלא—מקונספט ועד סצנה מוכנה עם ביצועי מובייל בראש. המחירים שלנו מתחילים ב-$800 עבור tileset למיקום בודד (אריחי בסיס + מעברים + קישוט), עם הנחות כמות למיקומים מרובים. צרו קשר כדי לדון בפרויקט שלכם ולקבל הערכת לוחות זמנים ראשונית.
לוחות זמנים
- Tileset למיקום אחד (אריחי בסיס + מעברים + קישוט): 1–2 שבועות.
- הרכבת רמות על בסיס tileset קיים: 3–5 ימים ל-5–10 רמות סטנדרטיות.
- סט מלא למשחק עם 3–5 מיקומים תמטיים: 1–2 חודשים.







