OPENGL. OpenGL OpenGL resources: The Red Book, Manual pages,
Using C++ and OpenGL George Georgiev Telerik Corporation .
-
Upload
solomon-lamb -
Category
Documents
-
view
214 -
download
0
Transcript of Using C++ and OpenGL George Georgiev Telerik Corporation .
![Page 1: Using C++ and OpenGL George Georgiev Telerik Corporation .](https://reader035.fdocuments.us/reader035/viewer/2022072011/56649de75503460f94adfe44/html5/thumbnails/1.jpg)
Introduction to Game Programming
Using C++ and OpenGL
George GeorgievTelerik Corporationwww.telerik.
com
![Page 2: Using C++ and OpenGL George Georgiev Telerik Corporation .](https://reader035.fdocuments.us/reader035/viewer/2022072011/56649de75503460f94adfe44/html5/thumbnails/2.jpg)
Table of Contents Understanding Game Programming C++ - The industry standard language
Computer graphics 2D and 3D
Computer geometry
Graphics Libraries OpenGL
Introduction to OpenGL
Setting up OpenGL, “Hello World”2
![Page 3: Using C++ and OpenGL George Georgiev Telerik Corporation .](https://reader035.fdocuments.us/reader035/viewer/2022072011/56649de75503460f94adfe44/html5/thumbnails/3.jpg)
Game ProgrammingElements, Specifics, Tools
![Page 4: Using C++ and OpenGL George Georgiev Telerik Corporation .](https://reader035.fdocuments.us/reader035/viewer/2022072011/56649de75503460f94adfe44/html5/thumbnails/4.jpg)
What is Game Programming?
Game programming handles: Loading game resources
User input
Game events
Scripting
Game objects interaction
AI characters
Game sounds and visualization
Results, such as winning or losing4
![Page 5: Using C++ and OpenGL George Georgiev Telerik Corporation .](https://reader035.fdocuments.us/reader035/viewer/2022072011/56649de75503460f94adfe44/html5/thumbnails/5.jpg)
What is Game Programming (2)
Game programming consists of: “Game logic” programming
Graphics programming
AI programming (not necessarily)
Audio programming (not necessarily)
Physics programming (not necessarily)
5
![Page 6: Using C++ and OpenGL George Georgiev Telerik Corporation .](https://reader035.fdocuments.us/reader035/viewer/2022072011/56649de75503460f94adfe44/html5/thumbnails/6.jpg)
What is Game Programming (3)
Game programming IS NOT Game Development It is only a part of it
Game programming is cool! You can play your game and
pretend you’re debugging it
6
![Page 7: Using C++ and OpenGL George Georgiev Telerik Corporation .](https://reader035.fdocuments.us/reader035/viewer/2022072011/56649de75503460f94adfe44/html5/thumbnails/7.jpg)
Specifics of Game Programming
Game programming specifics The “Game loop”
Starting from scratch
Usage of many programming concepts
System requirements
7
![Page 8: Using C++ and OpenGL George Georgiev Telerik Corporation .](https://reader035.fdocuments.us/reader035/viewer/2022072011/56649de75503460f94adfe44/html5/thumbnails/8.jpg)
Specifics of Game Programming (2)
The basic “Game loop” in pseudocode
while( user doesn't exit ) check for user input run AI move enemies resolve collisions
draw graphics play sounds end while
8
![Page 9: Using C++ and OpenGL George Georgiev Telerik Corporation .](https://reader035.fdocuments.us/reader035/viewer/2022072011/56649de75503460f94adfe44/html5/thumbnails/9.jpg)
Specifics of Game Programming (3)
What else is special about game programming? No strict requirements
No one expects complete accuracy
Need to balance “challenges” with “rewards”
Being fail-safe is not a priority
Small optimizations count
Greedy optimizations count9
![Page 10: Using C++ and OpenGL George Georgiev Telerik Corporation .](https://reader035.fdocuments.us/reader035/viewer/2022072011/56649de75503460f94adfe44/html5/thumbnails/10.jpg)
Tools Programming languages
C / C++
C#
Java Scripting languages
Custom-made languages (very common)
Lua
Python10
![Page 11: Using C++ and OpenGL George Georgiev Telerik Corporation .](https://reader035.fdocuments.us/reader035/viewer/2022072011/56649de75503460f94adfe44/html5/thumbnails/11.jpg)
Tools (2) Libraries
Graphics – Direct3D, OpenGL, OGRE
Physics – Bullet Physics Library, ODE
Many, many more APIs
DirectX
XNA
Irrlicht Engine
Unreal Engine11
![Page 12: Using C++ and OpenGL George Georgiev Telerik Corporation .](https://reader035.fdocuments.us/reader035/viewer/2022072011/56649de75503460f94adfe44/html5/thumbnails/12.jpg)
Tools (3) Benchmarking tools
Mainly framerate tracking software
Fraps
Alternative development approaches Game development software
Game maker
3D modeling software with scripting capabilities
12