Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 2 sur 2
  1. #1
    Membre régulier
    Homme Profil pro nico
    Second de cuisine
    Inscrit en
    avril 2005
    Messages
    188
    Détails du profil
    Informations personnelles :
    Nom : Homme nico
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Second de cuisine
    Secteur : Alimentation

    Informations forums :
    Inscription : avril 2005
    Messages : 188
    Points : 72
    Points
    72

    Par défaut SFML2: Problème avec sf::View

    Bonjour

    J'ai un problème en utilisant une view.

    Voici le code, lorsque je charge ma texture de fond, je configure ma view:

    Code cpp :
    1
    2
    3
    4
    5
    6
    7
    8
            if(load_map_order>=0)
            {
                // chargement de la map
     
                m_game.getRenderer().mapView().setSize(800, 600-getToolboxHeight());
                m_game.getRenderer().mapView().setCenter(400, (600-getToolboxHeight())/2);
                load_map_order = -1;
            }

    Et bien sur, l'affichage:
    Code cpp :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
            if(m_game.getRenderer().hasMapTexture())
            {
               /// mise à jour de la vue, pour le scrolling, la fonction n'appelle que sf::View::move
                m_game.getRenderer().updateViews({0, 0, 0, getToolboxHeight()/2});
              /// on prend la vue pour le scrolling
                App.setView(m_game.getRenderer().mapView());
              /// dessine la map
                App.draw(m_game.getRenderer().mapSprite());
              /// vue normale !
                App.setView(App.getDefaultView());
            }


    Le problème, c'est que.. voici un screenshot en fichier joint!

    Quel est le problème ?

    Merci d'avance,

    nico
    Images attachées Images attachées

  2. #2
    Membre régulier
    Homme Profil pro nico
    Second de cuisine
    Inscrit en
    avril 2005
    Messages
    188
    Détails du profil
    Informations personnelles :
    Nom : Homme nico
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Second de cuisine
    Secteur : Alimentation

    Informations forums :
    Inscription : avril 2005
    Messages : 188
    Points : 72
    Points
    72

    Par défaut

    Solution:
    Il fallait un viewport en plus

    Code :
    1
    2
    3
                m_game.getRenderer().mapView().setSize(800, 600-getToolboxHeight());
                m_game.getRenderer().mapView().setCenter(400, (600-getToolboxHeight())/2);
                m_game.getRenderer().mapView().setViewport({0, 0, 1, (600.f-getToolboxHeight())/600.f});

+ Répondre à la discussion
Cette discussion est résolue.

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •