Dieser Beitrag ist schamlos eine Kopie/Einfüge aus meinem Beitrag in den Unity-Foren: https://forum.unity.com/threads/input-S ... re.717386/, aber Stapelüberlauf scheint aktiv zu wirken. Löhne noch etwas aus, Halp. Ich habe eine Menge Sachen gemacht und versuchte, den besten Weg zu verstehen, um es zu benutzen, und am Ende hatte ich ein Charakter, der überall sprang und mich überall bewegte, das war cool! Dann habe ich meinen Code in unserem Entwicklungszweig zusammengeführt und bin ins Bett gegangen. Entweder überschreibe der Code einige wichtige Einstellungen (ich weiß, was Sie denken und ja, das "aktive Eingangsumschlag" ist auf "beide" eingestellt und ich habe nur versucht, die Vorschau durchzuführen), oder ich habe während meiner kleinen Tests etwas Wichtiges gemacht, und ich habe nicht bemerkt. /> 1 /Erstellen Sie ein neues 2D -Projekt (über die Hub) < /p>
2 /Installieren Sie das neueste Paket (Version 0.9.0) < /p>
3 /Klicken Sie in dieser Meldungsaufforderung, um die neue Eingabeverwaltung in den Einstellungen
8 /Erstellen Sie eine" TestAktion "auf meinem" Player "-ActionMap und setzen Sie es auf den Schlüssel" t "< /p>
9/Erstellen Sie ein neues Skript "testscript", das eine OnTestaction () -Methode enthält (nur Protokolls ") und die Testkarte/Aktion (einfach sicher):
using UnityEngine;
using UnityEngine.InputSystem;
using UnityEngine.InputSystem.PlayerInput;
public class TestScript : MonoBehaviour
{
void Start()
{
InputActionMap playerActionMap = GetComponent().actions.GetActionMap("Player");
playerActionMap.Enable();
playerActionMap.GetAction("TestAction").Enable(); //Just to be sure
}
public void OnTestAction()
{
Debug.Log("test");
}
}
< /code>
10 /Drücken Sie "Play" und Spaming "t" wie ein Verrückter, um einen Debuggen anzuzeigen (beachten Sie, dass ein Benutzer im Debugger erstellt wird, meine "t" -Anpressen erkannt werden, meine Testaktion existiert und auf der Taste "T" Taste, aber kein Debugg. src = "https://i.Sstatic.net/nnv0r.png" /> < /p>
Es ist wahrscheinlich ein albernes Problem, aber es macht mich verrückt, was mache ich falsch? Eingabesystem (Vorschau) macht nichts
- Überprüfung in update () ist meine Aktion ist aktiviert "true". Jedes Frame
- Überprüfung in update () ist meine Aktion wird ausgelöst zurückgegeben "false". Jeder Frame
- mit Aktion. Started /ausgelöst /ausgeführt.public class TestScript : MonoBehaviour
{
InputAction a;
void Start()
{
InputActionMap playerActionMap = GetComponent().actions.GetActionMap("Player");
playerActionMap.Enable();
a = playerActionMap.GetAction("TestAction");
a.Enable(); //Just to be sure
a.started += OnTriggeredTestAction;
a.performed += OnTriggeredTestAction;
a.canceled += OnTriggeredTestAction;
}
public void OnTestAction()
{
Debug.Log("test");
}
public void OnTriggeredTestAction(InputAction.CallbackContext ctx)
{
Debug.Log("test triggered");
}
}
< /code>
Injizieren Sie direkt die InputActionReference meiner Testaktion und erzwingen nichts.>
Das neue Eingabesystem auslöst nichts mehr aus ⇐ C#
-
- Similar Topics
- Replies
- Views
- Last post