Noticias

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

Pregunta sobre rendimiento en script de disparo

Iniciado por Jose134, Mayo 28, 2015, 09:54:45 PM

Tema anterior - Siguiente tema
Me gustaria saber cual seria la mejor forma para crear mi script de disparo para no tener muchos problemas de rendimiento... Instanciar balas o hacer raycast?? Normalmente lo haria instanciando pero el caso es que para este caso especifico serian un monton de balas (una ametralladora con municion practicamente infinita...) asi que me ha surgido la duda. Que me recomendais???

Hice la misma pregunta, me dijeron que RayCast, si te decides por instanciar también me dijeron que hiciera un pool. Yo al final hice el pool de 5 balas

imaginaba que seria raycast pero aun asi tenia que preguntarlo... En cuanto al pool tambien lo pense pero nunca he hecho uno y ademas la cantidad de balas aun asi seria muy grande
Gracias

Todo dependiendo del juego, si no es necesario ver la Bala, ¿Para que intanciarias un objeto?, ¿es un FPS de Simulación o Arcade? por lo general en la simulación disparan Rayos y calculan impacto caída de la bala y demás cosas. En juegos de Caza, se trata de Disparar un Objeto, obviamente se omiten las colisiones para evitar caídas de Frame per Second.
 
La opción mas económica es RayCast, luego RayCast Simulado Fisica, y Por ultimo el Objeto simulando Fisica, que por cierto, a las balas que son intanciadas como objetos llevan un RayCast para detectar colision y demás.

si usas una metralleta y no necesitas ver las balas una raycast 100%, con una corrutina si usas C#
si necesitas ver las balas, instancia un objeto con un lineRender o un TrailRender

No indicas ni el género de juego que es. Es 2D ó 3D? Es un FPS, o un shooter mata-marcianos, o un plataformas, o qué es?
 
Si lo aclaras, podremos responderte mucho mejor. 

Etiquetas: