Skip to content
Cawd Logo GAWD
  • Home
  • About
  • Assignments
  • Resources
  • Contact

Tuesday, April 28th

Tuesday, April 28th

Class Hours: 10:05 – 2:40
Mr. Bohmann | wbohmann@ewsd.org

10:05 Today’s Notes & Attendance

  • Week 29
  • Fire Drill tomorrow (Wed) at 10:15am
  • Mid Quarter ends on Friday

10:10 SkySweeper – Let’s add in our Particle Shooting!

Let’s add a new input to your Player Controls Input System for shooting. Then we can set up a particle system for our weapons system. We can also add a cross hair system to assist with aiming.

10:50 Morning Break (10 minutes)

11:00 Building Our Next Game – Your Independent Build

Do you remember what my favorite Arcade game is? It’s Arkanoid!

We’ve got enough skills to create a nice little breakout game – or at least a minimal viable product to see how everything works.

You’ll need to make some sprites. Photoshop is good for that. I think the original game the sprites are 32 pixels high and about 75 pixels wide for blocks The paddle is 16 pixels high and 32 pixels wide (I think) but you can design yours anyway you want using any style that inspires you…

Create a New Project called BreakOut in the 2D space.

Sprite Assets we need to create: Ball, colored blocks, paddle, border

Physics Material (Bouncy) for the Ball

For the paddle we are going to use a Polygon Collider and make the collider a little uneven so ball bounces with some randomness

Code you need to create:

  1. Movement Script for Paddle using the New Input System(you know how to do this – look at PinBall)
    • Might be nice to have a variable to adjust paddle speed
    • Also be nice to limit how far left and right the paddle can go
  2. Collision Script to Destroy Blocks (Example)
  3. A Ball Script (see code snippet below)

PreFabs will make our life easier by creating one for each block to include:

  • Correct Scale
  • Box Collider 2D
  • Collision Script to go on the blocks

Background Image – here is one you can use or go make your own

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class Ball : MonoBehaviour
{
    // Movement Speed
    public float speed = 10.0f;

    // Use this for initialization
    void Start()
    {
        GetComponent<Rigidbody2D>().velocity = Vector2.up * speed;

    }
}

This code is going to use a Vector to move the ball up at the start of the game. We can use the speed variable to change the speed of the ball.

Build, Play Test

Your Breakout Game will be due on Friday, May 8th. You will have some class time for this.

Deliverables:

  • A game scene with all assets
  • A ball that breaks (destroys) bricks
  • A score that adds up (can you code a High Score?)
  • A Win or Lose Condition (Killbox) and messaging (like you lost)

It would be nice to have:

  • Sounds
  • Multiple Players / Health
  • Bricks that have different scoring
  • PowerUp or Invoke/Instantiate something
  • An Opening Splash screen when the game begins
  • Multiple Levels

This is an individual assignment. However, use each other to assist with your questions.

Sample Gameplay from Arkanoid

11:55 Lunch

Creative Commons Attribution 4.0 – Animal Style Burgers from In-n-Out

12:25 Pixel Perfect Practice Session

Sprites (Working towards Pixel Perfect) in Photoshop

  • Tools for Pixel Art – Photoshop, Aseprite, Piskel
  • Games with great pixel art – HyperLightDrifter, ScottPilgrim, Video of Pixel Games
  • Character Size – the evolution from 16 to 128 pixels (DonkeyKong Mario 16 pixels!)
  • Setting up in Photoshop, brushes, shapes, symmetry, text
  • Line theory – for pixel perfect lines-
  • Character Creation or Object Creation
  • Exporting
pixel perfect shapes

Line Theory:

A “jaggy” is an unintentional break in a otherwise smooth line or curve. This makes the line look strange and pointy, too many jaggies can ruin an artwork.

To make a smooth line you should have the same number of pixels on every “step” of the line, for example: 1, 1, 1, 1, is a smooth line whereas 1, 2, 1, 1, is not.

A smooth curve always follows a pattern. When you are moving towards the centre of the curve the number of pixels should be lower than or the same as the previous number of pixels. 

When moving away from the center you should do the opposite, the number should be higher or the same as the one before it. For example: 6, 3, 2, 1, 1, 1, 2, 4, 4 is a smooth curve

12:45 Independent Production & Guided Support

  • One Button Game Proposal – Due Wednesday
  • Arkanoid Breakout Game – Due Friday, May 8th

1:10 Afternoon Break

1:25 Speed Design

1:59 Dailies

2:00 Independent Reading

book covers

2:20 Outdoors – Fresh Air

It might be awhile before we get another nice afternoon. Twenty minutes of fresh air time. You’ll be dismissed from the great outdoors at 2:40pm.

2:40 Dismissal

GAWD Instructors:

Matt Cronin

Will Bohmann

Instragram Facebook Twitter

A little about GAWD:

Serving high school students interested in Gaming, Animation, and Web Development in North Western Vermont.

Students continue at:

University of Vermont Ringling School of Art and Design Northeastern University Rochester Institute of Technology Concordia University

Students find careers at:

Dealer.com Union Street Media Rovers North Prudential Investments DockYard
Navigate to top of page