- Joystick := true;
DGL https://delphigl.com/forum/ |
|
@Pascal SDL 2.0 Header https://delphigl.com/forum/viewtopic.php?f=14&t=10753 |
Seite 1 von 3 |
Autor: | end [ Mo Feb 04, 2013 11:10 ] |
Betreff des Beitrags: | @Pascal SDL 2.0 Header |
Hier kommen die Meinungen rein... Würde übrigens gerne wissen, ob ihr prinzipiell bereit wärt, SDL zu verweden, bzw. welche Vorteile die VCL ggü. SDL bietet... |
Autor: | phlegmatiker [ Mo Feb 04, 2013 16:59 ] |
Betreff des Beitrags: | Re: @SDL für OpenGL auf Delphi/Lazarus/FPC |
Nur Bemerkungen, sind keinesfalls als Angriff zu verstehen... da haben sich ja manche Leute immer gleich ![]() - Führende Unterstriche für Parameternamen sind ungünstig, meiner Meinung nach. A wäre da knuffiger - entsprechend den Borland "Regeln" - UInt16 und co, sind in EVMath, wieso nicht EVPlatform? - Feldnamen haben bei Dir manchmal kleine führende 'Effs' mal große, Große F's sind "richtiger" in dem Zusammenhang. - inherited Destroy call "fehlt" in TEVEngine.Destroy; - "const" fehlt hier und da - "Logging" ist nicht conditional - "irreführende" Methodennamen "SetJoystick" z.B. dabei de/initialisierst du nur das subsystem da. Du greifst auch auf die public properties zu innerhalb von methoden, anstatt auf das passende Feld, direkt - in den Settern der Properties könnte man noch nen kleines if reinpflanzen, das geprüft wird ob der neue wert <> der alte wert ist |
Autor: | end [ Mo Feb 04, 2013 19:40 ] |
Betreff des Beitrags: | Re: @SDL für OpenGL auf Delphi/Lazarus/FPC |
Zitat: da haben sich ja manche Leute immer gleich ![]() Kenn ich ^^, gehöre aber nicht zu der Sorte... Zitat: - Führende Unterstriche für Parameternamen sind ungünstig, meiner Meinung nach. A wäre da knuffiger - entsprechend den Borland "Regeln" - UInt16 und co, sind in EVMath, wieso nicht EVPlatform? - Feldnamen haben bei Dir manchmal kleine führende 'Effs' mal große, Große F's sind "richtiger" in dem Zusammenhang. - "const" fehlt hier und da gut, einige kleine Designfehler, sind wohl aus etw. Zeitdruck enstanden (und dem Einsatz vom ModelMaker in einer uralten Version) Zitat: - "irreführende" Methodennamen "SetJoystick" z.B. dabei de/initialisierst du nur das subsystem da. das mache ich, damit ich schreiben kann: Code:
und automatisch wird auch das Subsystem initialisiert... Zitat: Du greifst auch auf die public properties zu innerhalb von methoden, anstatt auf das passende Feld, direkt ich finde es manchmal etw. schöner so, macht schließlich Borland auch in ihrem code... Zitat: - inherited Destroy call "fehlt" in TEVEngine.Destroy; Huch, wohl übersehen ![]() Brauch man das aber überhaupt? In TObject ist die Methode doch leer... Zitat: - in den Settern der Properties könnte man noch nen kleines if reinpflanzen, das geprüft wird ob der neue wert <> der alte wert ist wusste gar nicht, dass das geht oO... Danke für die Kritik, werde versuchen sie in der neuen Version zu berücksichtigen, schließlich sind das alles nur "Schönheitsfehler", keine richtigen Bugs, die die Performance beeinflussen, o.Ä. (zm. wenn ich mich nicht irre...) Ich habe das nur veröffentlicht, weil ich es als Alternative zum veralteten EasySDL sehe und es bereits in einem (sehr kleinen Sample) verwendet habe... |
Autor: | subotai [ Mo Feb 04, 2013 22:21 ] |
Betreff des Beitrags: | Re: @SDL für OpenGL auf Delphi/Lazarus/FPC |
end hat geschrieben: Würde übrigens gerne wissen, ob ihr prinzipiell bereit wärt, SDL zu verweden, bzw. welche Vorteile die VCL ggü. SDL bietet... Ich denke, dass letzendlich beides Vor- und Nachteile hat. SDL kümmert sich von Haus aus um vieles, um dass man sich beim Nutzen der VCL selbst kümmern muss. Einige Implementierungen fand ich in der VCL leichter als in SDL. Ein einfaches Beispiel ist, zu überprüfen, ob die Anwendung den Fokus hat oder nicht. Das ist in SDL wesentlich komplizierter Umzusetzen, als in der VCL. Nervig finde ich auch das amerikanische Tastaturlayout. Ein Vorteil von SDL bietet z.B. aber auch der direkte Joystick-Support. Wobei ich das Gefühl habe, dass es hier sehr wenige Joystick/Gamepad-Nutzer gibt. Ein Nachteil der VCL ist, dass das OnIdle-Event unregelmäßig aufgerufen wird. Ein Vorteil ist, dass man Komponenten, z.B. ein Mainmenu nutzen kann. Ich ziehe SDL der VCL vor. |
Autor: | end [ Di Feb 05, 2013 14:22 ] |
Betreff des Beitrags: | Re: @SDL für OpenGL auf Delphi/Lazarus/FPC |
Zitat: Nervig finde ich auch das amerikanische Tastaturlayout ?? Also ich habe keines... |
Autor: | subotai [ Di Feb 05, 2013 16:32 ] |
Betreff des Beitrags: | Re: @SDL für OpenGL auf Delphi/Lazarus/FPC |
Dann ist das wohl nur bei mir so ![]() Code:
Wobei ich natürlich keine Ahnung habe, wie SDL das intern regelt. Bei DirectInput gibts dieses Problem soweit ich weiss auch, ganz sicher bin ich mir jedoch nicht. Es wird ja auch abgeraten, den Status der Tasten über DirectInput abzufragen. |
Autor: | Lord Horazont [ Di Feb 05, 2013 17:17 ] |
Betreff des Beitrags: | Re: @SDL für OpenGL auf Delphi/Lazarus/FPC |
SDL_EnableUNICODE anyone? |
Autor: | subotai [ Di Feb 05, 2013 17:32 ] |
Betreff des Beitrags: | Re: @SDL für OpenGL auf Delphi/Lazarus/FPC |
Lord Horazont hat geschrieben: SDL_EnableUNICODE anyone? Code:
![]() Viele Grüße |
Autor: | Lord Horazont [ Di Feb 05, 2013 17:43 ] |
Betreff des Beitrags: | Re: @SDL für OpenGL auf Delphi/Lazarus/FPC |
Dann musst du aber auch auf das andere feld prüfen… Vergesse immer den Namen. Im KeyEvent-Struct gibts jedenfalsl noch ein Feld, wo der unicode-Character drinne steht. Das sollte man für alles nehmen, was man an Characters binden will. F1 und ähnliche sollte man weiterhin über .sym machen. grüße |
Autor: | subotai [ Di Feb 05, 2013 18:36 ] |
Betreff des Beitrags: | Re: @SDL für OpenGL auf Delphi/Lazarus/FPC |
@ Lord Horazont: Super, vielen Dank ![]() Code:
Das ist klasse. Muss man aber auch erstmal wissen. Viele Grüße |
Autor: | end [ Di Jul 09, 2013 17:50 ] |
Betreff des Beitrags: | Re: @SDL für OpenGL auf Delphi/Lazarus/FPC |
Hier könnt ihr auch erstmal gefundene Bugs posten. Vllt. kennt ja jemand eine gute Möglichkeit einen Bugtracker einzurichten? |
Autor: | Lord Horazont [ Mi Jul 10, 2013 08:24 ] |
Betreff des Beitrags: | Re: @SDL für OpenGL auf Delphi/Lazarus/FPC |
Wenn du sowieso git nutzt, kannst du Github nutzen, da gibts auch Issue Tracker. Ich würde DLLs und so aber keinesfalls in das Git repository legen. Das sind Binäre Blobs die dem Git nicht gut tun und es unnötig fett machen. Sowas sollte man separat halten (insbesondere, wenn es aus dem Repository-Inhalt erzeugt werden kann; wenn das nicht der Fall ist, kann sowas auch eine Lizenzfrage sein). grüße |
Autor: | Knittel [ Mi Jul 10, 2013 11:14 ] |
Betreff des Beitrags: | Re: @SDL für OpenGL auf Delphi/Lazarus/FPC |
Hey, hab mal den header und das sample runtergeladen und veruscht das sample zu kompilieren. Bei mir kommt gleich zu Beginn eine Exception: "Die Anwedung konnte nicht richtig initalisiert werden (0xc0150002)" Ich hab danach die unit nochmal in sdlx um genannt um sicherzugehen, dass nicht der alte Header benutzt wird, aber immernoch der selbe Fehler. (Delphi 7, WinXP mit SDL2_x86.dll) |
Autor: | end [ Mi Jul 10, 2013 11:48 ] |
Betreff des Beitrags: | Re: @SDL für OpenGL auf Delphi/Lazarus/FPC |
@LordHorazont: Danke für den Hinweis. @Knittel: Kommt die Exception in dem Log-Fenster, oder als Windows-Fehlermeldung? Versuch doch mal per Einzelschritt herauszufinden wann sie kommt. [EDIT] Offensichtlich ist irgendwas mit der DLL faul... bei meinem WinXP bekomme ich denselben Fehler, auf Win7 64 Bit jedoch keinen Fehler, unabhängig davon, ob ich es 32/64Bit kompiliere. [/EDIT] |
Autor: | end [ Mi Jul 10, 2013 13:05 ] |
Betreff des Beitrags: | Re: @SDL für OpenGL auf Delphi/Lazarus/FPC |
Es lag an den DLL's, Grund siehe meinen Post in der Projekteecke. Danke für den Hinweis: https://dl.dropboxusercontent.com/u/512 ... L2_x86.dll ist die aktualisierte DLL. Damit sollte es funktionieren ![]() (keine Gewähr!) |
Seite 1 von 3 | Alle Zeiten sind UTC + 1 Stunde |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |