Message #3845
Sujet: Les VBO dans la version 1.5 svn
| Type | Date | Auteur | Contenu |
|---|---|---|---|
| Dernière modification | 23-04-2008 10:21:23 | Ikam |
Hello
Je créé ce message pour informer ceux qui voudrait utiliser les vbo et qui rencontre des problemes Dans la version 1.5 qu'on trouve sur le svn irrlicht ajoute le support des vbo (seulement pour opengl pour l'instant) Seulement il y a une petite limitation sur le nombre de vertex min d'un mesh pour pouvoir exploiter ces vbo. Cette limite est pour l'instant codé en dur et fixé à 500 mais d'après le commentaire à coté elle devrait etre modifié à l'avenir pour devenir modifiable par l'utilisateur. En attendant cette modif si vous voulez donc exploiter les vbo pour un mesh dont le nombre de vertex est inferieur à 500 je vous conseille de mettre en commentaire ce test qui se trouve dans le fichier CNullDriver.cpp dans la fonction isHardwareBufferRecommend() et de recompiler irrlicht. Pour l'utilisation des vbo, il suffit de spécifier à votre meshbuffer d'utilise un type de transfert STATIC, STREAM ou DYNAMIC selon le type de vbo que vous voulez. Une doc sur les VBO defini l'utilisation pour ces 3 modes de transfert : STREAM : Ce mode est particulièrement efficace pour les objets animés tel un personnage. DYNAMIC : Ce mode est recommandé pour le rendu d’objets animés affichés plusieurs fois par frame, par exemple pour le rendu multi passe. STATIC : Ce mode est parfaitement adapté pour les objets non déformables, c’est-à-dire pour toute géométrie qui reste valable pour plusieurs frames. Voici un exemple d'utilisation que j'ai trouvé sur le forum officiel. scene::IAnimatedMesh* animMesh = smgr->getMesh("20kdm2.bsp"); scene::ISceneNode* node = 0; if (animMesh) { scene::IMesh *mesh = animMesh->getMesh(0); for (unsigned int i=0; i<mesh->getMeshBufferCount(); i++) { mesh->getMeshBuffer(i)->setHardwareMappingHint(scene::EHM_STATIC); } node = smgr->addMeshSceneNode(mesh); } PS pour copland : la limitation a 500 ne permet pas d'exploiter ta classe de terrain avec les vbo, une fois commentée on fait exploser le fps meter :p |
| Création du message | 23-04-2008 10:16:29 | Ikam |
Hello
Je créé ce message pour informer ceux qui voudrait utiliser les vbo et qui rencontre des problemes Dans la version 1.5 qu'on trouve sur le svn irrlicht ajoute le support des vbo (seulement pour opengl pour l'instant) Seulement il y a une petite limitation sur le nombre de vertex min d'un mesh pour pouvoir exploiter ces vbo. Cette limite est pour l'instant codé en dur et fixé à 500 mais d'après le commentaire à coté elle devrait etre modifié à l'avenir pour devenir modifiable par l'utilisateur. En attendant cette modif si vous voulez donc exploiter les vbo pour un mesh dont le nombre de vertex est inferieur à 500 je vous conseille de mettre en commentaire ce test qui se trouve dans le fichier CNullDriver.cpp dans la fonction isHardwareBufferRecommend() et de recompiler irrlicht. Pour l'utilisation des vbo, il suffit de spécifier à votre meshbuffer d'utilise un type de transfert STATIC, STREAM ou DYNAMIC selon le type de vbo que vous voulez. Une doc sur les VBO defini l'utilisation pour ces 3 modes de transfert : STREAM : Ce mode est particulièrement efficace pour les objets animés tel un personnage. DYNAMIC : Ce mode est recommandé pour le rendu d’objets animés affichés plusieurs fois par frame, par exemple pour le rendu multi passe. STATIC : Ce mode est parfaitement adapté pour les objets non déformables, c’est-à-dire pour toute géométrie qui reste valable pour plusieurs frames. Voici un exemple d'utilisation que j'ai trouvé sur le forum officiel. scene::IAnimatedMesh* animMesh = smgr->getMesh("20kdm2.bsp"); scene::ISceneNode* node = 0; if (animMesh) { scene::IMesh *mesh = animMesh->getMesh(0); for (unsigned int i=0; i<mesh->getMeshBufferCount(); i++) { mesh->getMeshBuffer(i)->setHardwareMappingHint(scene::EHM_STATIC); } node = smgr->addMeshSceneNode(mesh); } PS pour copland : la limitation a 500 ne permet pas d'exploiter ta classe de terrain avec les vbo, une fois commentée on fait exploser le fps meter :p |
| Options | Liens officiels | Caractéristiques | Statistiques | Communauté |
|---|---|---|---|---|
|
Préférences cookies Corrections |
![]() ![]() ![]() ![]() |
Propulsé par Django xhtml 1.0 css 2.1 |
884 membres 1440 sujets 11337 messages |
Dernier membre inscrit: Saidov17 149 invités en ligne membre en ligne: - RSS Feed |