Giter Site home page Giter Site logo

cyclic-vacuum-cannon's Introduction

#Cyclic Vacuum Cannon#

Watch the latest episode!

The Cyclic Vacuum Cannon is a contraption that steals objects from elsewhere in time and space, then spits them out to propel itself forward and/or blast enemies. It's a concept from my sketchbook that I've been wanting to bring to life for a while, so I chose it as the inaugural project for my Code Journal.

♥ James (@presstube)

##Part 4: Noun Puff Animation → Watch Screencast##

Part 4: Noun Puff Animation

In this episode I put the finishing touches on the Noun object by adding a hand-drawn 'puff' animation to its materialize/dematerialize sequences. Then I rig up that puff animation so that its playback and timing are controlled by the code-based tweens that are already in place. "Tween, meet your long-lost father, In-Between..."

  • Draw the puff animation frame-by-frame in Flash
  • Code up the puff animation and control its playback by piggybacking the tweens we're already using to materialize and dematerialize the Noun
  • Create a system that spawns and destroys Nouns automatically in a little cloud in the center of the screen
  • Load up Underscorejs because I'll be using the library extensively moving forward

##Part 3: Materializing Nouns → Watch Screencast##

Part 3 - Materializing Nouns

In this episode I start building a 'materialize' and 'dematerialize' sequence for the Noun object:

  • Quick recap of the previous episode and make a few small corrections
  • Load in Tweenjs and create a 'materialize' and 'dematerialize' sequence for the Noun object
  • Build a crude test system that allows me to put the new materialize/demateriaze sequences through their paces
  • Take a look at how to use Chrome's profiling tools to make sure that objects are getting properly garbage collected

##Part 2: Drawing Nouns → Watch Screencast##

Part 2 - Drawing Nouns

In this episode I take some initial steps towards bridging the gap between hand-drawn material and javascript/canvas:

  • Use Flash to draw some noun assets
  • Use Zoë to rip those assets to a sprite sheet
  • Code that sprite sheet up into the beginnings of a Noun object using Easeljs
  • Take a quick look at the way that the Createjs libraries approach inheritance in js
  • Do a small code cleanup & refactoring session

##Part 1: Setup → Watch Screencast##

Part 1 - Setup

In this episode I do some chores that are necessary before we can get to the fun stuff:

  • Create an open source repo here at GitHub
  • Briefly introduce my choice of tools
  • Put together a workspace & workflow so we can start building!

##Part 0: Brainstorming → Watch Screencast##

Part 0 - Brainstorming

In this episode I break a concept drawing of the cannon into its constituent parts, take a first crack at naming them, and think out loud about their responsibilities & relationships. Starting a project this way helps me get a better understanding of what I'm in for, and decide where to start building.

##Coming up next...##

In the next episode I'll draw a 'puff' animation and bind it directly to the materialize/dematerialize tweens. I'll also be creating a automated cloud of Nouns that are winking in and out of existence. Gonna be fun!

##About Presstube Code Journal##

Part 1 - Setup

I love watching people work. It's one of my favorite ways to learn. In case there's anyone out there who feels the same way I've decided to start a code journal where I step through the creation of projects from their pre-code planning phase, all the way through to their finished form.

I plan to release each journal entry as a short, 10-15 minute screencast, each of which will correspond to a git branch so you can follow along, and/or take off in your own direction.

I have several groups of people in mind while making this journal:

  1. Like-minded curious folk, coders and non-coders alike, who might find it interesting to peer over someone else's shoulder while they make something weird and personal.

  2. People who are a lot better at this stuff than I am who might get a chuckle or a sigh out of the clunky way I'm doing something and point me in the right direction on how to improve. Suggestions & critique will be incorporated into future entries. Pass that tasty knowledge juice on!

  3. People who are new to programming and might like to be exposed to some fun, deliberately impractical, highly visual code.

##Get in touch!##

Questions, comments, requests, hopes, fears, daydreams, nightmares, hatred, filth?

Visit Presstube

cyclic-vacuum-cannon's People

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.