Covenant's Gallery -

Category Albums Files
GamesGames I've worked on...
9 69
Shadow Stars: The Ventrui Belt


This was the first comercial game from Spellcaster Studios. It's a space combat simulator that even received some awards from the indie media at the time of launch (circa 2004, I think).

10 files, last one added on May 28, 2010

Into the Dark: Viridian


This was a prototype we've worked on 5 or 6 years ago, testing out new technology and such...
It was supposed to be a "Alien Breed" kind of game inside a massive spaceship called the Viridian, and it was to act as a prequel to a FPS we designed called "Into the Dark: Event Alpha".

6 files, last one added on May 28, 2010

Something Fishy


"Something Fishy" was the second game we've developed on Spellcaster Studios.
We tried to get as far away from "Shadow Stars" as possible, and we wanted to try the casual game market (at the time, it wasn't as huge as it is now).
The result was a fun game, quite addictive, in which the player controlled an alien fisherman called Ernest, on his quest to fish all over the world.
We never got this published, since we never found the correct channel for it... Afterwards we did a revamp on the graphics and some gameplay tweaks, but it's still sitting on my HD...

5 files, last one added on May 31, 2010



This was a prototype of a marketing game we've done...
The client didn't want to advance, because it was too expensive and he ended up with a couple of Flash games... :\ Too bad, it looked good...
It was an action/platform game in 3d.

4 files, last one added on May 31, 2010

Ant Swarm


Ant Swarm was a casual game we were developing, based on a "painting" interface.
Player would "paint" pheromones that the ants would follow.

8 files, last one added on May 26, 2010

Blitz and Massive


Blitz and Massive was a graphic adventure based strongly on humor.
It featured two controllable robots, and it was divided in 5-episodes, to recreate the pulp-like feel of 60's sci-fi shows...

28 files, last one added on May 27, 2010

Dawn of Rats: The Path of Balance


This one was only a concept, but I like it so much I decided to add it here... :)
Dawn of Rats was supposed to be an action/adventure game featuring ninja hamsters!

2 files, last one added on May 27, 2010



Phew was a game prototype I've worked, in which the main character could influence the behavior of creatures based on the smell he was emitting... For example, spider monkeys would make a "swing rope" for him if they were near a branch and he was sending out the "blue" smell... but they would attack him if he used the "red" smell near them...
Unfortunately, we could never find a publisher interested in this idea...

2 files, last one added on May 28, 2010

Shadow Stars: Arena


This was a game me and a friend did for fun in one week... Our objective was using only the rendering engine from Spellbook, if we could make a complete and functional multiplayer ship fighting game...
We actually succeeded just 2 hours before the deadline.
I'd like to revisit this one, one of these days...

4 files, last one added on May 28, 2010


9 albums on 1 page(s)

ApplicationsOther applications I've worked on...
3 26
Azenha Sta. Cruz


Sta. Cruz is a small village in the coast, where they were renovating an old watermill to become a museum, and they asked us to do an interactive application that extended the museum.

5 files, last one added on May 26, 2010

PSI Beacon


This was my bread and butter for 3 years: a PSI/SI generator/streamer.

1 files, last one added on May 26, 2010



Urban0 was suite of tools and a codebase to allow for the manipulation of GIS data, for large scale urban visualization and analysis.
It was quite a successfull project, but the financial crysis kind of put a stop on it, since most municipalities just didn't had the money to afford this kind of projects...

20 files, last one added on May 31, 2010


3 albums on 1 page(s)

SpellbookSpellbook is my game engine
7 61


Miscellaneous images...

13 files, last one added on May 31, 2010



My first lightmap experiments...
The UV unwrap algorithm was my own.
Lightmap was computed with a raytracing algorithm, a very traditional approach. It was getting quite powerful, since it supported arbitrary meshes, diffuse, alpha, specular, etc, normal maps, the works...
Never finished this processor, for the same reason as the radiosity processor: it took too long calculating the UVs and I just lost interest...
I did a modification to use the D3D UV-unwrap utilities, and it speeded up computation, but never had a good reason to continue the work on this...

10 files, last one added on May 31, 2010

Ambient Occlusion


Some shots from the screen-space ambient occlusion I've implemented on Spellbook. Never liked the results that much, to be honest, but it seemed like the thing everyone was doing...
Normal technique, from 4 to 16 samples per pixel, with a gaussian blue applied at the end.

5 files, last one added on May 31, 2010



Genesis was supposed to be our all-purpose editing tool for Spellbook projects. It was supposed to be used in the company and outside of it, which led to lots of architectural issues, which ultimately condemned it.
Eventually, we dropped it because it was so cubersome to add new funcionalities that it wasn't worth the effort.
It was replaced by the SurgeEditor.

5 files, last one added on May 27, 2010



Radiosity experiments on Spellbook (GPU-based)

16 files, last one added on May 25, 2010



Old screenshots of Spellbook.
Spellbook was/is in development for almost 10 years now, so it has a long history...

7 files, last one added on May 31, 2010

Deferred Renderer


5 files, last one added on Nov 08, 2010


7 albums on 1 page(s)

OtherOther stuff, not really fitting to the other categories
1 11
Memory Lane


Very old projects...

11 files, last one added on May 28, 2010


1 albums on 1 page(s)

167 files in 20 albums and 4 categories with 0 comments viewed 4544 times

Last additions
Point light with shadowmap70 viewsShadowmaps for point light support . This uses a dual paraboloid map (with all the bad things that has).
In the future, we'll add the concept of "hemisphere" light, which will only need one half of the dual-paraboloid map (to reduce render time), since in most of the cases, that's what the artist actually wants.
Precision is quite low in this mode, and it depends a bit on geometry tesselation on the generation of the dual paraboloid map.
Nov 08, 2010
Directional light with shadowmaps38 viewsShadowmaps with a directional light... In this example (and current implementation), the system calculates the extents of the scene to know what the directional light affects (and find out the shadowmap extent). In the future, this will be artist controlled, with 3d Studio plugins.Nov 08, 2010
Alpha objects support63 viewsAdded alpha objects support to the deferred renderer... In this context, alpha objects are not only "transparent" objects, but all objects that require different types of information that's not available on the G-Buffer to be renderer.
This is done because normally all objects in the scene are renderer using the "Phong-Blinn", but you might not want that, so this is the way you can do it using a multipass renderer, besides the normal general-purpose deferred one.
Nov 08, 2010
Depth of Field effect40 viewsThis is an example of the depth of field effect on the deferred renderer on Spellbook.

This is done by creating a blurred view of the scene after all the rendering and then lerping between the blurred and unblurred version, based on the distance and the focal distance.
Nov 08, 2010
Spotlight shadowmap70 viewsDeferred rendering test with a spotlight casting a shadow through a 256x256 shadowmap.Sep 29, 2010
"Pirate" island52 viewsThe pirate island was more "conventional"... Monkeys and palm trees are plenty.May 31, 2010
"Celt" islands44 viewsThe Celt islands were green, with no trees, hilly and with "Stonehenge"-like things in them.May 31, 2010
Penguins34 viewsI love the penguins in this game... they have such a psycho look on them!May 31, 2010
Some characters41 viewsSome characters from Yarr.May 31, 2010
VIPM algorithm41 viewsVIPM algorithm, 50% decimation... Still preserves the features and recomputes the tangent space...
It could be used in realtime, but I'd rather preprocess it and use the resulting meshes.
May 31, 2010
Water reflection/refraction29 viewsA test with water reflection/refraction, with a Fresnel term doing the blending.May 31, 2010
3d Studio Max Viewer II39 viewsAnother shot of our 3d Studio plugins, which include the viewer, a material editor, a parametrized texture map plugin and other utilities.May 31, 2010
Stencil shadows II51 viewsAnother stencil shadow test...May 31, 2010
Fog35 viewsFog system, with less attenuation of the glows, which looks sweet...May 31, 2010
Terrain painter36 viewsThis is a shot from a tool I've build to paint terrain.
The good thing about this tool is that it can generate not only a "baked" texture, but also a shader (SM 2->4) for "infinite detail" terrain, that combines several layers of effects and a "bake tree".
I have a video of this at
May 31, 2010
Image Bank Generator49 viewsThis is a tool I've written to facilitiate our future forays into 2d games... Since our artist is mainly a 3d artist, it seemed like a natural path to build all assets in 3d and then have a tool bake them in 2d images.
This tool does just that... The artist makes the content on 3d Studio, including animations, etc, then loads up the resulting exported file into this tool, set some parameters, and on the other end comes out some images with the sprites, and a sprite sheet defining the positions.
May 31, 2010
Bar scene "Blitz and Massive"38 viewsBar scene in "Blitz and Massive", where you can see lots of different characters, that all use the same "parametrized texture", with different parameters.May 31, 2010
Parametrized textures37 viewsSomething we used on "Blitz and Massive" to do lots of variation on characters: based on some parameters, the engine builds and caches textures on the fly, based on some rules.
Artists would author these "parametrized" textures on this tool, and then they could open the texture on 3d Studio (through a plugin) and change parameters directly, to get a feel on what would the result be in game and establish nice combinations for us to use as the character's "DNA".
May 31, 2010
Shadowmaps66 viewsRealtime shadowmaps implementation. In this case, a dual-paraboloid map is used, with some filtering.
Never was truly happy with the results, for most stuff I work on, the resolution of the shadowmap has to be too high for decent results, which means it is too slow...
May 31, 2010
3d Studio Max viewer39 viewsThis is a shot froma 3d Studio viewer, which is an integral part of our pipeline.
We build the 3d models/scenes in 3d Studio and then with one button we launch this viewer application, which is done in Spellbook, so that the artist can preview how the asset will look in-game.
We could have done most of this in the viewport with a viewport extension, but it was too much of an hassle, considering the documentation of the MaxSDK.
May 31, 2010
Web-plugin55 viewsA shot from the first iteration of the Spellbook ActiveX plugin...
This was just a proof-of-concept for a streaming system we wanted to build that would allow realtime 3d content over the internet.
All the content is streamed from the server, and behaviors are expressed in LUA scripts.
May 31, 2010
Dialogue editor67 viewsA shot from our dialogue editor, that we used extensively on "Blitz and Massive".
We could write a big bundle of logic with this, using variables to track and change the game state.
The GUI was all done with Spellbook.
May 31, 2010
Building fronts generator77 viewsThis was a component we were working on: a building front generator.
This would generate small textures, that would combine some rules to build the front of buildings, and then bunch them up in atlas, so we wouldn't need so many DIP calls...
The rules were expressed in a DSL we created.
May 31, 2010
Particle Systems+GUI56 viewsThis shot shows our particule system editor. The GUI of the editor was using the GUI subsystem of Spellbook, that was abandoned in the meantime (although it still works, we're favoring the Win32 API at the moment).
The particule system editor was a bit unwieldy and is being replaced with a component on SurgeED.
May 31, 2010
Another alpha test.41 viewsAnother alpha test, with a diffuse texture with alpha this time.May 31, 2010
Crosshatched shadows62 viewsWanted to test crosshatched shadows, for painterly renderings...
Even with a crap, hand-drawn tileable texture for the crosshatch, it looked pretty interesting...
May 31, 2010
Baked light36 viewsThis was one of the first tests with a baked lighting...May 31, 2010
Textured with 2 light-sources45 viewsThe ground here is textured and has 2 light sources projecting light on it.May 31, 2010
Point light37 viewsTest with a point light and a lightmap.May 31, 2010
First tests41 viewsFirst real test of the direct-light lightmap system, with a 128x128 lightmap.May 31, 2010
1024x1024 lightmap41 viewsFirst experiments, 1024x1024 lightmap on the floor.May 31, 2010
1024->128 lightmap, with bicubic filter696 viewsThis is a shot from a 1024x1024 lightmap, that was rescale to 128x128 with bicubic filtering...
The results are much better than a 128x128 native map.
May 31, 2010