frage zu GetWindowText()
Re: frage zu GetWindowText()
Ok, fangen wir mal an:
Alle von Xin genannten Frameworks sind für die Erstellung von Benutzeroberflächen geeignet und sind plattformunabhängig (alles gibt es für Windows, Linux, Mac u.a.).
GTK und wxWidgets
wxWidgets und GTK sind fast ausschließlich für GUIs zu gebrauchen (heißt: Du kannst Fenster erstellen, Menüleisten reinsetzen, Buttons draufklatschen, u.s.w.). GTK zeichnet seine Benutzeroberfläche auf allen Plattformen selber, während wxWidgets auf das native System zurückgreift (unter Windows benutzt wxWidgets beispielsweise die WinAPI).
Qt
Qt kann dagegen noch ein bisschen mehr: Es ist ein komplettes Framework für die Erstellung von Anwendungen, du kannst damit zum zum Beispiel auch noch auf Dateien zugreifen oder mit dem Netzwerk arbeiten. Qt zeichnet meines Wissens nach auch mit eigenen Zeichenroutinen.
Was ist für 3D Spiele am besten geeignet?
Diese Frage ist bei den oben aufgelisteten Frameworks ziemlich schwer zu beantworten, da keines für die Erstellung solcher "Anwendungen" konzipiert wurde. Wenn du wirklich in die dritte Dimension ohne die WinAPI einsteigen willst, so empfehle ich dir OpenGL, entweder in Verbindung mit dem SimpleDirectMediaLayer (SDL) oder GLUT (Frage an alle: Wie ist GLFW?).
Willst du dagegen 3D Grafik mit einer Benutzeroberfläche zusammen verwenden, so rate ich dir wieder zu Qt, GTK oder wxWidgets. Alle bieten die Möglichkeit, einen (OpenGL-) Viewport einzubetten. Dann kannst du wieder mit OpenGL in den Viewport zeichnen.
Generell sollte man sich erst mit solchen Frameworks beschäftigen, wenn man sich in der Programmiersprache seiner Wahl (ich gehe jetzt mal von C oder C++ aus) zurechtfindet (ich spreche da aus eigener Erfahrung ).
Alle von Xin genannten Frameworks sind für die Erstellung von Benutzeroberflächen geeignet und sind plattformunabhängig (alles gibt es für Windows, Linux, Mac u.a.).
GTK und wxWidgets
wxWidgets und GTK sind fast ausschließlich für GUIs zu gebrauchen (heißt: Du kannst Fenster erstellen, Menüleisten reinsetzen, Buttons draufklatschen, u.s.w.). GTK zeichnet seine Benutzeroberfläche auf allen Plattformen selber, während wxWidgets auf das native System zurückgreift (unter Windows benutzt wxWidgets beispielsweise die WinAPI).
Qt
Qt kann dagegen noch ein bisschen mehr: Es ist ein komplettes Framework für die Erstellung von Anwendungen, du kannst damit zum zum Beispiel auch noch auf Dateien zugreifen oder mit dem Netzwerk arbeiten. Qt zeichnet meines Wissens nach auch mit eigenen Zeichenroutinen.
Was ist für 3D Spiele am besten geeignet?
Diese Frage ist bei den oben aufgelisteten Frameworks ziemlich schwer zu beantworten, da keines für die Erstellung solcher "Anwendungen" konzipiert wurde. Wenn du wirklich in die dritte Dimension ohne die WinAPI einsteigen willst, so empfehle ich dir OpenGL, entweder in Verbindung mit dem SimpleDirectMediaLayer (SDL) oder GLUT (Frage an alle: Wie ist GLFW?).
Willst du dagegen 3D Grafik mit einer Benutzeroberfläche zusammen verwenden, so rate ich dir wieder zu Qt, GTK oder wxWidgets. Alle bieten die Möglichkeit, einen (OpenGL-) Viewport einzubetten. Dann kannst du wieder mit OpenGL in den Viewport zeichnen.
Generell sollte man sich erst mit solchen Frameworks beschäftigen, wenn man sich in der Programmiersprache seiner Wahl (ich gehe jetzt mal von C oder C++ aus) zurechtfindet (ich spreche da aus eigener Erfahrung ).
- Xin
- nur zu Besuch hier
- Beiträge: 8859
- Registriert: Fr Jul 04, 2008 11:10 pm
- Wohnort: /home/xin
- Kontaktdaten:
Re: frage zu GetWindowText()
Willkommen im Club.Empire hat geschrieben:Sorry das ich nicht geantwortete habe, aber in einer Woche ist meine letzte Prüfung. Deshalb ist es gerade noch etwas stressig.
Auf's Du. Wenn Du mich siezt habe ich das Gefühl, ich wäre über 30.Empire hat geschrieben:Aber bevor ich jetzt Anfang mich mit einem der Genannte zu lernen würde ich gern noch etwas wissen.
Haben sie sich auf etwas spezialiesiert?
Und wenn Du Siezt, solltest Du es auch groß schreiben, sonst ist sie weiblich. ^^
Ich habe praktische Informatik studiert, was bedeutet, dass man von mir erwartet, dass ich mich auf das spezialisiere, was gerade anliegt.Empire hat geschrieben:Wenn ja auf was?
Das war bisher Bash-Programmierung, Linux-Systemprogrammierung, Linux-Server-Administration, Windowssystemprogrammierung mit .COM (TAPI), C#, Datenbankprogrammierung, Webdesign, Optimierung von Algorithmen, 3D-Visualisierung, eine visuelle Programmiersprachen für die Visualisierung der 3D-Daten, eine Steuerung von Suchmaschinen, Windowssystemprogrammierung mit der WinAPI, Dialogprogrammierung und derzeit 3D-Berechnungen, bald endlich kommend 3D-Visualisierung mit OpenGL.
Müsste ich mich auf eine Spezialisierung festlegen, dann wäre das Compilerbau.
OpenGL und DirectX.Empire hat geschrieben:Ich würde gerne etwas lernen das sich für 3D Spiele eignet. Gibt es etwas das sich dafür besonder gut eignet?
DirectX ist Windows only, OpenGL ist portabel, also für Linux, Mac, Windows, Embedded Systems (z.B. Mobiltelefone).
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.
Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.
Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.
Re: frage zu GetWindowText()
Also ich glaube das ich mit C/C++ inzwischen gut zurecht komme.
(90% meiner Errors werden durch fehlende } ausgelöst was ich auf fehlende
Konzentartion und nicht auf Unkenntnis zurück führe).
also fange ich jetzt mal An OpenGL zu googeln.
Danke führ die ausführliche erklärung.
@Xin:
Ich hab nicht dich sonder GTK, Ot, ... "gesiezt".
Auch wenn ich dich nicht gemeint habe war die Antwort doch sehr interesant^^.
mfg
Empire
Edit:
Muss ich die visualiesierung verstehen?
Edit2:
Ist das 1. ein MRT Bild eines Hirns?
(90% meiner Errors werden durch fehlende } ausgelöst was ich auf fehlende
Konzentartion und nicht auf Unkenntnis zurück führe).
also fange ich jetzt mal An OpenGL zu googeln.
Danke führ die ausführliche erklärung.
@Xin:
Ich hab nicht dich sonder GTK, Ot, ... "gesiezt".
Auch wenn ich dich nicht gemeint habe war die Antwort doch sehr interesant^^.
mfg
Empire
Edit:
Muss ich die visualiesierung verstehen?
Edit2:
Ist das 1. ein MRT Bild eines Hirns?
- Xin
- nur zu Besuch hier
- Beiträge: 8859
- Registriert: Fr Jul 04, 2008 11:10 pm
- Wohnort: /home/xin
- Kontaktdaten:
Re: frage zu GetWindowText()
Ich werde voraussichtlich endlich nächsten Monat offiziell mit OpenGL anfangen.... dann werde ich wohl auch mal was dazu schreiben.Empire hat geschrieben:also fange ich jetzt mal An OpenGL zu googeln.
Auf meiner Website befinden sich auch Links zum Thema. Nehes Tutorial ist wohl mal einen Blick wert.
Ansonsten ist das Red Book die erste Referenz.
OpenGL kannst Du über GLut oder auch SDL starten. Und natürlich auch von Hand, aber um mal auszuprobieren ist Glut eigentlich ganz praktisch.
Hmm... hatte das eben so verstanden, keine Ahnung warum. ^^Empire hat geschrieben:@Xin:
Ich hab nicht dich sonder GTK, Ot, ... "gesiezt".
Auch wenn ich dich nicht gemeint habe war die Antwort doch sehr interesant^^.
Nein, denn weder sind alle Bildchen da ausgefüllt, noch kann sind die Bildchen so informativ, dass man das einfach verstehen könnte. Fährt man mit der Maus über die Befehle (Ikons) bzw. die Anschlüsse, dann wird in der Statuszeile eine kurze Info angezeigt, was man hier überhaupt verbindet. Eniges sieht man schon an den Verbindungsfarben: Rot sind Zahlen, Blau sind Farb- bzw. Helligkeitsinformationen. Dünne Linien haben 1 Dimension, die dicken haben drei Dimensionen. Und so konnte man auch nur "typsicher" zwei Befehle miteinander verbinden.Empire hat geschrieben:Muss ich die visualiesierung verstehen?
Das Ganze ist nur ein Screenshot einer Beta, die zufällig noch auf meiner HP liegt. Das Programm ist übrigens mit GTK geschrieben und wurde auf Linux entwickelt und kompiliert. Auch die Windows-Version.
Der Würfel oben links ist der Datensatz, die Teekanne ist der Renderer, der aus dem Datensatz eine Grafik in der Größe 300x300 erstellt. Damit die Teekanne weiß, welche Daten sie rendern soll, ist sie mit dem Würfel verbunden.
Der blaue Kasten nimmt aus dem Datensatz die Dimensionen der Daten raus, also wieviele Pixel in x, y und z-Richtung vorhanden sind. Dann folgen ein paar Grafikfehler, wo die drei Werte in einen Vektor übertragen werden, der anschließend durch 2 geteilt wird. Dies ist der Mittelpunkt des Datensatz und die Position, auf die die Kamera beim Rendern schaut.
Das Gewusel dadrunter ist das Berechnen der Perspektive, also von wo schaut die Kamera auf den Mittelpunkt des Datensatzes. Hierbei wird ein Vektor berechnet, der sich um die X- (1000, 0, 0), bzw. um die Y-Achse (0, 1000, 0) dreht. Vektoren konnten noch keine Fließkommazahlen, deswegen wird die jeweilige Achse mit einem ausreichend großem Integer berechnet. ^^.
Der Integer-Wert, der aus dem Slider kommt, wird dann in eine Fließkommazahl gewandelt ( 1 -> 1.0 ), mit Pi multipliziert und dann durch 180 geteilt. Damit errechnet man den Vektor auf die Kameraposition.
Das alles wandert in die Teekanne, die daraus ein Bild rendert. Das fertige Bild kommt aus der Teekanne raus und geht auf den Monitor - man sieht es also.
Man könnte es auch beispielsweise auf die Festplatte schreiben oder beides.
Mit der Loop-Funktion habe ich so kleine Filme erstellt, wie man sich um den Schädel dreht oder auch ins Hirn eintaucht.
Zimindest ist der obere Teil eines Kopfes samt Innenleben. Ob das jetzt aus einem MRT kommt, weiß ich nicht, aber ich gehe davon aus. Für mich war das nur ein Testdatensatz.Empire hat geschrieben:Ist das 1. ein MRT Bild eines Hirns?
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.
Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.
Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.
Re: frage zu GetWindowText()
Wenn es zu SDL+OpenGL kommt verweise ich immer wieder auch gerne auf meine Signatur Zusätzlich zu den bereits genannten Bibliotheken könnte sich vieleicht auch ein Blick auf die SFML lohnen. Ich hab sie zwar selbst noch nicht verwendet, aber schon einige positive Meinungen dazu gelesen. Außerdem ist sie im Gegensatz zu glu(t), SDL etc. in C++ geschrieben und dementsprechend auch objektorientiert aufgebaut.
"Make it idiot-proof and someone will invent an even better idiot." (programmers wisdom)
OpenGL Tutorials und vieles mehr rund ums Programmieren: http://www.tomprogs.at
OpenGL Tutorials und vieles mehr rund ums Programmieren: http://www.tomprogs.at
Re: frage zu GetWindowText()
Ich finde dein Tutorial echt gut.
Ich habe die libs und includes und dll instaliert und das Bsp Prog ausprobiert.
Leider Kamen dabei diese Errors:
Für die anderen, ich meine diese Bsp Progg:
mfg
Empire
EDIT:
Kann man dass eigendlich mit Windowsprogrammierung kombinieren.
Das würde die Nachrichten Verarbeitung verbessern.
Ich habe die libs und includes und dll instaliert und das Bsp Prog ausprobiert.
Leider Kamen dabei diese Errors:
Code: Alles auswählen
[Linker error] undefined reference to `SDL_Init'
[Linker error] undefined reference to `SDL_GetError'
[Linker error] undefined reference to `SDL_Quit'
[Linker error] undefined reference to `WinMain@16'
Code: Alles auswählen
#include <SDL.h> // SDL-Header
#include <SDL_opengl.h> // Bindet plattformabhängig die richtigen Header ein
#include <iostream> // für Konsolenausgaben
using std::cout; // Wir verwenden std::cout und
using std::endl; // std::endl für die Konsolenausgaben
// Die main Funktion muss unter Windows unbedingt
// diese Form haben, da es ansonsten zu einem
// Linkerfehler kommen würde.
int main(int argc, char **argv)
{
if( SDL_Init( SDL_INIT_VIDEO ) != 0 ) // Initialisieren des SDL Video Subsystems
{
cout << "Die SDL konnte nicht initalisiert werden (" << SDL_GetError() << ")" << endl;
return 1;
}
cout << "Willkommen zum SDL Testprogramm." << endl;
SDL_Quit(); // Herunterfahren der SDL Bibliotheken
return 0;
}
Empire
EDIT:
Kann man dass eigendlich mit Windowsprogrammierung kombinieren.
Das würde die Nachrichten Verarbeitung verbessern.
-
- Beiträge: 52
- Registriert: Mi Mai 12, 2010 3:48 pm
Re: frage zu GetWindowText()
also ich persönlich bin kein freund von SDL, weil man da in jedem neuen projekt die abhängigkeiten angeben muss (bei VC++, bei anderen weiß ich nicht).
deswegen benutze ich lieber glut ist meiner meinung nach auch einfacher...
http://www.videotutorialsrock.com/
von den tutorials hab ich das meißte das ich über OpenGL und glu(t) weiß
deswegen benutze ich lieber glut ist meiner meinung nach auch einfacher...
http://www.videotutorialsrock.com/
von den tutorials hab ich das meißte das ich über OpenGL und glu(t) weiß
return EXIT_FAILURE;
Re: frage zu GetWindowText()
Sorry, dafür ist mein Englisch zu schlecht.
Re: frage zu GetWindowText()
Die Abhängigkeiten musst du aber bei jeder Bibliothek angeben. Auch bei glut...paparoach777 hat geschrieben:also ich persönlich bin kein freund von SDL, weil man da in jedem neuen projekt die abhängigkeiten angeben muss (bei VC++, bei anderen weiß ich nicht).
deswegen benutze ich lieber glut ist meiner meinung nach auch einfacher...
Danke. Freut mich das zu hörenEmpire hat geschrieben:Ich finde dein Tutorial echt gut.
Das schaut irgendwie dannach aus als hättest du nicht die angegebenen Bibliotheken gelinkt. Das gleiche Problem hatten wir gerade auch in einem anderem Thread.Empire hat geschrieben:Ich habe die libs und includes und dll instaliert und das Bsp Prog ausprobiert.
Leider Kamen dabei diese Errors:
Ich würde da keine Windows-Funktionen verwenden da dadurch die plattformunabhängigkeit verloren gehen würde. Was willst du denn an der Nachrichtenverarbeitung verbessern? Du bekommst doch eh alle Nachrichten von der SDL...Empire hat geschrieben:Kann man dass eigendlich mit Windowsprogrammierung kombinieren.
Das würde die Nachrichten Verarbeitung verbessern.
"Make it idiot-proof and someone will invent an even better idiot." (programmers wisdom)
OpenGL Tutorials und vieles mehr rund ums Programmieren: http://www.tomprogs.at
OpenGL Tutorials und vieles mehr rund ums Programmieren: http://www.tomprogs.at
Re: frage zu GetWindowText()
Bei der Windowsprogramierung ist die Schleife schon im Grundgerüst enthalten.
Dachte das wäre einfacher. Hast aber recht der Preis ist zu hoch.
Dachte das wäre einfacher. Hast aber recht der Preis ist zu hoch.