Thirty-odd posts in, it may not yet be clear why I've named this blog "A Pixel Art Odyssey". After all, the word 'odyssey' normally implies a long, meandering journey beset by hardship, taken from the poem by Homer. It doesn't seem to be entirely applicable to the act of creating low-res sprites for games on the Spectrum or the SAM Coupé... But there are several reasons for that very deliberate choice.
First and foremost, having started out in pixel art by drawing on paper (and I really must get round to posting some examples of my earliest work), I'm still not entirely comfortable creating pixel art directly on a computer, using a mouse, or any other input device. While I techncially now have over 35 years of experience in pixel art, there was quite a significant gap between my early efforts and my current period of work in that field, during which I wasn't really doing much due to full-time work commitments. That lack of practice meant that I almost certainly didn't put in my best work on The Lower Caverns though, even there, signs of gradual but significant progress and improvement are visible. That said, the only hardship in that project was that I ended up second-guessing myself and tweaking things endlessly.
The other reason for calling this an Odyssey is that... well, to be completely honest, as this blog progresses, I suspect an impression will form that there's very little about pixel art that I actually like or enjoy. There are certain types of animation that I hate having to do... I absolutely loathe doing background art - if I ever get round to posting about Deadly Addiction or Sandman's Shadow, that will become abundantly clear - and, at the end of the day, no matter how many people tell me they like the stuff I've done, I'm still not particularly confident in my abilities. Even when I manage to surprise myself - with my upgraded Reckless Rufus material or, more recently, with even the earliest drafts for the SAM conversion of Westen House - the fact is, I am genuinely surprised by how well some of it has turned out. I look at it and wonder "did I really do that? And, if so... how did I do that? How is it so much better than my previous work?"
Obviously, the answer is "practice", but just you try convincing me of that!
I mean, objectively, I know that getting to grips with optimised palettes has greatly helped my progress as a pixel artist... but I'm still truly amazed at how good certain things look with the right palette, considering the way I used to organise colours back in the 1990s, which I first started using the SAM - and even the Amiga - for pixel art. The idea of selecting colours that were sufficiently alike in tone, that matching the hue wasn't important has been eye-opening, and has made me want to do more, push beyond my comfort zone and, perhaps, eventually revisit older concepts and rework them with an optimised palette... My Ocean-style Aliens vs. Predator game design in particular, but the point-and-click adventure remix as well..
So, the true hardships are, for the most part, still to be explored.
To kick us off, then, let's get into NetKarts. The coder is already documenting his progress on his own blog, Cooking Circle, so I won't go into detail on the whys and wherefores of the project. Suffice it to say that his attempt at recreating the SNES Mode 7 effect is looking great so far. For his demo, he's used a sprite ripped from Super Indie Karts, a Unity-based homage to the likes of Mario Kart, by One Legged Seagull Games, and reduced to about 80% of the original size. He asked me if I'd be interested in creating unique sprites for the game proper.
Naturally, I said yes... and only later realised that the kart rotation uses twenty frames of animation. Eight would have been simple enough - the protagonist of Westen House has eight-directional movement... sixteen would have been a significantly more challenging task... but twenty? And presented in a way that gives the impression of a solid, three-dimensional object spinning around? That's very much uncharted territory for me.
I quickly did the maths on that: 20 frames into 360° of rotation means each frame represents a shift of 18°... which is not easy to visualise. I started out trying to recreate the frames of animation from Super Indie Karts at the smaller size, but quickly identified two problems:
- I didn't quite understand the layout of the sprite sheets from Super Indie Karts, in terms of how a complete 360° rotation is achieved.
- Some of the frames appeared to represent a greater or lesser amount of rotation versus the previous frame, leading to certain frames being barely distinguishable, while others showed a massive change in angle.
With this in mind, I set about trying to figure out a better way to represent the karts' rotation, which would allow be to build a reliable template upon which to draw a variety of karts and drivers. At first, that involved a lot of procrastination, and working on anything else, just to distract myself from the awesome responsibility I'd taken on. Naturally, that did nothing to help and, in fact, just made the prospect seem even more difficult that it already did. Eventually - just a few days ago - I decided that I really needed to knuckle down and at least make some progress on the preparation, if not the actual sprites.
My first instinct was to use the Perspective tools in Adobe Illustrator to map out where the wheels would be in each of the twenty frames of animation. Perhaps it would have been more logical to work with a 3D design package, but I'm neither skilled nor even particularly confident with those, whereas I have plenty of experience with Illustrator. Even there, perspective isn't something I've used very often, so I had to look up videos to remind myself how to use the tools, but it all turned out to be fairly straightforward.
So, to begin with, I created a 20-sided polygon, then added four squares to represent the wheel positions. It was then just a case of duplicating that group of objects and rotating them 18° more than the previous, till I had a full set of north-to-south frames - only one direction was needed, as I could flip nine frames horizontally to make a full 360° - and then dragging them onto the perspective grid.
Initially, I tried extruding the boxes to give an impression of height for the 'wheels', but that ended up not being particularly helpful - in fact, downright confusing because of the way the extruded height was presented. After a bit of to-ing and fro-ing, I exported eleven frames as PNGs, then pulled them into Aseprite which, helpfully, treated them as an animation sequence. Because I hadn't aligned the shapes perfectly in Illustrator, and the PNG exports were of inconsistent sizes (I should have remembered to draw a flat box around the perspective shapes), I had to manually align each frame as best I could, which got me this:
The angle of elevation was pretty much an arbitrary choice on my part, as I couldn't figure out the best way to determine an accurate measurement of the perspective the game is actually using. This may turn out to be a more significant problem later, but at least I now know where to start.
The red and blue colouring differentiates between the front and back wheels, since their sizes change due to perspective. I'm not entirely convinced this is going to be as useful as I'd hoped, but it's certainly a starting point... Though I may go back and add a border, so I don't have to do all that manual alignment... which is very clearly off in the above animation.
Equally, I may just try to get the hang of some 3D software, just drawing some simple shapes to represent to kart, since that might provide a better template in the long run.
Comments
Post a Comment