Sisendsüsteemi paketi tutvustus

Lehekülg uuendatud :
Lehe loomise kuupäev :

Kontrollimise keskkond

Windows
  • Windows 11
Ühtsuse toimetaja
  • 2020.3.25f1

Teave sisendsüsteemi paketi kohta

Unity algusaegadel kasutasime sisendhaldurit kasutajatelt sisendi vastuvõtmise mehhanismina. Kuid mänguplatvormide mitmekesistamise keskkonnas on sisendhaldur vananenud. Lisatud on uus mehhanism kasutaja sisendi haldamiseks: Input Systemu Manager.

Alates 2022. aastast on ühilduvuse jaoks saadaval nii uus sisendsüsteemi pakett kui ka ühilduvuse sisendhaldur. Kui teil on vana projekt, saate kasutada "Input Manager", nagu see on, Ma arvan, et see läheb tulevikus üle uuele "sisendsüsteemi paketile", nii et uues projektis Kasutage sisendsüsteemi paketti.

Selles jaotises kirjeldatakse, kuidas seda seadistada.

Sisendsüsteemi pakettide installimine

Alates Unity Editor 2020.3.25f1-st hallatakse sisendsüsteemi pakette pakettidena, mida pole algselt installitud. Paketi installimiseks toimige järgmiselt.

Pärast projekti loomist ja Unity Editori käivitamist valige menüüst Window > Package Manager.

Kui ilmub paketihalduri ekraan, valige paketist "Unity Registry".

Kui kerite vasakul asuvat loendit allapoole, on seal "Sisendsüsteem", nii et valige see ja klõpsake paremas alanurgas nuppu "Install".

Kui see on installitud, kuvatakse see installitud kujul, seega sulgege dialoog.

Kui pärast paketi installimist kuvatakse järgmine dialoog, klõpsake järgmise "Aktiveeri sisendsüsteemi paketi" automaatseks konfigureerimiseks nuppu "Jah". Sel juhul taaskäivitub Unity Editor.

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.

Sisendsüsteemi paketi aktiveerimine

Kuna ma just installisin paketi, on mul hetkel aktiivne vananenud sisendhaldur. Lülitage see sisendsüsteemi paketti.

Valige menüüst Redigeeri > Projekti sätted.

Kui avaneb dialoog Projekti sätted, valige vasakpoolsest menüüst Player.

Valige alloleval vahekaardil PC, Mac.... Valige vahekaart Sätted ja laiendage allservas olevas rühmas jaotist Veel sätteid.

Kui kerite mingil määral alla, leiate kategooriast "Seaded" üksuse nimega "Sisendi töötlemine kasutuses", kus saate valida "Sisendsüsteemi pakett (uus)". Praegu saate aktiveerida mõlemad, kuid see on segane, nii et uue projekti puhul on parem kasutada ainult sisendsüsteemi paketti.

Pärast muudatuste tegemist ilmub järgmine dialoog, nii et Unity Editori taaskäivitamiseks klõpsake nuppu "Rakenda".

See on kõik, sa oled valmis!

Probleemist, mis on seotud nimeruumi "UnityEngine.InputSystem" kasutamisega koodisisendis, mille tulemuseks on viga

Ma pole hetkel koodi sisestanud, nii et see ei ole viga, Võite saada veateate, et nimeruumi ei eksisteeri, kui proovite seda koodi sisestamisel UnityEngine.InputSystem kasutada (näiteks Visual Studio).

Näiteks kui loote skripti enne "Sisendsüsteemi paketi" installimist.

Seda seetõttu, et projektil UnityEngine.InputSystem puudub viide . Probleemi lahendamiseks toimige järgmiselt.

Valige menüüst Redigeeri > eelistusi.

Valige vasakpoolsest menüüst Välised tööriistad ja klõpsake nuppu Taasta projektifailid.

Seda tehes lisab Visual Studio UnityEngine.InputSystem viitele.

Samuti on kood veatu.

Kasutaja sisendi aktsepteerimise muutmine kasutajaliideses sisendsüsteemi paketiks

See väli ei ole asjakohane, kui te ei kasuta Unity kasutajaliidest (nt sisestusvälju või rippmenüüsid) ja seda tuleks ignoreerida.

Kui paigutate vaatesse sisendvälja, rippmenüü vms, luuakse automaatselt lõuend ja kasutajaliidese objekt paigutatakse sinna. Samal ajal luuakse objekt nimega "EventSystem". See on objekt, mis haldab seda, mis juhtub, kui mõni sisend on kasutajaliideses tehtud.

See EventSystem töötab esialgu vanema sisendhalduriga. Kui ainult sisendsüsteemi pakett on lubatud, ei tööta kasutajaliides nii, nagu see on, seega peate vahetama sisendsüsteemi paketi.

Muudatuste tegemiseks valige esmalt EventSystem.

Seejärel kuvatakse inspektori "Standalone Input Module" -is hoiatus.

Klõpsake nuppu Asenda InputSystemUIInputModule'iga, et asendada eraldiseisev sisendmoodul sisendsüsteemi kasutajaliidese sisendmooduliga.

Teie mängu kasutajaliides peaks nüüd sisendi õigesti vastu võtma.