Bienvenue, Invité. Merci de vous connecter ou de vous inscrire. Avez-vous oublié d'activer ?

Voir les contributions

Cette section vous permet de consulter les contributions (messages, sujets et fichiers joints) d'un utilisateur. Vous ne pourrez voir que les contributions des zones auxquelles vous avez accès.


Messages - Waxabee

Pages: [1]
1
Salut,
Tu as mis le return 0; dans la boucle while, il faut le mettre après la boucle.

J'ai vraiment eu un gros sentiment de honte en lisant ton message!  ;D Je me rappelle maintenant, j'avais joué dans les parenthèses, mais j'ai du oublié de le déplacer... Quelle erreur de débutant. Tout marche maintenant, merci à vous deux!  :)

2
Graphique / Re : [SFML 2.0] Crash à la compilation sans message d'erreur
« le: Septembre 18, 2012, 01:27:47 am »
Dans ce cas peut-être que ton programme s'arrête proprement (i.e. c'est le code qui le fait s'arrêter), tu as vérifié ça ?

Oui, enfin avec des cout (comme tu dit de ne pas faire dans ton tuto  ;D ) et même si je met le cout juste avant le return, il apparaît dans la console.


Sinon tu peux toujours faire une exécution pas à pas en partant du début, tu verras bien à quel moment il s'arrête.

Avec le débuggeur? Si oui, et bien impossible de le faire marcher donc...  :(


En tout cas tu t'imagines bien qu'on ne peut t'aider, en voyant un petit morceau de code qui ne fait même plus partie de ton programme :-\

Voilà le main: (la quasi-totalité du programme se trouve dedans, les autres fichiers n'étant qu'une classe hérité de sf::Sprite)

#include <iostream>
#include <SFML/Graphics.hpp>
#include "Entity.h"
#include "Math.h"

#define WINDOW_WIDTH  1360
#define WINDOW_HEIGHT 768

using namespace std;
using namespace sf;

int main()
{
    int xWindow(WINDOW_WIDTH), yWindow(WINDOW_HEIGHT);
    Vector2f middleScreen(xWindow/2, yWindow/2);
    Vector2f posPlayer(0, 0);
    Vector2f halfSize(WINDOW_WIDTH, WINDOW_HEIGHT);

    RenderWindow window(VideoMode(WINDOW_WIDTH, WINDOW_HEIGHT), "The Walk", Style::Fullscreen);
    Keyboard keyboard;
    Font font;
    font.loadFromFile("Ressources/Textures/arial.ttf");
    Texture playerUp, enemy, ground, tree, light;
    Entities playerEntity, goblinEntity(30, 0, "Goblin", Vector2f(0, 0));
    Sprite groundSprite, treeSprite;//, lightSprite;

    Text debug;
    debug.setFont(font);
    debug.setString("The Walk - Prototype");
    debug.setPosition(10, 5);
    debug.setCharacterSize(20);
    debug.setColor(Color::White);

    window.setMouseCursorVisible(true);
    window.setVerticalSyncEnabled(true);

    //***************************************************
    // TEXTURES LOADING BEG.
    //***************************************************

    if(!playerUp.loadFromFile("Ressources/Textures/playerUp.png"))
        cerr << "Can't load player texture";
    else
    {
        playerEntity.setTexture(playerUp);
    }

    if(!enemy.loadFromFile("Ressources/Textures/enemy.png"))
        cerr << "Can't load enemy texture";
    else
    {
        goblinEntity.setTexture(enemy);
    }

    if(!ground.loadFromFile("Ressources/Textures/ground.png"))
        cerr << "Can't load ground texture";
    else
    {
        groundSprite.setTexture(ground);
    }

    if(!tree.loadFromFile("Ressources/Textures/tree.png"))
        cerr << "Can't load tree texture";
    else
    {
        treeSprite.setTexture(tree);
        treeSprite.setPosition(100, 100);
    }

    /*if(!light.loadFromFile("Ressources/Textures/light.png"))
        cerr << "Can't load tree texture";
    else
    {
        lightSprite.setTexture(light);
        lightSprite.setColor(Color(255, 255, 255, 40));
    }*/



    //***************************************************
    // TEXTURES LOADING END
    //***************************************************

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

            if((event.type == Event::KeyPressed) && (event.key.code == Keyboard::Escape))
            {
                return EXIT_SUCCESS;
            }
        }

        if(keyboard.isKeyPressed(Keyboard::W))
        {
            posPlayer = playerEntity.movePlayer(NORTH);
        }

        if(keyboard.isKeyPressed(Keyboard::A))
        {
            posPlayer = playerEntity.movePlayer(WEST);
        }

        if(keyboard.isKeyPressed(Keyboard::S))
        {
            posPlayer = playerEntity.movePlayer(SOUTH);
        }

        if(keyboard.isKeyPressed(Keyboard::D))
        {
            posPlayer = playerEntity.movePlayer(EAST);
        }

        View view(Vector2f(posPlayer.x+32, posPlayer.y+32), halfSize);

                          // LE CODE QUE J'AI AJOUTÉ SE TROUVAIT ICI
 
        window.setView(view);
        window.clear(Color::Black);
        window.draw(groundSprite);
        window.draw(playerEntity);
        window.draw(treeSprite);
        //window.draw(lightSprite);


        window.setView(window.getDefaultView()); // HUD
        window.draw(debug);
        window.display();

        return 0;
    }
}
 

Merci beaucoup pour votre aide!  :)

3
Graphique / Re : [SFML 2.0] Crash à la compilation sans message d'erreur
« le: Septembre 17, 2012, 01:16:28 pm »
Merci pour ta réponse. J'ai encore essayé de rebuild et de redémarrer (je l'avais déjà essayé) mais le programme fait la même chose. Pour le débuggeur, "Produce debugging symbols [-s]" était déjà activé. Quand je le lance, il ouvre le programme. Ce dernier se referme en ~1 sec et je peux cliquer sur les icônes du débuggeur mais il s'arrête tout de suite après. Il ne me montre pas où il est rendu dans le code et les breakpoints ne marchent pas.

4
Bonjour.

J'ai essayé un exemple de code tout à l'heure sur mon projet, en prenant soin de remplacer toutes les variables par les miennes et tout. J’exécute le code, et le programme s'ouvre et se referme tout de suite. Je me dis, bon c'est pas grave, j'ai qu'à l'effacer. De toute façon, je n'avais rien modifié d'autre et le code faisait 3 lignes. Je le retire, je compile et là le programme fait la même chose. ??? Il ferme et me met aucun message d'erreur. J'ai donc vérifié l'intégrité du code du programme, mais pourtant, avant que je mette le bout de code, tout allait très bien. Alors j'essaye le débuggeur et il me dit qu'il peut rien faire si le programme est fermé, donc il s'arrête bêtement.  :( Ça fait 30 minutes que je cherche comme un débile sur internet mais je trouve rien, alors je demande votre aide. Je ne peux pas fournir de code minimal parce que j'ai aucune idée de qu'est-ce qui fait arrêter le programme. Par contre, voici le code que j'ai testé:
        lightSprite.setPosition(0, 0);

        Vector2i curPos = mouse.getPosition();
        Vector2f lightPos = window.convertCoords(curPos) - lightSprite.getPosition();

        float angle = atan2(lightPos.y, lightPos.x) * 180.f / 3.14159265f;
        lightSprite.setRotation(angle);

Comme j'ai dit, même en le retirant, le programme crash, alors je sais plus du tout quoi faire.  :'(

Merci!

5
Général / Re : [SFML 2.0] Faire choisir un fichier à l'utilisateur
« le: Juillet 07, 2012, 12:59:06 am »
Merci de votre réponse.  :)

Je dois donc intégrer une application SFML dans une app Qt ou tout faire avec le QGraphicsView?

6
Général / [SFML 2.0] Faire choisir un fichier à l'utilisateur
« le: Juillet 06, 2012, 10:24:15 pm »
Bonjour!  :)

Je me lance dans la création d'un éditeur de niveau assez basique avec la SFML, et j'ai déjà une question.  ;D J'aimerais pouvoir charger un niveau dans l'éditeur pour le modifier. Comment faire pour ouvrir la boite de dialogue de sélection de fichier? Et si on ne peut pas, y a t'il une autre façon de charger le fichier que l'on veut?

Merci.  :)

P.S: Je sais comment charger un fichier avec .loadFromFile, je ne crois pas que ce soit la solution pour faire choisir un fichier à l'utilisateur.

Pages: [1]