Known Bugs
To-Do List
Intrepid 2D Game Library


March 5th, 2007 - Juliano Foleiss
Check out the tutorials sections, we got some screenshots up to show off our stuff!!.

March 4th, 2007 - Eduardo Cruz
Intrepid 0.2 alpha released... and I put some more tutorials. See the changelog.

February 3rd, 2007 - Eduardo Cruz
Binary for Windows of Intrepid 0.1 alpha available for download... and check the tutorial section for the guide of how to use the library under Windows.
Ah! We have already found a bug, check the known bugs section for details. In the next release we will solve it. Please, report us the bugs you find so we can solve them.

February 1st, 2007 - The Team
Our first release! Check out the documentation, download and tutorial sections!

What's intrepid all about??

Intrepid is a powerful 2D game library designed to take take of some of the low-level programming related to the development of 2D games.

The Intrepid game library combines the power of object-oriented programming with C++, the versatility of SDL and the efficiency of the OpenGL rendering capabilities.

In order to be able to create any kind of 2D game, every module that makes up the library is designed so they work with each other and not interfering in any way among themselves. This is done by keeping a standard I/O among all modules.

It doesn't matter how the modules are created, as long as they follow the I/O standards established so far.

In its first release, it comes with the following features:

->The library core:
-->Analytical Geometry functions
-->General Object class (describes any object that is used in the scenes. IE. everything is an object, from the Main Character to the clouds in the sky)
-->General Scene class (describes the game environment, interactions between objects, and static background(if any). Scrolling is implemented as well. This is the main abstraction that enables the library to be so versatile. Anything can be a scene, from the Menu to Battle Scenes... )
-->Definition of standard I/O for video handlers

->Basic video handlers:
-->Surfaces (the most basic video handler that covers the static graphical components)
-->A full-fledged sprite engine that defines different animation schemes based on their current state.

-->Collision detection algorithms
--->Pixel-by-Pixel (a very effective algorithm that makes usage of pixel-mapping to determine collisions of two objects by mapping the transparent and opaque regions in the image)
-->Vectorial force simulation (any kind of force, ie. gravity)
-->Some pre-defined physics objects (walls, etc.)

Why is our library so powerful and versatile??

By taking advantage of inheritance, the user can create any kind of object. As an example, the developer may create a Ball class, derived from our physics object class, therefore being able to use any of the pre-defined physics methods, like collision-detection and force simulation.

The physics module itself for an example, is already derived from the scene and object classes...

OOP all the way!

That's it for now. We hope to make it much better than it is already.

The Authors.