Monday, December 22, 2014


I know it's been done to death, but I was at this coffee place and half the people weren't just showing stuff on their phones to their friends, they were *only* looking at their phones and nothing more. 

At least turn the screen to the other person and show them a nude picture or a cat picture :P

I like sharing-tech, but the kind that will (for example) allow me to flick a picture on my screen towards a friend's immediate location, the phone will use blutooth to see which friends are in the visinity and then calculate which phone of those is closer to the direction i flicked the image to. And then send it to their screen...

(Yeah I'm aware of how ironic it is to post this kind of a PSA thing in a blog thingy.)

Wednesday, November 26, 2014

Autumn colors swatch.

Went to a nature trail a couple days ago and managed to snap a couple of pics before it started to rain...

Wednesday, October 22, 2014

Monday, October 20, 2014

Dear Monday:

New T-shirt design expressing the feelings of many people about Monday. (in t-shirts, phone covers, pillows, tote bags...)

Head over to (for the shirts and covers and the rest...)

Friday, September 12, 2014

Design/graphics cheat #2 - Mobile gaming

Mobile gaming is all the rage now, and companies are showing their latest phones, tablets, phones the size of slippers and chipsets for 3D graphics on-the-go.
Everybody are now showing off some awesome looking shaders, effects and high polygon (for mobile) models making sure you realize that it's rendering in real time. There's something that they don't show a lot though and that's real time - level wide shadowing. And there's a good reason for it as well; it's probably one of the more resource intensive stuff to pull off well enough, so people making games are resorting to all sorts of trickery like "baking" lighting, drawing the details in the textures instead, using shadow "blobs" for stuff that's moving... in general cut using realtime shadows in mobile gaming as much as possible.
(It can be done of course, but most of the time you'd be better off faking it and pushing your savings on making the game run at more fps or implementing some more resources into your enemies.)

So where am i going with it? 
Be smart in hiding things and using simple geometry to make shadows. Like the image on the right; those two things are just some of the obstacles in a game i'm trying to make that spew snow balls. 
I really wanted to have some slight shadowing/ darkening effect in those barrels. Light mapping wouldn't work of course because ... that's not how it works... and real time shadowing would be no-no. 

On a game you are trying to include as many devices as possible after-all to potentially have a larger install base. So it's back to old-school tricks, back to basics if you like. The barrels simply have 3 simple planes, with just 2 polygons each, and a simple black texture. Then the texture's alpha channel is set as semitransparent. Each plane will progressively make it look as if it's darker and darker the deeper you look. Of course this will only work for stuff that aren't out in the open.

For things that are out in the open, what someone could do is mark areas with simple trigger boxes that are placed in shadowy areas. Then have a simple script that would smoothly make the texture of the object that enters the box's volume darker, and lighter as the object exits. A poor man's light probe if you like. These things do require tweaking though, but the plus is that your game's speed won't suffer and you'll get some nice looking stuff.

Monday, September 1, 2014

Man I feel dumb - Unity animations and scaling.

Don't, just don't change the scaling of an object inside Unity. Even if your object has 50 polygons.
It'll f@(k your fps. Pardon the language but it'll just ruin your day if you are doing for mobile. Just take the extra time to make your scaling animation in your 3D package of choice and save the animation as blendshapes or whatever it's called in there.
I just wanted to squish 2 bellows. But nooooo. I have to do the whole blendshapes thing. Can't just change the z value.
Sorry, I know it messes up with batching, but I just didnt' expect to lose close to 25fps.
(And I blamed my rigidbodies. Sorry bodies....)

Sunday, August 24, 2014

Cthulu in my room?!

Just the shadow of my camera, but when I glanced at it, that was the first thing i thought :P.
The tentacles coming down from it and ... whatever caused those beady eyes.

(And no the poster is not crocked, it's just the angle i took the photo that is at fault here.)

Monday, August 11, 2014

Design consistency

Something to take note when designing anything, is consistency. That's because your users or clients will be conditioned/taught and they'll expect something to "be there" or be in a certain way. It's why the close button on Windows hasn't moved from where it is. It may be changing slowly, but it's still there, looking all Xed and red now.

And my issue is with OS X, or rather the way it has implemented a feature in the Finder; to be able to go back to the folder you came from by using the keyboard. You press Command and the UP arrow on the keyboard. From an engineer's point of view it's fine, because the data on a computer are thought as trees. The more folders nested in other folders you open, the deeper down the roots you travel, and so Command + UP to go up, closer to the surface makes sense. But not with the way the GUI is designed.

Look at the buttons right there on the left. They are pointing left and right as if further back the timeline or forward.
Yet with the keyboard you go up and down. You might say that i'm nitpicking and most probably I am, but it actually took some time to get used to it, it's two different ways of thinking and it's nice that it's not the whole OS like that. Command + left arrow or right arrow does the same thing as Shift + <- / -> as far as I know.

In Windows the Windows key with the arrows does something expected, it throws the window in the directions of the arrows. Stacked to the left, to the right, maximised, minimised, similar to what Control+arrows does on OS X.

By keeping things consistent you make for a smoother UI experience, and keep nitpickers happy :).

Tuesday, July 22, 2014

Guild Wars 2 - map to be opened after Entanglement?

I'm guessing that a slight oversight in the current map allows you to go out of the standard play area and enter part of the map that is going to open later on. Found it a couple of days ago, but i wanted to stroll around alone for a bit more :P

I know i know, it's not photography or design or anything else based. But i guess it's map and video game ... design? :P

Wednesday, June 25, 2014

Free tileable stone sidewalk/road texture package for Unity

As the title says. I was taking a stroll around the city and found a stone-paved pedestrians path so i snapped a picture of it and treated it to be tileable. Also made an alpha channel and normal map in the PSD so that Unity's specular shaders will only apply specular to the stone and not everywhere. The asset is free; over at Unity's asset store.

Link: Cobblestone in Asset store

Tuesday, May 6, 2014

Color (or colour) swatch 3

Color swatch number 3. And no, I'm not using hex for some elitist thing, I'm just lazy.
I prefer to write in my one color box instead of three :D.
And every self respecting graphics manipulation/creation application has hex input anyway.

Tuesday, April 29, 2014

Color swatch 2

Color swatch (or colour if you like)  from a pair of straws.
Well you never know what will interest you enough :P

Saturday, April 19, 2014


Viewfinder of a modern belows camera.
(meaning, not the ones you see in old films with the drape and stuff.)
And no, the image is not upside down, that is how it is.

Tuesday, March 25, 2014

Unity3D mobile quicky noobie note.

So you are making something in Unity for mobile (lets say Android). You went ahead and selected your resolution in the preview window ("Game" window) And set your GUITextures with pixel inset values in the inspector. You might have even made a script that calculates things according to the screen resolution in X and Y to find ratios and what not. Then you deploy and you notice that something is off by a couple of pixels. You double check and things are ok but still get shifted in the screen.

So what gives? Well, Unity may have 1280*800 or other standard resolutions built in, but what the OS gives to the player once you actually have it running on the device is not exactly that. Remember it has the home bar. So that takes some pixels away from the real-estate, 28 pixels as far as I could tell in the case of 1280*800 screen resolution.

Just make a custom preview resolution of 1280*752 so you won't have to keep that in the back of your mind. I'm sure there are other a lot more elegant ways of solving this, this is the easiest thing I thought about.

Friday, January 31, 2014

Camera settings and their actual effect.

A friend just bought his first dSLR and immediately started taking pictures to get to know it, which is the best thing to do once you get one. Don't ogle over it; just go out and start taking pictures, while noticing what changes in your photos when you change a setting at a time.

During his first tries though the results didn't go along with the mental images he had. And I'm guessing here that the manual may be at fault a bit. Most often the manual says that you should try and expose the image correctly with the exposure meter. Yes, you should, even the cheapest of the dSLRs now have great sensors and can forgive a step up or down. (A bit underexposed or over exposed. If the circumstances are such that you can't get a perfect exposure, you can fix it later in lightroom or photoshop. Though that should be the last resort...)

Aperture for emphasis.
Manuals most of the time say that the aperture setting is for changing the lens's iris, allow more or less light in and that will make the depth of field shallow or deep. Now i know you'll yell "semantics!" and you'll be right i guess, but it should be the other way around, that the aperture setting allows you isolate a subject or bring everything in focus. I'm putting it like that to make it easier to realize just by reading it from the first time, that if you want to make a single thing stand out, that's what you'll use, instead that "it changes the amount of light through the lens and in doing so makes stuff blurry or not." People tend to think of non-sharp photos when you say blurry, instead of thinking isolated subjects with bokeh.

Shutter speed as a time function.
Same thing with the shutter. It says to keep a fast shutter to avoid shakiness in your photos. Well yeah, if the results came out shaky and you don't have Image Stabilization, tripod or steady hands, using a faster shutter will help with that. But don't think of the shutter as the thing to make your images ... not shaken. Grip the camera firmly, have the shutter button semi pressed and ready to just press it just a tad more to release the shutter and you can do well with a slow shutter speed. You should think the shutter speed as a way to express time instead, add movement and life in a still photograph. There is this thing that people say; that you should keep your shutter speed at, or above the lens's focal length, meaning that you should have 1/50 for a 50mm lens. Let me tell you that you can go handheld a lot lower than that with just a tiny bit of practice and no IS. If you want to capture a car moving fast, you can use lets say 1/200 and get a steady car, with the wheels blurry from spinning, and the trees blurry from you tracking the car. But do that with a human walking and it's just a frozen thing. May as well be standing still. Go for a slower shutter speed, one that will get your subject's limbs just starting to go blurry from movement and then use the aperture to cut down light. Want to isolate the subject as well? Use a lower ISO setting. Don't have a lower ISO setting? Well at that point you'll need to get an ND filter to cut down light I'm afraid. But the point is that there's still a way.

So don't think the settings as the way to get your exposure meter at the center. Instead think of what you want to show in the picture and use the tools for that, there lots of times you'd want to have motion blur.

Tuesday, January 21, 2014

Noobie trap in Unity. (Or "How time flies". Or "Time.deltaTime")

So i wanted to make a small timer in the upper left corner of my small game.
Extremely easy; you just have a variable storing float values and add Time.deltaTime on every frame to it (deltaTime is the time it takes to render a frame.)
Thing is, if you are using something other than "1" in time scale or playing with timeScale to do some slow motion effects, your timer will get out of sync with the real time that has passed. If the timer is to trigger an event in game to happen, no biggie.
If it's for stage scoring or leaderboards though, then the timer needs to be in sync.
So just take into account timeScale. Just divide Time.deltaTime by timeScale to always keep the timer counting in the same speed. (i.e. real speed, the same speed that a wall clock does).