MSc Computer Games and Entertainment at Goldsmiths

In September 2013 I began a MSc in Computer Games and Entertainment at Goldsmiths, University of London, a college located in London, UK. You will see part of the work we’ve done throughout the course.

City generator with OpenGL

This is a team project, made between December 2013 and June 2014. All geometry, except the models over the pavements, are generated procedurally. The generator includes a walkthrough mode, in which the camera steps through the streets of the city. It uses OpenGL for rendering, and employs the Octet framework.

Source code: https://github.com/chiguire/nttcitygenerator.


Video at Vimeo.

Real Time Fluid Dynamics with OpenCL

Source code: https://github.com/chiguire/fluidphysicsgpu/.


Video at Youtube.

Physics with Unity

Puente is a game inspired in Bridge Builder (2000), using the PhysX library that comes with Unity. The game’s objective is to build a bridge that can support a train moving on top of it. The interface allows to extend beams that connect between them, and then try the design with the train. You can play it online.

Source code: http://github.com/chiguire/puente/.


Video at Youtube.

Diffraction Shader with OpenGL ES 2.0

This is a reimplementation of the shader described in the Chapter 8 of the book GPU Gems (Nvidia, 2004). This shader simulates the light diffraction phenomenon. The original implementation focuses on the vertex shader to do the calculations, and leaves the fragment shader to interpolate colors. This reimplementations goes a step further and has a second version in which the calculations are done at fragment level, obtaining a more detailed result.

Done for the Maths and Graphics subject, with the Octet framework.

Source code: https://github.com/chiguire/gpugems-chap8/.


Video at Youtube.

Pacman-Like Maze Generation with BFS

This Processing sketch generates a Pacman-like level, creating a series of connections for half of the level, and then mirroring it. Finally, it puts a character to run around the level, eating all the pellets and looking for them using Breadth-First Search.

Source code: https://github.com/chiguire/mazegenerator.


Video at Youtube.

Lindenmayer Systems Tree Renderer

This program renders structures built from a Lindenmayer system, read from a file. The render is done with OpenGL ES 2.0, and contains parameters that can be modified in real-time. Lindenmayer Systems, o L-Systems, are a concept from biology, they allow to describe the process of growth of a plant. As such, they are employed in Computer Graphics as a way to build graphical structures that are similar to those seen in nature.

Done for the Maths and Graphics subject, with the Octet framework.

Source code: https://github.com/chiguire/octet-lsystems-renderer


Video at Youtube.

Chilopoda, a Centipede Clone

Chilopoda is a game that clones the gameplay of Centipede (Atari, 1981). In this arcade game, the player must destroy the worm that comes from the top of the screen, while avoids it and other enemies that come out the sides of the screen. The graphics were done for the project. The sound effects of the game were made with as3sfxr.

Done for the Introduction to Game Programming and Interactive Graphics subject, with the Octet framework.

Source code: https://github.com/chiguire/chilopoda


Video at Youtube.

Skyways, a Space Game Prototype

Skyways is a space game in which the player must drive ships of a color to their corresponding station. He must avoid ships crashing between them. The control of the ships is indirect: the players finger creates a gravity field that attracts ships that are nearer a radius of distance. This game uses Box2D for 2D rigid body simulation, with a gravity scheme inspired on Angry Birds Space.

Done for the Tools and Middleware for Graphics and Special Effects subject, with the cocos2d-x framework.

Source code: https://github.com/chiguire/skyways


Video at Youtube.

Octet

Octet is an educational framework for videogame development, made by Andy Thomason. Octet uses professional game development techniques with C++ and OpenGL ES 2.0, and it’s full of didactical comments by the author. Includes tiny readers for GIF, JPEG and Targa images. Includes basic loading functions for COLLADA files (.dae). Includes Bullet Physics for rigid body simulation. It has few dependencies (OpenAL, OpenCL and OpenGL). It requires knowledge of C++. It works for Windows and Mac OS X, Android, PS Vita and PS4.