1 / 17

Computer Graphics in Game programming

Computer Graphics in Game programming. Basics. OpenGL. “Hello world” . George Georgiev. Telerik Corporation. www.telerik.com. Table of Contents. Computer graphics 2D and 3D Computer geometry Graphics Libraries OpenGL Introduction to OpenGL Setting up OpenGL “Hello World”.

maree
Télécharger la présentation

Computer Graphics in Game programming

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Computer Graphics in Game programming Basics. OpenGL. “Hello world” George Georgiev Telerik Corporation www.telerik.com

  2. Table of Contents • Computer graphics • 2D and 3D • Computer geometry • Graphics Libraries • OpenGL • Introduction to OpenGL • Setting up OpenGL • “Hello World”

  3. Computer graphics Pixels, Vectors, GPUs, Libraries

  4. 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 losing

  5. 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)

  6. 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

  7. Specifics of Game Programming • Game programming specifics • The “Game loop” • Starting from scratch • Usage of many programming concepts • System requirements

  8. Specifics of Game Programming (2) • A 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

  9. 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 count

  10. Tools • Programming languages • C / C++ • C# • Java • Scripting languages • Custom-made languages (very common) • Lua • Python

  11. Tools (2) • Libraries and APIs • Single-purpose • Graphics – Direct3D, OpenGL, OGRE • Physics – Bullet Physics Library, ODE • Multi-purpose • DirectX • XNA • Irrlicht Engine • Unreal Engine

  12. Tools (3) • Benchmarking tools • Mainly framerate tracking software • Fraps • Alternative development approaches • Game development software • Game maker • 3D modeling software with scripting capabilities • The Internet…

  13. C++ The industry standard language

  14. What is C++? • The most widely used and popular programming language • Object-oriented • Mid-level • Compiles to binary • Fast • Low memory usage

  15. C++ & Game programming • The industry standard language • Most popular games are written in C++ • A lot of APIs are written in and for C / C++ • Runs almost on everything • The C++ community is huge • Not a dying language

  16. Why aren't we using C# ? • Too young as a language • Can’t compare to C++’s community • Not designed to be as fast as C++ • 10% faster counts in game programming • Too high-level and style-demanding • Game programming requires freedom • C# without .NET is like C++ without the “++” • The lower you go, the more you know • We (you) are here to learn

  17. Introduction to Game programming ? ? Questions? ? ? ? ? ? ? ? ? ?

More Related