Site Improvements, Texture Sizes, and Dichromacy

Against the Wall Icon

Yesterday evening I reworked the site a bit. There is new a logo text at the top of the page and things are a tiny bit cleaner all-around. Also, I’ve designed an icon that is based around the general shape of the wand’s headpiece. This icon will be used in a few places on the site, as the launch icon for the application, and as a a loading screen symbol (animated). All done in the lead up to PAX East, of course. I’ll be sure to cover my table and business cards with these logos.

I spent much of the past two days tweaking the wall textures for the game. At first I upped the resolution on the base texture to 2048 x 2048. This made things look better, but greatly increased the amount of memory being used for textures, and blew up the game’s file size. The final texture atlases were over 160 MB together. I’m trying to make this game playable on as many platforms as possible, so to have this big texture loaded into RAM at all times is unacceptable. So, I reduced the resolution of each texture type (there are 5 now) to give me atlases that are a quarter of their size at full resolution. It won’t look as good, but it will get the job done.

The variation of the textures is in part to help the colorblind get through the game. User Znack told me that the green bricks look exactly like the red bricks to someone with dichromacy. As a response, I’ll be splitting each of the 11 brick types among the 5 texture types. I will be careful to make sure that colors which are often confused are given distinct textures.

Finally, I did an interview on Monday with the guys at ShortWaveRockin. I am my usual awkward self in this one! Went off on a weird pedantic biology rant for a few seconds too as a bonus. Thanks Alex and Johnny!

New Wand Art

I should post a picture of the wand every week to show people how things are changing! This has to be the 7th or 8th revision that I’ve made to the wand in the last ten months. I was not 100% in love with the last programmer art permutation of the Wand, and decided to redo everything to conform to the game’s minimalistic style. Plus, I needed some kind of mechanical feature to add to the wand in order to visually indicate that the device had been fired. After brainstorming with a fan (shout-out to Mr. Brightbill), I decided that the wand should have a gyroscope inside the ring at the end. This gyroscope would fire off and slowly wind down until stopping at its original position. The wand itself experiences a bit of a kickback in this process, letting off a puffing sound-effect, as the gyroscope hums lowly. I’ll post a video of it later this week.

Some other changes that I’ve worked on in the past week:

  • The secondary fire “stop” functionality has been removed. No one ever seemed to use it (including me) and it was pretty pointless to the whole game experience.
  • The game now uses brick textures with double the resolution, from 1024 x 1024 to 2048 x 2048.
  • When something can be picked-up or activated, the wand moves out the camera’s field of view.
  • Reduced the number of cloud meshes in the sky, reduced the resolution of the Sun Shafts (still looks good), and blurred hard edges from the cloud images. Also, I doubled the size of the new skydome.
  • Added support for generic controllers (using a Logitech F310 for testing).
  • Reduced inefficiencies with every script. Too many variables were being created and destroyed every frame, which can kill the framerate. On my computer and in the editor, the game can generate 200+ frames per second (though only around 60 are displayed on-monitor). This is a big improvement from my previous 150 FPS in-editor average. Brick generation and highlighting are notably improved.
  • Smaller sounds are now uncompressed while playing. Before, performance was taking a hit with for every sound played as the game worked to decompress the file. Now, the most used sounds are always ready to be played.
  • Numerous bug fixes that you probably wouldn’t care about.

One final thing: I am going to have a table at PAX East this year in the Kickstarter room. It’s a real honor to be there! Thank you to the Kickstarter community manager Cindy for this opportunity. If you are at PAX East and want to stop by, just look for me in that general area. I should be sitting there for the bulk of the three days gabbing about autokinetic bricks and tree monsters. Should be fun!

Tim Schafer at NYU Recap

Come from a Q&A talk with Tim Schafer. He show the audience a prototype Kinect game in which the player progresses by manipulating the characters’ emotions. Interesting stuff. Make characters run through a door by making him afraid of a local rat, or make him love the door knob so very much that he just has to turn it. This game will never see the light of day, I’m afraid. The prospective publisher dropped the idea after several months of work. Still, he did giive some insigtht into his creative process. He’s more of a benevolent dictitor at his company (his words), giving his employees autonomy while also having the final word when he inserts himself into a discussion. Also, in terms of humor, he advised to acknowledge the ridiculous situations that the characters find themslves in (e.g. Monkey Island, where Guybrush and the governer fall in love in five lines of text). By acknowleding how absurd the situation is, he is able to write his way out of a problem and to exploit it for comedic benefit.

That wasn’t my entire day, of course. I spent the afternoon up-resing the textures to twice their usual size. This will make it a bit clunkier for me to merge textures into atlases. Also, I optimized the code a bit to reduce the number of objects that are deleted in any frame of the game. This makes things a bit faster overall, but it could be better, as it still chugs on my laptop at full settings.

Also, I optimized the save-game script to prevent the game from hanging until the operation is complete. This makes saving the game virtually seamless (though I am sure that it would be noticeable on slower computers. Finally, I fixed a bug where slower computer speeds would cause lag in chunk creation. This meant that when players fell too far and the frame rate too low, the procedural generator would fall behind and suddenly the player could not see the wall.. The game can now detect this and will correct the error.

That’s it for now!

Art Progress

Against the Wall - Wand

Here is a picture of the staff’s new model. It still uses a placeholder texture, but the model itself has detail all around. I have little intention of having magic particles emanate from the staff, but rather wish to have a mechanical movement signify that the staff has been fired. The game Antichamber has a similar hoop staff device, only futuristic and certainly not made of wood. It used a very simple turning animation to indicate that the device has been fired. I could use something like that. An alternative is to give the headpiece moving locks or arms that open and close as it is used. The new design for the staff is based on the shinai bamboo sword of the martial art Kendo. I own a shinai, though I should say that using it as a reference model has been the only use I’ve made of it.

I’ve also added a new sky dome to the world. The dome has its own moving clouds that can be seen in the far distance. There is also a gradient progression between the horizon and the center of the sky. The gradient currently shifts between a steel-blue on the horizon and a dark blue in the center of the sky. The result is a bit of a blurring between the sky and The Wall. The best part about this gradient is that it can be adjusted on the fly to any other set of colors. If I wished to shift the weather or switch to another time of day, this sky dome can handle it. The shader for the sky dome comes from Pixelstudio’s Sky Dome.

This change was brought about by the game Dear Esther, which also  uses two moving planes and a static dome for a skybox. That game is lamentably short, I should say. I finished it in little over an hour and wanted more. Still, the art is very impressive. Mostly high-res textures, use of billboard plants, and most of all, colored lighting. The sound effects and well placed music triggers are also key to the experience. I can learn a lot from that game from a storytelling perspective as well, though mostly through the non-verbal aspects of the plot (no narration for Against the Wall).

GDC Aftermath


Against the Wall against a wall. Kill Screen Party - GDC 2012

I survived my first GDC! The highlight was Thursday’s party held by the magazine Kill Screen. I was given a corner of the lower floor of the club Public Works to show off my game. I really have no idea if the party was good or not, to be honest. I stood there for 5 hours shouting above the music to anyone who had questions about the project. Never left the spot until the room was clearing out. Meanwhile, I received some good insight into how drunk people play my game. It was also fun to see a crowd gathering around to see where random players would go next. Thanks to everyone who stopped by to speak with me!

At GDC itself, the IGF floor was certainly the best part of the whole expo. I had a very limited pass, so I could not attend any of the many sessions there. I will be sure to get a conference pass next year. Hopefully I will have more expendable income at that time (and perhaps a station at IGF!).

There isn’t much that I’ve learned at the expo, business tips aside. I met a ton of interesting people, and hope to follow up on some of the contacts that will help the progress of Against the Wall along.

City Planning

Against the Wall city - grey

I’ve been spending some time redoing art assets for the game. The above picture is a new version of the first city of the game (without final textures). The city has the same two straightforward paths, but I’ve created some paths for people who wish to wander the rooftops. It’s pretty much an optional maze. Will hide a few easter eggs in there.

I’ve also started modeling a small city that is inspired by Ponte Vecchio in Florence. It is a pair of towers with a causeway in between. The causeway will be lined with buildings that are hanging just off the side. There will be several paths that lead into the city, all involve some brick platforming. Here’s a picture of some very early models of this city:

Against the Wall old-bridge

Everything is grey because, well, I hate texturing. I’ll need to find someone to handle that aspect of the game’s development. I’m still looking for artists, though I need someone who can devote quite a bit of time to the project. Meanwhile, I will keep on handling the actual model creation.

I’m going to GDC in the coming week, which will be a ton of fun. Perhaps I’ll meet some artists there as well. That’s it for now!