Bienvenue, Invité. Merci de vous connecter ou de vous inscrire.
Avez-vous perdu votre e-mail d'activation ?

Auteur Sujet: [RESOLU] Fullscreen - windows - OSX  (Lu 9059 fois)

0 Membres et 4 Invités sur ce sujet

krockdur

  • Newbie
  • *
  • Messages: 12
    • Voir le profil
    • E-mail
[RESOLU] Fullscreen - windows - OSX
« le: Avril 16, 2016, 10:48:38 am »
Bonjour à tous,

D'habitude je trouves toutes les réponses dans la documentation ou le forum mais sur ce problème, je sèche.

Je développe mon jeux sous Windows, et ce n'est que quand j'ai voulu le tester sur OS X que je me suis rendu compte du problème.

Je n'ai pas le même "rendu" du mode plein écran entre les deux OS.

Programme de test minimale :


#include <SFML/Graphics.hpp>
#include <vector>
#include <iostream>

int main()
{

        sf::RenderWindow window(sf::VideoMode(800, 600), "SFML works!", sf::Style::Fullscreen);


        while (window.isOpen())
        {
                sf::Event event;
                while (window.pollEvent(event))
                {
                        if (event.type == sf::Event::Closed)
                                window.close();
                }

                window.clear(sf::Color::White);
               
                window.display();
        }

        return 0;
}

 

Je m'assure d'avoir une résolution accepté par les deux  écrans (natifs : un 24" 1920 X 1080 et un 13" 2560 X 1600) : je choisis une 800 X 600.

Sur Windows j'ai bien un plein écran de 800 X 600 entièrement blanc.
Sur OS X, j'ai un plein écran noir avec un rectangle blanc de 800 X 600 au milieu. Il n'y a pas de "scale".

Merci.
« Modifié: Avril 19, 2016, 06:52:29 pm par krockdur »

Hiura

  • SFML Team
  • Hero Member
  • *****
  • Messages: 4321
    • Voir le profil
    • E-mail
Re : Fullscreen - windows - OSX
« Réponse #1 le: Avril 17, 2016, 10:55:23 am »
En fait ça a été discuté il y a un bout de temps déjà ici : http://en.sfml-dev.org/forums/index.php?topic=17246.msg124034#msg124034

C'est probablement plus par manque de temps qu'autre chose que l'état de la discussion n'a pas avancé. :-/
SFML / OS X developer

krockdur

  • Newbie
  • *
  • Messages: 12
    • Voir le profil
    • E-mail
Re : Fullscreen - windows - OSX
« Réponse #2 le: Avril 17, 2016, 11:07:33 am »
Bonjour,

Effectivement j'ai trouvé cette discussion ainsi qu'un problème déjà remonté sur github, mais qui datent de plus d'un an.

Est ce prévu d'avoir d'avoir un "plein écran" sur os x ?

Merci.

Hiura

  • SFML Team
  • Hero Member
  • *****
  • Messages: 4321
    • Voir le profil
    • E-mail
Re : Fullscreen - windows - OSX
« Réponse #3 le: Avril 17, 2016, 11:08:29 am »
Si tu as un patch qui tient la route à proposer, oui.  ;)
SFML / OS X developer

krockdur

  • Newbie
  • *
  • Messages: 12
    • Voir le profil
    • E-mail
Re : Fullscreen - windows - OSX
« Réponse #4 le: Avril 17, 2016, 11:15:00 am »
OK, je comprends. Je ne connais pas la source du problème mais cela dépasse certainement mes compétences  ;D

Merci.

EDIT : Si quelqu'un passe sur ce topic et a réussi à contourner le problème.
« Modifié: Avril 17, 2016, 11:17:39 am par krockdur »

Cpl.Bator

  • Hero Member
  • *****
  • Messages: 540
    • Voir le profil
Re : Fullscreen - windows - OSX
« Réponse #5 le: Avril 17, 2016, 04:55:55 pm »
et de créer un screen à la taille du bureau puis une vue en 800x600 ne résout pas ton problème en le contournant ?

static VideoMode sf::VideoMode::getDesktopMode()   

Hiura

  • SFML Team
  • Hero Member
  • *****
  • Messages: 4321
    • Voir le profil
    • E-mail
Re : Fullscreen - windows - OSX
« Réponse #6 le: Avril 17, 2016, 06:10:55 pm »
ah, en passant : le ratio de tes deux écrans de 800x600 ne correspondent pas donc tu aurais un format étirer pas forcement appréciable si SFML te remplissait tout ton écran quand même.
SFML / OS X developer

krockdur

  • Newbie
  • *
  • Messages: 12
    • Voir le profil
    • E-mail
Re : Re : Fullscreen - windows - OSX
« Réponse #7 le: Avril 17, 2016, 07:02:02 pm »
et de créer un screen à la taille du bureau puis une vue en 800x600 ne résout pas ton problème en le contournant ?

static VideoMode sf::VideoMode::getDesktopMode()

Oui bonne idée, par contre sf::VideoMode::getDesktopMode() me retourne une résolution de 1280 X 800.
Donc j'ai un rectangle de 1280 par 800 centré au milieu des bandes noires.

Je vais chercher de ce côté.

Merci

Hiura

  • SFML Team
  • Hero Member
  • *****
  • Messages: 4321
    • Voir le profil
    • E-mail
Re : Fullscreen - windows - OSX
« Réponse #8 le: Avril 17, 2016, 08:02:16 pm »
T'as la dernière version dispo sur Github? Si ce n'est pas le cas, teste ça car y a des trucs qui ont récemment été corrigés la dessus.
SFML / OS X developer

krockdur

  • Newbie
  • *
  • Messages: 12
    • Voir le profil
    • E-mail
Re : Fullscreen - windows - OSX
« Réponse #9 le: Avril 17, 2016, 08:59:18 pm »
J'ai bien la 2.3.2 prise sur le site.

krockdur

  • Newbie
  • *
  • Messages: 12
    • Voir le profil
    • E-mail
Re : Fullscreen - windows - OSX
« Réponse #10 le: Avril 17, 2016, 09:16:57 pm »
Ce qui semble étonnant, c'est que dans les paramètres système, la résolution est bien calée au réglée par défaut pour l'écran de 13" : 1280:800. Cependant, il ne s'agit pas de la résolution native de l'écran.... (2560:1600).

Tant pis, en tout cas merci pour votre aide.

Hiura

  • SFML Team
  • Hero Member
  • *****
  • Messages: 4321
    • Voir le profil
    • E-mail
Re : Fullscreen - windows - OSX
« Réponse #11 le: Avril 17, 2016, 09:22:07 pm »
Non, pas la version 2.3.2... elle est vieille celle là ! =P

La version "master" sur Github, à compiler soit même (cf. tutoriel cmake). (Jamais testé, mais `brew install --HEAD sfml` peut faire l'affaire suivant comment.)
SFML / OS X developer

krockdur

  • Newbie
  • *
  • Messages: 12
    • Voir le profil
    • E-mail
Re : Fullscreen - windows - OSX
« Réponse #12 le: Avril 17, 2016, 11:12:10 pm »
Je viens de tester. Aucun changement.

 

krockdur

  • Newbie
  • *
  • Messages: 12
    • Voir le profil
    • E-mail
Re : Re : Fullscreen - windows - OSX
« Réponse #13 le: Avril 18, 2016, 05:10:41 am »
et de créer un screen à la taille du bureau puis une vue en 800x600 ne résout pas ton problème en le contournant ?

static VideoMode sf::VideoMode::getDesktopMode()

Donc lorsque que je défini une vue plus petite, elle ne met pas non plus en plein écran (mais fait bien la taille de la vue).


Game::Game(int width, int height, std::string title, sf::Color clearColor)
{
        _clearColor = clearColor;
    _window.create(sf::VideoMode(width, height), title, sf::Style::Fullscreen);
    sf::View vue;
    vue.setCenter(0, 0);
    vue.setSize(1024, 768);
    _window.setView(vue);
}

 

Hiura

  • SFML Team
  • Hero Member
  • *****
  • Messages: 4321
    • Voir le profil
    • E-mail
Re : Fullscreen - windows - OSX
« Réponse #14 le: Avril 18, 2016, 11:32:38 am »
Peut-être qu'il y a un malentendu : la version master ne change pas comment le plein-écran est rendu mais corriger certains bugs, notamment au niveau de la taille retournée par getDesktopMode. Si tu utilises ce VideoMode, ta fenêtre prendra bien tout l'écran.
SFML / OS X developer