2013-04-18 4 views
1

J'utilise C++ avec Allegro 4.2 pour construire un jeu Windows.C++ & Allegro 4.2 - J'ai besoin de graphiques pour étirer en mode fenêtré

Je veux des graphiques extensibles en mode fenêtré. Je suis un qui aime donner aux utilisateurs de mes programmes beaucoup d'options; Je déteste toujours quand je joue un jeu en mode fenêtré et je n'ai pas le droit d'étirer la fenêtre ou le contenu à l'intérieur de la fenêtre ne l'étire pas (ça craint beaucoup pour les jeux de taille 640x480 joués sur des écrans haute résolution qui ne permettent même pas le plein écran, nécessitant un outil de grossissement pour le lire correctement). Je me demande s'il y a un moyen quelconque dans Allegro ou peut-être s'il y a une autre bibliothèque de programmation qui permet aux graphiques de s'étirer avec la forme de la fenêtre elle-même. Je sais déjà comment faire passer mes applications Allegro en mode plein écran; J'essaie d'améliorer le mode fenêtré. Une grande raison à cela est que mon artstyle est de l'art à basse résolution (je l'appelle style "Bitmap Brothers"); c'est très bien pour les jeux car c'est organisé et facile à éditer. Je ne veux pas avoir à aller plus haut que 640x480 pour augmenter la taille car c'est loin d'être élevé pour l'art basse résolution, mais ma fenêtre reste trop petite en mode fenêtré.

J'ai remarqué que Allegro 5.0.8 a cette ligne de code: al_set_new_display_flags(ALLEGRO_WINDOWED | ALLEGRO_RESIZABLE);

A la fin, il dit « ALLEGRO_RESIZABLE », qui pourrait être la fonction que je cherche? Si oui, à quel point Allegro change-t-il de 4.2 à 5+?

Répondre

0

Allegro 4 ne prend pas en charge les fenêtres redimensionnables par l'utilisateur. Allegro 5 le fait (comme vous l'avez noté), mais il est complètement réécrit et n'est pas rétrocompatible du tout. Pourtant, je vous recommande fortement de passer à l'application car le développement sur Allegro 4 est presque mort.

+0

Je suppose que la fenêtre redimensionnable étire également les graphiques? –

+0

Avec Allegro 5, vous êtes averti via un événement lorsque l'affichage est redimensionné. Si vous ne reconnaissez pas le redimensionnement, je crois que les graphiques restent étirés, bien que ce comportement ne soit probablement pas documenté. Si vous ne voulez pas vous fier à ce comportement, il est trivial de mettre en place une transformation globale qui échelonne ou «recadre» toutes vos opérations de dessin à la taille désirée. – Matthew

+0

Très bien, je vais essayer de passer à Allegro 5 et de voir comment ça se passe. Y a-t-il d'autres bibliothèques ou méthodes de programmation que vous connaissez qui pourraient me pousser plus loin dans cette fonctionnalité? –