Buch "3D-Grafik und Animation mit PureBasic"
Auf dieser Seite stellt der Autor Andreas Groß sein Buch (im PDF-Format) vor, das für einen Preis von 10,00 Euro (inkl. CD,
Porto & Verpackung) direkt bei ihm käuflich zu erwerben ist. Schreiben Sie ihm einfach eine Email an andreas.gross1@freenet.de
Ausgewählte Bilder |
Leseproben |
Das Inhaltsverzeichnis:
Einleitung.......................................................................................................................... 3 Alleine oder im Team arbeiten?.......................................................................................... 5 Tipps und Tricks................................................................................................................ 5 Licht, Beleuchtung und Schatten........................................................................................ 5 Eine Szene, verschiedene Levels........................................................................................ 6 Bugs, die Fehlerteufelchen................................................................................................. 6 Grundsätzliches................................................................................................................. 6 Nützliche Programme, arbeiten mit Ultimate Unwrap3D Pro................................................ 7 Nützliche Programme, arbeiten mit 3D Exploration............................................................. 7 Nützliche Programme, arbeiten mit Anim8tor..................................................................... 7 Nützliche Programme, arbeiten mit MilkShape3D............................................................... 7 Wichtige Formeln............................................................................................................. 8 Ein kleiner Ausflug in die 2D-Welt..................................................................................... 8 Window oder Screen?....................................................................................................... 8 Grafikdarstellung in 3D..................................................................................................... 9 Dateinamen richtig verwenden......................................................................................... 9 Freie Texturen, Modelle und Tarrains................................................................................ 9 Komfortableres Arbeiten mit den Beispielprogrammen....................................................... 9 Arbeiten mit Window3D und Gadget3D.............................................................................10 Die PhysikEngine.............................................................................................................10 Include-Dateien...............................................................................................................10 Das Programm: 3DRequester.pb.......................................................................................13 Entitys - Wesen der Spielwelt...........................................................................................17 Das Programm: Entity.pb.................................................................................................17 Partikel Sprüher (PaticleEmitter)......................................................................................22 Das Programm: ParticleSnow.pb......................................................................................22 Das Programm: ScreenPicker.pb......................................................................................27 Das Programm: PhysicEngine..........................................................................................32 Das Programm: Camera.pb.............................................................................................38 Das Programm: Shadow.pb.............................................................................................43 Das Programm: SpotLight.pb..........................................................................................47 Das Programm: Szene.pb...............................................................................................51 Das Programm: ParticleFire.pb.......................................................................................55 Das Programm: ParticleStream.pb..................................................................................59 Das Programm: Kollision.pb...........................................................................................63 Das Programm: SzeneDrinnen.pb...................................................................................68 Das Programm: PhysicEngineAdvanced.pb......................................................................72 Das Programm: XtoMesh (Anwendung, ein Konverter zur Erzeugung von Entitys).............77 Nachwort......................................................................................................................88 |
|
Einleitung
Bei meiner tagtäglichen Arbeit mit PureBasic und dessen integrierten OGRE-3D-Engine ist mir die Funktionsweise der 3D-Engine immer klarer und klarer geworden, auch habe ich die besonderen Verhaltensweisen der OGRE-Engine kennengelernt. Ich bin sicher, das es Ihnen schon nach kurzer Zeit des Studiums der Programmbeispiele genau so ergehen wird. Ich habe während meiner Arbeit an diesem Buch viel über 3D-Grafik gelernt und hoffe, das Sie die ausführlichen und einfachen Programmbeispiele auch spielend durcharbeiten und erlernen werden.
Die OGRE-Engine hat einige spezielle Verhaltensweisen, die Sie aber nur in der Praxisarbeit erlernen können. In den Programmbeispielen wird auf diese Besonderheiten eigegangen. In PureBasic basiert die 3D-Grafik auf der OGRE-Engine, diese ist das Herzstück der 3D-Grafik in PureBasic, allerdings verhält sich die 3D-Engine, als ob sie ein fester Bestandteil von PureBasic ist. Nur wenn Sie eigene Executables schreiben, müssen sie die Engine3D.dll Ihrem Programm beilegen. Außerden wird in den Programmbeispielen mit 2D/3D-Sprites gearbeitet, die aber kein Bestandteil der OGRE-Engine sind, sondern ein Bestandteil von PureBasic. Der Originaltext zur OGRE-Engine lautet folgendermaßen und wurde dem PureBasic-Hilfetext entnommen:
"PureBasic bietet einfachen Zugriff auf eine sehr mächtige OpenSource 3D-Engine genannt OGRE. Diese Entscheidung wurde getroffen, weil wir das Rad nicht noch einmal erfinden wollten. Als wir die Code-Qualität von OGRE sahen, waren wir der Meinung, dass diese Engine einen beträchtlichen Beitrag zur PureBasic 3D Bibliothek leisten würde. OGRE befindet sich in ständiger Weiterentwicklung und wird möglicherweise bald eine sehr fortschrittliche Engine. Ihre Community wächst mehr und mehr und viele Werkzeuge (Blender, Lightwave und 3DS Max Exporter, Terrain Manager etc.) sind verfügbar, um das Beste aus dieser Engine herauszuholen. Weitere Informationen sind auf der OGRE Website verfügbar. Die OGRE Lizenz kann hier eingesehen werden und die an PureBasic angepassten OGRE Sourcecodes können hier heruntergeladen werden.
Hinweis: Wenn Sie in Ihren Projekten die 3D-Engine von PureBasic verwenden und Sie vorhaben, Ihr erstelltes Executable weiterzugeben, müssen Sie die Engine3D.dll aus dem PureBasic/Compilers Verzeichnis in Ihr Haupt-Projekt-Verzeichnis kopieren."
Der einzige Schwachpunkt der OGRE-Engine ist, das es ein eigenes Dateiformat für 3D-Modelle (mesh) verwendet, dieser Mangel wurde aber durch einen Konverter behoben, den ich geschrieben habe und den Sie bei in diesem Buch erhalten als Quelltext und als Programm. Ein Konverter ist ein Programm, das ein Dateiformat in ein anderes umwandelt, in diesem Fall wandelt der Konverter DirectX-Modelle (*.x) in OGRE-Modelle (*.mesh) um. Damit haben Sie vollen Zugriff auf eine große Anzahl bereits fertiger Modelle, allerdings nur statische, also keine Animierten. Statische Modelle sind Häuser, Bäume usw., während animierte Modelle etwa Lebewesen sind, die eine Bewegung wie Laufen, Springen usw. ausführen. Mit den CAD-Programmen LightWave, 3DS Max und Milkshape3D können Sie aber auch eigene Animationen modellieren, und in PureBasic verwenden, aber nur mit einem Export-Filter, den Sie von der OGRE-Website laden können. Andere CAD-Modeller schaffen nur statische Modelle zu erzeugen. |
|
Schwerpunkt des Buches ist das Durcharbeiten von Lektionen, welche sich mit der 3D-Grafik für Spielprogramme beschäftigt. Etwas Mathematik ist auch erforderlich, darauf gehe ich in einem eigenen Textabschnitt ein. Darin bekommen Sie Formeln, die häufig verwendet werden in Spielprogrammen. Übrigens ist es eine gute Idee, sich schon einmal die Examples\3D\ in Ihrem PureBasic-Verzeichnis zu Compilieren und anzusehen um einen Eindruck von den Möglichkeiten der 3D-Grafik in PureBasic zu bekommen. Sie erhalten mit diesem Buch eine geballte Ladung Expertenwissen, das Sie sich sonst erst mühsam erarbeiten müssten. Es wird im Buch noch darauf eingegangen, das Sie sich bei Verwendung der 3D-Gadgtes das Verzeichnis GUI\ vom PureBasic in Ihr Programm-Verzeichnis kopieren müssen, ferner brauchen Sie für ein lauffähiges Programm die DLL aus "PureBasic\Compilers\Engine3D.dll". Es müssen auch ein paar Regeln eingehalten werden, ohne die es nicht läuft, näheres dazu erfahren Sie in den Programmbeispielen. Bei Fragen zum Buch oder den Beispielprogrammen erreichen Sie mich unter andreas.gross1@freenet.de.
Auf der beiliegenden CD-ROM finden Sie einen Ordner mit vielen Programmbeispielen, öffnen Sie das jeweilige Programm in Ihrem PureBasic-Editor, Compilieren und starten Sie es, dann haben Sie schon einmal einen Eindruck davon, worum es sich in den Lektionen handelt. Probieren Sie auch eigne Ideen aus. Ich habe mich bemüht, das Buch kurz und bündig zu halten, ohne dabei auf die Sorgfalt zu verzichten. Auch in den Programmbeispielen finden Sie keine überflüssigen und nicht dokumentierten Zeilen. Die Arbeit mit dem Buch basiert auf drei Säulen.
Erstens: Das Lesen der einführenden Texte und der Dokumentation der Programmzeilen in den Programmbeispielen. Zweitens das Compilieren und Starten der Beispielprogramme von CD, oder wenn Sie das Verzeichnis auf Ihre Festplatte kopiert haben, dann von dort aus. Drittens: Das Ausprobieren eigener Ideen mit den Programmbeispielen und Testen von unterschiedlicher Parametern zu den Befehlen, um noch tiefer in die Materie einzudringen. Beherzigen Sie diese drei Punkte, dann werden Sie schnelle Erfolge haben und sollten in kurzer Zeit ein Experte auf dem Gebiet der 3D-Grafik sein. |