Quantcast
Channel: Chris McCormick - News
Viewing all 234 articles
Browse latest View live

McCormick family portrait


So long, Brooklyn and New York City

$
0
0

IMG20110422_001.jpg

This is the only photo I took during my visit, which was rich with great people and adventures. Thanks to Peter, Peter, Andy, Zach and Ryan, and most especially Hans and Rivka for their most generous hospitality. You guys are wonderful!

Pure Data Los Angeles

USA trip

$
0
0

5681629307_3884ecb01d_b.jpg 5663828264_b2061a5b43_b.jpg 5663247629_99e9c03c07_b.jpg feh_018045_000001_IMG20110425_001.jpg IMG20110428_004.jpg 5681628841_8ed16fdb43_b.jpg IMG20110429_002.jpg 5681629541_d9c8c7bca3_b.jpg IMG20110430_001.jpg IMG20110501_002.jpg

Half of these photos (the ones that don't suck) are by Theron Trowbridge and are CC licensed.

Thanks so much to Joe Deken for getting me out for the trip to San Diego, Family Night at a Boys and Girls Club in Long Beach where we demoed Pd with game hardware to the kids there, the Crash Space pd_LAunch events, patching circle, workshops, meeting with Miller, etc. and most especially for putting me up and driving me round Los Angeles and surrounds. Thanks too to Theron for everything he did, and for Miller for coming up from San Diego and showing is super-cool ceramic tile twist~ algorithms. I had a really awesome time. You guys rock! (also thanks again to the NYC people, especially Hans and Rivka!)

Infinite 8-bit Platformer Alpha

jsGameSoup documentation update

$
0
0

jsGameSoup logo I've made some updates to the jsGameSoup documentation, specifically the quickstart instructions and also how to get things working under older versions of Internet Explorer. Check it out if you are making video games on the web and you love freedom! :)

jsGameSoup physics and vector math demos

$
0
0

I've updated the jsGameSoup project with a couple of new demos showing how to integrate it with some 3rd party libraries that are useful for making video games.

The first demo shows how to integrate the sylvester.js library. This is a great little single-file Javascript library that covers the basic vector and matrix math nicely. Check out the attractors demo, and don't forget to view source!

Vector math with Sylvester screenshot

The second demo was created by Nick Lowe and it shows off the Box2d.js physics engine integrated with jsGameSoup. Check it out! I'm really happy to have such a robust and popular 2d physics engine working along side jsGameSoup in the browser. Great stuff!

jsGameSoup.net does audio

$
0
0

Guitar amplifier

That's right, the jsGameSoup library now plays sound effects samples on all supported platforms, right back to Internet Explorer 6. I also registered the domain name jsgamesoup.net - hooray!

With graphics and sprite animation, collisions, random number generation, sound effects, vector math, physics, and network, I think we pretty much have developing games for the web covered.

Enjoy, and remember to view the source!


MineAscender - is it fun?

$
0
0

I wrote this game in a few hours today using jsGamesoup.

Is it fun? I would like to know what you think.

(Inspired by SpoutDS).

Adventure time

Finite-State Machines in jsGameSoup

$
0
0

A finite-state machine is an algorithmic structure which is frequently useful in video games. A finite-state machine can be used to simulate any game entity which has a set of discrete states which it changes between, and which looks different and/or exhibits different behaviour in each of those states. Here are some examples:

  • A non-player character which wanders around and then starts chasing the player once they come in range.
  • A door which switches between closed, opening (animated), and open states.
  • A spacecraft under player control which has an proximity-triggered docking procedure.

Public domain image of a finite-state machine from Wikipedia

Many video game entities can be most easily modelled in this way. In jsGameSoup it is now very easy to create state machines like this. Simply include "statemachine.js" in your HTML file:

<script src="jsGameSoup/js/statemachine.js"></script>

Then call the statemachine() function on an entity inside it's constructur:

function MyEntity() {
    statemachine(this);
    ...
}

After that your entity will have a new method set_state(state) which switches it between different arbitrary states. These states are completely up to you. You can define different behaviours, events, and visual representations by creating multiple versions of jsGameSoup's normal expected methods. For example, let's say the entity above has a state "wandering" and a state "seeking" when it is moving towards the player. In this case we would define two different sets of methods:

/****** Update and draw this entity in the wandering state. ******/

this.wandering_update = function() {
    // update the entity in "wandering" mode
    ...
}

this.wandering_draw = function() {
    // draw the entity in "wandering" mode
    ...
}

/****** Update and draw this entity in the seeking state. ******/

this.seeking_update = function() {
    // update the entity in "seeking" mode
    ...
}

this.seeking_draw = function() {
    // draw the entity in "seeking" mode
    ...
}

When you want to put the entity into a particular state, you call set_state(state), for example in the init() method of the entity to put it into a certain state from the start:

this.init = function() {
    this.set_state("wandering");
}

Here is an example of a jsGameSoup entity class which switches between a "chill" and an "antsy" state. View source to see how it works.

Hopefully this will help you write games and get them infront of players more quickly.

Screenshot of an old game

Squeakyshoecore live in Sydney

Infinite 8-Bit Platformer at PyConAU 2011

PyConAU 2011 talk

Like Father Like Daughter


Openness is the Only Usability Feature That Matters

Sweet hacks

WApp submission

$
0
0

pocketloops-design.png

Today I submitted this PocketLoops prototype app to the Univation WApp competition.

This builds on my PdDroidParty work, which is the engine of the app (as well as the impending CanOfBeats re-release!).

Fun mobile-music times. :)

Google Reader is Dead

$
0
0

Linus Torvalds in a Speedo.jpg

(image of Linus Torvalds in a speedo originally from xkcdsucks.blogspot.com)

Google recently announced that they are discontinuing the social features of Google Reader and folding that functionality into Google+. So basically the thing that I liked most about Google Reader, not it's social network features but it's actual social network - the one made of the real people who inhabit my Google Reader friends list - is going to disappear this some time this week. Google Reader was by far my favorite and most active social network so this is pretty crummy from my perspective.

Maybe Google don't realise the value in that network aside from the features of the software itself. Maybe they don't care because they just want to get people into Google+. Either way, we the users lose.

Oh well, this is what you get when you use proprietary software. At some point the company that develops and controls that software will do something you don't like. There is basically nothing you can do about it.

So long, Reader friends, it has been a genuine pleasure! (and for the OCD amongst you, I am very sorry for the hypersharing) :)

I Am Back

$
0
0

Calm down, Internet, I am back! My server had a small mishap.

My new hosting provider is much more reliable than my old one. Hooray!

My new one is called prgmr.com and they are great.

I have also taken the opportunity to redesign my website. I hope you like it.

Viewing all 234 articles
Browse latest View live




Latest Images