Page 1 sur 1

[DB] Recréer la gravité dans l'espace dans un jeu 2D

Publié : 12 Oct 2018 11:09
par Infinity
Bonjour à tous.

Alors voilà, j'ai commencé un projet Unity en 2D et 3D, et j'aurais besoin d'un coup de main sur mon script.

Le principe du jeu est que l'on incarne un petit astronaute qui voyage dans son vaisseau. Lorsque le joueur est dans "la phase espace" (donc dans son vaisseau) le jeu est en 2D et nous contrôlons le vaisseau et lorsqu'il se pose, le joueur passe en "mode planète" et là le jeu est en 3D.

Je rencontre actuellement des problèmes sur "la phase espace".
En effet, lorsque le joueur est dans cette phase, il "n'y a pas de gravité", du coup lorsque le vaisseau accélère un petit peu, il garde cette vitesse. Lorsqu'il s'approche d'un planète avec une atmosphère, il sera légèrement attiré par celle-ci.

C'est là que ça pose problème,
Je n'arrive pas à recréer cette gravité sans que mon vaisseau ne fasse n'importe quoi.

Pour peut-être mieux imager mes propos, je vous renvoie vers un jeu déjà existant, de Pixeljam : Last Horizon Last Horizon

Voilà, c'est là où je bloque. J'imagine que l’atmosphère est un trigger qui, une fois enclenché, attire le vaisseau, mais je n'arrive pas à imaginer la suite.

Merci!

Bonne journée.

- Thibaud

Re: [DB] Recréer la gravité dans l'espace dans un jeu 2D

Publié : 12 Oct 2018 12:04
par boubouk50
Salut,
As-tu un code ou cherches-tu une piste?
Ici, c'est la section code, donc il faut poster ton code, savoir ce que tu as fait déjà et comment.

Re: [DB] Recréer la gravité dans l'espace dans un jeu 2D

Publié : 12 Oct 2018 12:14
par Infinity
Pour le moment, je n'ai pas de code sur ça.
J'ai juste quelque lignes pour la faire tourner sur elle même, mais c'est tout.

Ce que je cherche ce sont en effet des pistes pour comprendre comment y arriver et vers quoi m'orienter.

Merci de ta réponse :cote:

Re: [DB] Recréer la gravité dans l'espace dans un jeu 2D

Publié : 12 Oct 2018 12:58
par Liven
Tu parles de gravité et ce genre de chose, donc je part du principe que tu utilise la physics2D de Unity.

Pour le fait de garder sa vitesse ou d'être freiné, tu peux jouer avec le "linear drag" de tes rigidbody (et "l'angular drag" pour freiner d'éventuelle rotations mal venues)

Pour ce qui est de l'attraction des planètes, je pense que la solution est dans les composants "point effector 2D".

Après ce genre de feature demande pas mal de tweak pour arriver à des résultats convaincants donc t'attends pas à ce que ce soit une solution miracle clef en main qui marche du premier coup, mais avec quelques recherches tu devrais trouver de la doc et des tutos pour t'aider.