ik ben op dit moment bezig om bepaalde gegevens in D3D te visualiseren.
Voor het gemak mag je aannemen dat wat ik probeer te visualiseren eruit ziet als een ellipsoide.
Als je dit zonder een Mesh zou tekenen heb je dus VertexBuffer met daarin alle punten en 1 indexBuffer met de indices.
Voor het tekenen zelf zou ik dus 2 triangle-fans (voor de uiteindes) gebruiken en 1 triangle-strip voor de body:
hier dus uiterst links en rechts 2 fans, en in het midden een trianglestrip.
Wanneer je niet gebruik maakt van een Mesh, kun je met de DrawIndexedPrimitives in 3 maal de hele ellipsoide tekenen, mits je weet waar in de indexbuffer elk stuk begint.
Ik gebruik nu echter wel een Mesh-object om zo de data bij elkaar te houden (Ik gebruik een custom library-functie om de Mesh te genereren en een user control om alles te tekenen.)
Nu vind ik de DX9 doc's nog niet echt uitgebreid en de aanwezige tutorials vind ik ook niet echt duidelijk wat dat betreft.
Wat mijn probleem nu is:
Kan ik instellen welk deel van de buffers welke data bevatten (triangle-fan/strip) ?
Als dit niet kan, hoe kan ik dan alsnog vanuit de Mesh tekenen. (welke LockFlags heb ik nodig om
geen problemen te krijgen? DoNotWait ? ReadOnly ?)
Waar ik overigens ook de indruk begin van te krijgen is dat een Mesh standaard een TriangleList gebruikt ? Of vergis ik me hier ?
Voor het gemak mag je aannemen dat wat ik probeer te visualiseren eruit ziet als een ellipsoide.
Als je dit zonder een Mesh zou tekenen heb je dus VertexBuffer met daarin alle punten en 1 indexBuffer met de indices.
Voor het tekenen zelf zou ik dus 2 triangle-fans (voor de uiteindes) gebruiken en 1 triangle-strip voor de body:
code:
1
2
3
4
5
| /|--|--|\ /-|--|--|-\ --|--|--|-- \-|--|--|-/ \|--|--|/ |
hier dus uiterst links en rechts 2 fans, en in het midden een trianglestrip.
Wanneer je niet gebruik maakt van een Mesh, kun je met de DrawIndexedPrimitives in 3 maal de hele ellipsoide tekenen, mits je weet waar in de indexbuffer elk stuk begint.
Ik gebruik nu echter wel een Mesh-object om zo de data bij elkaar te houden (Ik gebruik een custom library-functie om de Mesh te genereren en een user control om alles te tekenen.)
Nu vind ik de DX9 doc's nog niet echt uitgebreid en de aanwezige tutorials vind ik ook niet echt duidelijk wat dat betreft.
Wat mijn probleem nu is:
Kan ik instellen welk deel van de buffers welke data bevatten (triangle-fan/strip) ?
Als dit niet kan, hoe kan ik dan alsnog vanuit de Mesh tekenen. (welke LockFlags heb ik nodig om
geen problemen te krijgen? DoNotWait ? ReadOnly ?)
Waar ik overigens ook de indruk begin van te krijgen is dat een Mesh standaard een TriangleList gebruikt ? Of vergis ik me hier ?
ASSUME makes an ASS out of U and ME