Registriert: Mo Okt 15, 2007 18:30 Beiträge: 74 Wohnort: Berlin
Hallo,
ich würde gerne auf einen Frame rendern, da ich diesen evtl später in verschiedene Fenster einbinden will. Problem: es wird nichts gerendert. Wenn ich den Renderkontext auf ein Panel in meiner Form setze, dann wird meine Szene gezeichnet. Wenn der Renderkontext auf meinen Frame bzw. ein Panel auf dem Frame verweist und dieser als Parent die Form hat, dann passiert nichts. Haben Frames irgendeine Besonderheit, warum man mit OpenGL auf ihnen nicht einfach rendern kann? Wenn ja, gibts da eine Lösung/Alternative?
Registriert: Do Sep 25, 2003 15:56 Beiträge: 7810 Wohnort: Sachsen - ERZ / C
Programmiersprache: Java (, Pascal)
Also ich kann nur vemuten, dass da was mit Threads im Hintergrund abläuft. Wenn man mehrere Fenster hat muss man z.B. den Context ja auch expliziet "sharen". Vielleicht spielt das hier mit rein. Hab aber schon lange kein Delphi mehr offen gehabt.
_________________ Blog: kevin-fleischer.de und fbaingermany.com
erstelle doch ein ganz normales Panel auf deiner Form, und rendere dort hinein. Wenn du später mal in ein anderes Fenster zeichnen willst, kannst du doch ganz einfach einen neuen RenderingContext erzeugen, und auf ihn flippen. Das ist ja kein so großer Aufwand, du müsstest nur DC und RC der Engine neu zuweisen.
Registriert: Do Dez 05, 2002 10:35 Beiträge: 4234 Wohnort: Dortmund
Flash: Wieso sollten Frames was mit Threads machen? Die VCL ist absolut Thread unsafe. Also Threads sind da definitiv nicht. Und das mit sharen hab ich gerade nicht verstanden.
hefekuchen: Ja Frames sind besonders. Manchmal auch ziemlich nervig aber im Grunde haben sowohl Frames als auch Panels die gleichen Vorfahren. Ein Frame ist etwas flacher in der Hirarchie. Ich habe gerade mal in einer Anwendung von mir ein Frame erstellt, auf das Form gebracht und darauf den RC erstellt und es ging. Allerdings habe ich den RC aus dem Form.OnShow erstellt.
Ich könnte mir vorstellen, dass du da vielleicht etwas in der Reihenfolge falsch gemacht hast. Eventuell den RC zu früh erstellt oder wenn es noch nicht eingebettet ist. Bedenke, dass der RC Bestandteil deiner Frameklasse sein sollte und nicht der Unit. Wenn du es 2 Mal benutzt überschreibst du dir sonst den Inhalt der Variablen.
Registriert: Mo Okt 15, 2007 18:30 Beiträge: 74 Wohnort: Berlin
Vielen Dank erst mal für eure Antworten.
Habe mich erst mal darauf beschränkt auf ein normales Panel zu rendern, weils momentan zeitlich woanders brennt. Werde mich aber zu gegebener Zeit noch mal damit beschäftigen und besonders die Reihenfolge beachten die Lossy angesprochen hat.
Mitglieder in diesem Forum: 0 Mitglieder und 6 Gäste
Du darfst keine neuen Themen in diesem Forum erstellen. Du darfst keine Antworten zu Themen in diesem Forum erstellen. Du darfst deine Beiträge in diesem Forum nicht ändern. Du darfst deine Beiträge in diesem Forum nicht löschen. Du darfst keine Dateianhänge in diesem Forum erstellen.