Author Archives: Cameron Basham

Black & White Exercise #4: Weak Forces


My particle system started as a simple shower of colorful circles. After that was done, I tried to get the circles to react to the cursor/mouse position.  I basically wanted a gravity well to be located where the mouse was, but I had a hard time figuring out just how to code that.  After some fiddling with it, though, I did manage to get a satisfactory reaction from the circles.


The forces are fairly weak, and therefore hard to present through static images, but notice the tendency toward the large white circle (the indicator for the cursor).

If you hold the mouse button down/hold your finger to the tablet, the colors, become slightly brighter, and the force applied to each circle is doubled.

stronger_1 stronger_2

Overall an interesting little intro into the world of particle systems.  I still am quite interested in learning how to properly code a gravity well.

Black & White Exercise #3: Scrambler

Overall a fairly simple exercise.  Using this as practice with matrices, rotations, and translations, I challenged myself to get multiple rotating things to revolve around other rotating things.  As the first few parts came together I was reminded of a scrambler: scrambler And once I took 2 of those things and split them I was reminded of the DC Shoe Co logo: dc-logo I threw those things together (with a touch of blue) and came to something sort of interesting: 3 4 Axing the background and adding just a little extra complexity yielded my Scrambler: 1 2

Group Game #2: Streamer

When I first started Streamer, I made 2 related observations about the base code.
  1. It was (at first) difficult to grasp, and therefore would be difficult to change.
  2. It was also interesting on its own, meaning it needn’t be changed too much to provide an interesting application.
From those ideas, I thought about what I could do to make the application my own without heavily modifying the seeker code itself.  The two ideas that presented themselves (and stuck) were changes in graphical representation, and the idea of scrolling or otherwise moving all of the objects along some path. The graphical representation quickly became a grid, both out of love for old, 8-bit graphics and out of my new infatuation with pixellation in general.  The only question remaining on that front was how big the rectangles should be… but that question was answered later.  For the time being I kept my program flexible. og 3x3 bigger biggest After this, it became a matter of what one might want to do in this new, grid-style area. Being able to “paint” squares was probably the first thing to come to mind:love_og Soon after that, the idea of randomly changing colors:love_ugly   (While the above doesn’t look all that great, in general the effect seemed pretty cool.) A little more color play would eventually occur, but after messing around within the same basic application for so long, I felt that the seeking mechanic needed to be changed at least slightly. This is where a few new features came in all at once.  First, the idea of scrolling was pretty natural, as the blocky and colorful graphics reminded me of old 2D shooters like Galaga.  I had a few types of scrolling to choose from, but the one implemented seemed the easiest.  With scrolling came a bug that colored the background with scrolling bars of color.  It ended up being a very cool thing, and after fixing the bug I immediately reimplemented the color bars as a feature. line_2 line_3 line_4 line_5 Finally, I toyed around with various mechanics for spawning and killing semi-randomized seekers, and came up with the finished product. While in dire need of some sound, overall I’m proud of this project.  The program was a great lesson on how minor tweaks and offshoots of ideas can lead to very cool applications.

Post-Mortem: Eclipse

In the end I kind of ran with my “moar colors, moar circles” idea.


I even added the abilities for the roamer to become bigger based on timing and for the player to become one of the older circles when he/she went through it. movement1 movement2 movement3   movement4 It took a long time to get the transparency of the circles to look ok, and in the end it’s still less than satisfying.  The game still lacks a goal.  In fact, while it sometimes looks kind of cool, it feels both less stylish and less like a game than the prototype. After so many hours and so little (if any) progress, I gave up on expanding Eclipse.  I tacked a title screen onto it and let it sit.  I don’t think I’ll be touching it for a while. titlescreen I think the most important thing that I’ve learned from building Eclipse is that more features != better game.  You can’t take something that isn’t fun, give it some more features, and expect it to be good. That’s not to say that my original idea was bad.  I think that my first draft was a very cool, stylish little prototype.  I just took it in the wrong direction.  At least it was a learning experience.

Conference Project Post #2: Eclipse

I felt there was really something to Eclipse as soon as I threw it on the tablet.  I spent a good half hour playing it, seeing how tiny the circles might become.  Some other people also played it, and they also were quite motivated to play for a while. However, some concerns were expressed.  First, the “random” probably wasn’t quite right for the game.  (If one kept the circle in the middle long enough, the roamer would almost always find its mark.)     center1 center2 center3   Along with the centering issue, multiple people commented that it became more and more frustrating as you played and the circle got smaller.  While it led to an intuitive goal, there was no end.  One could perceivably go until the the roamer was but a pixel, but that would take an inordinate amount of patience and effort, and wouldn’t be fun in the slightest. This ended in people suggesting to give the game an end, and to have some sort of scoring.  That proved difficult, however, so first I worked on the randomness of the roamer, and thought about adding things such as a timer, some sound, and some color. colorsketch1 The timer felt cheap, though, and I couldn’t find good music or sounds to go with Eclipse, so I focused on color. colorfail1 But it turns out that the overlapping wasn’t as easily coded as it seemed in my head. Not to be discouraged, I decided to add some more features, hoping that something would yield new insight into how to make this a more fun game. After I added some extra circles for the sake of of adding colors, though… extras1extras2   I came to realize that I probably should have just kept things simple, and perhaps started a new game for conference instead.

Conference Project Post #1: Eclipse

Eclipse began with our first black and white exercise, after we had begun to read Chip Kidd.  It was almost entirely influenced by my want to use negative and positive space heavily within a game. Eclipse 1st Sketch Here’s my first entry for it in my sketchbook.  At first I thought it’d include multiple shapes, and perhaps a time or size limit. However, in the beginning the game was very simple. You play the circle on an otherwise empty screen. Original Start There’s a smaller circle, camouflaged by the background, roaming around semi-randomly.  The only parts of the roamer you can see are those overlapping with your circle. Original First Capture If you manage to envelop the circle, your old circle expands to become the background, and you become what used to be the roamer. Original First Expansion Original First Expansion Continued   Eventually, as the circles become smaller, it becomes exceedingly difficult to find the roamer. Original Tiny And that is where I ended my first draft.