Download presentation
Presentation is loading. Please wait.
Published byKristian Shields Modified over 9 years ago
1
Design of a 2D Graphics Engine By Joe Hallahan
2
What is an Engine? Software engine: core of the program Internal as opposed to visible Others (physics, database) excel at one task only, “software engine” is more general Emphasis on graphics
3
Benefits Reusable, safe Framework for program – everything else is specific/detail work
4
Purpose To create an engine using C++, OpenGL, and SDL that can simplify the process required for creating a graphical application by rendering graphics automatically and providing support for other general functions
5
Design - Tools C++ Fast, efficient SDL Free Makes many functions easier Works well with OpenGL Cross-platform
6
Design - Tools OpenGL 2D and 3D support Can be hard to learn/use Free, supported on most systems Really really fast
7
Design - Structure Engine.h contains declarations of variables, functions, classes, also includes external libraries Engine.cpp defines everything declared in Engine.h A third program can be used to test the engine, all that is really necessary is the main() method
8
Problems to Overcome Data structure – Array used – Holds Shapes – Only holds up to 100 objects
9
Testing #include "Engine.h" int main(int argc, char* argv[]){ Engine e; e.run(); return 0; }
10
Testing
11
Testing / Analysis 3 test programs Simple Test Bare minimum – no external program, just a main method Pong Game, familiar Simple, controls supported through SDL Engine Demo Colors Collisions
12
Conclusion Engine works correctly Performance mainly hardware dependent, should be about as efficient as a normal program made without using engine No performance loss
13
Expandability 3D support Sound More inputs More performance tweaks Better collision detection Will hurt performance in most cases Specialization
14
Bibliography -Development of a 3D Graphics Engine (Kassing) -Modular Architecture for Computer Game Design (McNeill) -Multi-threaded Game Engine (Tulip, Bekkema, Nesbitt) -Interactive 3D Geometry in OpenGL (Welsh) -FROG: The Fast \& Realistic OPENGL Displayer -Simple and rapid collision detection using multiple viewing volumes (Fan, Wan, Gao)
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.