11-03-2008 18:11:59
- firnafin
- Membres

- Date d'inscription:
- Messages: 150
- IP: 88.141.156.240
- Courriel
voila la ou ca marche pas :
irr::video::S3DVertex* * data= reinterpret_cast<irr::video::S3DVertex**>(mesh_buffer->getVertices());
for(irr::u16 i=0;i<mesh_buffer->getVertexCount();i++){
irr::video::S3DVertex* vertex=data[i];
b=vertex->getType();
a=vertex->Pos.X;
}il me fait une violation memoire pour la ligne "a=vertex->Pos.X" alors qu' il ne dit rien sur "b=...." ( c'est dc que le vertex existe ) .
Aidez moi !!
Hors ligne
11-03-2008 20:50:46
- Copland
- Modérateurs
- Date d'inscription:
- Messages: 657
- IP: 90.38.199.54
- Courriel Site web
déjà les reinterpret_cast j'aime pas
.
Non plus sérieusement, dit plutôt ce que tu veux faire exactement avec se code, ça sera plus utile pour t'aider
.
Config : I5 2400, ATI HD6870 1Go DDR5, 4Go DDR3.
Single Boot : Windows Seven.
Hors ligne
11-03-2008 21:24:08
- firnafin
- Membres

- Date d'inscription:
- Messages: 150
- IP: 88.141.156.240
- Courriel
juste parcourir les vertices d'un mesh buffer c'est tout c _ _ mais il a une merde de pigeon qui m'echappe et je ne sais pas quoi .
Comment tu fais pour passer d'un void* a un montruc* sans reinterprete_cast ( IMeshbuffer->getVertices() nous donne un void* ) ?
Hors ligne
12-03-2008 06:46:16
- Copland
- Modérateurs
- Date d'inscription:
- Messages: 657
- IP: 90.38.199.54
- Courriel Site web
En fait c'est tout con, il te suffit de le caster simplement.
Pour l'allocation pas besoin de se prendre la tête tu fais juste :
irr::video::S3DVertex* vertices=(irr::video::S3DVertex*)MonMeshBuffer->getVertices();
après tu fais un :
for(u32 j=0;j<MonMeshBuffer->getVertexCount();++j)
{
vertices[j].Pos.X; //etc ![]()
}
Config : I5 2400, ATI HD6870 1Go DDR5, 4Go DDR3.
Single Boot : Windows Seven.
Hors ligne
12-03-2008 09:35:10
- firnafin
- Membres

- Date d'inscription:
- Messages: 150
- IP: 88.141.156.240
- Courriel
Merci, effectivement ca marche mais pas a cause d'avoir casté au lieu de reinterprete_cast,j'avais mal lu la doc :getvertices() donne un tableau non pas de irr::video::S3DVertex* mais une tableau de irr::video::S3DVertex....et dire que j'ai cherché plus d'une heure ...quel boulet je suis .
Hors ligne



