ich bräuchte mal einen Rat... Es geht um ne Optimierungsmaßnahme. Also ich zeichne einen Kreis mit meinem Grafikengine Objekt welches die Zeichenfunktionien bereithält:
Code: Alles auswählen
int vertexCount = _steps+1;
int primCount = vertexCount-3;
cVertex* vertices = new cVertex[vertexCount];
float fullCircle = cMath<float>::Pi()*2;
float circle = 0;
for (int i = 0; i < _steps;++i)
{
vertices[i].m_x = _x+(sin(circle)*_radius);
vertices[i].m_y = _y+(cos(circle)*_radius);
vertices[i].m_z = 0.0f;
vertices[i].m_color = m_quad.GetColor(cQuad::QV_LEFT_BOTTOM); // Always take the first color, because we have more than 4 corners
circle += (fullCircle/_steps);
}
ApplyTransformation();
m_d3DDevice->SetTexture(0,NULL);
m_d3DDevice->DrawPrimitiveUP(D3DPT_TRIANGLEFAN,primCount,vertices,sizeof(cVertex));
delete[] vertices;
Ich frag halt nur weil ich jetzt auch ne Primitive Drawing Methode in die Engine einbaue wo ich jedes Vertex einzeln definieren kann und dafür dann immer neuen Speicher belegen und wieder freigeben und das jeden Tick...
Ratschläge? Meinungen? Tipps? :)
Viele Grüße
Tornby