RORE (Razvan Oita's Rendering Engine)
This is my most special project, my own graphics engine developed for learning and testing purposes, currently under development. I dedicate whatever free time I have to work on this. It's developed in C++ using Direct3D 10, but I've abstracted it enough (or so I hope) to allow implementation of other renderers based on different APIs (maybe OpenGL in the future). It's going to use deferred rendering and hopefully I'll be able to implement as many modern features as possible (SSAO, parallax mapping, etc.).
Features:
* math library
* abstract renderer allowing for implementation with different APIs
* renders to multiple render targets (incomplete deferred rendering)
* .obj model loader (big thanks to dhpoware)
* texture manager
* geometry manager
* light pre-pass
* parallel lights
Coming soon:
* spotlights and point lights
* normal mapping
* parallax mapping
* camera
Source Code: available here
The Need For Speed
The final and most complex homework project for my Graphics Course. Over a period of two weeks we were tasked with developing a simple short game consisting of a driveable manually modeled car, a race track with obstacles and a lighting system, all in OpenGL.
Features:
* per-pixel lighting
* objects are rendered using Vertex Buffer Objects
* imported .off models
* texture mapping
* skybox
* oriented bounding boxes for collision detection
* four different cameras
Known Issues:
* collision detection bug that detects a collision at corners even when there's distance between the two objects
* missing specular term from the shading equation
* not all objects use textures
* two-faced lighting
* slow pixel shader to account for the two issues above
Controls:
* arrow keys for controlling the car
* w,s,a,d,z,x,c,v,q,e for controlling the free camera
* o,p,k,l for switching between cameras
Play the game:
Download the executable by clicking here and have fun.
Source Code: available here
LightPacman
Another homework assignment for my Graphics Course that tasked me with developing a game similar to Pacman. Instead of Pacman you control a teapot that can extend its spotlight and change its color. The objective is to light several lanterns placed in the game world. Upon lighting all the lanterns, a key will appear that will grant you your victory. Beware of the randomly moving enemies though and be quick to light all the lanterns in time.
Controls:
* arrow keys for controlling Pacman
* a,s change Pacman's light radius
* d changes Pacman's light color
Play the game:
Download the executable by clicking here and have fun.
Source Code: available here
Volfied
This homework project for my Graphics course is a game much like the old Volfied. Control your ship with the arrow keys and capture as much of the territory as you can to advance to the next level. Beware of the enemy ships, capture the power-ups, avoid the power-downs and say your prayers if you reach the third level, because it's impossible.
Features:
* three levels increasing in difficulty
* power-ups
* power-downs
Know Issues:
* collision detection bug (several collisions detected at the same time cause unpleasant results)
Controls:
* arrow keys for controlling the ship
Play the game:
Access the Java applet here and have fun.
Source Code: available here
Droid in a Tunnel
Droid in a Tunnel is a fun 3D tunnel-racing game that I helped develop as part of ROSEdu Summer of Code. I was responsible for creating the tunnel, implementing obstacles, accelerometer controls and collision detection. The game was developed for Android phones with Android SDK and OpenGL ES. Runs flawlessly on a Google Nexus One and should work perfectly on first-generation devices too.
Features implemented by me:
* OpenGL ES renderer
* wire-frame 3D tunnel
* camera
* accelerometer controls
* obstacles
* collision detection
The game's official page is located here
Installation instructions:
Download the APK file from here and copy it to your device, then run the APK file on your Android device and install the game.
Source Code: available here
SpaceBreakout
SpaceBreakout is an entertaining mix between Arkanoid/Breakout and Space Invaders developed for HTC Diamond and Windows Mobile 6.1 – 6.5.x. Control the paddle either via the hard keys or the integrated accelerometer that HTC provides with the Diamond and destroy the invaders. But be careful, once you destroy a batch of invaders, they come back, closer and stronger. Destroy as many as you can, get a high-score and try to beat it afterwards. But remember, the paddle is hard to control, so you're going to need some skills.
Features:
* multiple levels of difficulty
* accelerometer controls
* highscore system
Known Issues:
* rare collision detection bug with the edges of the screen
* Installation instructions:
Download the CAB file from here and copy it to your device, then run the CAB to install the app in your Programs folder in Windows Mobile Start Menu.
Source Code: available here