Studium, Ausbildung und Beruf
 StudiumHome   FAQFAQ   RegelnRegeln   SuchenSuchen    RegistrierenRegistrieren   LoginLogin

C++ Graphik
Neues Thema eröffnen   Neue Antwort erstellen
Foren-Übersicht -> Informatik-Forum -> C++ Graphik
 
Autor Nachricht
Annihilator
Valued Contributor
Benutzer-Profile anzeigen
Valued Contributor


Anmeldungsdatum: 18.05.2007
Beiträge: 6394
Wohnort: (hier nicht mehr aktiv)

BeitragVerfasst am: 05 Jun 2007 - 19:28:58    Titel: C++ Graphik

Hy, ich muss jetzt mal'ne ganz bekloppte Frage stellen:
Wie kann ich in C++ auf EINFACHE Weise etwas graphisch darstellen ? Früher hab ich immer mit Turbo Pascal irgendwelchen Mist produziert (sogar'ne simple 3D-Engine) und da ging das wunderbar einfach. Muss man bei C++ unbedingt auf DirectDraw, Direct3D oder OpenGL zurück greifen ? Es ist zwar schön, dass da schon viele tolle Sachen gecodet sind, aber daran habe ich keine Freude...
Whoooo
Valued Contributor
Benutzer-Profile anzeigen
Valued Contributor


Anmeldungsdatum: 08.06.2005
Beiträge: 8988

BeitragVerfasst am: 06 Jun 2007 - 02:39:06    Titel:

Natürlch musst du das nicht. Es kommt immer auf deine Vorhaben an. 3D-Anwendungen würde ich aus Performancegründen aber mit DirectX oder OpenGL machen bzw. eine abgekapselte 3D-Engine benutzen (bekannte sind OGRE 3D, Irrlicht und Crystal Space). Wilst du diesen Weg nicht gehen, so musst du Bitmaps im Speicher beschreiben wie du sonst den Grafikbildschirm beschrieben hast und diese dann auf dem Desktop oder in deinem Anwendungsfenster abbilden. Das dürfte deiner bisherigen Arbeitsweise am nächsten kommen und wird in Windows für nicht zeitkritische Anwendungen benutzt. Direkten Zugriff auf den Bildschirm wie in DOS bekommst du so weit ich weiß nur über DirectX.
Annihilator
Valued Contributor
Benutzer-Profile anzeigen
Valued Contributor


Anmeldungsdatum: 18.05.2007
Beiträge: 6394
Wohnort: (hier nicht mehr aktiv)

BeitragVerfasst am: 06 Jun 2007 - 13:04:53    Titel:

OK - Danke soweit
Wie könnte ich denn die Variante mit "Bitmpas im Speicher beschreiben" realisieren ? Ich denk mal, dass es das ist, wonach ich suche, wenn's auch nicht die optimalste Methode ist.
Wenn DirectX direkten Zugriff auf den Bildschirm bekommen kann, dann dürfte das doch auch einem normal-sterblichen Programmierer möglich sein, oder denk ich da falsch ?
Whoooo
Valued Contributor
Benutzer-Profile anzeigen
Valued Contributor


Anmeldungsdatum: 08.06.2005
Beiträge: 8988

BeitragVerfasst am: 06 Jun 2007 - 13:30:33    Titel:

Es geht darum, dass Windows die realen Geräte abstrajiert und abkapselt, so wird Multitasking erst möglich und die Sicherheit steigt - ausserdem wird durch diese Abstraktion weitgehende Geräteunabhängigkeit erreicht. Also alles durchaus sinnvolle Ideen. In der Regel läuft die Darstellung so, dass du dir einen Device Context besorgst und mittels diesem eine Bitmap beschreibst. Diese wird dann über Funktionen wie BitBlt auf dein eigentliches grafisches Objekt abgebildet. Hier sollte mehr stehen:
http://www.cpp-tutor.de/mfc/toc.htm
Es hört sich am Anfang schwer an, vor allem, weil Windows als objekt- und messageorientiertes Betriebssystem mehr "Drumherum" erfordert als plain DOS. Du musst z.B. theoretisch auch auf Paint - Ereignisse reagieren können, teile des Bildschirms neu zeichnen können etc. - das ist zuerst etwas verwirrend. Aber so ist es nun mal.
Annihilator
Valued Contributor
Benutzer-Profile anzeigen
Valued Contributor


Anmeldungsdatum: 18.05.2007
Beiträge: 6394
Wohnort: (hier nicht mehr aktiv)

BeitragVerfasst am: 06 Jun 2007 - 13:47:14    Titel:

Der Link hilft mir schon mal - thx. Gibt es auch für Konsolen-Anwendungen etwas Vergleichbares ?
Whoooo
Valued Contributor
Benutzer-Profile anzeigen
Valued Contributor


Anmeldungsdatum: 08.06.2005
Beiträge: 8988

BeitragVerfasst am: 06 Jun 2007 - 13:50:31    Titel:

Grafik unter Windows läuft entweder über diese DC-Gechichte und Fenster oder über DirectX. DCs kannst du in einer Konsolenanwendung nicht anfordern, denn die sind ein typisches Windows-Konstrukt. DirectX könnte über Konsole gehen, aber darauf würde ich nicht wetten - DirectX ist ja auch etwas absolut Windows-typisches. So weit ich weiss wird es auch über DCs angesprochen.

Dazu: http://www.gamedev.net/reference/programming/features/gpgenesis1/
http://www.gamedev.net/reference/

Gamedev ist in Sachen Windows+Grafik meist die erste Anlaufstelle, solange du keine spezialisierten Bibliotheken und Engines verwendest.
Annihilator
Valued Contributor
Benutzer-Profile anzeigen
Valued Contributor


Anmeldungsdatum: 18.05.2007
Beiträge: 6394
Wohnort: (hier nicht mehr aktiv)

BeitragVerfasst am: 06 Jun 2007 - 13:55:58    Titel:

Sauber, danke dir Very Happy
Beiträge der letzten Zeit anzeigen:   
Foren-Übersicht -> Informatik-Forum -> C++ Graphik
Neues Thema eröffnen   Neue Antwort erstellen Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

Chat :: Nachrichten:: Lexikon :: Bücher :: Impressum