[DX9,C++] Bounding Box zeichnen(gelöst)
Verfasst: 13.05.2009, 14:35
Hi Community,
Für einen Leveleditor benötige ich, dass Linien einer Bounding Box um den Mesh gezeichnet werden, um den Benutzer die Sellektierung des Objektes zu veranschaulichen.
Mein Versuch eine Linie mit dem ID3DXLine-Interface zu zeichnen schlug fehl - keine Linien zu sehen.
Der Code:
Init:
Render:
Ich habe nicht viel Erfahrung mit dem Zeichnen von Linien und muss gestehen, dass ich sie hier zum ersten mal benötige. Klar lässt sich das Problem auch mit Line Stripes per Hand über DrawPrimitiveUp oder so umsetzen, doch wenn es schon ein Interface dafür gibt, warum dies nicht nutzen. Erkennt jemand den Fehler, liegt es vllt. am Vertexformat?
Ich danke im voraus!
EDIT: Mit dem Debugger habe ich nachgeprüft, ob alle Parameter der DrawTransform-Methode stimmen- Dies ist der Fall.
Zurück gibt die Methode 0 also D3D_OK.
Irgendwie zeigt das Codelisting den 3.Pramater amp;maWorld an, im Code steht dafür nat. nur das Referenz-Zeichen
Mfg David
Für einen Leveleditor benötige ich, dass Linien einer Bounding Box um den Mesh gezeichnet werden, um den Benutzer die Sellektierung des Objektes zu veranschaulichen.
Mein Versuch eine Linie mit dem ID3DXLine-Interface zu zeichnen schlug fehl - keine Linien zu sehen.
Der Code:
Init:
Code: Alles auswählen
//vertexlisten für linie laden
//Linke, untere, vordere ecke zu rechter unteren vorderen ecke
m_LDcToRDc[0] = m_pMin;
m_LDcToRDc[1] = VECTOR3(m_pMax.x, m_pMin.y, m_pMin.z);
//usw...
//line props
m_pLine->SetWidth(10.0f);
m_pLine->SetPattern(1);
Code: Alles auswählen
//Bounding box zeichnen
g_graphdevice->SetFVF(D3DFVF_XYZRHW | D3DFVF_DIFFUSE);
m_pLine->Begin();
m_pLine->DrawTransform(m_LDcToRDc,2, &maWorld, D3DCOLOR_ARGB(255,255,0,0));
m_pLine->End();
Ich danke im voraus!
EDIT: Mit dem Debugger habe ich nachgeprüft, ob alle Parameter der DrawTransform-Methode stimmen- Dies ist der Fall.
Zurück gibt die Methode 0 also D3D_OK.
Irgendwie zeigt das Codelisting den 3.Pramater amp;maWorld an, im Code steht dafür nat. nur das Referenz-Zeichen
Mfg David