Skip to content

jbytes1027/baller-defense

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

25 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Baller Defense

A mobile game I created in high school using the Godot game engine. The code reflects it, but the game design remains solid due to the hours I spent tweaking it. I designed the game to have a satisfying gameplay loop with a simple yet striking art style to compensate for the short time frame and limited resources I had available.

Visual Design

The shimmering background was created by randomly spawning several partially transparent trapezoids that disappear after a short timeout. A GLSL particle shader was used to display the hundreds of shapes efficiently. The colors are algorithmically calculated to maximize contrast.

bg-showcase

I also used a shader for natural fade in and fade out transitions.

fade showcase

The game was animated to feel as smooth as possible. The player has several mid-air postures that change based on the player's distance to the ball.

distance to ball

These postures are the windup frames of the three punch animations.

showcase punch animations

Windups are a critical part of punch animations. This system allows for an instant punch response on tap, while keeping the windup. The punch impact is heightened by freezing the background for a frame, enlarging the ball, and queueing up a sound.

punch showcase

I also made sure that the player looked like he has a soul by adding a rest animation with an occasional blink.

rest showcase

If there is anything this project taught me, it's that the pixel-level decisions make or break the high level ideas. They should be deliberated over.