Noticias

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

Fallo con las partículas (Solucionado)

Iniciado por zHeMaa, Octubre 14, 2017, 05:54:30 PM

Tema anterior - Siguiente tema
Octubre 14, 2017, 05:54:30 PM Ultima modificación: Octubre 16, 2017, 05:32:45 PM por zHeMaa
Buenas, tengo un enemigo que cuando muere suelta partículas, hasta ahí bien. El problema es que cuando muere las partículas siempre salen desde sus pies y en angulo de rotación x = 0.
 
Mi idea, o objetivo mejor dicho es hacer que cuando muera ese objeto las partículas se creen en su cabeza (un objeto que yo llamo "EnemyHead" dentro del enemigo el cual esta situado en su cabeza), y en angulo de rotación = 270 (que hace que la sangre, o partículas.. salgan en dirección al cielo, o hacia arriba, en vez de para el lado..).
 
Mi actual código de cuando muere es este:
 



   
              if (CurrentHealth <= 0) 

              {

                  Instantiate (Blood, transform.position, Quaternion.identity);

                  Destroy (gameObject);

              }

          }
   

[/quote]
 
Bueno, eso es todo, a ver que solución hay.. Gracias!

Colocar el objeto Blood en la posición de la cabeza y modificar el Shape de las particulas para que salgan hacia la dirección que tu quieres.

algo asi:
 

GameObject bloodPartics = (GameObject)Instantiate(Blood, transform.position,new Quaternion());
bloodPartics.transform.position += Vector3.up * 5f;//pon la distancia que quieras
bloodPartics.transform.Rotate(0f, -90f, 0f);

 
 

Cita de: Igor date=1508065215algo asi:
   
   

GameObject bloodPartics = (GameObject)Instantiate(Blood, transform.position,new Quaternion());
bloodPartics.transform.position += Vector3.up * 5f;//pon la distancia que quieras
bloodPartics.transform.Rotate(0f, -90f, 0f);

   
       
   


Perfecto!! lo he probado y funciona de 10, he substituido el bloodPartics por el nombre que tiene mi sistema de partículas lógicamente y luego en "bloodPartics.transform.Rotate(0f, -90f, 0f);" en vez de poner el -90 en el segundo es en el primero, vamos.. "bloodPartics.transform.Rotate(-90f, 0f, 0f);" y listo.
 
Lo pongo por si a otro le pasa lo mismo.

Cita de: zHeMaa date=1508167943en "bloodPartics.transform.Rotate(0f, -90f, 0f);" en vez de poner el -90 en el segundo es en el primero, vamos.. "bloodPartics.transform.Rotate(-90f, 0f, 0f);" y listo.
   


ok, si, me he confundido con XYZ jeje

Etiquetas: