Hallo,
ich habe ein etwas blödes Problem. Ich will über GLCanvas von GLScene ein paar Linien zeichnen und ein bisschen Schrift ausgeben. Mein Code ist bis jetzt:
Delphi-Quellcode:
procedure TCMP_PLAYLIST.GLDirectOpenGL1Render(Sender: TObject; var rci: TRenderContextInfo);
var
OGLCanvas: TGLCanvas;
x,y,i: integer;
begin
x:=GLSceneViewer1.Width;
y:=GLSceneViewer1.Height;
OGLCanvas:=TGLCanvas.Create(x,y);
OGLCanvas.PenColor:=clBlack;
OGLCanvas.PenAlpha:=1;
OGLCanvas.PenWidth:=1;
for i:=0 to 10 do
begin
GLWindowsBitmapFont1.TextOut(rci,random(100),random(100),'hello',Random(256*256*256));
OGLCanvas.MoveTo(i*10,20);
OGLCanvas.LineTo(i*10,y);
end;
OGLCanvas.Free;
end;
Führe ich das nun aus, erhalte ich stehts eine Fehlermeldung 'invalid operation'. Zeichne ich erst die Schrift und dann die Linien erhalte ich diesen Fehler nicht, doch ist dies eine eher unkomfortable Lösung.
Wo liegt also mein Fehler, oder ist es anders möglich? GLHudText hatte ich bereits ausprobiert, ist aber leider viel zu umständlich.
Ich bedanke mich im Vorraus,
Slavik