CustomVertex.TransformedColored[]: Methode SetPosition wird nicht gefunden



  • Hi,

    ich lerne grad ein wenig managed DX und hab die OnPaint-Methode wie folgt überschrieben:

    protected override void OnPaint(System.Windows.Forms.PaintEventArgs e)
    		{
    			device.Clear(ClearFlags.Target, System.Drawing.Color.CornflowerBlue, 1.0f, 0);
    
    			CustomVertex.TransformedColored[] verts = new CustomVertex.TransformedColored[3];
    			verts[0].SetPosition(new Vector4(this.Width / 2.0f, 50.0f, 0.5f, 1.0f));
    			verts[0].Color = System.Drawing.Color.Aqua.ToArgb();
    			verts[1].SetPosition(new Vector4(this.Width - (this.Width / 5.0f), this.Height - (this.Height / 5.0f), 0.5f, 1.0f));
    			verts[1].Color = System.Drawing.Color.Black.ToArgb();
    			verts[2].SetPosition(new Vector4(this.Width / 5.0f, this.Height - (this.Height / 5.0f) , 0.5f, 1.0f));
    			verts[2].Color = System.Drawing.Color.Purple.ToArgb();
    			device.BeginScene();
    			device.VertexFormat = CustomVertex.TransformedColored.Format;
    			device.DrawUserPrimitives(PrimitiveType.TriangleList, 1, verts);
    			device.EndScene();
    			device.Present();
    
    			this.Invalidate();
    
    		}
    

    Ich bekomme beim compilieren immer folgende Fehlermeldung:

    'Microsoft.DirectX.Direct3D.CustomVertex.TransformedColored' enthält keine Definition für 'SetPosition'

    folgende Namespaces hab ich eingebunden:

    using Microsoft.DirectX;
    using Microsoft.DirectX.Direct3D;
    

    Weiß jmd. Rat?



  • Wahrscheinlich ist SetPosition nichtexistent.

    Bye, TGGC (Pipe my World.)



  • TGGC schrieb:

    Wahrscheinlich ist SetPosition nichtexistent.

    Bye, TGGC (Pipe my World.)

    Ja, das sagt ja die Fehlermeldung aus. Aber laut meinem Buch (Managed directX 9 kickStart, Tom Miller) und der MSDN sollte die vorhanden sein.



  • net in meiner doku...
    das einzige was SetPosition naha kommt ist CustomVertex.TransformedColored.Position Property



  • Ich lese ebenfalls gerade dieses Buch und hatte das selbe Problem. Lösen konnte ich es, in dem ich die Referenzen entfernt habe und neu (zu der wirklich neuesten) DX-Version hinzugefügt habe.
    Die Struktur CustomVertex.TransformedColored hat auf alle Fälle eine Methode SetPosition.



  • Laut meiner DX9 Doku gibt es SetPosition(Vektor4) in CustomVertex.TransformedColored.

    Microsoft.DirectX.Direct3D, Version=1.0.1901.0

    Muss sich wohl um einen Versionkonflikt handeln.


Anmelden zum Antworten