OpenGL unter OSX

Für allgemeine Fragen zur Programmierung, welche nicht! direkt mit Lazarus zu tun haben.
mschnell
Beiträge: 3444
Registriert: Mo 11. Sep 2006, 10:24
OS, Lazarus, FPC: svn (Window32, Linux x64, Linux ARM (QNAP) (cross+nativ)
CPU-Target: X32 / X64 / ARMv5
Wohnort: Krefeld

Re: OpenGL unter OSX

Beitrag von mschnell »

Key-Real hat geschrieben:Es tut mir leid, aber wir sind vom Thema abgekommen :(
Ich wollte wissen wie man unter OSX(apple mac) korrekt einen OpenGL Context eröfnet und die
eingabe von der Tastatur und der Maus behandelt (vieleicht auch anderer Events, wie z.B. Das Fenster schließen oder Minimieren und so).
Genau das ist das Thema! "Wie kann ein extern generiertes asynchrones Event korrekt einem fpc User-Programm, übergeben werden, ohne die LCL zu verwenden (z.B. weil die LCL keinen Widget-Type zur Verfügung stellt, der openGL unterstützt)".

Dass Du das auf einem Mac machen willst ist ein zusätzliches Problem, weil es bei dieser für ein geschlossenes Öko-System gedachten Technik viel weniger Community basierte Unterstützung gibt als für Windows und Linux. Der Code, den Du gepostet hast (mit "PostMessage") ist aber doch wohl für Windows ?!?!?. in keinem anderen System wird man PostMessage freiwillig verwenden. Die LCL stellt es nur aus Kompatibilitätsgründen und mit stark eingeschränkter Funktionalität zur Verfügung.

Um (einfach nur) einen Grafischen Kontext von openGL zu öffnen solltest Du Dir - wie gesagt - SDL anschauen.

-Michael
Zuletzt geändert von mschnell am Do 3. Okt 2013, 10:07, insgesamt 2-mal geändert.

mschnell
Beiträge: 3444
Registriert: Mo 11. Sep 2006, 10:24
OS, Lazarus, FPC: svn (Window32, Linux x64, Linux ARM (QNAP) (cross+nativ)
CPU-Target: X32 / X64 / ARMv5
Wohnort: Krefeld

Re: OpenGL unter OSX

Beitrag von mschnell »

Christian hat geschrieben:Lazarus basiert nunmal auf der LCL.
Nö.

Lazarus besteht aus einer IDE und einer Library (LCL).

Man kann mit der IDE wunderbar Programme (commandline-Tools, CGI-Programme, embedded Programme, ...) entwickeln, und debuggen, die die LCL nicht verwenden.

Key-Real braucht aber eigentlich die LCL (zumindestens stellt er sich vor, dass er "Ereignis-gesteuert" programmieren könnte, also so, als stünde ihm die LCL-Infrastruktur zur Verfügung). Nur leider ist in der LCL kein für ihn passender Widget-Typ implementiert (noch nicht einmal ein "aktiv-NoGUI" Widget Typ, auf dem er aufbauen könnte.)

Eigentlich will er also eine LCL-Erweiterung programmieren. Das ist aber ziemlich aufwändig. Am ehesten ist da "CustomDrwan" oder"fpGUI" geeignet, oder ein Schwenk auf mseGUI. Aber die müssten alle auch erweitert werden, um openGL zu unterstützen.

-Michael
Zuletzt geändert von mschnell am Mi 2. Okt 2013, 15:57, insgesamt 1-mal geändert.

mschnell
Beiträge: 3444
Registriert: Mo 11. Sep 2006, 10:24
OS, Lazarus, FPC: svn (Window32, Linux x64, Linux ARM (QNAP) (cross+nativ)
CPU-Target: X32 / X64 / ARMv5
Wohnort: Krefeld

Re: OpenGL unter OSX

Beitrag von mschnell »

Ich habe in der englischen Mailing Liste nachgefrant und folgende Antwort bekommen:

On 02/10/13 12:00, Michael Schnell wrote:
>
> A person in the German Lazarus forum might want to use fpGUI with OpenGL
> as a Backend. Is this viable ? Any chance ?

I vaguely remember somebody already done this... Not sure how far they
got though.

I also know of somebody that used the Cairo Backend for fpGUI.

I don't really know much about OpenGL, but I assume it would be even
easier to do once the "single handle per Form" branch has been merged
in. All widgets on a form are then simply "painted widgets" and not real
windows [with a window handle each]. OpenGL should like that design
more.

Regards,
Graeme.


ps #1:
Please move further fpGUI discussions to the fpGUI newsgroups. Thanks.


ps #2:
The [http://fpgui.sourceforge.net/apidocs/index.html] URL is back and
working again.

mschnell
Beiträge: 3444
Registriert: Mo 11. Sep 2006, 10:24
OS, Lazarus, FPC: svn (Window32, Linux x64, Linux ARM (QNAP) (cross+nativ)
CPU-Target: X32 / X64 / ARMv5
Wohnort: Krefeld

Re: OpenGL unter OSX

Beitrag von mschnell »

SDL: http://www.libsdl.org/

kann anscheinend auch bei Mac OS openGL: http://www.meandmark.com/sdlopenglpart1.html . Da ist auch von den Events die Rede.

Das könnte helfen, SDL mit fpc zu verwenden (falls z.B. JediSDL ( http://sourceforge.net/projects/jedi-sdl/ , http://wiki.freepascal.org/FPC_and_SDL )auf Mac nicht geht): https://github.com/sysrpl/Bare.Game/blo ... p.sdl2.pas

-Michael

Christian
Beiträge: 6079
Registriert: Do 21. Sep 2006, 07:51
OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
CPU-Target: AVR,ARM,x86(-64)
Wohnort: Dessau
Kontaktdaten:

Re: OpenGL unter OSX

Beitrag von Christian »

Bitte, kein GLUT,kein SDL, kein LCL.
*Klugscheisser*
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/

mschnell
Beiträge: 3444
Registriert: Mo 11. Sep 2006, 10:24
OS, Lazarus, FPC: svn (Window32, Linux x64, Linux ARM (QNAP) (cross+nativ)
CPU-Target: X32 / X64 / ARMv5
Wohnort: Krefeld

Re: OpenGL unter OSX

Beitrag von mschnell »

Christian hat geschrieben:
Key-Real hat geschrieben:Bitte, kein GLUT,kein SDL, kein LCL.
*Klugscheisser*
Anscheinend will er alles selber machen, hat aber keine Ahnung, auf was er sich einlässt.

-Michael

Antworten