X-FILE Super JLI'ler
Anmeldedatum: 12.07.2003 Beiträge: 349
Medaillen: Keine
|
Verfasst am: 18.08.2003, 10:51 Titel: Animierte Texturen und Framerate |
|
|
Hallo zusammen,
ich hab da ein etwas seltsames Problem. Und zwar habe ich inspiriert durch Christians animierten Sprite den Versuch gemacht animierte Texturen auf eine 3D-Plane zu kleben. Funktioniert auch soweit, bis auf die Tatsache, das die "Engine" ohne Animation 50 Frames hat und mit auf einmal je nach Groeße der Textur 2-8. Da kann dann doch was ned so ganz stimmen, oder? Ich meine am Rechner liegts 100 pro auch nicht.
Ich poste mal den Draw-Code:
Code: |
void CExplFX::Draw()
{
if(++m_AnimationDelay > m_fAnimSpeed)
{
m_AnimationDelay = 0;
if(++m_CurrentImage >= m_AnimationVec.size())
{
m_CurrentImage = 0;
}
}
m_lpDevice->SetStreamSource(0,VB_Plane,0,sizeof(CustomPlane));
D3DXMATRIX WorldMatrix;
D3DXMATRIX TransMatrix;
D3DXMatrixTranslation (&TransMatrix, 0.0f, -5.0f, 0.0f);
D3DXMATRIX RotationMatrix;
D3DXMatrixRotationY (&RotationMatrix, 0);
D3DXMatrixMultiply (&WorldMatrix, &RotationMatrix, &TransMatrix);
m_lpDevice->SetTransform(D3DTS_WORLD, &WorldMatrix);
m_lpDevice->SetTexture(0, m_AnimationVec[m_CurrentImage]);
m_lpDevice->SetRenderState(D3DRS_CULLMODE, D3DCULL_CCW);
m_lpDevice->SetRenderState(D3DRS_FILLMODE, D3DFILL_SOLID);
m_lpDevice->SetFVF(D3D_PLANEVERTEX);
m_lpDevice->DrawPrimitive(D3DPT_TRIANGLELIST, 0, 2);
}
|
Wenn was bremsen sollte muesste es doch hier sein, oder?
Vielen Dank...
EDIT:
Ok, ok. Sorry. Auch hier war ich wieder mal zu dumm. Als ich das hier fertig geschrieben hatte isses mir aufgefallen Ich lade die Sequenz bei jedem Rendervorgang neu, was ja nich so ganz Sinn der Sache ist
Sorry... aber das schreiben hat mich wenigstens auf die Idee gebracht...
Wie heißts so schoen: Gebt mir eine GeForce FX5900 und ich bring sie euch in 2 Minuten zum erliegen |
|