Noticias

¡RECUERDA QUE SI ERES UN NUEVO USUARIO, DEBES PRESENTARTE PARA PODER PUBLICAR MENSAJES! | TENEMOS CANAL OFICIAL DE TELEGRAM: t.me/unity3dspain

[Solucionado] Inercia en una cuesta

Iniciado por Manuelspk, Febrero 18, 2016, 12:06:33 AM

Tema anterior - Siguiente tema
Febrero 18, 2016, 12:06:33 AM Ultima modificación: Febrero 18, 2016, 03:34:40 PM por Manuelspk
Hola!Soy nuevo un poco en este mundo de Unity. Estoy intentando hacer un ejemplo donde el personaje corra a mucha velocidad y luego baje una cuesta. El problema es que debido a la inercia el personaje sale despedido en vez de permanecer pegado al suelo. He probado a subir la gravedad y sigue sin hacerlo fluido y no creo que sea la mejor solución. Para aclarar un poco, he hecho un esquema con el gran Paint (me lo he currado mucho, si)Alguna idea o pista de por donde debo ir, os lo agradecería mucho. Muchas gracias!http://s30.photobucket.com/user/es***s/media/Sin%20tiacutetulo_zps4lmpztyx.jpg.html">   

Bueno, pues eso es normal con físicas en un engine. Tal vez no deberías utilizar las físicas (addforce, etc) y utilizar los transform para el movimiento.

Bueno, gracias por contestar. La cosa es que si quiero aprovechar todas las ventajas que me proporciona el sistema de físicas, pero conseguir este resultado en algunas partes del trayecto (como el caso que he puesto). No sé si habría alguna forma o algún pequeño truco de conseguirlo, sin tener que prescindir del sistema de físicas, que lo veo un poco drástico. Algo como que el material ejerza una fuerza tipo "imán".Es un juego en 3d, se me ha olvidado comentar.

Febrero 18, 2016, 02:34:13 AM #3 Ultima modificación: Febrero 18, 2016, 02:38:42 AM por Uli
Eso pasa porque la unica fuerza que esta actuando es la de gravedad, al momento de dejar el borde tienes una velocidad horizontal "v", nunca uso el sistema de físicas pero con aplicar una fuerza que desacelere el obj deberia bastar. O sea, una fuerza en dirección a la cuesta, pero solo a la componente horizontal.Bajar la gravedad no te va a servir, al momento de dejar el borde la componente x no desacelera porque ninguna fuerza actua en direccion opuesta y no hay aire, cambia cuando impacta el suelo, por eso describe parte de una parabola. Es un tiro parabolico básicamente.

Muchas gracias por vuestra ayuda. Al final me he dado cuenta que en el prefab del First Person Controller, hay una variable pública que se llama "Stick to ground force". Más elocuente imposible, y hace exáctamente lo que quería.Muchísimas gracias!

Etiquetas: