Erfolgreiche Spieleentwicklung: OpenGL, OpenAL und KI
()
Über dieses E-Book
Dieser shortcut befasst sich mit den Themen Grafik, Sound und Künstliche Intelligenz und liefert somit einen hervorragenden Einblick in das weite Feld der Spieleprogrammierung. Neben grundlegenden Informationen zur Arbeit mit OpenGL geht es auch um fortgeschrittene Bereiche der Grafikprogrammierung wie die Verwendung von Frame-Buffer- und Uniform-Buffer-Objekten oder Geometry Instancing. Im Kapitel zur Audioschnittstelle OpenAL erfährt der Leser, wie sich Soundquellen im 3-D-Raum positionieren und Audiodateien in Verbindung mit DSP-Umgebungseffekten abspielen lassen. Abschließend wird ein Blick auf Künstliche Intelligenz (KI) geworfen. Der Einsatz von Bewegungsschablonen, KI-Skripten, Zustandsautomaten, Entscheidungsbäumen und Verhaltensnetzwerken sind nur einige Teile dieses letzten Kapitels.
Mehr von Alexander Rudolph lesen
Das Vulkan-API: Teil 1: Grundlagen und erste Schritte Bewertung: 0 von 5 Sternen0 BewertungenDas Vulkan-API: Teil 3: Umgang mit 3-D-Daten Bewertung: 0 von 5 Sternen0 BewertungenErfolgreiche Spieleentwicklung: Minecraft-Welten erschaffen Teil 2 Bewertung: 0 von 5 Sternen0 BewertungenErfolgreiche Spieleentwicklung: Moderne Licht- und Schattenspiele mit OpenGL Bewertung: 0 von 5 Sternen0 BewertungenErfolgreiche Spieleentwicklung: Minecraft-Welten erschaffen Bewertung: 0 von 5 Sternen0 BewertungenErfolgreiche Spieleentwicklung: OpenGL in Space Bewertung: 0 von 5 Sternen0 BewertungenDas Vulkan-API: Teil 2: Wie man ein Framework erstellt und Shader programmiert Bewertung: 0 von 5 Sternen0 BewertungenErfolgreiche Spieleentwicklung: Water-, Terrain- und GUI-Rendering mit OpenGL Bewertung: 0 von 5 Sternen0 BewertungenErfolgreiche Spieleentwicklung: OpenCL Bewertung: 0 von 5 Sternen0 Bewertungen
Ähnlich wie Erfolgreiche Spieleentwicklung
Titel in dieser Serie (100)
Einstieg in Google Go Bewertung: 0 von 5 Sternen0 BewertungenIT Wissensmanagement: Theorie und Praxis Bewertung: 0 von 5 Sternen0 BewertungenTFS 2012 Versionskontrolle: Grundlagen, Check-In Policies und Branch-Modelle Bewertung: 0 von 5 Sternen0 BewertungenAlgorithmen: Grundlagen und Implementierung Bewertung: 0 von 5 Sternen0 BewertungenServiceorientierte Architektur: Anforderungen, Konzeption und Praxiserfahrungen Bewertung: 0 von 5 Sternen0 BewertungenErfolgreiche Spieleentwicklung: OpenGL, OpenAL und KI Bewertung: 0 von 5 Sternen0 BewertungenSkalierbare Softwaresysteme: Design, Betrieb und Optimierungspotenziale Bewertung: 0 von 5 Sternen0 BewertungenÜberzeugende Präsentationen: Konzeption, Technik und Design Bewertung: 0 von 5 Sternen0 BewertungenBig Data: Executive Briefing Bewertung: 0 von 5 Sternen0 BewertungenQualitätssicherung mit JavaScript und PHP Bewertung: 0 von 5 Sternen0 BewertungenQualität in IT-Architekturen: Strategie und Planung Bewertung: 0 von 5 Sternen0 BewertungenBig Data: Technologiegrundlagen Bewertung: 0 von 5 Sternen0 BewertungenJava EE Security Bewertung: 0 von 5 Sternen0 BewertungenErfolgreiche Spieleentwicklung: OpenCL Bewertung: 0 von 5 Sternen0 BewertungenZend Framework 2: Für Einsteiger und Umsteiger Bewertung: 0 von 5 Sternen0 BewertungenUX Design für Tablet-Websites: Ein Überblick Bewertung: 0 von 5 Sternen0 BewertungenJavaScript für Eclipse-Entwickler: Orion, RAP und GWT Bewertung: 0 von 5 Sternen0 BewertungenNFC: Near Field Communication für Android-Entwickler Bewertung: 5 von 5 Sternen5/5JavaScript auf dem Server Bewertung: 0 von 5 Sternen0 BewertungenHTML5 Security Bewertung: 0 von 5 Sternen0 BewertungenHTML5 für Mobile Web Bewertung: 0 von 5 Sternen0 BewertungenAmazon Web Services für .NET Entwickler Bewertung: 0 von 5 Sternen0 BewertungenTFS 2012 Anforderungsmanagement: Work Items und Prozessvorlagen Bewertung: 0 von 5 Sternen0 BewertungenMobile Business: Was Entscheider morgen wissen müssen Bewertung: 0 von 5 Sternen0 BewertungenC++: Kurzportträt einer zeitlosen Sprache Bewertung: 0 von 5 Sternen0 BewertungenQualität in IT-Architekturen: Management Bewertung: 0 von 5 Sternen0 BewertungenApache Tapestry: Einstieg in die komponentenorientierte Webentwicklung Bewertung: 0 von 5 Sternen0 BewertungenGeolocation mit PHP: Foursquare-API, Google Places & Qype Bewertung: 0 von 5 Sternen0 BewertungenWebentwicklung mit dem Play Framework Bewertung: 0 von 5 Sternen0 BewertungenBPM: Strategien und Anwendungsfälle Bewertung: 0 von 5 Sternen0 Bewertungen
Ähnliche E-Books
Erfolgreiche Spieleentwicklung: OpenCL Bewertung: 0 von 5 Sternen0 BewertungenDas Vulkan-API: Teil 2: Wie man ein Framework erstellt und Shader programmiert Bewertung: 0 von 5 Sternen0 BewertungenGeräteübergreifende Entwicklung mit RAD Studio Bewertung: 0 von 5 Sternen0 BewertungenDNX: Grundlagen, Design und Compile Time Bewertung: 0 von 5 Sternen0 BewertungenSoftware Development Trends: Wegweisende Beiträge für eine neue IT: Wegweisende Beiträge für eine neue IT Bewertung: 0 von 5 Sternen0 BewertungenSpiele entwickeln für iOS und Android mit Cocos2D: Programmieren für die großen Smartphone-Plattformen Bewertung: 0 von 5 Sternen0 BewertungenStructr: Quelloffenes Daten-CMS auf Neo4j-Basis Bewertung: 0 von 5 Sternen0 BewertungenAutodesk Inventor 2016 - Einsteiger-Tutorial Hybridjacht Bewertung: 0 von 5 Sternen0 Bewertungen.NET Core 1.0 und 1.1: Entwicklung mit den Core-Produkten Bewertung: 0 von 5 Sternen0 Bewertungen.NET-Praxis: Tipps und Tricks zu .NET und Visual Studio Bewertung: 0 von 5 Sternen0 BewertungenLeiterplattendesign mit EAGLE: Ein Einstieg mit fünf Praxisprojekten Bewertung: 0 von 5 Sternen0 BewertungenPhoneGap 3: Apps für iOS, Android und Windows Phone & Co. entwickeln Bewertung: 0 von 5 Sternen0 BewertungenEinführung in die Programmierung von 2-D-Spielen Bewertung: 0 von 5 Sternen0 BewertungenEntwicklung einer internetbasierten Evaluationsplattform zur interaktiven Vorlesungsgestaltung Bewertung: 0 von 5 Sternen0 BewertungenFPGAs für Maker: Eine praktische Einführung in programmierbare Logik Bewertung: 0 von 5 Sternen0 BewertungenJava FX - Status Quo: Status Quo Bewertung: 0 von 5 Sternen0 BewertungenAutodesk AutoCAD 2020 - Grundlagen in Theorie und Praxis: Viele praktische Übungen am Übungsbeispiel: Digitale Fabrikplanung Bewertung: 0 von 5 Sternen0 BewertungenAutodesk Inventor 2017 - Einsteiger-Tutorial Hybridjacht Bewertung: 0 von 5 Sternen0 BewertungenAutodesk AutoCAD 2017 - Grundlagen in Theorie und Praxis: Viele praktische Übungen am Planbeispiel „Digitale Fabrikplanung“ Bewertung: 0 von 5 Sternen0 BewertungenOpenLaszlo: schnell + kompakt Bewertung: 0 von 5 Sternen0 BewertungenRobotik: LEGO MINDSTORMS, NAO und Raspberry Pi Bewertung: 0 von 5 Sternen0 BewertungenAutodesk Inventor 2021 - Aufbaukurs Konstruktion: Viele praktische Übungen am Konstruktionsobjekt GETRIEBE Bewertung: 0 von 5 Sternen0 BewertungenDie Verwendung von TurboCAD in technischen Berufen: Zur Erstellung von technischen Zeichnungen und Konstruktionen für Zeichner, Techniker und Ingenieure Bewertung: 0 von 5 Sternen0 BewertungenAutodesk Inventor 2020 - Aufbaukurs Konstruktion: Viele praktische Übungen am Konstruktionsobjekt Getriebe Bewertung: 0 von 5 Sternen0 BewertungenAutodesk AutoCAD 2021 - Grundlagen in Theorie und Praxis: Viele praktische Übungen am Übungsbeispiel: Digitale Fabrikplanung Bewertung: 0 von 5 Sternen0 BewertungenBetriebssysteme: Grundlagen, Konzepte, Systemprogrammierung Bewertung: 0 von 5 Sternen0 BewertungenWebentwicklung mit dem Play Framework Bewertung: 0 von 5 Sternen0 BewertungenEinblicke in C# 6.0 Bewertung: 0 von 5 Sternen0 BewertungenAutodesk Inventor 2017 - Einsteiger-Tutorial Hubschrauber Bewertung: 0 von 5 Sternen0 BewertungenJava FX - Embedded Bewertung: 0 von 5 Sternen0 Bewertungen
Programmieren für Sie
JavaScript kurz & gut Bewertung: 3 von 5 Sternen3/5Linux Grundlagen - Ein Einstieg in das Linux-Betriebssystem Bewertung: 0 von 5 Sternen0 BewertungenProgrammieren von Kopf bis Fuß Bewertung: 4 von 5 Sternen4/5Python kurz & gut: Für Python 3.x und 2.7 Bewertung: 3 von 5 Sternen3/5Algorithmen: Grundlagen und Implementierung Bewertung: 0 von 5 Sternen0 BewertungenProgrammieren lernen mit Python 3: Schnelleinstieg für Beginner Bewertung: 0 von 5 Sternen0 BewertungenRaspberry Pi: Mach's einfach: Die kompakteste Gebrauchsanweisung mit 222 Anleitungen. Geeignet für Raspberry Pi 3 Modell B / B+ Bewertung: 0 von 5 Sternen0 Bewertungen.NET-Praxis: Tipps und Tricks zu .NET und Visual Studio Bewertung: 0 von 5 Sternen0 BewertungenC von Kopf bis Fuß Bewertung: 3 von 5 Sternen3/5Linux Befehlsreferenz: Schnelleinstieg in die Arbeit mit der Konsole, regulären Ausdrücken und Shellscripting Bewertung: 0 von 5 Sternen0 BewertungenEigene Spiele programmieren – Python lernen: Der spielerische Weg zur Programmiersprache Bewertung: 0 von 5 Sternen0 BewertungenSQL von Kopf bis Fuß Bewertung: 4 von 5 Sternen4/5Weniger schlecht programmieren Bewertung: 4 von 5 Sternen4/5Hacken mit Python und Kali-Linux: Entwicklung eigener Hackingtools mit Python unter Kali-Linux Bewertung: 0 von 5 Sternen0 BewertungenMicrocontroller für das IoT Bewertung: 0 von 5 Sternen0 BewertungenMikrocontroller in der Elektronik: Mikrocontroller programmieren und in der Praxis einsetzen Bewertung: 0 von 5 Sternen0 BewertungenGit kurz & gut Bewertung: 0 von 5 Sternen0 BewertungenDie ultimative FRITZ!Box Bibel - Das Praxisbuch 2. aktualisierte Auflage - mit vielen Insider Tipps und Tricks - komplett in Farbe Bewertung: 0 von 5 Sternen0 BewertungenPython | Schritt für Schritt Programmieren lernen: Der ultimative Anfänger Guide für einen einfachen & schnellen Einstieg Bewertung: 0 von 5 Sternen0 BewertungenNew Game Plus: Perspektiven der Game Studies. Genres - Künste - Diskurse (Bild und Bit. Studien zur digitalen Medienkultur) Bewertung: 0 von 5 Sternen0 BewertungenDas große Python3 Workbook: Mit vielen Beispielen und Übungen - Programmieren leicht gemacht! Bewertung: 4 von 5 Sternen4/5Programmieren für Einsteiger: Teil 1 Bewertung: 0 von 5 Sternen0 BewertungenPython lernen – kurz & gut Bewertung: 0 von 5 Sternen0 BewertungenSoftwareentwicklungsprozess: Von der ersten Idee bis zur Installation Bewertung: 0 von 5 Sternen0 BewertungenDas Excel SOS-Handbuch: Wie sie Excel (2010-2019 & 365) schnell & einfach meistern. Die All-in-One Anleitung für ihren privaten & beruflichen Excel-Erfolg! Bewertung: 0 von 5 Sternen0 BewertungenHTML5-Programmierung von Kopf bis Fuß: Webanwendungen mit HTML5 und JavaScript Bewertung: 0 von 5 Sternen0 BewertungenRaspberry Pi: Einstieg • Optimierung • Projekte Bewertung: 5 von 5 Sternen5/5Android-Programmierung kurz & gut Bewertung: 0 von 5 Sternen0 BewertungenPython programmieren lernen: Der spielerische Einstieg mit Minecraft Bewertung: 0 von 5 Sternen0 BewertungenC++: Eine kompakte Einführung Bewertung: 0 von 5 Sternen0 Bewertungen
Rezensionen für Erfolgreiche Spieleentwicklung
0 Bewertungen0 Rezensionen
Buchvorschau
Erfolgreiche Spieleentwicklung - Alexander Rudolph
Alexander Rudolph
Erfolgreiche Spieleentwicklung
OpenGL, OpenAL und KI
ISBN: 978-3-86802-421-0
© 2012 entwickler.press
Ein Imprint der Software & Support Media GmbH
1 OpenGL – Einführung in die Grafikprogrammierung
Der erste Teil dieses Shortcuts richtet sich speziell an Neulinge auf dem Gebiet der Grafikprogrammierung und soll grundlegende Einblicke in die Arbeit mit OpenGL 3 und 4 [1, 2] vermitteln. Damit einem erfolgreichen Einstieg in die Materie nichts im Wege steht, werden zunächst eine Reihe von Entwicklungswerkzeugen vorgestellt, die im Web zum kostenlosen Download unter www.entwickler-press.de/shortcuts/spieleentwickeln [14] bereitstehen.
Computerspiele sind in den letzten Jahren immer realistischer geworden und ein Ende dieser Entwicklung ist noch lange nicht absehbar, da mit jeder Generation die Hardware immer leistungsfähiger wird. Komplexe 3-D-Szenen und Physikeffekte lassen sich problemlos auf der GPU berechnen und dank moderner Multicore CPUs (Vierkernprozessoren, die bis zu acht Threads parallel verarbeiten, sind heutzutage keine Seltenheit mehr) wird auch die Spielephysik (zerstörbare Spielewelt, Bewegungsmodelle für Land-, Luft- und Wasserfahrzeuge etc.) und die Künstliche Intelligenz (KI) der Computergegner immer wirklichkeitsgetreuer. Kurzum, Computerspiele üben eine große Faszination aus und sind insbesondere für junge Menschen Anlass, sich mit der Spieleentwicklung im Speziellen und der Programmierung im Allgemeinen zu befassen [3]. Die Programmiersprache der Wahl ist für die überwiegende Zahl der Entwickler C/C++ und als Entwicklungsumgebung kommt nicht selten das Visual Studio von Microsoft zum Einsatz, das aktuell in der Version 2010 erhältlich ist. Seit der Version 2005 bietet Microsoft kostenlose Expresseditionen an, mit denen durchaus auch kommerzielle Produkte erstellt werden können. Zwar lassen sich mit diesen Editionen keine MFC-Anwendungen entwickeln, das ist jedoch zu verschmerzen, da die Microsoft Foundation Classes (MFC) für Spiele und Grafikdemos nicht benötigt werden. Weitere Informationen zu den aktuellen Expresseditionen und ein Link zur Downloadseite sind unter [4] zu finden.
Kleinere Grafikdemos können problemlos im Alleingang entwickelt werden, richtige Spiele – ob nun kommerzieller Natur oder Hobbyprojekte – lassen sich nur im Team realisieren. Für die gemeinsame Arbeit ist man jedoch auf Onlinewebspace angewiesen, um allen Teammitgliedern steten Zugriff auf die aktualisierten Projektdaten zu ermöglichen. Gleiches gilt auch für die spätere Veröffentlichung des fertigen Spiels. Kleinere Projekte bis zu einer Größe von 2 GB lassen sich beispielsweise via Dropbox [5] online speichern, synchronisieren und zum Download freigeben.
Selbstverständlich kommt kein Spiel ohne ansprechende 3-D-Modelle und Texturen aus. Auch hier finden sich neben den kostenpflichtigen Programmpaketen kostenlose Alternativen – allen voran Blender für das 3-D-Modelling [6] und GIMP für die Texturierung [7].
Auch wenn die Programmierung einer 3-D- oder einer Physik-Engine gleichsam anspruchsvoll wie faszinierend ist, so ist es vor allen Dingen eines – zeitaufwendig! Für ein Spieleprojekt kann das das Ende bedeuten. Nicht selten springen bei Hobbyprojekten die Grafik- und Sound Artists ab, wenn die Realisierung des eigentlichen Spiels oder des Spieleprototypen in weite Ferne rückt, und für kommerzielle Projekte kann es das Aus bedeuten, wenn sich die vom Geldgeber und Publisher vorgegebenen Fristen nicht einhalten lassen. Populäre und zugleich kostenlose Middleware-Lösungen sind im Bereich der 3-D-Programmierung Ogre3D [8] und im Bereich der Physiksimulation PhysX [9].
1.1 OpenGL – die neuen Spezifikationen 3.x und 4.x
Insbesondere zwei Faktoren waren dafür verantwortlich, dass OpenGL gegenüber DirectX Graphics heutzutage in der Spieleentwicklung kaum mehr eine Rolle spielt. Zum einen gerieten die früheren OpenGL-Spezifikationen (2.x) gegenüber DirectX, das zum damaligen Zeitpunkt in der Version 10 erhältlich war, technisch immer weiter ins Hintertreffen und zum anderen steht den OpenGL-Entwicklern kein SDK (Software Development Kit) ähnlich dem von DirectX zur Verfügung, wodurch der Einstieg in die Materie unnötig erschwert wird. Dank einer