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 - Rodd

Pages: [1]
1
Général / [Résolu] SFML 2.3 dépendance supplémentaire ?
« le: Mai 17, 2015, 06:17:11 pm »
Bonjour, j'ai téléchargé SFML 2.3 aujourd'hui, la version stable disponible sur le site.

J'ai compilé toutes les libraires en dynamiques et statiques. Mais maintenant mon projet ne compile plus, mais fonctionnait avec la version précédente.

Citer
... -s -lroddgui-s -lsfml-graphics-s -lsfml-window-s -lsfml-system-s -lsfml-network-s -lsfml-audio-s -lfreetype -lglew -ljpeg -lopengl32 -lwinmm -lgdi32 -lopenal32 -lws2_32 -lsndfile -lflac -logg -lvorbis -lvorbisenc -lvorbisfile -lpthread -lboost_system-mgw48-s-1_55 -lboost_filesystem-mgw48-s-1_55 -lboost_thread-mgw48-mt-s-1_55 
C:/SFML/lib/libsfml-audio-s.a(InputSoundFile.cpp.obj):InputSoundFile.cpp:(.text+0x10b): référence indéfinie vers « sf::FileInputStream::FileInputStream() »
C:/SFML/lib/libsfml-audio-s.a(InputSoundFile.cpp.obj):InputSoundFile.cpp:(.text+0x11c): référence indéfinie vers « sf::FileInputStream::open(std::string const&) »
C:/SFML/lib/libsfml-audio-s.a(InputSoundFile.cpp.obj):InputSoundFile.cpp:(.text+0x312): référence indéfinie vers « sf::MemoryInputStream::MemoryInputStream() »
C:/SFML/lib/libsfml-audio-s.a(InputSoundFile.cpp.obj):InputSoundFile.cpp:(.text+0x32a): référence indéfinie vers « sf::MemoryInputStream::open(void const*, unsigned int) »

c:/mingw/bin/../lib/gcc/mingw32/4.8.1/../../../../mingw32/bin/ld.exe: C:/SFML/lib/libsfml-audio-s.a(InputSoundFile.cpp.obj): bad reloc address 0x17 in section `.text.unlikely'
collect2.exe: error: ld returned 1 exit status

Il me manque une librairie pour Windows ? :)
Merciii

2
Audio / Création d'une librairie linux, oubli de dépendance ?
« le: Mai 16, 2015, 05:50:18 pm »
Bonjour :)

j'essaye de compiler ma librairie Linux qui se base sur SFML. Seulement j'ai une erreur dans SoundSource.hpp au niveau de enum Status. "expected identifier before 'int' à la ligne 50.

Chose que je n'ai pas sous Windows, donc il me semble avoir oublié une libraire pour l'audio pour Linux mais j'ai tout passé en revue, je n'arrive pas à trouver lequel manque :)

-lsfml-graphics-s -lsfml-window-s -lsfml-system-s -lsfml-network-s -lsfml-audio-s -lfreetype -lglew -ljpeg -lopengl32 -lwinmm -lgdi32 -lopenal32 -lws2_32 -lsndfile -lboost_system-mgw48-s-1_55 -lboost_filesystem-mgw48-s-1_55 -lboost_thread-mgw48-mt-s-1_55

Merci !

3
Fenêtrage / KeyPressed Linux non reconnu ( event.key.code == -1 )
« le: Avril 30, 2014, 08:09:46 pm »
Bonjour,

sur mon Windows les touches numériques/caractères spéciaux au dessus de mes lettres fonctionnent parfaitement et les valeurs de event.key.code sont  de 27 à 33 si je me trompe pas.. pour 1 2 3 4 5 6 7 8 9 0. Mais sont tous fixé à -1 pour mon Asus tournant avec Ubuntu.

Normal ? Un oubli ? Ou autre ? :)

Merciii

4
Fenêtrage / [Résolu] Focus de la fenêtre SFML lors d'un clic
« le: Avril 21, 2014, 12:14:59 pm »
Bonjour,

j'ai un petit problème de confort, lorsque je clic dans une fenêtre SFML je ne gagne pas réellement le focus, la fenêtre n'est pas réellement sélectionné et du coup elle ne prend pas en compte tous les événements du clavier. Je suis obligé de cliquer sur la barre (Window) au dessus pour prendre le focus.

Ce n'est pas très grave, mais ce n'est pas très agréable surtout quand je clique sur une zone de texte pour rentrer mon texte et remarquer que rien ne rentre...

Comment régler ceci ? J'ai pas trouvé de fonction :)

Merci

5
Fenêtrage / [Résolu] sf::Event::Resized sous Windows
« le: Avril 18, 2014, 12:25:52 am »
Bonjour à tous,

j'ai remarqué que sf::Event::Resized ne fonctionne pas sur Windows, il contient la valeur 1 plutôt que la valeur 11 généré lorsqu'on utilise la fonction de sf::Window::setSize().

Par contre celui-ci fonctionne parfaitement sur Linux. (Je n'ai malheureusement pas mon Ubuntu avec moi pour vérifier les valeurs).

J'ai recherché un peu si un post similaire à été créé mais je n'ai pas trouvé.. Mauvaise manip de ma part ou erreur connu ?

if( event.type == sf::Event::Resized ||event.type == 11 ) // sf::Event::Resized pour Linux & 11 pour Windows
     updatePosition();

6
Général / makefile d'un SFML statique
« le: Janvier 26, 2014, 01:58:14 am »
Bonjour,

je n'arrive pas à fabriquer un makefile pour compiler mon projet avec les libraires statiques de SFML sur Linux et Windows.

J'essaye de compiler avec ceci mais rien à faire, je ne l'ai jamais fait avec une librairie statique sans codeblock.

#Declaration de variables
CXX=g++
EXEC=client

#CXXFLAGS regroupant les options de compilation
CXXFLAGS=-std=c++11 -SFML_STATIC -Wpedantic -Wall -Wextra -Winit-self -Winline -Wconversion -Weffc++ -Wstrict-null-sentinel -Wnoexcept -Wctor-dtor-privacy -Woverloaded-virtual -Wconversion -Wsign-promo -Wzero-as-null-pointer-constant

#LDFLAGS regroupant les options de l'édition de liens.
LDFLAGS=-pthread -lGL -lX11 -lXrandr -lfreetype -lGLEW -ljpeg -lsndfile -lsfml-graphics -lsfml-window -lsfml-system -lsfml-network -lsfml-audio

#File names
SRC=$(wildcard *.cpp)
OBJ=$(SRC:.cpp=.o)

all: $(OBJ)
        @$(CXX) $(CXXFLAGS) -o $(EXEC) $(OBJ) $(LDFLAGS)

%.o: %.cpp
        @$(CXX) -c $< -o $@ $(CXXFLAGS)

%.o: %.hpp
        @$(CXX) -c $< -o $@ $(CXXFLAGS)

clean:
        rm -rf $(EXEC) *.o

run:
        ./$(EXEC)

Un petit éclaircissement sur mes erreurs m'aiderait beaucoup :(

Un grand merci !

7
Graphique / [Résolu] setSize (Vector2f ou Vector2u) ?
« le: Septembre 05, 2013, 01:51:49 pm »
Bonjour,

la version 2.1 a eu des modifications comme par exemple la taille du RectangleShape qui devrait demander un Vector2u ( marqué sur la doc de SFML http://www.sfml-dev.org/documentation/2.1-fr/classsf_1_1RenderWindow.php) ce qui semble plus logique qu'un Vector2f d'avant.


Pourtant mon fichier RectangleShape.hpp de mon dossier D:\SFML-2.1\include\SFML\Graphics\RectangleShape.hpp indique à la ligne 61 une erreur disant que la classe RectangleShape utilise plutôt cette fonction :

void setSize(const Vector2f& size);

-> un Vector2f


Oubli ou je me trompe ?

Merci :>

8
Général / [Réglé] Mise à jour SFML
« le: Septembre 04, 2013, 10:47:53 pm »
Bonjour,

voilà quelques temps que je voulais mettre à jour SFML.. Malheureusement je n'arrive plus à compiler quoi que se soit de mes projets, même le plus simple des affichages.

Après de nombreux essais, que ca soit :
  • GCC 4.7 TDM (SJLJ) - 32 bits
  • GCC 4.7 TDM (SJLJ) - 64 bits
  • GCC 4.7 MinGW (DW2) - 32 bits
  • Et même compilation (mais je ne suis sûr de rien de ma manipulation)
Je ne me rappelle plus de comment je l'ai installé la dernière fois pour que tout fonctionne.

Je dispose de Window 7, 64 bits, Codeblocks 12.11.

Je fusionne généralement les fichiers téléchargés de SFML avec les fichiers de Codeblocks (est-ce la bonne méthode?), je transfert les .dll release dans le même dossier que mon projet et je mets les propriétés de mon projet de cette manière :



Voici l'erreur affiché avec le code :
http://imageshack.us/a/img585/792/mp35.png

J'ai oublié quelque chose ou j'ai mal fait une manipulation ? :(

Merci de votre attention !

9
Bonsoir à tous !

Je n'ai pas trouvé de section "Question/réponse" donc je l'ai mis plutôt ici.

Comment récupérez-vous la position de la souris généralement ? D'habitude je fondais mon petit programme avec l'utilisation de sf::Mouse::getPosition(app).x et sf::Mouse::getPosition(app).y mais j'ai vu récemment qu'on pouvait utiliser app.getInput().getMouseX() et app.getInput().getMouseY() pour sf::RenderWindow app .. Quel est le mieux ? Quel est la différence entre les deux ? Existe-il un décalage entre un evenement et la position de la souris ? Si oui peut-on récupérer la position de la souris lors de l'event via une commande du style : event.mouse.getPosition() ?


Dans le même genre de question, quel est la différence entre un .move() et un .setPosition() ? Est-ce que le .move() se traduit à utiliser un .setPosition() ou l'inverse l'un par rapport à l'autre ? Quel est le mieux à utiliser niveau performance si on a le choix entre les deux ?

Merci beaucoup de vos éclaircissements ! Et longue vie à SFML avec lequel je m'amuse tellement !  :D

10
Graphique / [Résolu] Problème de sf::Text et sf::Thread
« le: Décembre 26, 2012, 02:01:57 am »
Bonjour, j'ai un problème au niveau du draw(sf::Text), lorsque ce text est modifié dans un thread, il ne se draw pas bien (il manque tout les chiffres sauf le 0)

En code:
//DANS UN THREAD HORS CLASS
void Updater::downloadFtp()
{
    bar.updatePercentage(100);
}

void ProgressBar::updatePercentage(const float& value)
{
    std::ostringstream stream;
    stream << this->value;
    text.setString(stream.str()+"%");
    std::cout<<text.getString().toAnsiString()<<std::endl; //Affiche toujours les bons chiffres dans la console.

    text.setOrigin((int)(text.getGlobalBounds().width/2),(int)(text.getGlobalBounds().height/2));
    text.setPosition(50+(int)(this->value*5), 63);
}

//C'est la seule modification du text qui existe. :(
// Le seul moment où on appelle le text est pour ce code :

//CODE SE TROUVANT DANS UNE FONCTION DE LA CLASSE ProgressBar
{
     window.draw(text);
}
 

Ainsi on peut lire que les chiffres 0 et le % dans la fenetre ..
Pour 10 -> 0%
Pour 93 -> %
Pour 100 -> 00%
Mais correctement dans la console.

Donc..
- Si j'utilise updatePercentage() dans sa propre classe, tout s'affiche correctement.
- Que j'utilise updatePercentage() avec le thread ou avec la classe, le code : std::cout<<text.getString().toAnsiString()<<std::endl; affiche toujours le bon chiffre dans la console.



Voilà, merci de votre aide, je comprends pas ce que j'ai fais de travers.. :(

11
Réseau / [sf::SocketSelector] Problèmes d'utilisations.
« le: Décembre 10, 2012, 01:58:27 am »
Bonjour à tous,

j'ai quelques soucis sur le fonctionnent d'un SocketSelector.. :( Je m'explique...
En réalité j'ai du mal à comprendre l'utilité réel d'un selector. Si j'ai bien compris, avant il serait à mettre le socket sur le devant de la liste lorsqu'il y a réception d'un packet. non ? Et que maintenant il ne sert qu'à signaler qu'il y a un socket qui a recu un packet non ?

En gros, actuellement j'ai mon programme qui fonctionne de cette manière :


//CECI N'EST QU'UNE PARTIE DE MON CODE
void newConnected()
{
    sf::TcpSocket* client = new(sf::TcpSocket);
    if(serverTcp.accept(*client) == sf::Socket::Done){
        std::cout<<"New connection received from "<<client->getRemoteAddress()<<std::endl;
        clients.push_back(client);
        selectorTcp.add(*client);}
    else{
        delete client;}
}

void online()
{
    newConnected();

    if(selectorTcp.wait(sf::microseconds(1))){
        for(int x=clients.size()-1; x>=0; --x){
            sf::TcpSocket* client = clients.at(x);
            if(selectorTcp.isReady(*client)){
                sf::Packet packet;
                sf::Socket::Status status= client->receive(packet);
                if(status == sf::Socket::Done){
                    analysis(packet);}
                else{
                    std::cout<<"Probleme de reception"<<std::endl;}}}}
}
 

Mais l'inconvénient de ce code, c'est qu'il parcourt tout les sockets actuellement connecté pour vérifier lequel est prêt. Non ?

Voilà, j'ai besoin de quelques éclaircissements pour comprendre mieux le fonctionnement de cette fonction ou si il ya clairement moyen de mieux faire que cette méthode s'il vous plait :(

Le but étant de pouvoir tenir un transfert rapide entre les clients et le serveur pour au moins 10 personnes.

Merci beaucoup!

12
Réseau / [SFML2] Connexion NotReady (Résolu)
« le: Août 26, 2012, 05:31:52 pm »
Bonjour à tous, je débute sfml dans le réseau mais je ne suis pas tombé sur un bug bloquant. Plutôt une mauvaise utilisation faut croire..

Voilà le problème. J'ai crée un serveur et un client, deux programmes différent. La connexion fonctionne mais uniquement sur le réseau local.

//Client
std::cout<<"Connecting ... ";
sf::Socket::Status soso = client.connect(address, 33033);
if(soso == sf::Socket::Done){
    std::cout<<"Done";}
else if(soso == sf::Socket::AnyPort){
    std::cout<<"Anyport";}
else if(soso == sf::Socket::Disconnected){
    std::cout<<"Disconnected";}
else if(soso == sf::Socket::Error){
    std::cout<<"Error";}
else if(soso == sf::Socket::NotReady){
    std::cout<<"NotReady";}
else{
    std::cout<<"WTF?";}
 

Lorsque je rentre mon IP internet à la place d'address, rien ne se passe. Mais lorsque je tape "127.0.0.1", la connexion se fait, et donc je peux envoyer des données et en recevoir sans aucun problème mais lors de la connexion ce n'est pas "Done" qu'il s'écrit mais bien "NotReady".

Donc:
  • "127.0.0.1" fonctionne parfaitement mais affiche NotReady à la connexion.
  • L'adresse par internet ne fonctionne pas = aucune connexion détectée.


Comment se fait-il ? Merci de votre explication. :)

Pages: [1]