This is the place where I showcase some of my current and past work that is visually interesting. First I show some game demos I’ve developed, and later applications and prototypes that where developed as part of a research or workshop I’ve been involved with.
1 – Games for fun and education
Role: Project Lead and Programmer
Demo of a 3rd person historic action game where the player guides Jeró, a brazilian indian, through the tropical forests of Guanabara Bay (Rio de Janeiro) and 16th century France . During this important period, frenchmen lead by Nicolas Durand de Villegagnon tried to invade Brasil and fund the França Antártica (Antarctic France). The demo version consists of the first level at the Guanabara Bay. This project in funded by the Secretariat for Culture of the State of Rio de Janeiro.
Tales of Bast (iPhone) – SBGames 2009 Best Mobile Game (public choice)
Tales of Bast is a game with a dynamic Castle Defense gameplay and RPG elements of character evolution. Playing as Bast, main character and guardian of the TwoFeet Race, the player has to fight against the RedClaws, deadly creatures willing to destroy all living beings of The TreeWorld. It’s a joint project with graphic and game designer Fernando Ribeiro, in which I do all the programming and also some 3D modeling. My favorite bit is the 2D finger-gesture recognition system I developed to the inGame interface. Soon available for the iPhone/iPod Touch at the Apple App Store.
Role: Game Designer and Programmer
2D side scroller-puzzle-platformer where the player controls the leader of the tiny monsters mob. Pipe Mayhem was developed in 48h with Carlos Ranna (pixel artist) and Micheli Knechtel (tile animator) during the first Global Game Jam in 2009 using XNA. The game goal is to push all the red creatures to the tunnel exit, avoiding the fights and passing obstacles such as gaps, bridges and so on.
Sperm Racer (Play it!) – Unity Awards 2008 Honorable Mention
Role: Game Designer and Programmer
It’s your time to win the game of life by swimming towards the ovun in a fast paced race that’s also full of danger. Avoid the obstacles, save your stamina and keep the rhythm to be the one and only to survive. Sperm Racer is a single player racing game with unique mechanics and targeted at casual and informative gaming over the web. This is a joint project with designer Pedro Thiago, and it is currently being ported to the iPhone/iPod Touch.
Role: Solo Developer
Racing/combat game completely developed in Java by using open source tools: JMonkeyengine, Blender and Gimp. The cars use realistic physics and the AI was implemented to use the same “interface” that is available to the player with the controls. I tried to mimic the Drivatar aproach that is used in the Forza Motorsport series by recording tester’s driving styles and using them as data for the driver-agents of the AI controlled cars. You’re welcome to try the Hard Mode on the desert track. Got 3rd place in the Independent Games Festival at SBGames 2007.
2 – Research Projects
CATRA (Official Website)
We developed a novel interactive method to assess cataracts in the human eye by crafting an optical solution that measures the perceptual impact of forward scattering on the foveal region. Current solutions rely on highly-trained clinicians to check the back scattering in the crystallin lens and test their predictions on visual acuity tests. Close-range parallax barriers create collimated beams of light to scan through sub-apertures scattering light as it strikes a cataract. User feedback generates maps for opacity, attenuation, contrast and local point-spread functions. The goal is to allow a general audience to operate a portable high-contrast light-field display to gain a meaningful understanding of their own visual conditions. The compiled maps are used to reconstruct the cataract-affected view of an individual, offering a unique approach for capturing information for screening, diagnostic, and clinical analysis.
Discotable (youtube video)
I’ve had the opportunity to participate in the first “Multidisciplinary Workshop on Interactive Media and Natural Interfaces” at IMPA (Applied and Pure Math Institute) under the supervision of Professor Luiz Velho. Discotable is an application to create and perform live electronic music with an intuitive tangible and multi-touch interface. Sound loops are represented by circular shapes based on a polar coordinates system. This application is currently being ported to the iPhone. This project was developed jointly with Nina Paim (graphic designer) and Bruno Queiroz (sound engineer).
- Live demo
- Live demo
Logtell is a live dramatization system for plot-based storytelling, which is built over a real-time visualization engine to serve as a testbed for research on planning, automated cinematography agents, user intervention policies and other subjects related to interactive storytelling. This is a long term evolving project from my co-advisor Dr. Cesar Pozzer, at UFSM (Universidade Federal de Santa Maria). I recently joined the group to integrate my research on storytelling models (hierarchical PNF-networks) with the system, in which we succeded at the initial experiments.
- Fight dramatization
- Over the town shot
Camera Transition Agent (Live demo)
This demo shows an interface for a machine learning mechanism to automatically choose a virtual camera shot based on scene attributes extracted in real-time. The goal is to enable non tech-savy users to operate such system and correctly teach the camera agent. Instructions: drive the buggy around the island and chose the camera-shots by pressing the numbers 1, 2 or 3 respectively. After some coherent choices, the system will be trained and the viewport on the right-bottom corner should choose the right shot automatically in real-time.
- Camera Transition Editor
- Camera Transition Editor
Geometric Puzzles Solution-verifier (Try it – in portuguese, game at the bottom of the page)
Some geometric puzzles (aka Tangram) can have up to thousands of possible solutions. This happens when the pieces are allowed to be organized in any fashion, as long as the resulting figure (given by the contour) is equivalent to the goal set by the game rules. We developed an algorithm that extracts this contour of the figure being composed by the player with the available pieces, and compares it with the solution. An approximate of the progress is also given as a feedback to the player. To our knowledge, this is the only electronic multiple-solution tangram that is capable of giving this kind of feedback to the user only by using the geometric properties of the figures. Our paper “A Novel Algorithm to Verify the Solution of Geometric Puzzle Games” describes this method (soon available at the IEEE Explorer).
- Tangram solution verifier
A data-driven game development framework built over JMonkeyEngine. It is based on a componentized architecture for game objects that is becoming a de-facto standard in modern game engines. I’ve used it as a testbed for my previous research on dependency injection in game programming and as a prototyping tool for some of my games.
- GCore example
JHeat is a full-stack web application framework developed in Java. Its goal is to hide from the developer some complexities inherent to web technology such as HTML, Ajax, complex transactions and so on. The sole responsibility of the programmer is to write Java code related to the application logic (aka, the model layer on a MVC architecture). It is based on several web application patterns such as CRUD and step-based transactions. JHeat has been a prodution-grade framework at Infoway Soluções em Informática since 2006, where it serves as the core development platform for several mission-critic Health Information Systems. I’ve been the lead designer and manager of this project from its beggining in january 2006 until july 2007, when I left the company. Currently, I still keep a consulting role in its development.
- Web App developed with JHeat
- Another JHeat production Web App
Tank battles is a programming game where the player has to develop the artificial intelligence to drive a tank in a 3D environment. The idea and API is strongly based on the popular Robocode (radar + movement + cannon), but somehow more challenging due to the 3d terrains and the balistics of the projectiles. There were plans to provide access to the view of a virtual-camera mounted on the tank as a testbed for computer-vision-driven experiments. Unfortunately this project is no longer being developed due to time constraints, but I plan to get back to it sometime.
- Tank Battles
- Tank Battles