Noticias

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

Third Person Controller Toma Armas

Iniciado por UnityDevelopersXD, Octubre 20, 2016, 09:32:36 PM

Tema anterior - Siguiente tema
Octubre 20, 2016, 09:32:36 PM Ultima modificación: Octubre 22, 2016, 11:23:14 AM por pioj
Hola que tal!!!
 
Bueno continuo trayéndoles los errores o preguntas que ocurren aqui en mi juego.Creo que esto lo coloque antes,pero igual no entendi muy bien.
 
Bueno lo que quiero es que mi personaje "tome las armas" es decir, ya tengo el modelo y los scripts (C#) para recoger el arma y todo, el arma se posiciona bien,dispara,etc.
 

  •    Lo que pasa es que el modelo de mi personaje es como si fuera un Third Person Controller,pero el juego es un FPS, lo hago de esta manera pues el juego tendra multijugador local y online,por lo tanto los personajes deben verse unos a otros bien, osea como toman las armas, se mueven,etc.


  •    Entonces no se como cuadrar las manos para que coincidan con la arma, es con animaciones claro esta,pero animation o que? Y como hago para que coincidan, pues por ejemplo, la animacion de recargar, el Arma va por un lado y la mano por otro.


  •    También me gustaría saber una manera menos "Tediosa" de elejir algun esqueleto en el Animation, pues cada vez que quiero añadir un punto (osea la opcion para decirle si quiero mover,rotar,etc) tengo que abrir tooda la jerarquia de huesos y es muy fastidioso.


¿Habria alguna manera para que el arma se moviera junto con las animaciones de los brazos por ejemplo?
 
Creo que eso seria todo por ahora, espero su respuesta.
 
Gracias.

Buenas, por lo que te he entendido estas haciendo un FPS, pero has puesto un modelo y en la cabeza del modelo has puesto la cámara. Si lo has hecho así valla forma de complicarte la vida, si es por el multijugador online, no es mas sencillo que pongas las manos solo en el jugador local y crees un Gameobject que sea el jugador remoto. Si me dices que es en local con pantalla dividida, osea que en la misma aplicación se verán dos jugadores, no es mas fácil utilizar layers en las cámaras. Creo que lo estas haciendo de la forma mas complicada.

No entiendo, perdon, dejame ver si es asi:
 
-Sip, es un FPS, cree el modelo COMPLETO (manos,pies,etc) y le eh colocado la camara en la cabeza, el personaje se mueve y tal y las armas se posicionan en donde deben,disparan y todo.
 
-Es un juego en donde puedes elejir la historia(Solo) y ademas el Online y Offline (Varios jugadores (4 Maximo) en la misma PC) por lo tanto se deben de ver, pues es cooperativo/competitivo y seria raro ver unas manos y armas flotando por todos lados.
 
-No entiendo lo que me quieres decir con layers, osea que el jugador no lo vea, pero los demas si? de ser asi de igual manera tengo que hacer que las manos cuadren con el arma no?
 
Gracias por responder.

Cita de: UnityDevelopersXD date=14770810901-No entiendo lo que me quieres decir con layers, osea que el jugador no lo vea, pero los demas si?
   
   
      2-de ser asi de igual manera tengo que hacer que las manos cuadren con el arma no?
   


1- asi como suena, los layers te permiten discriminar que elementos se rendean en deternimadas camaras, te recomiendo que le heches una leida al manual en linea de unity sobre layers
 
2-podrias simplemente hacer todas animaciones para todas tus armas, tener emparentadas los objetos de las armas a huesos clave de tu modelo (por ejemplo....no se, quizas... las manos? digo, son cosas que llevas en las manos) y cuando "cambias de armas" desactivas todos los objetos de las armas, menos la que equipaste obviamente.

Mira los layers son una forma en la que puedes seleccionar que un objeto no sea visible para una cámara pero para el resto de cámaras si, como en la versión a pantalla partida de tu juego cada jugador tendrá una cámara diferente puedes utilizar esto para que la cámara de un jugador vea solo sus manos y no el modelo completo y vea el modelo completo de otros jugadores. Así te ahorras el tener que estar cuadrando el modelo completo y solo poner las manos. Te pongo la referencia de esto de Unity
 
https://docs.unity3d.com/Manual/Layers.html

Muchisimas gracias a Todos por responder.
 
Realmente en Unity me manejo con algunas cosas mas que otras, sabia que eran las layers pero no sabia que ocultaban objetos 3D, muchas gracias por decirme, ya me leo el manual.
 
Buena idea lo de emparentar el arma con los huesos del personaje, voy a intentarlo para ver que tal queda.
 
Si, cuando el personaje cambiaba de arma (De principal a Secundaria por ejemplo) se desactivaba el GameObject asi que usare eso tambien.
 
Entonces en resumen debo hacer esto:
 
-Al personaje quitarle el objeto completo(con una layer) y colocar solo manos Riggeadas y animarlas junto con el arma, asi con todos y que muestren el objeto 3D del otro.
 
-Animo al Modelo 3D de tal manera de que cuadre con las acciones del personaje.
 
Creo que es eso cierto?
 
Denuevo gracias por ayudar, ya me pongo a eso.

Etiquetas: