A propose de direct 3d

Signaler
Messages postés
5
Date d'inscription
lundi 21 juillet 2003
Statut
Membre
Dernière intervention
2 septembre 2003
-
Messages postés
59
Date d'inscription
dimanche 4 mai 2003
Statut
Membre
Dernière intervention
5 juillet 2005
-
bon enfaite jvoulai voir si j'avais compri direct 3d et c pas le cas. Donc il me faut des explications.
Alors j'ai repris le tuto 2 du sdk.
En me disant moi jveux essayer de faire un carré ou une etoile et pas un triangle.

pour le carré voila sque j'ai modifié

//............................................................................
public void OnCreateDevice(object sender, EventArgs e)
{
Device dev = (Device)sender;
vertexBuffer = new VertexBuffer(typeof(CustomVertex.TransformedColored), 4, dev, 0, CustomVertex.TransformedColored.Format, Pool.Default);
vertexBuffer.Created += new System.EventHandler(this.OnCreateVertexBuffer);
this.OnCreateVertexBuffer(vertexBuffer, null);
}
public void OnCreateVertexBuffer(object sender, EventArgs e)
{
VertexBuffer vb = (VertexBuffer)sender;
GraphicsStream stm = vb.Lock(0, 0, 0);
CustomVertex.TransformedColored[] verts = new CustomVertex.TransformedColored[4];
verts[0].X=10; verts[0].Y=10; verts[0].Z=0.5f; verts[0].Rhw=1; verts[0].Color = System.Drawing.Color.Aqua.ToArgb();
verts[1].X=110;verts[1].Y=10; verts[1].Z=0.5f; verts[1].Rhw=1; verts[1].Color = System.Drawing.Color.Brown.ToArgb();
verts[2].X=110;verts[2].Y=110;verts[2].Z=0.5f; verts[2].Rhw=1; verts[2].Color = System.Drawing.Color.LightPink.ToArgb();
verts[3].X=10; verts[3].Y=110;verts[3].Z=0.5f; verts[3].Rhw=1; verts[3].Color = System.Drawing.Color.Blue.ToArgb();
stm.Write(verts);
vb.Unlock();
}
//.................................................................
enfaite j'ai juste ajouté un nouveau point et normalment ca aurrai du faire un carré vu leur position hors je comprends pas le prog dessinne tjrs un triangle. il ne considère pas le dernier point. qqun pourrai mexpliqué ???????

1 réponse

Messages postés
59
Date d'inscription
dimanche 4 mai 2003
Statut
Membre
Dernière intervention
5 juillet 2005

dans la partie qui déssine la scène, y fo pas que tu lui dise de dessiner un triangle. Tu peux par exemple faire un linestrip, qui va dessiner une ligne du premier point au second, puis du second au troisième, etc. Mais il faudra alors mettre 5 points, car sinon il manque le point final pour le dernier coté, qui est le mm que le premier. De plus, le carré est vide, et non pas colorié. Je ne connais que ca, il doit sans doute exister des comandes pour dessiner des carrés avec seulement 4 points...