Joystickcontroller instellen voor beweging in eenheid

Unity Engine, een krachtpatser voor game-ontwikkeling, biedt flexibele tools om verschillende invoermethoden te integreren en erop te reageren. Onder deze is de joystick een populaire keuze voor zowel ontwikkelaars als gamers. Het beheersen van de joystickintegratie betekent een soepelere gameplay en een groter publieksbereik. In deze tutorial wordt dieper ingegaan op het instellen van joystickbewegingen in Unity voor gamepersonages of objects.

Vereisten

1. De invoer instellen

  • Navigeer naar 'Edit > Project Settings > Input Manager'.
  • In Input Manager zijn er vooraf gedefinieerde assen zoals "Horizontal" en "Vertical" die standaard zijn ingesteld voor toetsenbordinvoer.
  • Voor joystickbediening dupliceert u een van deze assen door met de rechtermuisknop te klikken en 'Duplicate Array Element' te selecteren.
  • Hernoem dit gedupliceerde element, bijvoorbeeld "JoystickHorizontal".
  • Stel "Type" in op Joystick-as.
  • Voor de horizontale as op de meeste joysticks stelt u "Axis" in op de 'X'-as.
  • Herhaal deze stappen voor de verticale invoer, noem deze "JoystickVertical" en stel "Axis" in op de 'Y'-as.

2. Scripting van de joystickbeweging

  • Maak een nieuw C#-script, noem het 'JoystickMovement' en open het in de gewenste code-editor. Hieronder ziet u een eenvoudig voorbeeld van het vastleggen en toepassen van joystickinvoer om een ​​spelobject te verplaatsen, in het script te plakken en vervolgens op te slaan:

'JoystickMovement.cs'

using UnityEngine;

public class JoystickMovement : MonoBehaviour
{
    public float speed = 5.0f;

    void Update()
    {
        float moveHorizontal = Input.GetAxis("JoystickHorizontal");
        float moveVertical = Input.GetAxis("JoystickVertical");

        Vector3 movement = new Vector3(moveHorizontal, 0.0f, moveVertical);
        transform.Translate(movement * speed * Time.deltaTime);
    }
}

3. Het script toepassen

  • Keer terug naar Unity.
  • Selecteer met de joystick het spelobject of karakter dat moet bewegen.
  • Voeg het 'JoystickMovement'-script toe aan dit object door het eroverheen te slepen of door de 'Add Component'-knop te gebruiken.

4. De joystickbeweging testen

  • Druk op de knop Afspelen in Unity.
  • Gebruik de joystick om getuige te zijn van de beweging van het spelobject of personage.

Antwoorden op veelgestelde vragen:

  1. Waarom reageert het spelobject niet op bewegingen van de joystick?: a) Zorg ervoor dat de joystick of controller goed is aangesloten. b) Controleer de asinstellingen in de Input Manager om te bevestigen dat ze op de juiste joystickas zijn ingesteld. c) Bevestig dat het 'JoystickMovement.cs'-script aan het beoogde spelobject is gekoppeld.
  2. Hoe kan de gevoeligheid of het reactievermogen van de joystickbeweging worden aangepast?: Pas binnen de Input Manager de instellingen "Sensitivity" en "Gravity" aan voor de joystickas. Een hogere gevoeligheid betekent een snellere reactie op invoerwijzigingen.
  3. Wat als het object op en neer zou moeten bewegen in plaats van alleen maar van links naar rechts? : Pas de beweging Vector3 aan in het 'JoystickMovement.cs'-script. Voor verticale beweging op de Y-as wijzigt u de bewegingslijn in 'Vector3 beweging = new Vector3(0.0f, moveVertical, 0.0f);'.

Conclusie

Aan het einde van deze tutorial zou de beweging van de joystick effectief geïntegreerd moeten zijn in een Unity-spelproject. Regelmatig testen en indien nodig de instellingen aanpassen, zorgt voor een optimale gameplay-ervaring.

Voorgestelde artikelen
Hoe u het nieuwe HDRP-watersysteem in eenheid kunt gebruiken
Script voor het maken van een lichtschakelaar in eenheid
FPC Swimmer - Een alomvattend eenheidsmiddel voor meeslepende wateromgevingen
Muislook-script voor Unity
Raycast- en projectielgebaseerd schietscript voor Unity
2D Melee Attack-tutorial voor Unity
Top Unity-activa uit de Asset Store