Nick’s gotten back from his awesome Memphis trip, so there’s not too much news on the development side of things. However, we hired the amazing Creative Shift Studio to revamp our offices a bit, and last week we received got our new super cool Human Scale desks and monitor arms! These bad boys are height-adjustable and can take us from a sitting to a standing position in mere seconds! Yay for our spines!
We took the opportunity to clean out the office as well, and now there’s room for so many activities!
Here’s a before and after pic of Jesse! Notice the horrible posture while sitting, but the amazing posture while working standing up.
Alright, next week there will be more ‘DEV” in the Dev-Blog, we promise! Once we’re sick of adjusting the height of our desks every 5 minutes, we’ll probably get some actual work done. :)
Till next week! Keep those turtle cannons blasting!
This week is a bit of a dev-intermission. We don’t have an intermission banner, so I just put the dev-blog of the beast banner at the top. I’m currently in Memphis visiting my sister who does amazing research work at St Jude Children’s Research Hospital. So I’ve been busy catching up with her, and seeing the sights around Memphis. I visited Graceland, Sun Studios, the Gibson factory, and lots more. It’s a very neat place! Music is everywhere.
On the week-days I’m trying to get some work done, though. As most of you probably know, I usually write everything in C# first, and then convert the code to C++ once I’ve iterated on it enough to be stable. Over the last half year we’ve been making a bunch of prototypes that required a few changes in the render engine, but the changes were only made on the C# side. So this week I am trying to catch up on all the changes I’ve made in the C# version of the render engine, and putting them into the C++ engine. I guess this is the part that most people see as the main disadvantage of my method of C#–>C++, maintaining both sides at the same time. With proper SVN logs it’s not too hard though. I just look up when the last change was in the C++ engine code, and then grab all the changes from the C# branch until now. I usually remember exactly what changed, so even just seeing the filenames is often enough to remember what needed to be changed, but of course I can always see the actual changes in the files as well. This process takes me only a few days if there were lots of changes, so usually the time I saved iterating at break-neck speeds in C# vastly makes up for this.
There weren’t too many changes. I changed my shaders from .FX (directX) files to generic XML files that can hold the OpenGL shader code, as well as the direct X shader code if required. I’ve taken anything DirectX out of my engine though, it’s all OpenGL at the moment (as pretty much all platforms support OpenGL), so currently my XML shaders only support OpenGL. The XML files get converted to ‘final’ binary shader files in the build process, which allow for fast loading in the C++ engine.
Another thing I changed is the full screen post effects. I’ve streamlined the code so that it’s easier to turn parts on and off to accomodate for slower devices. The post effects we’re doing aren’t really that complex, there’s a screen distortion pass (can be used to create shimmers above fire, blast waves for explosions, etc), a tinting pass (can be used to alter the hue of the screen, alter the saturation, brightness and contrast), and a stencil pass (used for the line of sight system in the space game we were working on, and might return to at some point). I used to have a bunch of extra passes like edge detection and smoothing, but I’ve taken out this code for now as it unnecessarily complicates things. I can always put it back in if needed.
The last thing I changed was the sound system. When we were using XNA for our tools, we were pretty much required to use XACT as the sound engine. So for the C++ sound engine I built a converter that could read the XACT file format, convert it to our own sound data and play that in our C++ sound engine which was based on OpenAL. Now that I’ve converted all our C# tools to use OpenTK (a mix of OpenGL, OpenAL and OpenCL), we no longer have the dependency on XACT, so I spent some time to implement all the sound curves, random cues, etc in our own editor. Below is a screenshot.
As you can see, we have pretty basic controls for sound cues: Volume, Pitch (as well as variations for both), polyphony, attenuation, as well as random samples, multiple tracks, and a ‘strength’ dependency for volume, and pitch (which is off-screen at the bottom). This is something we set from the code, so when a sample is played, a strength between 0 and 1 always needs to be passed. This allows for nicely scaled impact sounds depending on the severity of the impact, for example. We also used this for the engine sounds in Scrap Metal, where 0 was 0 rmp, and 1 was the max rpm of the motor.
Alright, that’s it for this week. Like I said before, not too many changes, but I hope this was useful to somebody out there.
It’s Jesse here with some super cool information on how we slay out all our art here at Slick! If this goes by alright we’ll be returning to this format every now and again much like Nick’s “Waanderful-Tech” posts!
To start I thought I’d take you guys through the process of art creation here with a brand new character just for this Dev-Blog post. Now we are still getting some things ironed out with our new project but we’ll stay in the same theme which happens to be a sort of a wacky fairy-tale cartoon world with a slightly dark edge. I like drawing in every genre pretty much but I find that fantasy tends to resonate with people the most, probably because they were raised on all these classic ideas of dragons and swashbuckling. Dragon’s and swashbuckling? That sounds like a great starting point, let’s work on some sort of pirate-dragon!
Step 1: Rough Ideas, and I mean ROUGH
Now that there’s an idea rattling around in my head I’ll start scribbling down some ideas. This is actually the most fun I have drawing because there’s no rules. Plus a lot of rough sketchy stuff tends to look cooler as your brain has a good time making sense of the messy lines. Here we see that there is definitely some elements that are coming up, we got the classic cutlass in the sash, a parrot atop his tail, and even a nice big hat to emphasize his grizzled head. We’ll make him the first mate and call him Scalesbeard for now.
Step 2: Refinement Pass with some tighter brushes
Now that Scalesbeard has got it going on we’ll refine him and his parrot friend with a slightly tighter brush and get those ideas less abstract. The entirety of Shellrazer was drawn with 3 Photoshop brushes so we’ll use the same tools to make our sea-faring dragon. I tend to draw mostly from my head when it comes to making stuff for the worlds here at Slick. Reference is always super awesome but when it needs to be done faster I draw from my gut and just get it down. We can see that we added quite a bit of embellishments to those scratchy shapes, the attitudes of the character and his props really start showing up in this phase. Things like the hooked tail and the pistols in the sash are drawn with more confidence because we are more familiar with the character now and can safely say “Sure, Scalesbeard would totally have those!”.
Step 3: Color and shade that action!
The last pass I usually do for fast stuff like this is going over the refined lines again with a static brush. This brush has no sensitivity and keeps the lines even. I fill everything with flat colors and then throw a 40% black over the whole character and “Scoop” out areas of light with the lasso tool. This may not be the prettiest way of adding dimension but it’s super quick and gets the point across. With our new game in the works I’ve been experimenting with some other styles of shading and coloring but the game will definitely have the same visual feel of Shellrazer. So here’s our first mate Scalesbeard! If he were to be animated I’d start chopping his parts up in a puppet fashion and get to animating a few different states for him.
And there we have it! a quick look at how some goofy stuff gets made up here! I hope you enjoyed this small sample of how art gets done up around here at the Slick office and be sure to tune in next week for another super cool Dev-Blog. Let us know if you’d like to see some more goofy art stuff on here in the comments! And if you too are a fierce drawbarian and have any questions about being an artist on a small team just fire away and I’ll be sure to answer them! Have a great week everybody!
We just got back from an awesome GDC, and we’re actually a little bit down now that we’re back in the office. It was great to meet and hang out with a ton of interesting people and watch great talks about their experiences, we’d want it to last forever. Some people called it the post-GDC-depression, and as far as I am concerned, that’s a pretty accurate description!
We had a Independent Games Summit pass, which includes access to the Independent Games Summit (of course), as well as the expo hall for the rest of the week. Since I’ve become indie I found that the IGS has way more relevant talks than the main GDC. The main GDC talks are still interesting of course, but most of them are so specific that they are not very useful to an indie who has to do all the programming for an entire game. The IGS talks are less instructional, but way more inspirational, which is why I go to the GDC in the first place nowadays. I find it very interesting to hear about the development process of FRACT, the art and lifestyle of Incredipede, the sobering and raw talk about the development of Retro Grade, and many others.
After the IGS ended, we spent the rest of the week hanging around the IGF booth, and partying at night. We attended the Mojang party, where Skrillex and Diplo were playing an awesome back to back set. I’ve been a fan of Skrillex for a while, and heard Diplo through my lady’s music list, but we’d never seem them live. Needless to say, great times were had.
On the Friday night we were hanging around in the Hilton lobby and we met Daniel Cook (of Spry Fox‘s game Tripple Town), and we ended up showing a few tech demo’s. I was showing him the Voronoi generation code we’re using for the procedural landscape generation, and it turned out he knew the guy who wrote the page I based it on. Sweet! Dan, being the awesome designer he is, started jamming on the idea of using the Voronoi app as the base for a sheep herding game. We may just put it together during a game jam one day!
Alright, that’s it for this week, keep those turtle cannons blazing!
This week we’re at GDC 2013. We landed on Sunday morning, and since the Independent Games Summit doesn’t start until Monday, we decided to head out to Japan Town for the afternoon. We met up with awesome indies Paul Veer from Vlambeer, Sarah Gross from Two Bit Art, and a few more. We found an arcade with typically Japanese games, one of which is the great table flipping game. Much fun was had as you can see in this little video:
Monday morning was the start of the Independent Games Summit, my favourite part of the GDC. So many indies, and a feeling of complete cooperation rather than competition. Fellow Vancouverite infinite ammo tweeted profusely about all the awesome talks, and he actually went over his tweet limit in the process!
Shane did his talk about how we designed Shellrazer without feeling like we lost our soul, and I think it went well. The day closed with a very raw and emotional talk by Matt Gilgenbach, which I think struck everybody deep in their hearts. What an awesome list of talks for day 1 for the IGS!
Tuesday was equally awesome, and it felt like it flew by super quick. Great talks again, and a great atmosphere with all these indies hanging out in between the talks and in the sun on the grassy bit on top of the North hall during lunch. Colin Northway did a very interesting 5 minute talk about his and his wife’s awesome traveling life, and man that gets me thinking. Maybe the next thing Slick Entertainment should invest in is a bus or a boat or something, and just be on the move constantly.
Ok, that’s all for this week. Not much actual DEV in the blog, but definitely a lot of inspiration gathering.
VANCOUVER, British Columbia – July 26, 2012 – Independent development studio Slick Entertainment is proud to announce Shellrazer for iPad, iPod Touch, and iPhone, released on the App Store today for a temporary launch sale of $0.99 (regular $2.99). RIDE YOUR GIANT WAR TURTLE TO VICTORY OVER THE NASTY GOBLINS!! You are a Klang Clan [...]
Welcome back followers of the fearsome! After some shifting around we are back into the groove of rapid prototyping! It’s been refreshing having something as clear to work on as our space title and we’ve been having a blast drumming up ideas for an exciting space shooter. This week we have some basic weapon ideas [...]