Roarrr 3D Engine

my humble 3d graphics engine

Roarrr is a 3d graphics engine using DirectX 8. I started it out using OpenGl but switched to DirectX after a couple of months. Roarrr has been my main programming project aproximatelly between mid 2000 to mid 2003.

Features:

  • renders using 3d hardware acceleration
  • comes with a hardware detection and selection tool called Configurator
  • can work with .geom files of geometry which can be obtained from Quake3 bsp files
  • has hardware accelerated texturing
  • can use antialising and T&L
  • provides an output console and framerate counters via a cool (imo :) ) text output class
  • can use various fonts
  • input from keyboard and mouse
  • uses lightmaps for lighting

Hardware requirements

A Transform&Lighting enabled video card is recommended though it can be set to run on a non-T&L card too.

Download [11.9MB]

The download consists of the binaries and data, the sources for both Roarrr and Configurator plus an Extras folder which contains maps and fonts for you to play with with the engine.

Chronicles of Roarrr

As I was working on this, as a self motivator and to focus my thoughts I kept a sort of development journal where I would write down my questions and thoughts about the projects. If you wanna have a peek, you can find them here: The Chronicles of Roarrr

 

Credits

Made by Void lon iXaarii in the period 2000-2003 .. or something like that … not counting preparations and stuff like that :-)
additional coding assistance at places by Amelia Dei.
The files font.cpp/.h are written by Paul “Midnight” Nettle. Many thanks to Jorrit Tyberghein & Paul Nettle for their supportive mentoring and for so very patiently answering all my many questions! Thank you!

 

Screenshots

Most of the screenshots are taken inside the engine with the console and the fps stats activated, the other two being screenshots of Configurator in work. The console actually maps rendered ttf font files onto separate textures arranged in space, thus making use of the full hardware acceleration.

License

I (Void lon iXaarii) am giving this software under a modified BSD style license (at the end of this file, after the === line)… with a small addition .. which is totally optional, something I’d call “surpriseWare”:
the idea behind it is something like this. A lot of the time some of us have a resource which we have in abundance, but that others would highly appreciate. How about surprising others every once in a while with something like this? Examples could range from a smile, a couple of kind words, a little info or any object that doesn’t do you a particular use, but others would be surprised & happy or benefit in some way from using it.
again, this is totally optional, and is just a tinsy little try to spice up the universe.

The legal license follows (in a simplified way what i mean by it is: “use it in any way but please give me the due credit”):

========================================

Copyright (c) 2004, Void lon iXaarii
All rights reserved.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

* Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS “AS IS” AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.