Tout d'abord salut,
Alors ça fait quelques temps que je me prends bien la tronche avec Irrlicht et Ode, et j'ai un premier résultat de pas trop passable.
Comme vous le savez, il est difficile de garder pour soit des essais quand ils commencent enfin à être concluant sur certains point ^^.
C'est pourquoi aujourd'hui, je vous propose d'essayer mes petits test perso de physique avec Ode.
Alors il y a encore pas mal de petits bugs biensûr, je suis pas parfait et Ode est nouveau pour moi côté programmation. On a du mal à monter sur la piste car à la base ce n'était pas prévu pour cette voiture, et ce n'était pas prévu pour Ode et Irrlicht également.
Je précise que ça risque d'être assez gourmand en ressource car je n'ai actuellement fait aucune optimisation ni sur le code, ni sur les graphismes.Tout est brut de pomme .
Enfin bon après tout ça, si vous voulez quand même tester voici le liens :
[LIEN SUPPRIME ALLER VOIR EN BAS DU POST]
@+
[edit]Les touches sont: fleche haut,bas,droite et gauche. R pour retourner, puis barre d'espace pour freiner.
Hors ligne
Alors c'est très sympa d'un point de vue graphique, j'aime bien, tout va (60 fps sur mon ordinateur pourri-issime).
Par contre je me trompe peut-être mais on dirait que tu utilise sévèrement un thread pour la physique. Ca se voit. C'est archi archi archi sacadé chez moi, les FPS ne sont pas atteints mais les mouvements sont très irréguliers (physique non synchronisée avec le temps ?) et ça fait mal aux yeux.
Aussi, la voiture est trop légère, elle s'envole trop facilement mais ça j'imagine que c'est réglable.
PS : Tu as utilisé quelles technos ? (compilateur, version d'Irrlicht, langage...) parce qu'à ce que je vois, tu n'embarques pas la dll d'Irrlicht mais une version intérieure.
Hors ligne
Yep c'est bien sympa.
Par contre c'est un peu chaud à manier tout ça, la voiture part facilement dans le décors et se retourne aisément. Sinon, même chose que DeusXL : petites saccades.
L'ombre ont été faite avec le système de base d'Irrlicht ?
Dernière modification par Aranoth (27-01-2007 15:12:17)
Hors ligne
Ca serait sympa de me préciser vos processeur, Pentium ou Amd, j'ai l'impression que les saccades sont beaucoup plus importantes sur les AMD que les Pentium, peut-être le thread physique qui chi un peu faut que je cherche.
Sinon oui c'est pas encore au point, y'a du réglage à faire, aussi bien dans la maniabilité que la physique.Et pour les ombres, c'est du Irrlicht 1.2 sauf le circuit qui est lightmapé biensûr.
Hors ligne
En effet j'ai un Athlon XP 2400+
Ca faisait quelque temps que je voulais essayer un moteur physique, alors je me suis dit : sympa la démo, essayons de voir comme marche ODE.
Sauf que je n'arrive pas à trouver comment l'utiliser avec MinGW, donc je voudrais savoir avec quoi tu as compilé tout ça, et si c'est MinGW, comment t'y es-tu pris ?
Hors ligne
J'ai compilé avec Visual C++ 2005 express, mais j'ai aussi utilisé Ode sous Linux avec Code::Blocks et GCC sans souci particulier pour le compiler.
Bon par contre si vous avez une idée pour la gestion d'un thread physique afin d'éviter les saccades je prends, parceque là j'avou que j'ai pas encore trouvé de solution fiable à 100% et surtout qui marche sur tout les processeurs.
Le problème c'est qu'en physique et particulièrement avec ode, il faut utiliser un stepping régulier, sous peine d'instabilité totale du moteur physique (les roues se détachent, la voiture tremble etc).
le rendu se fait en gros en spécifiant dWorldQuickStep(MonMondeOde,Step Size);
si je modifi le Step Size en fonction de la vitesse du thread ça devient instable, si je limite le thread en vitesse comme j'ai fait là, ça saccade à mort particulièrement sur les athlon.
Voilà, je vais continuer à réfléchir, et si jamais je trouve mieux je vous réuploaderai un exemple plus fonctionnel de se côté là .
On avait pas se type de souci sur les exemples qu'on a fourni en C# avec Duke car on utilisait pas des scenes complexe, et donc c'était très rapide en calcul.
A suivre... ^^
Hors ligne
j'ai un bug quand je lance l'exe, ca me met : "cette application n'a pas pu démarrer car la config est incorrecte, reinstallez l'application pourrait résoudre ce problème ..
"Copland" :
Le problème c'est qu'en physique et particulièrement avec ode, il faut utiliser un stepping régulier, sous peine d'instabilité totale du moteur physique (les roues se détachent, la voiture tremble etc).
ya pas moyen de faire comme pour les calculs de positions et avoir un truc du type "time elapsed" ?
Hors ligne
Roo, mais vous avez décidé de me tuer aujourd'hui lol.
Le coup de l'appli ça me l'a fait en debug sur une de mes machines c'est bizarre, probablement un problème de parram de VC++ à la compilation, je vais regarder ça de plus pret.
Jerry Kan, serais-tu disposé à faire des essais avec moi, et si oui as-tu un msn ?
PS:Pour le Time Elapsed, non car justement le but avec se systeme était d'utiliser le temps passé entre deux boucles pour varier les mouvements, et qui dit :utiliser le temps entre deux boucles, dit irrégulier et donc instable avec Ode.
Hors ligne
Alors le problème d'application qui se lance pas, c'est parcequ'il faut les dépendances VC++ (merci microsoft d'avoir changé le systeme de compilation sur VC++ 2005) "vcredist_x86.exe"
VC_Redist
Pour les saccades, ceux qui veulent bien essayer et me dire ça se passe ici :
[LIEN SUPPRIME ALLER VOIR EN BAS DU POST]
Hors ligne
C'est nettement nettement mieux ! Les saccades ne se sentent presque plus du tout !
Hors ligne
Ok, mais c'est quand même étrange qu'on ai pas eu de souci avec le C# à se niveau là.
J'ai regardé de plus pret, et en C# on utilisait le StopWatch et co.Ses fonctions du C# font appel à des API win pour les temps de haute précision (QueryPerformanceFrequency et QueryPerformanceCounter) j'ai donc pensé dans un premier temps, qu'il y avait une différence de précision sur les calculs selon les processeurs vu que je n'ai rencontré le problème des saccades que sur des AMD (pour le moment).Donc j'ai programmé un Timer de haute précision à la nanoseconde pour faire mes essais, et le problème semble similaire.
J'ai également tenté plusieurs syncro, allant de 40 à 150.Le plus stable et le moins saccadé c'est avéré être entre 70 à 100.Ce qui est sûr c'est que le souci provient bien du Thread, car en bloquant le thread d'une seconde sur chaque boucle, ça me permet de voir que mon anim sur la voiture sous Irrlicht fonctionne nickel.
Je cherche encore jusqu'a trouver une solution fiable à 100%.Je vous tiendrez au courant, et merci pour les essais .
Hors ligne
Et bien chez moi les saccades sont encore plus flagrantes O_o...
Hors ligne
pareil qu'aranoth
Sinon c'est beau ca marche pas trop mal bravo
Hors ligne
très bon prog copland bien simpatique
Hors ligne
c'est injouable, je lache la touche, la voiture continue à bouger par moment, des fois elle tourne toute seule, voir se retourne. Et je ne parles pas des saccades.
Hors ligne
minirop, tu veux dire que c'est carément instable chez toi c'est ça ?
Du genre les roues tremblotent, elles vibrent de droite à gauche toutes seules, la voiture saute à l'arret et se retrouve sur son dos, se genre de délire ?
Hors ligne
Copland :
minirop, tu veux dire que c'est carément instable chez toi c'est ça ?
^^
Copland :
Du genre les roues tremblotent, elles vibrent de droite à gauche toutes seules, la voiture saute à l'arret et se retrouve sur son dos, se genre de délire ?
oui (sauf que la voiture ne saute pas)
les délires c'est plus une mauvaise réponse des commandes, voire aucune réponse. et quelques problèmes de collisions.
Hors ligne
Ok, j'y bosse hein j'essai de voir comment rendre la physique proprement, mais c'est bien que beaucoup de monde ai participé aux réponses ça va m'aider à avancer les choses dans le bon sens j'espère .
Pour les commandes, pas de panique j'ai mis des petites commandes rapide juste pour la manipuler, mais c'est vrai que je me suis pas encore penché sur cette partie, car en physique il vaut mieux avoir un rendu stable avant d'attaquer les déplacements pur, sinon ça sert à rien car il faut souvent recommencer si l'on change des valeurs et tout le bazard.
Comme promis, dès que j'ai du nouveau je vous tiens informé.
@+
Hors ligne
Salut !
De mon côté j'ai testé la première version (Je suis en train de downer la mise a jour). Je te dirais ce que ça donne après demain (j'ai oublié ma clé usb, donc...).
Chez moi la première version fonctionne plutot pas mal, sauf les roues qui tremblottent...heuu... qui oscillent fortement de droite à gauche. Mais pas tout le temps...
Il n'y avais pas un truc qui avait été donné sur l'un des thread du tuto avec le mur que tu avais fait ? On y parlais de la façon de résoudre le tremblement de certains cubes après la chute.
Hors ligne
Houlla la première version à été réup sans thread pour faire des essais avec un pote donc oui ça tremblotte, mais j'attaque avec des threads posix pour voir ce que ça peut donner.
La prochaine version que je fais (pas avant 3 à 5 jours), sera avec un modèle de voiture libre de droit, et le circuit sera le même donc je partagerai médias et exe afin de pouvoir vous livrer plusieurs versions sans avoir a réup la totalité des fichiers et vous pourrez réutiliser les modèles à votre guise .@+
Hors ligne
Sympa !
Je les utiliserais pour m'essayer a Ode, justement ! Mais avec Irrlicht .Net CP.
Hors ligne
Bonjour, comme promis je vous tiens au courant :
J'ai réecris la gestion de la physique, avec les threads Posix, fait quelques optimisations, et viré les cubes pour alléger la scene mais il semblerai que le problème des saccades soit toujours là.Le plus étrange, c'est que j'ai pû remarquer avec l'aide d'un ami que les saccades disparraissent quasiment en totalité si je lance le rendu en OpenGL.
Le problème pourrait donc venir d'irrlicht lui même...Je creuse dans cette voie, pour l'instant pas de nouvelle version vu que le principal problème est toujours là, mais j'y travaille afin de trouver une solution.
Hors ligne
Bon j'ai peut être la solution, je pense vous uploader une nouvelle démo demain en fin d'après midi afin que vous puissiez tester et me dire si ça va mieux ou pas.
Voilou @++
Hors ligne
Hello,
Un peu de retard, j'ai eu pas mal de choses à faire entre temps.
Comme d'hab j'attends vos retours, pour corriger les bugs .
Par avance merci, et bon amusement à ceux qui réutiliseront les médias.
PS:Si la voiture se retourne, et que vous voyez que le chassis traverse à moitié le sol, ce n'est pas un bug, c'est parceque j'ai utilisé la figure de collision de l'ancien chassis pour ne pas avoir à reparramétrer ma physique à se niveau là c'est tout.
Télécharger
Hors ligne
C'est vraiment très bon, presque plus de lag (quelques petits encore), la voiture est très sympa (les faux reflets, ++ !) et je trouve ça plus maniable qu'avant !
Il faudrait soumettre ça à Nikolaus pour que ça devienne une démo sur la page d'Irrlicht (il y en a trop peu à mon avis).
Hors ligne
Options | Liens officiels | Caractéristiques | Statistiques | Communauté |
---|---|---|---|---|
Corrections |
|
xhtml 1.0 css 2.1 Propulsé par FluxBB Traduit par FluxBB.fr |
882 membres 1429 sujets 11119 messages |
Dernier membre inscrit: LiseBuisson96 24 invités en ligne Aucun membre connecté RSS Feed |