Registriert: Fr Mär 30, 2018 11:44 Beiträge: 1
Programmiersprache: C++
Hallo Delphi-Gemeinde,
ich arbeite zur Zeit an einer legacy-Applikation (VCL) für den Embarcadero C++ Builder. Zur grafischen Anzeige wird der mitinstallierte gl.h Header verwendet, der nur OpenGL 1 Funktionen bietet. Sämtliche Versuche einen moderneren C++ Header einzubinden blieben aufgrund des bcc32-Compilers erfolglos.
Als Alternative versuche ich nun den Delphi-Header zu nutzen. Habe dazu mir die Trial des RAD-Studios gehohlt um den dglOpenGL.pas Header in eine .hpp umzuwandeln und dann diesen zu verwenden. Laut Embarcadero sollte das möglich sein:
Zitat:
You can add any .pas file to a C++ project. (C++Builder has supported adding Pascal files into a C++ project for many years, since at least CB2006.) When you add a Pascal file and build the C++ project, the .pas files are built before any C++ files, and the Delphi compiler auto-generates a C++ header with a .hpp extension. This is exactly the same as the headers for the VCL or FMX! This allows C++ code to refer to Delphi classes and types, completely unaware they are not implemented in C++, and at link time the Delphi code is linked in to C++ code.
Bekomme aber leider auch mit dieser Methode 50+ Compiler Fehler beim Lesen der hpp. Meine Kenntnisse in Delphi sind leider beschränkt. Ist es überhaupt möglich was ich vorhabe, bzw. hat es einer von euch schon versucht/geschafft OpenGL mit Delphi innerhalb einer C++-Anwendung (VCL) zu nutzen?
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Registriert: So Aug 08, 2010 08:37 Beiträge: 460
Programmiersprache: C / C++ / Lua
Du willst halt nicht die Pascal Header in C Header umwandeln, sondern die offiziellen C Header von OpenGL nutzen und dich selbst um die Erstellung des Rendering Contextes kuemmern.
Wie das bei alten VCL Projekten funktioniert, weiss ich leider nicht, aber ich vermute es ist bloss rumgefummel mit der Win32 API - google nach wie man das unter generischen Windows Anwendungen tut.
Registriert: Mi Aug 14, 2013 21:17 Beiträge: 587
Programmiersprache: C++
Du kannst auch glLoadGen benutzen, um deinen OpenGL-Header zu generieren. Da kannst du verschiedene C- und C++-Stile einstellen und ausprobieren, womit der C++-Builder am besten klarkommt. Ich würde mit "-style=pointer_c" beginnen. Auch für moderne Compiler ist glLoadGen derzeit mein Liebling was OpenGL-Loader angeht.
_________________ So aktivierst du Syntaxhighlighting im Forum: [code=pascal ][/code], [code=cpp ][/code], [code=java ][/code] oder [code=glsl ][/code] (ohne die Leerzeichen)
Mitglieder in diesem Forum: 0 Mitglieder und 11 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.