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.


Sujets - Varden

Pages: [1]
1
Général / [RESOLU]visual studio 14(2015) "symbol __declspec(dllimport)"
« le: Novembre 07, 2016, 02:37:44 pm »
Bonjour.

J'avais créer une version améliorer de "VertexArray" pour mes besoins personnels, rajoutant simplement quelques méthodes et en copiant a l'identique le reste. tout cela sous linux(ubuntu). pas de problèmes, mais je viens de passer sous windows et meme si SFML marche très bien, cette classe-ci me renvois une erreur que je ne comprend pas. voici ma classe:

header:
(click to show/hide)

source:
(click to show/hide)

je ne pense pas qu'en soit, le code pose problème. cela doit venir d'ailleurs... voici les erreurs que j'ai lorsque je "build" mon projet sous VS14:

Severity        Code    Description     Project File    Line    Suppression State
Error   LNK1120 1 unresolved externals  Simulation meteo 1      C:\Users\Varden\Documents\Programmation\C++\Visual studio 2015\C++\SFML-2.4.0\Projets\installation SFML 2.4\Simulation météo 1\x64\Release\Simulation meteo 1.exe     1
Error   LNK2001 unresolved external symbol "__declspec(dllimport) const va::VertexTab::`vftable'" (__imp_??_7VertexTab@va@@6B@) Simulation meteo 1      C:\Users\Varden\Documents\Programmation\C++\Visual studio 2015\C++\SFML-2.4.0\Projets\installation SFML 2.4\Simulation météo 1\Simulation météo 1\VertexTab.obj     1      
 

et les 20 warnings suivants:

(click to show/hide)

cela fais des heures que je farfouille sur google, mais mon manque d'expérience m'empêche de comprendre d'où vient le probleme. je précise que j'ai correctement linker SFML et que l'exemple du tutoriel d'installation fonctionne parfaitement. C'est pourquoi je doute que cela vienne du code en lui meme, mais sans doute d'une configuration de Visual Studio. J'ai voulu l'essayer car apres m'y etre initier pour utiliser "Unity", je l'ai trouvé moins "bugué" que "code::blocks".

Merci d'avance de vos réponse, je reste sur le qui-vive pour la moindre précision qu'il me faudrait apporter pour vous aider a m'aider ^^.

2
Général / [RESOLU] error: ld returned 1 exit status ubuntu 16.04
« le: Mai 21, 2016, 11:54:38 pm »
Alors voila, presque a chaque fois ca foire et là j'ai tout essayer rien ne veut, je m'explique:

J'ai installer ubuntu 16.04 dernier du nom. je réinstalle code::blocks, mais il déconne et je vois que la version des paquets, la 13.jesaisplus est pas bien et donc comme indiqué j'installe la version 16.01, bref là n'est pas le problème.

je code avec SFML, et donc je télécharge la source, la compile via cmake-gui, configure configure generate ok. je fais mon make et sudo make install, tout va bien.

j'ouvre un projet effectuer sous code::blocks et avec SFML sur ubuntu 14.04 et qui fonctionnait très bien. je lance la compilation la seule erreur que ca marque dans la fenetre "build messages" est:

||error: ld returned 1 exit status|

je regarde dans la fenetre "Build log":


-------------- Build: Release in test fuck 2 (compiler: GNU GCC Compiler)---------------

g++ -L/usr/local/lib -o "bin/Release/test fuck 2" obj/Release/Main.o  -s  -lsfml-network -lsfml-audio -lsfml-graphics -lsfml-window -lsfml-system
/usr/bin/ld: bin/Release/test fuck 2: symbole caché « __cpu_model » dans /usr/lib/gcc/x86_64-linux-gnu/5/libgcc.a(cpuinfo.o) est référencé par DSO
/usr/bin/ld : échec de l'édition de liens finale : Mauvaise valeur
collect2: error: ld returned 1 exit status
Process terminated with status 1 (0 minute(s), 0 second(s))
1 error(s), 0 warning(s) (0 minute(s), 0 second(s))
 
alors j'ai essayer en ajoutant dans "Project->Build options->Search directories" tout les chemins de include et de lib possible, que ce soit ceux de la source, de "usr/locale/lib" ou se trouve les libsfml, etc, rien n'y fait, absolument rien. que je ne mette rien, que je mette tout, que j'inverse, etc ca ne change absolument rien au résultat, meme pas d'erreur en plus, rien.

voila le code le plus minimal utilisant sfml et qui me renvois cela:

#include <SFML/Graphics/RenderWindow.hpp>
#include <SFML/Graphics/Text.hpp>
#include <SFML/Window/Event.hpp>

#include <iostream>

int main()
{
    srand (time(nullptr));

    sf::RenderWindow fenetre(sf::VideoMode(1024,512), "fenetre", sf::Style::Default);

    while(fenetre.isOpen())
    {
        sf::Event evenements;
        while(fenetre.pollEvent(evenements))
        {
            switch (evenements.type)
            {
                case sf::Event::Closed:
                    fenetre.close();
                    break;
                case sf::Event::KeyPressed:
                    if(evenements.key.code == sf::Keyboard::Escape)
                    {  fenetre.close();  }
                    break;
                default:
                    break;
            }
        }

        fenetre.clear(sf::Color::Transparent);

        fenetre.display();
    }

    return EXIT_SUCCESS;
}

si j'utilise un IDE, c'est justement pour ne pas avoir a me taper les lignes de commandes de compilation et tout le bazar, en plus de toutes les options pratiques comme l'autocomplétion etc... si vous connaissez un autre IDE sous Ubuntu 16.04 avec ces fonctionnalités, je serais ravi d'aller l'essayer. sinon, je vous en prie, aider moi a résoudre ce problème qui doit être très simple... je vous en remercie d'avance mille fois...

3
Graphique / [resolu]Problème Shader
« le: Février 02, 2016, 06:33:12 pm »
Bonjour/Bonsoir, J'utilise depuis un moment la SFML (2.1 actuellement) et je m'interesse tout juste aux Shaders.

Je ne connais pas vraiment comment fonctionne OpenGl, et je m'en remet a la SFML pour ca, pour le moment. J'ai parcouru le tuto d'OpenClassrooms sur le GLSL, et celui de la SFML et j'ai parcouru le forum mais je ne comprend toujours pas où est mon erreur...

Voici mon code:

#include <SFML/Graphics/RenderWindow.hpp>
#include <SFML/Graphics/Text.hpp>
#include <SFML/Window/Event.hpp>
#include <SFML/Graphics/Shader.hpp>

#include <iostream>

#include "VertexTab/VertexTab.hpp"            //reprise de sf::VertexArray avec quelques methodes persos.

int main()
{
    srand (time(NULL));

    //sf::RenderWindow fenetre(sf::VideoMode::getDesktopMode(), "fenetre", sf::Style::Fullscreen);
    sf::RenderWindow fenetre(sf::VideoMode(1024,512), "fenetre", sf::Style::Default);
    fenetre.setPosition(sf::Vector2i((1920-fenetre.getSize().x)/2,(1080-fenetre.getSize().y)/2));
    fenetre.setVerticalSyncEnabled(true);

    sf::Texture texture1, texture2;

    if (!texture1.loadFromFile("Ressources/pierres_sable.png"))
        return EXIT_FAILURE;

    if (!texture2.loadFromFile("Ressources/pierres_grises.png"))
        return EXIT_FAILURE;

    va::VertexTab rect(sf::Triangles,6);

    //positionnement des vertexs.

    rect[0].position=sf::Vector2f(100.f,100.f);
    rect[1].position=sf::Vector2f(100.f,164.f);
    rect[2].position=sf::Vector2f(164.f,164.f);
    rect[3].position=sf::Vector2f(100.f,100.f);
    rect[4].position=sf::Vector2f(164.f,164.f);
    rect[5].position=sf::Vector2f(164.f,100.f);

    rect[0].texCoords=sf::Vector2f(0.f,0.f);
    rect[1].texCoords=sf::Vector2f(0.f,64.f);
    rect[2].texCoords=sf::Vector2f(64.f,64.f);
    rect[3].texCoords=sf::Vector2f(0.f,0.f);
    rect[4].texCoords=sf::Vector2f(64.f,64.f);
    rect[5].texCoords=sf::Vector2f(64.f,0.f);

    sf::Shader shad1;

    if(!shad1.loadFromFile("Shaders/Shad1.vert","Shaders/Shad1.frag"))
        return EXIT_FAILURE;

    sf::RenderStates etat;
    etat.shader=&shad1;

    shad1.setParameter("texture",texture1);

    while(fenetre.isOpen())
    {
        sf::Event evenements;
        while(fenetre.pollEvent(evenements))
        {
            switch (evenements.type)
            {
                case sf::Event::Closed:
                    fenetre.close();
                    break;
                case sf::Event::KeyPressed:
                    if(evenements.key.code == sf::Keyboard::Escape)
                    {  fenetre.close();  }
                    if(evenements.key.code == sf::Keyboard::F2)
                    {
                        fenetre.capture().saveToFile("capture.png");
                    }
                    break;
                default:
                    break;
            }
        }

        fenetre.clear(sf::Color::Transparent);

        fenetre.draw(rect,etat);

        fenetre.display();
    }

    return EXIT_SUCCESS;
}

et mes shaders, Vertex Shader:

void main()
{
        gl_TexCoord[0] = gl_TextureMatrix[0] * gl_MultiTexCoord0;
    gl_Position = gl_ModelViewProjectionMatrix * gl_Vertex;
    gl_FrontColor = gl_Color;
}

copie de l'exemple SFML pour le Fragment Shader:

uniform sampler2D texture;

void main()
{
        // lookup the pixel in the texture
        vec4 pixel = texture2D(texture, gl_TexCoord[0].xy);

        // multiply it by the color
        gl_FragColor = gl_Color * pixel;
}

et le resultat:


http://imgur.com/xTtlq9N

au lieu de:


http://imgur.com/G5N8jfm

Je suppose que j'oublie quelque chose mais j'ai beau chercher, je ne trouve pas de solution autre que celle que j'applique actuellement...

je précise que je ne souhaite pas fournir ma texture au sf::RenderState, sinon ca marche très bien, je souhaite comprendre comment fonctionne les Shader pour par la suite me faire un système qui permet d'utiliser plusieurs texture dans un seul appel a "Draw".

au cas où, je suis sous ubuntu 14.04 mais je doute que ce soit un problème système.

Merci d'avance pour vos réponses et je vous souhaite une agréable soirée/journée dépendant de l'heure a laquelle vous me lirez ^^.

EDIT: comment faire pour afficher des images? je les ai upload sur imgur, mais l'option "inserer image" ne fonctionne pas comme je pensais...

4
Graphique / [RESOLU]petites questions au sujet de sf::Transform.
« le: Février 04, 2015, 09:56:09 am »
Bien le bonjour.

Tout d'avord je précise que j'utilise encore SFML 2.1.

Dans le cadre d'un projet que je ne détaillerai pas ici car mes questions sont d'ordres général, j'ai créer une classe possédant un tableau de vertexs. Je souhaite appliquer des transformation a ce tableau, translation, rotation et scale. j'ai donc créer une instance de "sf::RenderStates" dans ma classe et je lui applique toutes ces modifications, puis fournis a la methode "Draw" hérité de "sf::Drawable", le sf::RenderStates en question.
tout fonctionne bien, les translation, les modifications d'échelle (scale), et les rotations... cependant, un petit détail me chagrine.
lorsque j'effectue une rotation, il semblerait que les axes soit également tourner, puisque l'effet des translations est perturbé. par exemple, si j'effectue une rotation de 90°, et qu'ensuite j'effectue une translation avec la valeur (10.f,0.f), l'image ne se déplace plus a l'horyzontale, mais a la verticale...
Apres quelques recherche sur ce forum j'ai lu quelques choses a propos d'un ordre de transformation... or je n'ai pu trouver lequel... de plus en lisant le code source...(bien que je ne m'y connaisse pas en matrice...) je n'arrive pas a comprendre quel est cet ordre...

enfin voila... si quelqu'un pouvais m'éclairer d'avantage sur le fonctionnement de sf::Transform, ou vers une meilleure utilisation de celui-ci, je vous en serai reconnaissant.

en attendant une éventuelle réponse, je vais tacher de faire des tests...

merci d'avance.

5
Graphique / [RESOLU]Récuperé le sf::VertexArray d'un sf::Text
« le: Janvier 13, 2014, 04:21:29 pm »
Bien le bonjour/bonsoir.

J'aimerai me faire une classe qui puisse puisse représenté tout ce qui peut etre "dessiné", afin de pouvoir stocker dans un tableau ce que la boucle d'affichage doit dessiner dans la fenetre. je me suis dit que le mieux serai de stocker des sf::VertexArray, mais je ne voit aucune methode pour recuperé l'attribut "m_vertices" de sf::Text. et comme ce membre est private, je ne peut utiliser l'héritage.
Est-ce que je doit faire un copier coller de la classe sf::Text dans une classe personnalisé, puis modifier le "private" en protected? ou simplement rajouter une methode qui permette de récuperer une reference vers ce sf::VertexArray? ou bien encore dssiner le sf::Text dans une sf::RenderTexture pour au final stocker des textures? cette derniere version me semble lourde...

Voila, si vous avez des idées, des éclaircissements, etc;;;, je vous en serai reconnaissants.
Bonne journée a vous.

6
Général / Classe de gestion des evenements
« le: Novembre 26, 2013, 07:20:20 pm »
Bien le bonjour/bonsoir.

Alors voila, cela fait plusieurs jours que je réfléchis a un moyen de mettre ma boucle d'evenements dans une classe a part pour éclaircir le main. mais je n'arrive pas a trouver de solution viable, mais je suis persuader que cela doit-etre possible.

je n'ai pas de probleme a imaginer comment tester si un evenement a lieu, par exemple une touche appuyer, mais le probleme vient de comment spécifier quelle action réaliser en fonction de l'evenement en question..

je n'ai pas de code a donner en exemple puisque j'en suis encore a la réflexion, je poste juste au cas ou quelqu'un aurait quelques idées a me souffler pour m'inspirer, m'orienter vers un autre cheminement de pensé...

a votre bon coeur ^^, merci d'avance pour vos réponses.

7
Système / comment fonctionne les evenements?
« le: Novembre 23, 2013, 04:49:20 pm »
Alors je précise tout de suite, je n'ai pas de probleme, et je ne critique aucun fonctionnements ^^.

J'aimerai juste savoir plus en détails comment fonctionnent les evenements(sf::Events).

prenons cet exemple:
sf::Event evenements;
        while(fenetre.pollEvent(evenements))
        {
            switch (evenements.type)
            {
                case sf::Event::Closed:
                    fenetre.close();
                    break;
                case sf::Event::KeyPressed:
                    if (evenements.key.code == sf::Keyboard::Escape)
                        fenetre.close();
                    else if(evenements.key.code == sf::Keyboard::P)
                        horloge.on_off();
                    break;
                default:
                    break;
            }
        }

je suis encore novice en programmation, et ma premiere idée serai de dire que les evenements sont tester a chaque boucle, mais cela signifie -t-il que le programme vérifie l'état de chaque touches etc? ou bien plutot que des qu'une touche est presser, cela est "enregistrer" quelque part et que la boucle d'evenements n'aura qu'a effectuer les actions rattacher aux evenements actifs, sans avoir a vérifier l'etat de chaque evenements possible?

par exemple dans mon code (ci-dessus), est-ce qu'a chaque boucle, l'etat de la touche echap est vérifier, ou bien cela se passe -t-il autrement?

dans le premier cas, dans un programme plus complexe, ou il y aurai une multitude d'evenements  gerer, cela ne risque pas d'etre plutot lourd?

deuxiemement, est-il possible d'encapsuler la boucle d'evenements dans une classe avec une fnction "update" ou autre, comme si ce n'etait au fond qu'une simple boucle de switch ou bien est-ce plus complexe?

navré si je m'exprime mal, et navré de faire perdre mon temps avec des questions sans doute tres simples, mais sa ne coute rien de demander ^^.


8
Alors voila, je suis en train de m'exercer dans le domaine cité dans le titre de ce post, et je me rend compte d'une chose.
lorsque je fait ceci:
sf::VertexArray peuImporte(sf::PrimitiveType::Quads , 16);

peuimporte[0].position = sf::Vector2f(0.f,0.f);
peuimporte[1].position = sf::Vector2f(32.f,0.f);
peuimporte[2].position = sf::Vector2f(32.f,32.f);
peuimporte[3].position = sf::Vector2f(0.f,32.f);

peuimporte[4].position = sf::Vector2f(32.f,0.f);
peuimporte[5].position = sf::Vector2f(64.f,0.f);
peuimporte[6].position = sf::Vector2f(64.f,32.f);
peuimporte[7].position = sf::Vector2f(32.f,32.f);

peuimporte[8].position = sf::Vector2f(0.f,32.f);
peuimporte[9].position = sf::Vector2f(32.f,32.f);
peuimporte[10].position = sf::Vector2f(32.f,64.f);
peuimporte[11].position = sf::Vector2f(0.f,64.f);

peuimporte[12].position = sf::Vector2f(32.f,32.f);
peuimporte[13].position = sf::Vector2f(64.f,32.f);
peuimporte[14].position = sf::Vector2f(64.f,64.f);
peuimporte[15].position = sf::Vector2f(32.f,64.f);

Puis quand je dessine le tout dans ma fenetre, tout me semble normal. pourtant j'aurai penser que les quads se chevaucheraient puisqu'ils ont des vertex ayant des positions en communs. donc apparement tout se décalent automatiquement, pourtant ce n'est pas préciser dans la docs (ou je l'ai louper), et donc j'aimerai (si possible) un peu plus de détails sur le fonctionnement interne des "Vertex", "VertexArray", et des primitiveTypes, histoire de bien comprendre comment tout cela marche.

merci d'avance pour vos lumières sur ce sujet.


9
Général / [resolu]probleme installation SFML windows
« le: Septembre 02, 2013, 09:47:03 pm »
Bien le bonsoir.

j'ai deja fait un sujet dans la rubrique general mais je pense qu'il vaut mieux que je recommence ici dans la rubrique "aide".

cela fait depuis ce midi que j'essaye toutes les solutions que je trouve pour essayer d'installer la SFML sur windows (vu que sur ubuntu sa merdait, j'ai voulus essayer windows) mais rien n'y fait. meme en me passant de code::blocks et en compilant en ligne de commande. j'ai réussit a faire fonctionner l'exemple fournis dans le tutoriel concernant code::blocks, celui qui affiche un rond vert sur fond noir... (et uniquement via notepad++ et compilation en ligne de commande) mais des que je test avec les examples fournis, sa ne compile meme pas.

voila en gros (parce que le contenu varie mais pas la forme) les erreurs que j'ai:

obj\Debug\main.o||In function `main':|
C:\Users\Varden\Desktop\Programmation\codeblocks\projet_SFML-2.1\main.cpp|5|undefined reference to `_imp___ZN2sf6StringC1EPKcRKSt6locale'|
C:\Users\Varden\Desktop\Programmation\codeblocks\projet_SFML-2.1\main.cpp|5|undefined reference to `_imp___ZN2sf9VideoModeC1Ejjj'|
C:\Users\Varden\Desktop\Programmation\codeblocks\projet_SFML-2.1\main.cpp|5|undefined reference to `_imp___ZN2sf12RenderWindowC1ENS_9VideoModeERKNS_6StringEjRKNS_15ContextSettingsE'|
C:\Users\Varden\Desktop\Programmation\codeblocks\projet_SFML-2.1\main.cpp|6|undefined reference to `_imp___ZN2sf11CircleShapeC1Efj'|
C:\Users\Varden\Desktop\Programmation\codeblocks\projet_SFML-2.1\main.cpp|7|undefined reference to `_imp___ZN2sf5Color5GreenE'|
C:\Users\Varden\Desktop\Programmation\codeblocks\projet_SFML-2.1\main.cpp|7|undefined reference to `_imp___ZN2sf5Shape12setFillColorERKNS_5ColorE'|
C:\Users\Varden\Desktop\Programmation\codeblocks\projet_SFML-2.1\main.cpp|15|undefined reference to `_imp___ZN2sf6Window5closeEv'|
C:\Users\Varden\Desktop\Programmation\codeblocks\projet_SFML-2.1\main.cpp|12|undefined reference to `_imp___ZN2sf6Window9pollEventERNS_5EventE'|
C:\Users\Varden\Desktop\Programmation\codeblocks\projet_SFML-2.1\main.cpp|18|undefined reference to `_imp___ZN2sf5ColorC1Ehhhh'|
C:\Users\Varden\Desktop\Programmation\codeblocks\projet_SFML-2.1\main.cpp|18|undefined reference to `_imp___ZN2sf12RenderTarget5clearERKNS_5ColorE'|
C:\Users\Varden\Desktop\Programmation\codeblocks\projet_SFML-2.1\main.cpp|19|undefined reference to `_imp___ZN2sf12RenderStates7DefaultE'|
C:\Users\Varden\Desktop\Programmation\codeblocks\projet_SFML-2.1\main.cpp|19|undefined reference to `_imp___ZN2sf12RenderTarget4drawERKNS_8DrawableERKNS_12RenderStatesE'|
C:\Users\Varden\Desktop\Programmation\codeblocks\projet_SFML-2.1\main.cpp|20|undefined reference to `_imp___ZN2sf6Window7displayEv'|
C:\Users\Varden\Desktop\Programmation\codeblocks\projet_SFML-2.1\main.cpp|9|undefined reference to `_imp___ZNK2sf6Window6isOpenEv'|
C:\Users\Varden\Desktop\Programmation\codeblocks\projet_SFML-2.1\main.cpp|23|undefined reference to `_imp___ZN2sf12RenderWindowD1Ev'|
C:\Users\Varden\Desktop\Programmation\codeblocks\projet_SFML-2.1\main.cpp|5|undefined reference to `_imp___ZN2sf12RenderWindowD1Ev'|
C:\Users\Varden\Desktop\Programmation\codeblocks\projet_SFML-2.1\main.cpp|23|undefined reference to `_imp___ZN2sf12RenderWindowD1Ev'|
obj\Debug\main.o||In function `ZN2sf11CircleShapeD1Ev':|
c:\program files (x86)\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.7.1\..\..\..\..\include\SFML\Graphics\CircleShape.hpp|41|undefined reference to `_imp___ZTVN2sf11CircleShapeE'|
c:\program files (x86)\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.7.1\..\..\..\..\include\SFML\Graphics\CircleShape.hpp|41|undefined reference to `_imp___ZTVN2sf11CircleShapeE'|
c:\program files (x86)\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.7.1\..\..\..\..\include\SFML\Graphics\CircleShape.hpp|41|undefined reference to `_imp___ZN2sf5ShapeD2Ev'|
||=== Build finished: 20 errors, 0 warnings (0 minutes, 2 seconds) ===|
 

dans ce cas c'est sous code::blocks, vous le voyez au l'adresse des include, mais peu importe la maniere d'installer les include et lib (j'ai tout essayer) sa me fait ce genre de choses. je ne suis pas encore un roi de l'informatique, et j'ai beau farfouiller, essayer des choses, sa ne veut pas.

quand au fait de recompiler... le tutoriel de ce site explique tres bien comment le faire, mais apres? ok, on recompile avec cmake, puis soit en console, ou bien via code::blocks(si on as recompiler en projet code::blocks biensur) on lance tout se passe bien, et hop. et apres? qu'est-ce que je suis censé faire? peu importe ce que j'essaye sa ne marche pas. alors désolé si j'ai un peu l'air contrarié, mais passer sa journée a tout essayer en vain, sa fatigue.

alors je vous en supplie, si vous pouvez m'affirmer que chez vous sa fonctionne... dite moi comment. bon, sur ce, je vais me changer les idées, en esperant avoir votre aide afin d'enfin pouvoir y arriver un jour...

10
Bien le bonsoir!
ma question est simple, sous qu'elle distribution linux la SFML tourne -t-elle? puisque sous ubuntu 13.04/13.10 sa ne marche pas, et que j'ai des soucis actuellement avec 12.04, je pense que sa ne coute rien de demander plutot que de retourner sous windaube. par exemple, est-ce que sa tourne bien sous Debian?

enfin bref voila, si quelqu'un a des infos utiles pour moi, je l'en remercie d'avance.

11
Général / Controle de la souris.
« le: Août 08, 2013, 06:48:46 pm »
Bien le bonjour/bonsoir.

Je programme pour le moment uniquement dans un but d'apprentissage, et actuellement mon programme est une image redimensionnable. tout fonctionne du coté du redimensionnement et de la mecanique principale, mais j'ai un soucis avec l souris.

lorsque je selectionne un bord de mon image pour la redimensionner, je calcul a chaque rafraichissement le vecteur mouvement effectuer par la souris en soustrayant la position actuelle avec la precedente, la pas de soucis. mais j'ai une taille x et y minimum pour mon image, et donc lorsque j'essaye de redimmensionner en dessous de cette limite, sa ne le fait pas, donc tout va bien. seulement la souris elle continue de bouger, ce qui fait qu'a un moment elle peut atteindre le bord et me bloquer (il me suffit de lacher le clic et de revenir sur l'image pour recommencer, donc ce n'st pas un probleme tres grave, mais je suis perfectionniste). j'ai beau essayer:

sf::Mouse::setPosition(sf::vector2i(x,y), sf::RenderWindow& fenetre_);

en précisant biensur un vecteur et une fenetre valide, afin de garder le curseur au meme endroit, mais cela ne semble pas fonctionner. peut-etre est-ce que je fait quelque chose de mal ou bien ma souris va -t-elle plus vite que le rafraichissement, je ne sais pas. et c'est pourquoi je vient vous exposer mon probleme.

si je ne vous semble pas clair, n'hésitez ps a me poser des questions afin de vous éclairez. merci d'avance de votre aide.

12
Général / [RESOLU] Probleme d'installation SFML-2.0 sur ubuntu
« le: Juin 28, 2013, 12:32:47 pm »
Bien le bonjour/bonsoir.

alors avant d'expliquer le probleme présent, je pense qu'il est utile que je raconte comment j'en suis arrivé là.

au debut de la semaine, tout allait bien, j'etait sous ubuntu 12.04 et sfml fonctionnait tres bien. seulement, je n'avait que gcc/g++ version 4.6.3, et j'avait entendu parler d'une version 4.8 qui prennait en charge beaucoup plus de nouveauté de c++11 et je me suis dit qu'il serai utile de me mettre a jour. mais apres de nombreuses recherches, je me suis rendu compte qu'il n'existait pas encore de version officielle pour ubuntu 12.04 et donc j'ai entrepris de passer en 13.04. les jours qui ont suivis ont donc été chargés de téléchargement de livecd (j'ai tenter egalement sous debian) et de réinstallation de systeme d'exploitation.
seulement, une fois sous ubuntu 13.04 j'ai réinstaller l'ide code::blocks que j'utilise, là pas de soucis, mais au moment de reinstaller sfml, quoi que je fasse, le module graphique me reclamait la "libglew.so.1.5" or je n'avait que la version 1.9. j'ai farfouiller sur le net, j'ai bidouillé, en vain.
en bref, j'ai décidé de revenir sous ubuntu 12.04 puisque sa marchait si bien...
j'ai donc réinstaller l'os, retélécharger les 400 et quelques mise a jours, ainsi que g++ 4.6.3, etc. puis j'ai installer code::blocks, puis j'ai telecharger la sfml2.0. j'ai tenter de refaire comme la premiere fois, en ne téléchargant que l'archive contenant les include, lib et examples, pas le code source. puis indiquer a code::blocks ou aller chercher ce qu'il lui faut, sa marchait tres bien avant. seulement, pour une raison que j'ignore, mes programmes (juste des exercices pour l'instant, pas de "réels" programmes) compilaient, mais ne fonctionnaient simplement pas. aussitot lancer, le programme se terminait.
j'ai donc décider d'essayer en compilant les sources comme indiqué dans le tutoriel de ce site. je fait tout le travail, installe toutes les libs, etc...
a présent les programmes semblent fonctionner, mais pas totalement.
par exemple, je m'était fait une fonction de calcul du fps qui m'affichait correctement la limite de 60 fps que je précise au debut du main, mais là j'ai soit droit a un chiffre négatif de quelques millions, soit il stagne a 8 environ.
et deuxiemement, si j'affiche la console, j'ai droit a ce message:

nvfx_screen_get_param:95 -  Warning: unknown PIPE_CAP 30
nvfx_screen_get_param:95 -  Warning: unknown PIPE_CAP 30
nvfx_screen_get_param:95 -  Warning: unknown PIPE_CAP 55
nvfx_screen_get_param:95 -  Warning: unknown PIPE_CAP 56
nvfx_screen_get_param:95 -  Warning: unknown PIPE_CAP 59
nvfx_screen_get_param:95 -  Warning: unknown PIPE_CAP 58
nvfx_screen_get_param:95 -  Warning: unknown PIPE_CAP 30
nvfx_screen_get_param:95 -  Warning: unknown PIPE_CAP 30
nvfx_screen_get_param:95 -  Warning: unknown PIPE_CAP 30
nvfx_screen_get_param:95 -  Warning: unknown PIPE_CAP 55
nvfx_screen_get_param:95 -  Warning: unknown PIPE_CAP 56
nvfx_screen_get_param:95 -  Warning: unknown PIPE_CAP 59
nvfx_screen_get_param:95 -  Warning: unknown PIPE_CAP 58
nvfx_screen_get_param:95 -  Warning: unknown PIPE_CAP 30
nvfx_screen_get_param:95 -  Warning: unknown PIPE_CAP 30
nvfx_screen_get_param:95 -  Warning: unknown PIPE_CAP 30
nvfx_screen_get_param:95 -  Warning: unknown PIPE_CAP 55
nvfx_screen_get_param:95 -  Warning: unknown PIPE_CAP 56
nvfx_screen_get_param:95 -  Warning: unknown PIPE_CAP 59
nvfx_screen_get_param:95 -  Warning: unknown PIPE_CAP 58
nvfx_screen_get_param:95 -  Warning: unknown PIPE_CAP 30
nvfx_screen_get_param:95 -  Warning: unknown PIPE_CAP 30
 

petite précision, j'avait la meme chose en compilant sfml2.0 sous ubuntu 13.04 mais je n'avait pas insister car trop fatiguer et frustrer que rien ne marche, donc si j'arrive a réglé le probleme sous ubuntu 12.04 sans doute pourrais-je faire la meme chose sous 13.04, grace a votre aide biensur ^^.

donc voila mon probleme, j'avait une installation qui fonctionnait tres bien, et a present plus rien ne fonctionne correctement. et j'ai vraiment envie de pouvoir reprendre mon apprentissage/travail avec la sfml...

s'il vous faut plus d'informations, je suis pret a vous les fournir, et pret a tester toutes les solutions que vous auriez a me proposer.

je vous remercie d'avance de vos réponses.

ps:vivement que sfml2.0 soit dans les paquets officiels...

Pages: [1]