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

Pages: [1] 2 Suivante »
1
Général / Re : OpenGL 3.3 et Thread
« le: Septembre 12, 2015, 07:45:14 pm »
Bon, j'ai pas percuté taper ça dans google et ... j'aurais dût, bref
Je vais revoir ma façon de faire dans ce cas là

En tout cas merci beaucoup pour la réponse rapide !

2
Général / [Résolu] OpenGL 3.3 et Thread
« le: Septembre 12, 2015, 06:13:58 pm »
Bien le bonjour,

Je viens vers vous suite à un problème, plus ou moins présent, et plutôt gênant à vrai dire :
En effet dans le cadre d'un projet "d' apprentissage à la réalisation d'un moteur 3D et d'un moteur jeu associé" j'utilise SFML pour le contexte OpenGL et ce moteur que je réalise pour dessiner en 3D, ce moteur utilise la version 3.3 d'openGL, ainsi j'utilise les VAO / VBO. Voilà pour l'intro,

J'ai toujours pour habitude d'utiliser dans mes applications 2D un thread secondaire qui se charge généralement du chargement des données coté client, me laissant ainsi la possibilité d’interagir avec l'utilisateur durant ce temps de chargement (affichage d’icône de chargement, mini jeu ou n'importe quoi d'autre le principe est d'avoir accès à la fenêtre) ainsi je veux reproduire la même choses dans ce projet.

Par chargement de donnée/ressource je parle de chargement de texture, de remplissage de sprite, texte, compilation de shader, etc. Ainsi lors de l'appelle de ces méthodes, d'autres méthodes interne au moteur gérant la géométrie et l'utilisation de fonctions OpenGL sont appelés. Là je sais qu'il faut un contexte openGL pour utiliser ces fonctions.

Dans le cas d'SFML et des Threads je sais qu'au lancement d'un nouveau Thread il faut soit utiliser le contexte créé au départ en appelant 'context.setActive(true)' ou de créer un objet 'sf::Context context' dans ce même thread.

Mon problème ce trouve là : quand je fais ceci certaines fonctions OpenGL fonctionnes, d'autre ne produise pas d'erreur mais ne font tout bonnement rien (du moins en apparence par la suite), exemple :
Les fonctions touchant aux textures 'glBindTexture() / glTexParameteri() / glTexSubImage2D()' ainsi que ceux gérant la compilation des shaders 'glCreateShader() / glShaderSource() / glCompileShader()' semble fonctionner contrairement aux fonctions touchant aux VertexBufferObject / VertexArrayObject

Je reviens toujours sur le premiers contexte pour dessiner se qui à été chargé, et je suis toujours partie du principe comme dit dans le tuto sur l'instanciation de fenêtre OpenGL avec SFML que :

Citer
Une autre chose à savoir est que tous les contextes OpenGL créés par SFML partagent leurs ressources. Cela signifie que vous pouvez créer une texture ou un vertex buffer avec n'importe quel contexte actif, et l'utiliser avec n'importe quel autre. Cela signifie aussi que vous n'aurez pas besoin de recharger toutes vos ressources OpenGL si vous recréez votre fenêtre.

(Il est peut être important de préciser que je me sers d'SFML essentiellement de contexte, je n'utilise pas les classes d'SFML)

Je soupçonne dans mon cas qu'un VAO créé dans un contexte différent ne peut pas être utilisé dans un autre, je ne sais pas exactement se qu'il se produit cela dit, c'est pourquoi je demande votre avis et dans le meilleur des cas peut être une piste !

J'utilise une version de GitHub d'SFML provenant de la date du 25 mai 2014 - (SFML2.1 ?)
Merci beaucoup et bonne journée  ;)

3
Projets SFML / Re : BigBang Element / FireQuest
« le: Mai 15, 2015, 11:38:17 pm »
Bonjour,

J'aime bien le principe et en plus c'est très jolie ! J'adore ces effets de lumière, peut être pourrais tu nous poster une petite vidéo pour nous montrer un peu comment tout ça bouge ! ;)

En tout cas je me tiendrais au courant de l'avancement de ton projet.

4
Audio / Re : [Linux] Sons effet mono
« le: Janvier 10, 2015, 07:39:55 pm »
Merci pour la réponse, je vais regarder de ce coté dés que je le peux.

5
Audio / [Linux] Sons effet mono
« le: Décembre 12, 2014, 12:27:42 pm »
Bonjour,

Je me suis récemment mis à peaufiner la portabilité du code source d'un projet pour pouvoir le compiler librement sous linux, et de rester souple sur chaque OS.

La portabilité ayant réussit sans trop de problèmes, je remarque un petit détail :
Les différents sons joué par sf::Music ou sf::Sound ont un rendu avec une impression d'être joué en 'mono', le fichier audio joué dans un player de l'OS a plus de détail que quand il est joué avec SFML, on a ici une qualité audio moins bonne.

J'ai donc cherché un 'problème' similaire sans grands succès, j'ai vu que certaines personnes ont eu un son qui craquait (ou crachait) et ressemblant un peu à mon problème, notamment ici " http://en.sfml-dev.org/forums/index.php?topic=478.0 " (mes sons ne craquent pas)

J'utilise essentiellement le format 'ogg vorbis' j'ai essayé de convertir en ' wav ' mais j'ai le même rendu.
J'utilise la version 2.1 de SFML que j'ai par habitude compilé moi même sous une architecture 64bits Linux (Ubuntu 13.10), j'ai tenté de retélécharger 'libsndfile' mais j'ai toujours le même rendu.

Ma question est donc, serait-ce un problème propre à mon installation ou est-ce un problème récurent ? Est-ce que je suis passé à coté d'une solution/information qui m'aurait permis de régler ce petit problème, qui n'est pas grave dans le sens où tout fonctionne bien mais une moins bonne qualité serait dommage pour un si bon Os :)

Merci beaucoup d'avoir pris le temps de lire ce topic et merci d'avance pour vos réponses !
Bon après-midi

6
Graphique / Re : Collision avec intersects
« le: Juin 21, 2014, 02:30:06 pm »
Bof au moins comme ça il y a deux explications :P
Mais ça me rassure que je ne suis pas le seul a penser ça !

7
Général / Re : Gestion des fichiers - Gestion Client/Serveur
« le: Juin 21, 2014, 12:49:03 pm »
Bonjour,
Etant en train de réaliser moi même depuis maintenant un long moment un moteur de jeu online je pourrais éventuellement proposer un peu des solutions à tes questions :)

Il y a plein de moyens différents de sauvegarder tes données d'avancement ou de contenu pour un jeu dans un fichier, tout dépend selon moi comment est réalisé ton moteur. Tu peux séparer ces différentes informations dans différents fichiers, ou alors faire un manager de donnée sauvegardant dans un seul et unique fichier. Cependant pour moi il est mieux de tout séparer, tout se qui est stat pour le joueur sauvegardé dans un fichier "profil" par exemple, tu peux placer toutes ces informations selon la structure que tu veux, tu dois juste savoir les relire après : Tu peux donc par exemple sauvegarder dans l'ordre que tu veux : la vie, la mana, les valeurs de variable particulière, par exemple, je sais pas tu peux imaginer comme toi tu veux, tu peux écrire ces valeurs naturellement ou en ""binaire"" ou encrypté, le cryptage XOR par exemple pourrait t'aider. Après pour se qui est de l'histoire, tu peux faire pareil après tout dépend de comment tu utilises ces informations, si par exemple tu enregistre tout tes dialogues avec un ID et que dans ton moteur tu affiches chaque ID à des lieux bien précis, ou alors si tu as un éditeur et que tu utilises un peu le concept événementiel (oui j'aime bien appelé ça comme ça) du style de RPG Maker par exemple, tu peux enregistrer chacun de ces événements dans un fichier et qu'ils soit lut si celui si est placé sur la map. Tu as un choix infini, c'est à toi d'imaginer comment structurer tes données. Si tu veux faire quelque chose de souple, pouvant être modifier, ou afin de pouvoir ajouter du contenu plus tard, il est ainsi mieux d'enregistrer tout ça dans des fichiers pouvant être modifiés simplement plutôt que dans le code source. Après tu peux, comme je l'ai dis plus haut, crypter tes fichiers si tu le veux, il y a différentes façon de crypter des données.

Après pour un jeu multijoueur si c'est seulement pour deux joueurs tu peux toujours faire en sorte que l'un des deux joueurs puisse être le serveur afin d’héberger la partie. Après pour se qui est d'un classement, ça dépend se que tu veux dire par classement, si ton jeu affiche le classement mondial de tout les gens qui auront joué a ton jeu, il faudra, à mes yeux, effectivement un serveur regroupant tout les statistiques, mais ça peut être tout simplement un serveur WEB, ou grâce à une simple page php tu récupère toutes les informations. On peut facilement imaginer une architecture du style : Client/Serveur <---> Client et que à la fin de la partie Le Client/serveur envoie les statistiques à une page WEB enregistrant ainsi sur son serveur les statistiques.

Bon j'ai peut être pas donné quelque chose tout fait, c'est plus des idées de comment tu peux gérer ça, après c'est à toi de voir qu'est ce que tu considères le mieux. Sache juste que si tu es du style parano, que les gens changent leurs fichiers, il est sûr et certains que plus tu te rapproches d'une gestion complète coté serveur, plus tu sécurises.

Voila voila, bonne journée

8
Graphique / Re : Collision avec intersects
« le: Juin 21, 2014, 12:24:27 pm »
Bonjour !

Bon j'ai regardé un peu, et en regardant ton code je pense que dans ta condition ici :
if (playerRect.intersects(levelTemp, intersection)) {
        if (playerRect.left < levelTemp.left + CELL_SIZE &&
            playerRect.left + CELL_SIZE > levelTemp.left + CELL_SIZE) {
                move(intersection.width, 0);
        }
        else if (playerRect.left + CELL_SIZE > levelTemp.left &&
                 playerRect.left < levelTemp.left) {
            move(-intersection.width, 0);
        }
        else if (playerRect.top < levelTemp.top + CELL_SIZE &&
                 playerRect.top + CELL_SIZE > levelTemp.top + CELL_SIZE) {
            move(0, intersection.height);
        }
    }

Tu vérifies en premiers lieu si tout est correct sur l'axe X, cependant quand tu arrives en collision sur l'axe Y, tu seras aussi sur l'axe X décrite dans ta condition dans ton code, et comme elle sera lu en première alors ton code considérera que tu es en collision uniquement sur cet axe, bon je suis pas sur à 100% puisque je ne peux pas tester ton code mais pour moi je pense que dans tes conditions tu devrais : tester pour l'axe X ET pour l'axe Y en même temps, du genre à avoir des conditions bien spécifique.

Bon encore une fois je ne suis pas certains mais je cherchais dans ce coin là, en espérant aussi avoir étais assez clair ^^"

Bonne journée

9
Général / Re : Petit soucis de compilation
« le: Mai 25, 2014, 08:51:00 pm »
En effet ! Je n'ai pas eu l'idée d'aller voir dans ce dossier...

Bon après quelques petits bidouillages, CA FONCTIONNE à ma grande joie ! :)

Merci beaucoup Laurent pour votre aide !
Bonne soirée !

10
Général / Re : Petit soucis de compilation
« le: Mai 25, 2014, 07:12:00 pm »
Merci :)


Bon je suppose que je dois lier tout ça :
Using MinGW I did the following setup:

Defines
GLEW_STATIC
SFML_STATIC
UNICODE

Libraries
sfml-audio-s
sfml-graphics-s
sfml-network-s
sfml-window-s
sfml-system-s
sndfile
openal32
jpeg
glew
freetype
ws2_32
gdi32
opengl32
winmm

It compiles and runs just fine - but I might be doing too much

Après j'ai du coup un autre petit soucis :
Citer
ld.exe||cannot find -lsndfile|
ld.exe||cannot find -lopenal32|
ld.exe||cannot find -ljpeg|
ld.exe||cannot find -lglew|
ld.exe||cannot find -lfreetype|
||=== Build failed: 5 error(s), 31 warning(s) (0 minute(s), 19 second(s)) ===|

Je vais chercher un peu tout ça

11
Bonjour a tous !

Voila voulant réglé le petit soucis de la version 2.1 de SFML que lorsque l'on clique sur la fenêtre elle ne se refocus pas.

Donc j'ai récupéré la version sur github. J'ai crée les makefiles pour code blocks, j'ai recompilé sans soucis sous Windows 7 en statique.
J'ai ensuite essayé de recompiler mon projet avec cette nouvelle version, et j'ai des erreur du type :

Citer
[......]
F:\SFML-master\lib\libsfml-graphics-s-d.a(Texture.cpp.obj)||In function `ZN2sf7TextureD2Ev':|
F:\SFML-master\src\SFML\Graphics\Texture.cpp|95|undefined reference to `glDeleteTextures@8'|
F:\SFML-master\lib\libsfml-graphics-s-d.a(Texture.cpp.obj)||In function `ZN2sf7Texture6createEjj':|
F:\SFML-master\src\SFML\Graphics\Texture.cpp|136|undefined reference to `glGenTextures@8'|
F:\SFML-master\src\SFML\Graphics\Texture.cpp|144|undefined reference to `glBindTexture@8'|
F:\SFML-master\src\SFML\Graphics\Texture.cpp|145|undefined reference to `glTexImage2D@36'|
F:\SFML-master\src\SFML\Graphics\Texture.cpp|146|undefined reference to `glTexParameteri@12'|
F:\SFML-master\src\SFML\Graphics\Texture.cpp|147|undefined reference to `glTexParameteri@12'|
F:\SFML-master\src\SFML\Graphics\Texture.cpp|148|undefined reference to `glTexParameteri@12'|
F:\SFML-master\src\SFML\Graphics\Texture.cpp|149|undefined reference to `glTexParameteri@12'|
F:\SFML-master\lib\libsfml-graphics-s-d.a(Texture.cpp.obj)||In function `ZN2sf7Texture13loadFromImageERKNS_5ImageERKNS_4RectIiEE':|
F:\SFML-master\src\SFML\Graphics\Texture.cpp|198|undefined reference to `glFlush@0'|
F:\SFML-master\src\SFML\Graphics\Texture.cpp|226|undefined reference to `glBindTexture@8'|
F:\SFML-master\src\SFML\Graphics\Texture.cpp|229|undefined reference to `glTexSubImage2D@36'|
F:\SFML-master\src\SFML\Graphics\Texture.cpp|235|undefined reference to `glFlush@0'|
F:\SFML-master\lib\libsfml-graphics-s-d.a(Texture.cpp.obj)||In function `ZNK2sf7Texture11copyToImageEv':|
F:\SFML-master\src\SFML\Graphics\Texture.cpp|293|undefined reference to `glBindTexture@8'|
F:\SFML-master\src\SFML\Graphics\Texture.cpp|294|undefined reference to `glGetTexImage@20'|
F:\SFML-master\src\SFML\Graphics\Texture.cpp|302|undefined reference to `glBindTexture@8'|
F:\SFML-master\src\SFML\Graphics\Texture.cpp|303|undefined reference to `glGetTexImage@20'|
F:\SFML-master\lib\libsfml-graphics-s-d.a(Texture.cpp.obj)||In function `ZN2sf7Texture6updateEPKhjjjj':|
F:\SFML-master\src\SFML\Graphics\Texture.cpp|358|undefined reference to `glBindTexture@8'|
F:\SFML-master\src\SFML\Graphics\Texture.cpp|359|undefined reference to `glTexSubImage2D@36'|
F:\SFML-master\lib\libsfml-graphics-s-d.a(Texture.cpp.obj)||In function `ZN2sf7Texture6updateERKNS_6WindowEjj':|
F:\SFML-master\src\SFML\Graphics\Texture.cpp|400|undefined reference to `glBindTexture@8'|
F:\SFML-master\src\SFML\Graphics\Texture.cpp|401|undefined reference to `glCopyTexSubImage2D@32'|
F:\SFML-master\lib\libsfml-graphics-s-d.a(Texture.cpp.obj)||In function `ZN2sf7Texture9setSmoothEb':|
F:\SFML-master\src\SFML\Graphics\Texture.cpp|422|undefined reference to `glBindTexture@8'|
F:\SFML-master\src\SFML\Graphics\Texture.cpp|423|undefined reference to `glTexParameteri@12'|
F:\SFML-master\src\SFML\Graphics\Texture.cpp|424|undefined reference to `glTexParameteri@12'|
F:\SFML-master\lib\libsfml-graphics-s-d.a(Texture.cpp.obj)||In function `ZN2sf7Texture11setRepeatedEb':|
F:\SFML-master\src\SFML\Graphics\Texture.cpp|451|undefined reference to `glBindTexture@8'|
F:\SFML-master\src\SFML\Graphics\Texture.cpp|452|undefined reference to `glTexParameteri@12'|
F:\SFML-master\src\SFML\Graphics\Texture.cpp|453|undefined reference to `glTexParameteri@12'|
F:\SFML-master\lib\libsfml-graphics-s-d.a(Texture.cpp.obj)||In function `ZN2sf7Texture4bindEPKS0_NS0_14CoordinateTypeE':|
F:\SFML-master\src\SFML\Graphics\Texture.cpp|474|undefined reference to `glBindTexture@8'|
F:\SFML-master\src\SFML\Graphics\Texture.cpp|500|undefined reference to `glMatrixMode@4'|
F:\SFML-master\src\SFML\Graphics\Texture.cpp|501|undefined reference to `glLoadMatrixf@4'|
F:\SFML-master\src\SFML\Graphics\Texture.cpp|504|undefined reference to `glMatrixMode@4'|
F:\SFML-master\src\SFML\Graphics\Texture.cpp|510|undefined reference to `glBindTexture@8'|
F:\SFML-master\src\SFML\Graphics\Texture.cpp|513|undefined reference to `glMatrixMode@4'|
F:\SFML-master\src\SFML\Graphics\Texture.cpp|514|undefined reference to `glLoadIdentity@0'|
F:\SFML-master\src\SFML\Graphics\Texture.cpp|517|undefined reference to `glMatrixMode@4'|
F:\SFML-master\lib\libsfml-graphics-s-d.a(Texture.cpp.obj)||In function `ZN2sf7Texture14getMaximumSizeEv':|
F:\SFML-master\src\SFML\Graphics\Texture.cpp|528|undefined reference to `glGetIntegerv@8'|
F:\SFML-master\lib\libsfml-graphics-s-d.a(Texture.cpp.obj)||In function `ZN2sf7Texture12getValidSizeEj':|
F:\SFML-master\src\SFML\Graphics\Texture.cpp|559|undefined reference to `__GLEW_ARB_texture_non_power_of_two'|
F:\SFML-master\lib\libsfml-graphics-s-d.a(RenderTarget.cpp.obj)||In function `ZN2sf12RenderTarget5clearERKNS_5ColorE':|
F:\SFML-master\src\SFML\Graphics\RenderTarget.cpp|96|undefined reference to `glClearColor@16'|
F:\SFML-master\src\SFML\Graphics\RenderTarget.cpp|97|undefined reference to `glClear@4'|
F:\SFML-master\lib\libsfml-graphics-s-d.a(RenderTarget.cpp.obj)||In function `ZN2sf12RenderTarget4drawEPKNS_6VertexEjNS_13PrimitiveTypeERKNS_12RenderStatesE':|
F:\SFML-master\src\SFML\Graphics\RenderTarget.cpp|266|undefined reference to `glVertexPointer@16'|
F:\SFML-master\src\SFML\Graphics\RenderTarget.cpp|267|undefined reference to `glColorPointer@16'|
F:\SFML-master\src\SFML\Graphics\RenderTarget.cpp|268|undefined reference to `glTexCoordPointer@16'|
F:\SFML-master\src\SFML\Graphics\RenderTarget.cpp|277|undefined reference to `glDrawArrays@12'|
F:\SFML-master\lib\libsfml-graphics-s-d.a(RenderTarget.cpp.obj)||In function `ZN2sf12RenderTarget12pushGLStatesEv':|
F:\SFML-master\src\SFML\Graphics\RenderTarget.cpp|296|undefined reference to `glGetError@0'|
F:\SFML-master\src\SFML\Graphics\RenderTarget.cpp|306|undefined reference to `glPushClientAttrib@4'|
F:\SFML-master\src\SFML\Graphics\RenderTarget.cpp|307|undefined reference to `glPushAttrib@4'|
F:\SFML-master\src\SFML\Graphics\RenderTarget.cpp|309|undefined reference to `glMatrixMode@4'|
F:\SFML-master\src\SFML\Graphics\RenderTarget.cpp|310|undefined reference to `glPushMatrix@0'|
F:\SFML-master\src\SFML\Graphics\RenderTarget.cpp|311|undefined reference to `glMatrixMode@4'|
F:\SFML-master\src\SFML\Graphics\RenderTarget.cpp|312|undefined reference to `glPushMatrix@0'|
F:\SFML-master\src\SFML\Graphics\RenderTarget.cpp|313|undefined reference to `glMatrixMode@4'|
||More errors follow but not being shown.|
||Edit the max errors limit in compiler options...|
||=== Build failed: 50 error(s), 31 warning(s) (0 minute(s), 16 second(s)) ===|

J'ai essayé de tester quelques trucs n'ayant pas vraiment changé quoi que ce soit.

Bon j'ai peut être mal cherché je ne sais pas :S
En espérant que vous pouvez me guider, je vous remercie d'avance :)

12
Général / Re : Conversion coordonnées
« le: Mai 01, 2014, 12:32:16 pm »
Ah ok je vois !

Pareil pourquoi pas faire simple en sauvegardant dans un autre conteneur chaque cases de ta map, je m'explique :
Tu y met grâce à ta formule précédente chaque couple i et j de ton tile, en suivant l'ordre de l'axe.
Ensuite tu peux récupérer ces id grâce aux coordonnées de la souris, tu calculs sur quelle case elle se trouve : "coordXcase = xSouris / tailleCaseWidth" par exemple, tu fais de la même façon pour l'axe y et tu pourras ensuite aller chercher dans ton conteneur "monConteneur[coordYcase][coordXcase]" par exemple.

C'est une solution je pense, j'attend ton avis la dessus !

13
Général / Re : Conversion coordonnées
« le: Mai 01, 2014, 12:00:50 pm »
Bonjour !

Bon donc apparemment de se que j'ai compris, tu as une tuile sur ton écran avec une id composé de deux nombres i et j et tu aimerais récupéré ces données à partir de la position de cette tuile à l’écran ?
C'est assez étrange à comprendre ^^", bien que je ne comprend pas bien comment ça fonctionne pourquoi ne pas éventuellement sauvegarder dans un tableau l'id de ce tile dans un tableau représentant la map ?

14
Graphique / Re : Bug graphique SFML2.0
« le: Mai 01, 2014, 12:44:29 am »
Bonsoir !
J'ai le plaisir de vous annoncer, suite à un teste avec SFML 2.1, que tout fonctionne parfaitement ! :)

Donc voila sujet résolu !
Bonne soirée !

15
Graphique / Re : Bug graphique SFML2.0
« le: Avril 29, 2014, 12:44:36 am »
Bon j'ai fais une mise à jour vers SFML 2.1 ! J'ai pas pris la version présente sur GitHub je sais pas si c'est un tort ^^

En tout cas ! Je referais teste demain à la personne et je vous tiendrais au courant !
Sur ceux merci des réponses et bonne soirée ;)

Pages: [1] 2 Suivante »
anything