החלפת טקסט של אובייקט טקסט כך שיתאים לסביבה שבה הטקסט נתמך ברב-לשוניות
סביבת אימות
- חלונות
-
- חלונות 11
- עורך Unity
-
- 2021.3.12F1
- מערכת קלט (יוניטי טכנולוגיות)
-
- 1.4.3
- לוקליזציה (יוניטי טכנולוגיות)
-
- 1.3.2
תנאים מוקדמים לטיפ זה
ההגדרות הבאות נקבעו מראש כהנחת יסוד לתיאור עצה זו.
אודות לוקליזציה
במקרים רבים, משחקים נוצרים בשפה של הסביבה שבה הם מפותחים, או באנגלית. עם זאת, על מנת שיותר אנשים ישחקו משחקים, יש צורך ליצור משחקים על פי התרבות והשפה של המדינה. זה נקרא בדרך כלל "לוקליזציה".
בטיפ זה, אני רוצה לעשות "תמיכה רב לשונית", שהיא אחת הלוקליזציות. ישנן דרכים רבות לבצע תמיכה רב-לשונית ב-Unity, אך במקרה זה נרצה להשתמש בחבילת ההרחבה הרשמית של Unity, Localization, כדי לתמוך במספר שפות.
התקנת חבילת ההתאמה לשפות אחרות
כדי לתמוך בלוקליזציה, תחילה עליך להתקין את חבילת "לוקליזציה".
מהתפריט, בחר חלון - > מנהל החבילות.
בפינה השמאלית העליונה של מנהל החבילות שמופיע, בחר Unity Registry.
"לוקליזציה" יוצג בתפריט בצד שמאל, אז בחר אותו ולחץ על כפתור התקן. ההתקנה תיקח קצת זמן. לאחר ההתקנה, סגור את תיבת הדו-שיח.
יצירת לוקליזציה
לאחר התקנת החבילה, צור את הטקסט עבור כל שפה. בחר ערוך - > הגדרות פרוייקט מהתפריט.
בחר לוקליזציה מהתפריט משמאל ולחץ על הלחצן צור.
הקובץ ייווצר, לכן ציין תיקיה כלשהי. קבצים מרובים ייווצרו, ולכן עדיף ליצור אותם בתיקייה ייעודית. כאן, אנו יוצרים תיקיית "לוקליזציה" בתיקייה "קלעים" ויוצרים אותה בה.
כאשר נוצר, המסך ייראה כך.
הקובץ נוצר גם בתיקיה שצוינה. בשלב זה עדיין יש אחד.
יצירת אזור
אנו ניצור את הטקסט המתאים לשפה. פתח את הגדרות הפרויקט לוקליזציה ולחץ על מחולל אזורים לחצן.
בחר את האזור המתאים. בחר רק את מה שאתה צריך. ככל שתבדקו יותר, כך ניתן יהיה לפרוס את המשחק בצורה רחבה יותר, אך כמות העבודה תגדל באופן יחסי.
הפעם, "יפנית (ja)", "אנגלית (en)", ו "ספרדית (es)" נבחרים.
לאחר ההגדרה, לחץ על הלחצן "צור אזורים" בפינה השמאלית התחתונה כדי ליצור אותו.
מציין את התיקייה ליצירת הקובץ. זה יכול להיות מקום אחר, אבל קל יותר לנהל אם הוא מאורגן, לכן ציין את התיקיה "לוקליזציה" שנוצרה קודם לכן.
אזורים זמינים מתווספים למספר האזורים שאתה בוחר.
קבצים נוצרים גם בתיקייה שצוינה עבור אזורים רבים ככל שתבחר.
לאחר מכן, הגדר בוררי אזורים. זוהי הגדרה עבור המידע הקובע את האזור בעת הפעלת המשחק. אם אין תנאי החלטה מיוחדים, אתה יכול להשאיר את זה כמו שהוא. ברצוני שאזור ברירת המחדל יהיה יפני כאשר האזור אינו נקבע על-ידי ניסיון. מתוך בורר האזורים הספציפי השלישי, לחץ על לחצן העיגול מימין.
בחר יפנית (ja).
באופן דומה, מזהה אזור הפרוייקט צריך להיות "יפנית (ja)".
יצירת טקסטים
צור טקסט עבור כל אזור. ישנן מספר דרכים ליצור אותו, אבל כאן ניצור אותו על ידי הגדרת הטקסט מאפס עם GameObject.
מהתפריט, בחר Window > Asset Management - > Localization Tables.
לחץ על אוסף טבלאות חדש.
ודא שכל האזורים שיצרת מסומנים.
מכיוון שהפעם אנו מבצעים לוקליזציה של הטקסט, בחר "אוסף טבלאות מחרוזות" עבור "סוג".
ציין את שם הטבלה מכיוון שהטקסט עבור כל אזור נשמר כרשימת טבלה. TextTable
בדוגמה זו, הוא משמש.
לאחר הכניסה, לחץ על כפתור "צור".
בחר יעד. מכיוון שנוצרים קבצים מרובים עבור כל טבלה, עדיף ליצור תיקייה ייעודית. כאן, אנו יוצרים תיקייה "TextTable" בתיקייה "לוקליזציה" ומציינים אותה.
לאחר יצירתה, תופיע הטבלה. זה 0 שורות כי עוד לא יצרתי כלום.
קבצים נוצרים גם עבור תיקיות כמו אזורים רבים. בעיקרון, אני לא נוגע בזה ישירות.
בואו ננסה ליצור אחד. יש כפתור "הוסף ערך חדש" בטבלה, אז לחץ עליו.
פעולה זו תוסיף שורה אחת ותציג שדה קלט עבור כל אזור.
נסה לתרגם את המילה "שלום" לכל שפה ולהקליד "שלום", "שלום" ו"הולה" בהתאמה.
המפתח הוא Hello
. אגב, אם תזין אותו, הוא יישמר באופן אוטומטי.
הוסף שורה אחת נוספת כדי שתדע שתוכל לנהל יותר משורה אחת.
בהתבסס על המילים "תודה", המפתח ThankYou
הוא להקליד כל מילה "תודה", "תודה" ו "gracias".
אנא סגור את תיבת הדו-שיח לאחר הכניסה. אתה יכול לעגן אותו איפשהו.
הגדרות התאמה לשפות אחרות עבור אובייקטי טקסט
במקרה זה, בואו נגרום לטקסט התצוגה לעבור לאובייקט הטקסט של ממשק המשתמש בהתאם לאזור שהוגדר במשחק.
תחילה, מקם את אובייקט הטקסט באופן שרירותי. אני לא משתמש בזה הפעם, אבל TextMeshPro
אני יכול להתמודד עם זה.
לאחר בחירת האובייקט הממוקם, בחר 'בצע לוקליזציה' מתפריט שלוש הנקודות של רכיב הטקסט.
פעולה זו מוסיפה רכיב חדש של Localize String Event.
מאחר שהאפשרות הפניית מחרוזת לא נבחרה, לחץ על ללא.
כאשר תיבת הדו-שיח מוצגת, הזן את מפתח הטקסט שיש להגדיר בשדה הקלט לעיל.
Hello
במקרה זה, הקלד ולחץ פעמיים מהרשימה Hello
שלהלן.
באפשרותך להרחיב את ההפניה למחרוזת כדי לראות שהערכים השונים מוגדרים. זה כל מה שיש בזה.
הפעלה ואימות
לאחר שתסיים, נסה להפעיל את המשחק. הטקסט אמור להשתנות בעת הפעלת המשחק. באיור שלהלן, הוא מוצג ביפנית מכיוון שהוא פועל בסביבה יפנית.
בפינה השמאלית העליונה של מסך המשחק בעורך, באפשרותך לשנות את שפת המשחק. נסה לבחור ספרדית לזמן מה.
לאחר מכן, תוכל לאשר שתוכן הטקסט עובר באופן אוטומטי.
כפי שאתם יכולים לראות, חבילת הלוקליזציה הרשמית של יוניטי מקלה על הגשת מועמדות ומעבר לממשק המשתמש ולראות איך זה עובד.
נסה להגדיר טקסט אחר ובדוק אם הטקסט משתנה.
נסה לפעול בסביבת שפה אחרת
בנה והפק פלט של התוכנית כדי לראות אם היא מופיעה בשפה המתאימה בעת הפעלתה בסביבת שפה אחרת.
הדיאגרמה הבאה מציגה את התוצאות של התקנת אנגלית בנוסף עבור מערכת ההפעלה היפנית של Windows 11 והפעלתה בסביבה עם אנגלית כשפת ברירת המחדל. אני חושב שאפשר לוודא שהשפה מתחלפת בהתאם לסביבה.