http://www.pronix.de -> Forum -> Linux-Unix Programmierung

Forum: Linux-Unix Programmierung

Moderatoren: juergen, Martin Conrad

Thema: [EDIT] - Qt 4 – GUI-Entwicklung mit C++ für Linux-Einsteiger geeignet?

  • (nur registrierte Mitglieder)
Hi Leute

Seit meinem Sommerurlaub habe ich C++ links liegen gelassen. Und das, obwohl ich C++ von A bis Z noch größtenteils vor mir habe.
Dafür habe ich jetzt einen 2. PC mit Linux SUSE 11.0 und KDE 3.5. eingerichtet.

Es fällt mir schwer, wieder mit der Programmierung weiter zu machen. Jetzt ist mir klar geworden, das es 2 Gründe dafür gibt.

Linux ist nicht das vollautomatische System wie das Visual Studio. OK, das dachte ich mir und ich wollte es so. Aber hier werde ich mich schon einleben.

Nur! Ich mag einfach nicht länger nur Konsolenprogramme schreiben. Meine Zielsetzung als Hobbyprogrammierer ist es, einfache 2D-Spiele zu programmieren. Das heißt, eine grafische Oberfläche zu haben. Die weiterführenden Themen im oben genannten Buch werden einfach zu theoretisch. Ich will mehr Praxis und habe den Mut zur Lücke.

Qt gilt als grafische Oberfläche für Linux. Daher die Frage: Das Buch
„Qt 4 – GUI-Entwicklung mit C++“ von Jürgen Wolf kann ich das als Hobbyprogrammierer verstehen? Oder empfiehlt Ihr vorher ein Einsteigerbuch?

Wie gesagt, ich möchte einfache Spielkonzepte eigenständig entwickeln und nicht fertige Module zusammenklicken.
Nur mag ich keine Frusterlebnisse. Daher die Frage: Ist es vorstellbar „ C++ von A bis Z“ in Kombination mit „Qt 4 – GUI-Entwicklung mit C++“ zu lernen oder überfordere ich mich hier? Was würdet Ihr empfehlen? Das Buch Qt4 und / oder Buch .... ?

Bin neugierig auf ein Echo!

Terep
 
Vorab: Ich habe nur Anfänger Erfahrungen und gerade mal unter Windows mit OpenGL mal ein 2D Tetris mit einem Freund programmiert.

Also meiner Meinung nach überforderst du dich, wenn du gleich die Spieleprogrammierung unter GNU/Linux lernen willst. Sicher ist das Buch von Jürgen zu QT ein tolles Buch für GUI Anwendungen unter GNU/Linux, aber ACHTUNG: GUI ist nicht gleich Spiele Programmierung! --> Da gehört einiges mehr dazu, besonders in objektorientierter Programmierung und der Handhabung von Pointern, wie man Speicherplatz richtig alloziert und wieder freigibt.

Es verlangt einfach einen sauberen und geübten Umgang mit einer Programmiersprache. Vorzugsweise wird in der Spiele Entwicklung natürlich C++ verwendet (ja manche Algorithmen sogar in Inline-Assembler).

Du wirst beim Erstellen eines Spieles so gut wie nie QT benötigen, sondern OpenGL. QT benötigst du viel. gerade mal, um einen Dialog zu erstellen, wo man Einstellungen vornehmen kann.

Mein Tipp: NeHe - Eine Art OpenGL Gott für viele Hobbyentwickler (externer link)
www.spieleprogrammierer.de (externer link)

Nichts gegen Pronix, aber in Sachen Spieleprogrammierung bist du in der oben genannten Community besser beraten und aufgehoben. Geht es rein um GUI Programmierung unter Linux, bist du sicher hier besser dran. Es liegt an dir, was dein Ziel ist. Soviel ich rausgelesen habe - Spiele zu entwickeln.

LG,
Harald
 

[EDIT] - Qt 4 für Spiele ?

Terep am 07.03.2009 um 11:37

Nun, ich habe mir Qt4 angeschaut. Unter Linux wird man da verwöhnt (alles schon da). Meine KDE-Oberfläche ist eine Qt-Anwendung.

Die ersten Tutorials sind ansprechend. Es wird schnell komplex. Aber das ist wohl normal.

Mein letztes Zögern das Buch von Jürgen Wolf zu kaufen, war die Tatsache, dass Qt4 nicht abwärtskompatibel zu Qt 3 ist. Das Buch von Qt4 GUI-Entwicklung mit C++ könnte ja schon überaltert sein.

Im Buch steht im Kapitel 1.3 dass das Buch auf Qt4.3 basiert und dass die späteren neueren Versionen (sprich heute Qt 4.4) kompatibel sind.

Es hat mich dann gefreut, im Vorwort zu lesen

1. Auflage 2007, 1. korrigierter Nachdruck 2009.

Mal sehen, wie ich so zurecht komme. Wenn ich es nicht versuche, werde ich es garantiert nicht schaffen, so habe ich eine Chance.

Terep

 

Re: Qt 4 für Spiele ?

exitus3009 am 09.04.2009 um 00:38

wenn ich dich richtig verstehe, geht es dir weniger darum, einen quellcode aus einem schon vorhandenen spiel zu lesen, als lieber selber kleine graphische programme zu schreiben.

falls das letztere gilt, so ist es in meinen augen egal, ob du qt3 oder qt4 benutzt. hab mich zwar bisher nur kurz damit beschäftigt, aber so wie ich die sache sehe ist da größtenteils nur ein syntax unterschied wie zwischen c und c++ (korrigiert mich bitte, falls ich gerade doch kompletten blödsinn erzähle).

und wegen dem verwöhnt werden, bei dem was ich bisher mit qt4 gemacht hab (hatte ehrlich gesagt auch nicht mehr gemacht, als ein paar buttons und fenster erstellt und in oder mit diesen dann ein paar kleine funktionen benutzt)
war das einzige verwöhnen, dass man keine makefile mehr erstellen muss.

aber versuchs auf jedenfall. und falls du ein tutorial suchst, welches auf ein 2d-spiel hinarbeitet, da hab ich dieses für dich.

http://doc.trolltech.com/4.0/examples.html

--
Physiker finden, Ingenieure erfinden.

 

Re: Qt 4 für Spiele ?

Terep am 18.04.2009 um 09:56

Hi exitus3009

Vorab: Mein Interesse am Programmieren ist nur hobbymäßig. Spieleprogrammierung ist hier das Ziel. Nur möchte ich nicht mit vorgefertigten Tools wie Gamemaker oder ähnliches arbeiten. Natürlich will ich das Rad nicht neu erfinden und auch nicht alles selbst machen. Nur das was ich mache, möchte ich verstehen.
Zur Zeit arbeite ich am Kapitel 4 von C++ von A bis Z. Da ich es als langweilig empfinde, nur auf der Konsole zu werkeln, kam ich auf Qt.

Qt dokumentiert sich gut, aber auf einem Niveau, dass ich noch nicht habe. Mir fehlt einfach noch Knowhow um es frei nutzen zu können. Ich arbeite gern mit Büchern. Literatur in Deutsch gibt es nicht viel. Ein Alternativbuch ist von Summerfield zu haben. Es setzt aber im Prinzip so viel voraus wie der QT-Assistant. Wer mit dem QT-Assistant ohne weitere Hilfe klar kommt, braucht im Prinzip dies Buch nur, wenn er kein Englisch kann.

Nun versuche ich beides (C++, Qt4) zu machen, Kapitel 4 hatte ich einmal überflogen und dann gemerkt, dass ich kein Überflieger bin. Wissenslücken machten sich leider stark bemerkbar. Ich konnte fehlerhaften Quellcode vom C++Buch nicht korrigieren. Nun bin ich in einer weiteren Ehrenrunde um endlich zu kapieren, wie OOP im Detail anzuwenden ist.
Qt4 stellt hier eine professionelle Umgebung bereit, mit der ich trotz Wissenslücken umgehen kann. Daher das Verwöhngefühl.

Zitat:

2d-spiel hinarbeitet, da hab ich dieses für dich.

http://doc.trolltech.com/4.0/examples.html


Die Beispiel die mittels QT-Assistant als Quellcode gezeigt werden, sind beeindruckend. Ich habe sie auch schon teilweise nachgearbeitet. Aber selbst entwickeln kann ich es dann doch noch nicht.

Nun bin ich dabei, C++ Kapitel 4 zu durchleben, also selbst nachzuproggen um das Wissen dann endlich in Qt einzusetzen. Und aus heutiger Sicht kann ich sagen, dass das Qt-Buch von Jürgen Wolf für mich besser geeignet ist als von Summerfield, weil der Bezug zu cpp mit inhaltlichen Erklärungen eine viel größere Bedeutung hat. Aber wie gesagt, ich bin kein Profi und es ist nur meine persönliche Sichtweise. Leider kann ich das Qt Buch von Jürgen Wolf auch nicht überfliegen, sondern muss reichlich Zeit investieren. Ich habe damit angefangen, bin vom Ziel aber noch weit entfernt. Aber ich muss nicht hasten, es ist mein Hobby.

Mein Eindruck ist, ein bis zwei Jahre, bis ich das Umsetzen kann, was ich mir so vorstelle. Da es Spass machen soll, will ich vorher die Konsole zumindest zeitweise verlassen.

Terep
 
  • (nur registrierte Mitglieder)