g(L)ow

CPE 476 - Winter 2017 - Zoë Wood

Created by Christiana Ushana, Sam Freed, Ashley Dattalo

Description

title.png

g(L)ow is a game based on exploration, collection and illumination. You, the user, will appear on a floating island as a wind spirit. As you observe the eerie island, you notice that it is lifeless and withering away. The goal of the game is to explore this floating island and retrieve magical orbs. These orbs will restore the health of the forest and increase the brightness and illumination of the trees.

The trees within this game were inspired by L System trees - mathematically generated trees that use rules and symbols to model growth processes. The main focus of this game is to revive the eerie forest - to do that, the user must move around the fog-covered island collecting magical orbs; the orbs incrementally increase the brightness (or glow) of the trees. And thus, the name of the game was born: "g(L)ow". The (L) in g(L)ow refers to the L System trees mentioned earlier. We achieved this glow by implementing Bloom into our game.

We wanted to also represent our user, the wind spirit, as a free flowing character. We achieved this using an intricate particle system that directs the user to the nearest orb. When approaching an orb, the particle system will flow toward the direction of the orb, indicating its location.

Controls

  • Pressing the space bar will begin the game
  • WASD to move player around
  • Mouse will move the camera view

    L System Trees

    Within this game, there are seven different representations of L System Trees. The types of trees are as follows: fractal, gnarled, tall, strong, gnarled wave, tall wave, and strong wave. The trees with wave qualities have branches that are more rounded out and circular. The rest of the trees have branches with straighter characteristics. The L Trees are generated from three parts: an axiom, a ruleset, and operations. The axiom is the starting point for the L Tree. The ruleset describes how to modify the L Tree on each iteration. The operations describe how to build the geometry of the L Tree. Using different combinations of these three things, we can create a variety of different L Trees with different qualities.

    Fractal Tree

    fractal.png

    Strong Tree

    strong.png

    Strong Wave Tree

    strong_wave.png

    Gnarled Wave Tree

    gnarled_wave.png

    Particle Systems

    Our game has two different kind of particle effects. The first is for the windspirit, and the second is for the orbs.

    Wind Spirit

    The particles for the windspirit are "pulled" towards the nearest orb. This is done by first determining the location of the nearest orb, and then applying a force vector that pushes the particles in that direction.

    Orbs

    The position of the particles around the orbs are generated by using the equation for a helix spiral curve. By tweaking the amplitude and period of the equation, we are able to have the particles travel around the orb, and come back to the center of the orb.

    particles.png

    Shadows

    Shadow mapping is implemented for the main light source, however it is difficult to tell due to the number of point lights in the scene and due to the brightness of the main light. To show the shadows, the main light brightness was increased.
    shadows.png

    Included Technologies

  • Procedurally Generated L System Trees
  • 3rd Person Spring Camera
  • Fog
  • Collision Detection using Spatial Data Structure
  • Level Editor and Loader
  • Shadow Mapping
  • Hierarchical View Frustum Culling
  • Deffered Shading
  • Bloom
  • Motion Blur
  • Particle Systems
  • Skybox
  • Heightmap
  • Quad Tree Spatial Data Structure
  • Entity Component System
  • Collision Sound Effects and Game Music

    Game Clip

    Third Party Libraries

    Resources


    © 2016, by Christiana Ushana, Sam Freed, & Ashley Datallo. All rights reserved.