Personal projects on DirectX, OpenGL, XNA, iPhone and Zeebo.
XNAnimation Library

XNAnimation 0.7 Beta3  [C# / XNA / Win32+Xbox360] – Feb 2010

XNAnimation is a skeletal animation library for XNA, which allows developers to easily manipulate, playback, interpolate and blend animations. Main features:

  • Plays animations forward and backward with speed and loop controls.
  • Supports linear, cubic and spherical keyframe interpolation, with translation, orientation and scale channels being interpolated separately.
  • Supports cross fade blending between animation clips.
  • Supports meshes with up to 80 bones.
  • Supports resource sharing (skeletons, animations and meshes).
  • Skin meshes on the GPU (SM 2.0/3.0), while interpolate and blend poses on the CPU.

[Homepage | Video1 YouTube | Video2 YouTube | Video1 AVI]

Fur Rendering

Fur Rendering [C++ / DirectX10 / Win32] – Jun 2009

Real-time fur rendering over arbitrary meshes. The fur is rendered as multiple mesh layers, where fur is applied through environment (Cube/Sphere) mapping.  Main features:

  • Controls: fur density, thickness, height, color, and number of layers.
  • Pre-process meshes reordering and indexing vertices for cache.
  • Pre-process meshes’ positions and normals providing a better distribution of position/normals used for addressing the environment mapping.

[Video YouTube]

Detailed Surface Rendering

Detailed Surfaces Viewer [C++ / DirectX9 / Win32] – Aug 2007

This tool allows the comparison of different techniques used to render (or simulate) details over flat surfaces. The majority of the techniques implemented to render detailed surfaces don’t increase the surface complexity but simulate wrinkles and unevenness on surfaces using different types of maps:

  • Displacement Mapping
  • Normal Mapping
  • Offset Parallax Mapping
  • Relief Mapping
  • Parallax Occlusion Mapping
  • Cone Step Mapping
  • Multi-Layer Cone Step Mapping
  • Sphere Tracing (Per-Pixel Displacement Mapping with Distance Functions)

All techniques were implemented with a fixed number of passes that can be changed on-the-fly, and shadows were removed to improve comparison.

[Video YouTube | Video AVI]

Simple 3D Pacman Game

3D Pacman Game [C++ / OpenGL / Win32] – May 2006

This is a simple 3D pacman game with a simple ghost AI. This demo was developed to be used on an OpenGL mini-course. Source code included.

Multiplayer Game Demo

Multiplayer Game Demo [C++ / OpenGL / Win32] – 2005

A multiplayer demo up to 4 players, featuring height map and collision. This demo uses a new developed model format that currently doesn’t support skinning.
Source code included.

Brain Voxel Visualizer

Brain Visualizer v0.9 [OpenGL / Linux] – 2004

Brain is a medical application developed to visualize voxels in real time using OpenGL. It works with a header file (.cb) and a volume file (.img) like MRIcro, regardless of the difference between Brain’s and MRIcro’s header file. Source code included.

Terrain and Water Caustics

Terrain and Water with Caustics [OpenGL, Win32] – 2004

A simple demo featuring height map, water with cautics and skybox.
Source code included.

No Image

EvangelistaOS [Assembly x86] – 2004

A monolithic kernel developed in Assembly x86 that supports a FAT12 file system and features a Round Robin scheduler.

Engine Demo with Skinned Mesh

Skinned Mesh Demo [DirectX9 / Win32] – 2003

Simple engine demo featuring skinned mesh, font 2d, panels 2d and skybox.
Source code included.