Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: FernandoNavarro en Octubre 26, 2020, 08:47:27 am

Título: Dibujar sólo lo que las views captan
Publicado por: FernandoNavarro en Octubre 26, 2020, 08:47:27 am
Últimamente quiero dar más importancia a la memoria.

Como algunos ya sabrán, dibujar muchas cosas a la vez consume memoria. Quiero desactivar las instancias que estén fuera del rango de visión de las views, hay una función en GMS para eso. Lo que quiero saber es como dibujar sólo lo que esté dentro de la view.

Cómo en un endless runner, he visto el recurso de eliminar un trozo de mapa por detrás de la cámara y aprovechar eso para dibujar lo de delante.
Título: Re:Dibujar sólo lo que las views captan
Publicado por: T789 en Octubre 26, 2020, 06:59:59 pm
Se supone que nada mas se pueden notar cosas que esten dentro de la view, pero si quieres hacerlo de igual forma, entonces usa un pequeño script al principio de cada evento draw de cada objeto
///scr_InView(x, y, view)
var view; view = argument2;
return (argument0 > view_xview[view] &&
argument1 > view_yview[view] &&
argument0 < view_xview[view]+view_wview[view] &_
argument1 < view_yview[view]+view_hview[view])
/// Event Draw
if (!scr_InView(x, y, 0)) exit