Hola buenas, como bien dice el titulo tengo un problema con el tema del zoom, yo utilice el codigo que nos ofrece GMS en sus tutoriales.... que es algo como esto :
CREATE
//zoom
initial_w = view_wview[0];
initial_h = view_hview[0];
v_scale = 1;
v_dist = 0;
STEP
var mx0raw, my0raw, mx1raw, my1raw;
mx0raw = device_mouse_raw_x(0);
my0raw = device_mouse_raw_y(0);
mx1raw = device_mouse_raw_x(1);
my1raw = device_mouse_raw_y(1);
if device_mouse_check_button(1, mb_left)
{
if device_mouse_check_button_pressed(1, mb_left)
{
v_dist = point_distance(mx0raw, my0raw, mx1raw ,my1raw) * v_scale;
}
v_scale = v_dist / max(1, point_distance(mx0raw, my0raw, mx1raw, my1raw));
if v_scale < 0.5 v_scale = 0.5 else if v_scale > 1.5 v_scale = 1.5;
view_wview = initial_w * v_scale;
view_hview = initial_h * v_scale;
view_xview = x - (view_wview / 2);
view_yview = y -(view_hview / 2); //asi lo tengo yo ya que no quiero que me haga zoom en un objeto
}
//y asi esta en el tutorial
view_wview[0] = initial_w * v_scale;
view_hview[0] = initial_h * v_scale;
view_xview[0] = global.Player_x - (view_wview[0] / 2);
view_yview[0] = global.Player_y - (view_hview[0] / 2);
Entoces primero por que cuando hago ese zoom la pantalla como que me vibra y segundo como puedo hacer para que cuando cree diferentes objetos por la room se me creen siempre en el mismo sitio sin influir que este mas cerca o mas lejos la room.
Es decir si lo tengo al maximo de zoom que se me cree el objeto como si estaria la room por defecto..
Espero alguna respuesta gracias ;)
El código de ejemplo no es muy bueno, hay que agregar varios detalles para que funcione sin problemas.
Si el objeto que quieres dibujar es parte del HUD puedes dibujarlo en el evento Draw GUI, así no es afectado por la view.