openGl loop bei CView
-
Hallo alle zusammen,
ich habe eine openGl "CPerspective" klasse geschrieben, die von CView erbt.
dann hab ich eine weitere Klasse "main" die von CFrameWnd abgeleitet wird und einen Splitter erstellt:if ( !m_mainSplitter.CreateView( 0, 1, RUNTIME_CLASS(CPerspective),
CSize( ( cr.Width() - INFOBAR_SIZE ) / 2, cr.Height() / 2 ), pContext ) )
{
MessageBox( "Error setting up splitter frames!", "Init Error!",
MB_OK | MB_ICONERROR );
return FALSE;
}die eigentliche Applikation (CWinApp) nutzt nun die main Klasse um alles anzuzeigen.
das funktioniert auch alles.
Die Interaktionen mit dem View-Fenster "CPerspective" wie OnMouseMOve etc funzen auch.( diese sind ja in der CPerspective-Klasse definiert.
Aber wie kann ich die OnDraw-Methode der CPerspective Klasse in einen Mainloop werfen. Ich will halt dass sich meine Kugel (nur als Beispiel) immer dreht und nicht nur wenn ich eine Interaktion ausführe...
Denn das Proble ist irgendwie dass ich ja nicht wirklich ein Object erstelle mit CPerspective *test = new... sondern dass macht ja irgendwie diese Run_time Befehl (Makro) von alleine. Ich kann also nicht einfach ein neuzeichnen anfordern ???Bitte helft mir ich sitze hier schon ne Weile
-
Es gibt doch auch irgendwas wie OnIdle().
Darin dann immer neu rendern oder zumindest ein Neurendern anfordern.
-
ruf in OnDraw(...) einfach Invalidate(); auf, dann solltest du dort nen loop haben.
rapso->greets();
-
IMHO hatten wir das schonmal.
Bye, TGGC \-/