Saut animation en 2D

Questions à propos du scripting. Hors Shader, GUI, Audio et Mobile.
dctraplan
Messages : 3
Inscription : 01 Nov 2020 15:55

Saut animation en 2D

Message par dctraplan » 01 Nov 2020 17:35

Bonjour a vous,

j'ai décidé de me lancer dans l'aventure de la construction d'un jeu (Runner).
Je suis débutant et j y connais absolument rien :).

Mon personne peut aller de gauche a droite avec les touches "q"et"d". mais je n arrive pas à mettre un saut.

mon script du personnage se compose comme ça :

Code : Tout sélectionner

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class déplacement : MonoBehaviour
{
    public float speed = 0.18f;
    public float jumph = 4.01f;

    void Start() { print("Start"); }
    void Update()
    {
        Vector3 dp = new Vector3();
        if (Input.GetKey(KeyCode.Q))
        {
            dp.x -= speed;
        }
        if (Input.GetKey(KeyCode.D))
        {
            dp.x += speed;
        }
        transform.position += dp;
    }
}
je sais pas comment et ou mettre la fonction du saut. Si une personne pouvais m'aider. j'en serai tres reconnaissant.

Merci :)

Dc Traplan

Avatar de l’utilisateur
Max
Newser
Newser
Messages : 8064
Inscription : 30 Juil 2011 13:57
Contact :

Re: Saut animation en 2D

Message par Max » 01 Nov 2020 18:16

Bonjour,

En général, on passe par la physique pour faciliter ce genre d'intégration. Ton personnage possède-t-il les éléments physique nécessaire (collider2D, RigidBody2D) ?

En tant que débutant, il est souvent intéressant dans un premier temps de suivre des tuto.
Dans ton cas, je te conseille celui-ci (une série en plusieurs épisodes): https://www.youtube.com/watch?v=Y3-iYIs16TI
Il est spécifique à la 2D, avec en particulier les explication pour un contrôle d'un personnage en 2D dans son environnement.

Niveau code, ton code pourrait simplement s'écrire:

Code : Tout sélectionner

    public float speed = 0.18f;

    private void Update()
    {
        if (Input.GetKey(KeyCode.Q))
        {
            transform.Translate(speed, 0, 0);
        }
        if (Input.GetKey(KeyCode.D))
        {
            transform.Translate(-speed, 0, 0);
        }
    }
Image
Pas d'aide par MP, le forum est là pour ça.
En cas de doute sur les bonnes pratiques à adopter sur le forum, consulter la Charte et sa FAQ

dctraplan
Messages : 3
Inscription : 01 Nov 2020 15:55

Re: Saut animation en 2D

Message par dctraplan » 01 Nov 2020 18:53

oui, j'ai mis collider 2D, rigiBody2D

merci pour le tuto. je vais le regarder de suite

Répondre

Revenir vers « Scripting »