היכרות עם חבילת מערכת הקלט

עודכן דף :
תאריך יצירת דף :

סביבת אימות

חלונות
  • חלונות 11
עורך Unity
  • 2020.3.25F1

אודות חבילת מערכת קלט

בימים הראשונים של יוניטי, השתמשנו במנהל הקלט כמנגנון לקבלת קלט ממשתמשים. עם זאת, בסביבה של גיוון פלטפורמות המשחק, מנהל הקלט הפך מיושן. נוסף מנגנון חדש לניהול קלט המשתמש: Input Systemu Manager.

נכון לשנת 2022, הן "חבילת מערכת הקלט" החדשה והן "מנהל הקלט" לתאימות זמינים. אם יש לך פרויקט ישן, אתה יכול להשתמש "מנהל קלט" כפי שהוא, אני חושב שזה יעבור ל"חבילת מערכת קלט" חדשה בעתיד, כך בפרויקט חדש השתמש בחבילת מערכת קלט.

סעיף זה מתאר כיצד להגדיר זאת.

התקנת חבילות מערכת קלט

החל מ- Unity Editor 2020.3.25f1, חבילות מערכת קלט מנוהלות כחבילות שאינן מותקנות בתחילה. כדי להתקין את החבילה:

לאחר יצירת הפרויקט והפעלת Unity Editor, בחר Window > Package Manager מהתפריט.

כאשר מסך מנהל החבילות מופיע, בחר "Unity Registry" מהחבילה.

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

לאחר ההתקנה, הוא יוצג כמותקן, לכן סגור את תיבת הדו-שיח.

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

This project is using the new input system package but the native platform backends for the new input system are not enabled in the player settngs. This means that no input from native devices will come through.

Do you want to enable the backends? Doing so *RESTART* the editor and will *DISABLE* the old UnityEngine.Input APIs.

הפעל את חבילת מערכת הקלט

מכיוון שרק התקנתי את החבילה, יש לי מנהל קלט מיושן פעיל כרגע. העבר זאת לחבילת מערכת הקלט.

בחר ערוך > הגדרות פרוייקט מהתפריט.

כאשר תיבת הדו-שיח הגדרות פרוייקט נפתחת, בחר נגן מהתפריט הימני.

בכרטיסייה הממוקמת למטה, בחר PC, Mac.... בחר בכרטיסיה הגדרות והרחב הגדרות נוספות בקבוצה בחלק התחתון.

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

לאחר ביצוע שינויים, תופיע תיבת הדו-שיח הבאה, לכן לחץ על "החל" כדי להפעיל מחדש את עורך האחדות.

זהו, סיימת!

על הבעיה של שימוש במרחב השמות "UnityEngine.InputSystem" בקלט קוד וכתוצאה מכך שגיאה

לא הזנתי את הקוד כרגע, כך שזו לא תהיה שגיאה, ייתכן שתקבל שגיאה המציינת שמרחב השמות אינו קיים בעת ניסיון להשתמש בו בעת UnityEngine.InputSystem הזנת קוד (לדוגמה, Visual Studio).

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

הסיבה לכך היא שלפרויקט UnityEngine.InputSystem אין התייחסות ל- . כדי לפתור זאת, בצע את הפעולות הבאות:

בחרו 'ערוך העדפות >' מהתפריט.

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

על-ידי ביצוע פעולה זו, Visual Studio UnityEngine.InputSystem מוסיף להפניה.

כמו כן, הקוד נקי משגיאות.

שינוי הקבלה של קלט משתמש בממשק המשתמש לחבילת מערכת קלט

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

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

מערכת אירועים זו פועלת בתחילה עם מנהל קלט ישן יותר. אם רק חבילת מערכת הקלט מופעלת, ממשק המשתמש לא יפעל כפי שהוא, לכן עליך לעבור לחבילת מערכת הקלט.

כדי לבצע שינויים, בחר תחילה EventSystem.

לאחר מכן מוצגת אזהרה ב- "מודול קלט עצמאי" במפקח.

לחץ על הלחצן החלף ב- InputSystemUIInputModule כדי להחליף את מודול הקלט העצמאי במודול הקלט של ממשק המשתמש של מערכת הקלט.

ממשק המשתמש במשחק שלך אמור כעת לקבל קלט כראוי.