Compixellated #27

I came across a Tumblr blog that is run by three artists who do weekly pixel art challenges called compixellated. In this week’s challenge we had to go to Picklekitty’s Character Attribute Randomizer, generate random character attributes and draw based on that. I got this –

Screen Shot 2014-03-20 at 11.49.03 pm

I’ve been collecting a lot of references that I am using for now to learn. If you see similarities between this work and something you’ve seen earlier its probably because it was in my references. Hoping to find my own voice soon but I guess I’ll just echo others’ for now.

I first made a basic body type and added the clothes some facial features and the laser animation. Rhea, pointed out that the guy could be holding the stick in the other hand and could have a slight stoop to make him look a little older. I made those changes and added another prop and I think its looking much better that way. I wonder what I can do to make it look better, I guess I’ll come back to it once I have some more practice.

How to program Independent Games

Jonathan Blow the creator of Braid talking about programming independent games as opposed to normal development. I only heard the first 40 minutes (skipped the Q&A) because there is no video after that point and its hard to relate to the game demo. I forgot where I found this from.

Time is a Puppy

lut4rp> Sup
prtksxna> pull
prtksxna> …………
lut4rp> Will
lut4rp> Hold
prtksxna> what?
lut4rp> Will pull, hold a sec
prtksxna> hold time? :O
prtksxna> is that possible?
prtksxna> can i hold a second, like in my hand?
lut4rp> Anything is possible
prtksxna> like a puppy?
lut4rp> yep
lut4rp> Time *is* a puppy

Now the world has gone to bed
Darkness won’t engulf my head
I can see by infra-red
How I hate the night

Now I lay me down to sleep
Try to count electric sheep
Sweet dream wishes you can keep
How I hate the night

HTML5: Real Estate Agent

prtksxna Thodi see margin aur padding toh chalti hai yaar, kya karega itni real estate ka. Dalla sala.
(A little bit of margin and padding is fine man, why do you need to much real estate, are you an estate agent?)
Ford_Prefect prtksxna: which makes you a real estate developer?
prtksxna YESH
prtksxna I landscape properties using CSS
Ford_Prefect transform them
prtksxna And customise homes with JavaScript
prtksxna All our homes are HTML5 sir, would you like to see the markup?
prtksxna doctype html5: certified
Ford_Prefect What’s the super builtup <textarea>
prtksxna 150 characters sir, more that Twitter even!
Ford_Prefect 😀
prtksxna You’ll make the downpayment sir? You’ll get HTML today, and JS and CSS as you pay the installments
prtksxna Ford_Prefect sir?
Ford_Prefect Is the modular.js kitchen included?
prtksxna Yes, sir, with backbone.js sariya (iron rod)
prtksxna And angular.js fans
prtksxna We have an ember.js fireplace too
prtksxna but that is for the single page apps, they are slightly expensive
Ford_Prefect Is that bootstrap scaffolding I see?
prtksxna Yes, sir! Bootstrap 3. And all the signages in the society are pure Glyphicons
prtksxna (We only use the best)
prtksxna Sir, you won’t be running IE would you?
Ford_Prefect No, but I hope I can let my firefox run around the complex
prtksxna Sure sir, we even have a swimming XUL 😛
Ford_Prefect prtksxna, I like you
Ford_Prefect So responsive
prtksxna Oh thank you sir, its my job to respond to all media queries
Ford_Prefect 😀

The Hidden Trail

I recently had to go to Lower Parel to meet a friend. I had never travelled in the Local and decided it would be a good idea for this trip. When I reached the station I asked a kind man for directions to the mall I had to reach and he pointed to a small opening in the railing of the platform. I looked at him a bit bewildered, but as I was a early anyway I decided to check it out. What that tiny opening lead to was one of the most unbelievable roads I’ve ever seen in a city. I wen’t back again to click some photos and to be sure if it really exists.

IMG_1447
IMG_1474

I asked quite a lot of locals if they’ve been on this road and they hadn’t. But one guy did tell me there is something similar near Goregaon (must check that out too). If you’re in Mumbai, I say you should go check it out. I’ve made a small map to help with the directions.

Whattay Game

prtksxna not sure what to write though :\
anexasajoop Kuch bhi likho
prtksxna k
anexasajoop Phir main bhi kuch bhi likhoongi
prtksxna k
anexasajoop \:
prtksxna phir woh kuch likhenge
anexasajoop Haan ji
prtksxna 😛
anexasajoop Whattay game!
anexasajoop q:

EmacsAsOperatingSystem

I posit that many people use EmacsAsOperatingSystem. What’s more, it’s about the most portable operating system ever. This would explain the fanaticism required to build mailers, newsreaders, web browsers, directory editors, CVS interfaces, etc etc etc into this one tool, so its proponents never have to leave the safety of their house.

Animating Type: Hacks when CSS3 doesn't cut it

After building Cascade in a frenzied hack night, we decided to put it up as an entry for Mozilla Game On. I wanted to learn about and showcase CSS3 animations. There were obviously a lot of 3D matrix transforms going in to the rotating cubes, but there were other subtler CSS3 animations across the website too.
One effect that I wanted to achieve was to render the letter being played as if it were being written by hand. Line by line and exactly the way a human would draw the letters.
abc-bhaukal
I quickly realized that there isn’t going to be a straightforward way to do this. The animation had to be perfect and I wanted the text to be selectable afterwards so Flash and animated GIFs were out of the question. After brainstorming with neena we came up with a couple of solutions.

Progressive SVGs

SVG is just XML, right? So, if we just render the XML progressively we’ll have our animation! Err…NO! Life isn’t that simple, neither are the shapes of fonts. The SVG files of most fonts are pretty complex. They create shapes and subtract/add/intersect other shapes out of it. Get rid of one node in the curve and Latin will start looking like Devanagari. Not exactly what we want.

CSS Masking

How about covering the letter with a DIV, that has multiple DIVs inside it, that have keyframe animations set in CSS that would slowly unmask parts of the character. We’d have to write at least 2-3 ‘unmaskers‘ for each character, not to mention that it would be next to impossible to do characters like X and Q where there is an overlap in lines. This is theoretically doable, but with the vast differences font rendering across browsers and operating systems it could never come out right.

Canvas

Let’s do the animation using arcs and lines in Canvas and once the animation is complete switch it out with a font that looks exactly like the one we drew on Canvas. So, all we need to do is design a font that can be made with simple arcs and lines, make animations for it in Canvas, convert it into a web fonts to be used as @font-face and we are done! This is starting to sound desperate.
 
After failed attempts at achieving the effect, I suddenly realized that we have a typeface designer in the family. A simple solution came to my mind and I called Pooja (Didi) asking for a big favor. Frame-by-frame animation seemed like the correct choice for such animation so I asked Didi to make 24 different fonts each with one frame of the animation.
Screen Shot 2013-08-25 at 8.07.50 AM
She had to go to Delhi that week but was able to slice everything up and send it just in time for the Game On entry! I wrote some JavaScript to run through the fonts frame-by-frame and Bhaukal was born. Bhaukal roughly translated to ‘extreme swagger’ in local Lucknow lingo, that is what I thought any website would have if it has such an animation 😛
We chose Raleway to begin with as it was simple, clean and easy to cut. New fonts can easily be added as long as someone is willing to cut all 24 frames of the 26 character by hand. Even though it sounds like a lot of work, the result I think was worth it. You can check out demos or look into the code and contribute more fonts.
Wait a second! Was there an easier way to do this?

Wikimedia Commons: Android App Icon

When I went to Bangalore to pack up my stuff, lut4rp‘s home had been converted into a hacker space with YuviPanda and GeneralMaximus hanging around. I didn’t have too much client work and realized that it was the best time to make a design contribution to open source and familiarize myself with the process.
Yuvi was (and still is) working on the Wikimedia Commons application. He wasn’t completely happy with the icon and I decided to make one according to the iconography design guidelines in the Android design docs. The logo has a pretty complicated shape but I wanted to keep it consistent with the other launcher icons with the slight depth on top and light shadows.
old-to-newicons
After completing the design I sent my first ever pull request (I have no idea why I was scared to do this earlier) which after a couple of changes and iterations finally got merged to the repo. I am not completely happy with the rendering of it, but it looks fine on smaller sizes, guess I’ll change the shading a bit and send another pull request. I am glad that I got past this hurdle and have been sending more (but still trivial) pull requests to other projects as well. Hope this streak keeps going 🙂

Fresh off the Oven: New APIs for Kivy

#kivy
prtksxna tshirtman: Is this the only way to make the device vibrate? No wrappers yet? https://gist.github.com/tshirtman/4719140
brousch prtksxna: Feel free to contribute a vibration wrapper to plyer https://github.com/kivy/plyer
tshirtman prtksxna: that’s the only programatic way i know, but you could put your device in a microwave to make it vibrate, of course 😀
prtksxna tshirtman: lol
prtksxna brousch: I see
tshirtman of course the feedback() call is the important thing here 🙂
brousch for desktop OSes we could turn up all the fans, spin up the hard drive and CD-ROM to make it vibrate
prtksxna brousch: MacOSX does that automatically from time to time 😛
tshirtman brousch: oooh, good idea
tshirtman bonus points if there is an old printer or (glorious!) a floppy disk slot
prtksxna This feels more like kernel panic than the good old vibrate…
brousch Maybe just open and close the CD-ROM tray quickly
prtksxna Hmm, makes me wonder, there should be an API to increase the temperature of the device. That’ll help in games 😛
brousch prtksxna: Turn on the GPS and peg the CPU?

Bartle Test

The Bartle Test of Gamer Psychology is a series of questions and an accompanying scoring formula that classifies players of multiplayer online games (including MUDs and MMORPGs) into categories based on their gaming preferences.

The Superest

The Superest was a continually running drawing game between illustrators Kevin Cornell and Matthew Sutter.
The rules were simple:

  • Player 1 draws a character with a power.
  • Player 2 then draws a character whose power cancels the power of that previous character.
  • Repeat.

This is my favorite one: Bodhidssttva Yogi

Year Walk by Daniel Olsén

A song journey through Swedish folk music played on electric organs and timbale, lullabies sung by wooden dolls, soundscapes in the place between time and space and long forgotten hymns.