Désactivez la fonction d'échelle dans l'onglet Arrière-plans de la carte. Si cela semble hors échelle, assurez-vous que votre texture pour le fond est de la même taille que la pièce / carte dans laquelle vous vous trouvez.
Vous pouvez également utiliser ce post ici pour créer un script d'arrière-plan qui mettra à l'échelle le fond avec des résultats nets (espérons-le).
Cela utilise des surfaces, donc si vous avez besoin d'aide supplémentaire à ce sujet - ce message fournit beaucoup d'informations.
ÉDITER:
Pour en revenir à mes réponses, j'ai réalisé que ce n'était pas à la hauteur et avait besoin du contenu du tutoriel. C'est ici:
ÉTAPE 1 : Choisissez l'échelle que vous souhaitez. Utilisez une vue pour chaque pièce et faites évoluer le port W et le port H de manière appropriée. Ainsi, par exemple, si vous utilisiez une échelle de 2 ... cela ressemblerait à ceci, dans l'éditeur de salle de GM.
Il est important que cela soit cohérent pour toutes les pièces. Si vous avez beaucoup de pièces, il pourrait être plus facile de le faire via le code *. Je préfère le faire de cette façon, car les valeurs ne sont pas constantes et je peux prendre en charge plusieurs échelles différentes.
ÉTAPE 2 : Créez 3 scripts, screen_init, screen_begin et screen_end. Voici ce qui se passe dans chacun des scripts ...
Citation de: screen_init
// screen base(view_wview and view_hview)
screen_x = 0;
screen_y = 0;
screen_w = 320;
screen_h = 240;
screen_scale = 2;
// create a surface for the whole screen to be drawn on
screen = surface_create(screen_w,screen_h);
// this will destroy the screen object if surfaces are not supported on the graphics card, reverting to the viewport method
if screen = -1{instance_destroy();}
Citation de: screen_begin
// this draws the surface on the screen
surface_reset_target();
draw_clear(0);
draw_set_blend_mode_ext(bm_one, bm_zero);
draw_surface_stretched(screen,screen_x,screen_y,screen_w*screen_scale,screen_h*screen_scale);
draw_set_blend_mode(bm_normal);
screen_refresh();
Citation de: screen_end
// this sets surface 'screen' as the drawing target for everything in the game, so all drawing will be done on this surface and not on the game screen
surface_set_target(screen);
ÉTAPE 3 : Nous avons maintenant des scripts, mais où vont-ils? Créez un objet. Comme obj_screen, objScreen, o_screen ou autre, et procédez comme suit:
- A) placez screen_initscript dans l'événement Create.
- B) placez le script screen_begin dans l'événement Begin Step.
- C) placez le script screen_end dans l'événement End Step.
Et placez cet objet dans la première salle de votre jeu, marquez-le comme persistant et assurez-vous qu'il n'y a pas de doublons.
Vous avez terminé et avez maintenant une mise à l'échelle nette et précise = D