comment ajouter une force de rotation à l'unité


Réponse 1:
"Dans Unity, lorsque j'ajoute de la force à un cube, il continue de rouler, et je veux seulement pousser le cube, pas le faire rouler, y a-t-il des suggestions?"

Réduisez le frottement statique et dynamique du matériau physique appliqué au cube. Cela le rendra plus facile. Le frottement statique affectera la difficulté à démarrer le glissement du cube, et le frottement dynamique affectera à quel point il ralentit lors du déplacement.

Vous voudrez peut-être aussi jeter un œil à la façon dont la force est appliquée. Les forces appliquées au centre sont moins susceptibles de faire tomber le cube qu'une force appliquée hors du centre.


Réponse 2:

Une façon consiste à calculer la position à laquelle votre cube doit s'arrêter après que la force cesse d'agir sur le cube, puis à simuler manuellement le mouvement via des interpolations telles que DoTween ou Lean Tween.

DOTween - DocumentationLeanTween

Si vous essayez d'utiliser la physique par défaut d'Unity, au lieu d'appliquer la force dans n'importe quelle fonction de mise à jour, appliquez-la une fois. Toujours dans l'inspecteur sous les propriétés du corps rigide, augmentez la variable «DRAG», cela réduira lentement la vitesse de l'objet. Utilisez également la propriété contraintes du corps rigide pour éviter les mouvements et / ou la rotation dans un axe particulier.

J'espère que cela t'aides. :)

À votre santé.


Réponse 3:

Ouvrez le corps rigide du cube et figer la rotation. Le cube se déplacera toujours dans n'importe quelle direction, mais ne tournera pas.

Cochez simplement les cases à cocher Figer la rotation ci-dessus.

Jeux que j'ai créés:

La dernière tour

,

Spike-O-Ball

Réponse 4:

Cela dépend du résultat final que vous recherchez, mais je suppose que vous recherchez les contraintes de rotation du Rigidbody.

Cela devrait régler votre problème. Si vous avez besoin de faire pivoter l'objet à une date ultérieure, vous pouvez simplement désactiver la contrainte.


Réponse 5:

Si vous voulez seulement le pousser sur un plan XZ si je me souviens correctement, vous pouvez verrouiller l'axe Y sur son composant de corps rigide afin que la valeur Y du cube ne puisse pas changer, ce qui lui donne l'impression d'être évincé et il ne roulera pas


Réponse 6:

Le composant Rigidbody a une option pour geler la rotation afin qu'il ne roule pas mais se déplace uniquement en fonction des forces que vous lui appliquez.

Manuel:

Unity - Manuel: Rigidbody

Réponse 7:

Essayez de corriger la rotation du cube dans la fenêtre Inspecteur. Lorsque le cube est sélectionné. Puis réessayez