Mon jeu lag (mobile)

Toutes les questions sur le développement Mobile, y compris la partie script.
youtpout
Messages : 71
Inscription : 15 Nov 2020 15:54

Re: Mon jeu lag (mobile)

Message par youtpout » 16 Fév 2021 23:19

En cas de doute tu peux faire un petit script pour afficher le nombre de fps, tu as plein d’exemple sur le net.
Vue la simplicité de la scène et su code je vois pas comment ça aurait pu lague
Sinon pour les scripts essaye de les regrouper mieux que ça j’ai galéré pour les retrouver 😹

Janpole
Messages : 30
Inscription : 12 Fév 2021 18:51
Localisation : Planète terre

Re: Mon jeu lag (mobile)

Message par Janpole » 17 Fév 2021 13:36

le restant de lag vient en fait du script player controller avec le script du deplacement mis dans void fixedupdate.
je ne peut pas le mettre dans update car le jeu va a chaque fois que je fais un mouvement freiner la voiture pour avancer.
mais quand je ne met que le code de déplacement dans update , le jeu est totalement fluide. comment je pourrais faire ??

Code : Tout sélectionner

using System.Collections;
using UnityEngine;

public class PalyerController : MonoBehaviour
{
    private CharacterController controller;
    private Vector3 direction;
    public float forwardSpeed;
    public float maxspeed;

    private int desiredLane = 1;//0 :left 1:middle 2:right 
    public float laneDistance = 4; //la distance
    void Start()
    {
        controller = GetComponent<CharacterController>();
    }

    // Update is called once per frame
    void Update()
    {
       
        if (forwardSpeed < maxspeed)
            forwardSpeed += 0.1f * Time.deltaTime;


        direction.z = forwardSpeed;
        if (SwipeManager.swipeRight)
        {
            desiredLane++;
            if (desiredLane == 3)
                desiredLane = 2;
        }

        if (SwipeManager.swipeLeft)
        {
            desiredLane--;
            if (desiredLane == -1)
                desiredLane = 0;
        }

        Vector3 targetPosition = transform.position.z * transform.forward + transform.position.y * transform.up;
        
        if(desiredLane == 0)
        {
            targetPosition += Vector3.left * laneDistance;
        }else if (desiredLane == 2)
        {
            targetPosition += Vector3.right * laneDistance;   
        }

        
        if (transform.position == targetPosition)
            return;
        Vector3 diff = targetPosition - transform.position;
        Vector3 moveDir = diff.normalized * 25 * Time.deltaTime;
        if (moveDir.sqrMagnitude < diff.sqrMagnitude)
            controller.Move(moveDir);
        else
            controller.Move(diff);

    }

    private void Update()
    {
        transform.Translate(Vector3.forward * forwardSpeed * Time.deltaTime);
    }

    private void OnControllerColliderHit(ControllerColliderHit hit)
    {
        if (hit.transform.tag == "obstacle")
        {
            PlayerManager.gameOver = true;
        }
    }
}

Janpole
Messages : 30
Inscription : 12 Fév 2021 18:51
Localisation : Planète terre

Re: Mon jeu lag (mobile)

Message par Janpole » 17 Fév 2021 13:42

j'ai essayé de mettre les contrôles de directions dans lateUpdate mais il y a un délai a chaque fois que je change de ligne et le défilement du décor ralentis

Répondre

Revenir vers « Développement plateformes mobile Iphone et Android »