untitled chicken game

CSC 471 Fall 2020 Final Project

"Untitled Goose Chicken Game" by Isaiah Abrea

Description

For my final project I decided to make a game. You play as a chicken, and you have to navigate around town with WASD keys to collect all 10 of your chicks. Once you collect all 10, you will be able to see how long it took you to collect them all.

Each chick and chicken is a multi-shape mesh that is hierarchically modeled, whose legs animate when they are moving. the chick movements were built off of the boids lab, but only with separation and the distance to the leader and restricted y movement. When adding to their acceleration vector, I checked if the player was within a certain distance of the chick, and only then did I want them to go towards the player.

The player and chicks have collision detection and cannot pass through buildings or go off the map. They can however, get stuck between buildings unfortunately. The wasy that I implemented my bounding boxes for the buildings is by making a 10x10 2d int array, and giving it a random number 1-4 for which house to draw. I also made a BoundingBox class which took a center position and a "radius" since all my buildings were square. In render I went through the 10x10 grid and drew a house at each [i, j] that had a number 1-4 and also added a BoundingBox at that position to a list of all BoundingBoxes.

As for the player/chick collisions, this was dealt with in render. For each chick/player I went through the list of BoundingBoxes and checked to see if making the next move would put them inside of the box. Other than that, I implemented simple Blinn-Phong shading, texture mapping, and a game camera. The camera is focused on the player by default, but moving the mouse allows you to look around. I wasn't able to get text to render onscreen, so I resorted to cout statements.

Map grid I made in Excel to keep track

Map I made in Excel to keep track of where I was placing buildings.


Demo

(My project didn't actually have sound, this was added after)

also I wasn't able to get all 10 ;-;

Song: Asuka Sakai - A Crimson Rose and a Gin Tonic (YMCK 8bit Mix)


Models

I used Blender 2.9 to make each model in the game, and FireAlpaca to edit the textures. Each asset is my own original work except for the skybox texture, which came free from the Unity Asset Store.




Sources

Lab 9: Boids Code

Blender 2.9

FireAlpaca

Skybox Texture