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

Pages: [1]
1
Général / [Résolu] Problème de linkage SFML-2.4.1
« le: Novembre 09, 2016, 04:14:24 pm »
Bonjour à tous !
J'ai un petit problème de compilation de SFML-2.4.1. Je travaille avec Codeblocks et j'y ai linké sfml de façon statique en suivant le tuto, donc de ce coté là, il ne devrait pas y avoir de problèmes. Le code que j'utilise, c'est le code de base (présenté dans le tuto, donc inutile de le remettre ici).

D'après ce que me dit le terminal, sfml s'est linkée, et le problème, c'est ces undefined reference to xxx, alors que ce ne sont même pas des fonctions que j'utilise. Je ne sais absolument pas d'où tout cela vient, donc dites-le moi !

-------------- Build: Debug in Shaders (compiler: GNU GCC Compiler)---------------

mingw32-g++.exe -Wall -DSFML_STATIC -g -DSFML_STATIC -std=c++11 -IC:\Data\Programmation\SFML-2.4.1\include -IC:\Users\Antoine\Desktop\SFML-2.0\include -c C:\Users\Minic\Desktop\Shader\main.cpp -o obj\Debug\main.o
mingw32-g++.exe -LC:\Data\Programmation\SFML-2.4.1\lib -LC:\Users\Antoine\Desktop\SFML-2.0\lib -o bin\Debug\Shader.exe obj\Debug\main.o   -lsfml-graphics-s-d -lsfml-window-s-d -lsfml-system-s-d -lopengl32 -lfreetype -ljpeg -mwindows
C:\Data\Programmation\SFML-2.4.1\lib/libsfml-window-s-d.a(JoystickImpl.cpp.obj): In function `ZN2sf4priv12JoystickImpl10initializeEv':
D:/sfml-release/_Sources/SFML/src/SFML/Window/Win32/JoystickImpl.cpp:161: undefined reference to `joyGetPosEx@8'
C:\Data\Programmation\SFML-2.4.1\lib/libsfml-window-s-d.a(JoystickImpl.cpp.obj): In function `ZN2sf4priv12JoystickImpl11isConnectedEj':
D:/sfml-release/_Sources/SFML/src/SFML/Window/Win32/JoystickImpl.cpp:191: undefined reference to `joyGetPosEx@8'
C:\Data\Programmation\SFML-2.4.1\lib/libsfml-window-s-d.a(JoystickImpl.cpp.obj): In function `ZN2sf4priv12JoystickImpl4openEj':
D:/sfml-release/_Sources/SFML/src/SFML/Window/Win32/JoystickImpl.cpp:208: undefined reference to `joyGetDevCapsW@12'
C:\Data\Programmation\SFML-2.4.1\lib/libsfml-window-s-d.a(JoystickImpl.cpp.obj): In function `ZN2sf4priv12JoystickImpl6updateEv':
D:/sfml-release/_Sources/SFML/src/SFML/Window/Win32/JoystickImpl.cpp:266: undefined reference to `joyGetPosEx@8'
C:\Data\Programmation\SFML-2.4.1\lib/libsfml-system-s-d.a(SleepImpl.cpp.obj): In function `ZN2sf4priv9sleepImplENS_4TimeE':
D:/sfml-release/_Sources/SFML/src/SFML/System/Win32/SleepImpl.cpp:41: undefined reference to `timeGetDevCaps@8'
D:/sfml-release/_Sources/SFML/src/SFML/System/Win32/SleepImpl.cpp:44: undefined reference to `timeBeginPeriod@4'
D:/sfml-release/_Sources/SFML/src/SFML/System/Win32/SleepImpl.cpp:50: undefined reference to `timeEndPeriod@4'
collect2.exe: error: ld returned 1 exit status
Process terminated with status 1 (0 minute(s), 2 second(s))
8 error(s), 0 warning(s) (0 minute(s), 2 second(s))

Merci de votre aide, et amusez vous bien avec SFML !

2
Graphique / [Résolu] Dessinner un objet à une taille constante
« le: Septembre 30, 2016, 04:09:06 pm »
Comment peut-on dessiner un objet qui ne grossit pas quand on zoome ?

J'ai récemment créé une classe qui permet de dessiner une flèche à l'écran qui peut alors représenter un vecteur (vecteur vitesse ou accélération dans mon cas). Cette flèche est constituée de deux parties : son "corps" ( ----- ), et sa "tête" ( > ).

Lorsque je suis à un niveau de zoom normal, tout va bien et la tête de la flèche est de la bonne taille. Mais dès que je zoom dessus en utilisant sf::View par exemple, la tête de la flèche grossit, ce qui est parfaitement normal. Mais ce n'est pas ce que je veux. Ce que je veux, c'est que la tête de la flèche soit toujours de la même taille, peut importe le zoom. Car quand je zoom 10X la tète de la flèche devient énorme, ce qui est assez gênant à l'écran :-\ .

Voici le code qui permet la flèche d'être rendue à l'écran :
void Arrow::draw(sf::RenderTarget& target, sf::RenderStates states) const
{
    sf::Transform transform;
    transform.translate(mPos.x, mPos.y).rotate(mAngle).translate(-mArrow[0].position.x, 0);
    states.transform *= transform;

    target.draw(&mArrow[0], 6, sf::Lines, states);
}

Dans cette fonction je dessine pour l'instant toute la flèche d'un coup (stockée dans un tableau de sf::Vertex). Ce que je voudrais donc à terme, c'est dessiner le corps et la tête de la flèche séparément à une différente échelle. Et pour cela, il faudrait pouvoir faire quelque chose comme "states.transform.scale". J'ai beaucoup recherché, et ce n'est malheureusement pas possible, alors dites-moi comment résoudre ce problème.

Merci d'avance de vos réponses !

Pages: [1]
anything