Pages: 1
Bonjour, pour mon jeu je suis trins de réaliser un petit écran de chargement, sauf le seul problème c'est que je ne sais pas comment faire pour que l'image reste visible sans devoir utiliser la boucle de rendue.
Et aussi je voudrais savoir s'il était possible d’utiliser une autre bibliothèque comme QT ou SDL avec irrlicht ?
Tous dépend de c'elle la que je veut utiliser non ?
Merci de bien vouloir me répondre.....
Hors ligne
Coucou, alors utiliser Qt avec Irrlicht, je dis oui, sans problème ça fonctionne bien.
Si tu es sous windows, tu peux intégrer la fenêtre de rendu dans une widget Qt (avec le ID), par contre sous linux, ce n'est toujours pas codé, soit, il faut laisser la création de la fenêtre par défaut.
Pour les évènements souris/clavier, je te conseille de rester avec Irrlicht pour la partie graphique et le reste pour Qt, pas de conflit et plus simple à programmer. Je pense que j'ai déjà fait un poste la dessus, mais peut être pas. Il faut que je revérifie.
C'est tout ce que je peux te dire pour l'instant. Le projet RoboticsCell décrit dans les projets du site fonctionne de cette façon !
Dernière modification par Gehogor (16-03-2011 00:38:37)
Hors ligne
Gehogor :
C'est tout ce que je peux te dire pour l'instant. Le projet RoboticsCell décrit dans les projets du site fonctionne de cette façon !
C'est se que javais pus lire......bon c'est peut-^etre HS (hors-sujet) comme question mes qu'elle est vraiment l'utiliter de ton programme ? J'ai pus lire qu'il pouvait créer des robots "virtuels" ou qu'elle que chose comme sa, mes je suis pas sur.
Sinon pour mon autre question tu na pas une idées, je sais comment afficher des images, mes sans passer par la boucle de rendue c'est dur...
Dernière modification par mmorpglefilm (16-03-2011 00:26:05)
Hors ligne
Oui en effet, tu peux créer des cellules robotique (un peu comme les assemblages en CAO) et les tester avec un rendu 3D pour détecter les éventuelles collisions et/ou pour tout simplement voir ce qu'il se passe. On voit beaucoup mieux en 3D.
Pour ton autre question de chargement, je le fais avec Qt avec la classe QSplashScreen, qui te permet de mettre une image au démarrage et afficher de texte de chargement par exemple.
Qt est vraiment fait pour gérer les interfaces et tout l'entourage. Les autres parties (QtCore,...) sont super aussi, bonne gestion des listes, des socket pour le réseau, des fichiers, des flux XML... C'est très puissant, bien maintenu et bien documenté. Il faut donc l'exploiter au maximum.
Dernière modification par Gehogor (16-03-2011 00:47:00)
Hors ligne
Oui, sauf que je veux créer un jeu est je pense pas que QT soit adapter, et je ne veux juste pas créer un écran de chargement mes charger une image, et sans la boucle de rendue je voix vraiment pas comment faire...
Hors ligne
//Création de la fenêtre IrrlichtDevice* device=createDevice(EDT_OPENGL,dimension2d<u32>(800,600),32,false,true,false); //récupération des variables d'irrlicht IVideoDriver* driver=device->getVideoDriver(); ISceneManager* manager=device->getSceneManager(); //affichage de l'image de chargement driver->beginScene(true,true,SColor(255,255,255,255)); driver->draw2DImage(driver->getTexture(L"imageChargement.png"),position2d<s32>(0,0)); driver->endScene(); //code qui prend du temps. ..... //boucle de rendu while(device->run()) { ... }
Hors ligne
Moi je fais comme sa pour charger une image, sauf que moi elle n'affiche rien, me toi la seul différence c'est que tu écrit le "beginScene" avent le code pour charger une image, il y a vraiment une grande différence ?
Hors ligne
J'aurais dût écrire un truc en dessous pour expliquer.
Oui, c'est important, il faut mettre ces 3 lignes obligatoirement (avec ces propres options bien-sûr) pour afficher une image.
driver->beginScene(true,true,SColor(255,255,255,255));
driver->draw2DImage(driver->getTexture(L"imageChargement.png"),position2d<s32>(0,0));
driver->endScene();
beginScene : initialise le buffer video (le vide et le créer s'il n'existe pas).
draw2DImage : ajoute l'image au buffer video.
endScene : actualise l'affichage (donc l'image s'affiche à l'écran quand cette ligne de code s’exécute).
Hors ligne
Nickel, merci pour l'astuce. Ca faisait un bout de temps que je cherchais à faire cela!!!
Hors ligne
Pages: 1