Tuesday, February 14, 2017

90s treasure trove.

This stack here is 20 years old. So I thought that i should digitize them before the tapes goe really bad because ... you know; they are not professionally recorded on Chrome or Type 4 metal tapes with Dolby NR, rather on cheap Type I ones, 'cause I didn't know any better. That one on the top is probably the only Type II tape in there. (At least i think it's a type II? :P)

Yeah I could do better but there's something satisfying in slapping an old cassette in the player and hitting "►" (To the young'ings, the arrow in Play buttons simply shows the direction of the tape. Yet, like the venerable Floppy ~ that's the "save" icon in many applications... ~ it stuck around even to devices or applications that aren't using any type of physical media.)
Oh and in a couple of these cassettes you may even hear a couple of stations' jingle.
(Man there's everything in there. From greek comedy rap to jazzy sax to OST)

what i really really want... 
Yeap, That was the first thing that came up on the first tape I started digitizing...

And no. When we were kids things weren't simpler or safer. It's simply that someone else was taking all the crap for us.

Thursday, December 15, 2016

Surviving Dec. 15th (And it's always going to be "too early" - they'll still be telling you to be strong.)

So it's been exactly one year since my mother passed away from a chronic illness, and on her name day in-fact. Of course it hasn't been easy, it can't be easy. You see things that remind you moments.
What were you doing at the time you were told (i was snoring) and the moment that it got real (damn there were a lot of tubes...)

Btw, the way to know who really likes you and thinks about you is if they'll say "what do you need?" or "what can i do?" and stand behind you in case you need something (literally and metaphorically). Most other's will most probably just say "Be strong." and after the 100th time you'll be ready to pounce to the next one to tell you that because you'll be thinking "I want someone else to be strong for me for once." It's something people say when they don't know what to say, not realizing that there isn't much to say. Just hug it out.

And you don't forget, nor does it go away. You just accept it and get used to it. You'll be reminded of things and at times you may even turn your head waiting to tell'em something or even wake up and thing to tell'em something. At first you are just chocking, but after sometime you'll so "oh well."
You can't forget or let go; I mean just think about it, half your DNA is them and most of your ideas/morals are shaped by them one way or the other. Either by them forcing their own or in my case, with them looking after so that you get to form your own thoughts by thinking  (which basically should just boil down to "don't be an asshole". You don't need anything more and you shouldn't even have any need for a religion to tell you not to be an ass.).

Of course each one deals with this in their own way but one thing is for sure. Don't oyster up. People won't know how to behave around you at first but those that are close (and I don't mean relatives) will want to come over and check up on you or invite you to ... do something, anything.
Go. 'Cause you'll never be ready, it'll always be too early. Keep postponing just stepping out of the house and before you know it you won't even be turning on the lights when it gets dark outside. Just tell them that you are in a bad mood and if they push you too much you'll snap at them, but go.
Otherwise you'll just pushing yourself in a black hole. Listening to music the very next day or not wearing all black doesn't mean forgetting or disrespecting. My sister got a tattoo with their own phrase that they used to say to each other, I made my game so that on the 15th of December a dove appears in a secret place (Well, she was the first person that I played video games with so it's fitting). My dad is still a work in progress...

Eventually you'll be remembering those dumb things that they did and smile instead of the last time you saw them. And there's nothing better that you could've done if you were just there and just talked to them. Unless of course you drove a knife in them or something. That's not good. Don't do that.

But at least today we sharpened his chainsaw's chain, I did another bug report email to Unity and sis bought some presents. So yeah.

Here's some fire in slowmo. 
I didn't center to phone while taking the video unfortunately.

Tuesday, November 22, 2016

101 texturing aimed at mobile games. (Just bake'em all in there)

Yes, mobile GPUs have gotten really fast. Yes, they can make more things than consoles from some years ago. But there is still something that hasn't improved yet. Battery life.
Forcing more fps means less battery life and a hotter device. But more so does giving more stuff to the GPU/CPU to calculate. Of course they can do effects like normal mapping and real time shadows, reflections/ refractions... But when running on a device that its battery only lasts for one or two days when on standby, that isn't such a good idea.

So... what's usually done on the art department is to cheat a bit.
Consider the scene below. From certain angles the floor looks as if it has some overhang and a relief/sculpted effect. (It's used in fact in a lot of places in the project).

The most common way to do so in a 3D project would be to use a normal map in order to give the lighting information to the rendering engine and have it react correctly with the lighting.

But in a mobile environment you'd want to have the device have the least amount of work to do possible. Think of PCs and consoles good at marathons, with mobile devices good for sprints. Even though a Nintendo 3DS or a PlayStation Vita are mobile consoles running on batteries, they have chips with relatively slow speeds running as fast as they can, while mobiles are given fast, multi-core chips; and we are trying to give them as few things as possible to do, because the more you give those chips, the faster they'll go, and the more battery they'll eat up.

So back to the scene; see that chiseled effect that gives some highlights on the sides? Or that shadow effect? Well those are all baked into the texture, meaning basically that they were pre-drawn in the picture that gets wrapped around the 3D object. Lighting is faked as well, with only a couple objects actually using lighting calculations done in real time. (The ball is one of them since you will be moving it, faking it on the ball won't do as the highlights won't move. It has a small normal map to give it bumpiness. It's ok to do stuff like that if they aren't covering much of the screen.)

Above you can see the actual model of the platform blocks with no textures and in the lower right corner part of the texture atlas that has the texture info for all the platforms in this scene.
Which is another way to save on resources; placing as much stuff as you can on a single file so that the engine will only need to read one file once - but do that for things that won't be needed in a different scene. If you take a single object that uses this texture and put it into another one, then the engine will have to load the textures for that scene, plus the whole texture for that single object even if only a small part will be shown on screen.

All the shadows and highlights in the texture detail shown in the corner above were made in Photoshop, while the ambient light and shadows visible in the scene were precalculated by the engine and saved in their own image file as well. So that information is not being calculated while playing the game. That has its own limitations, but it helps in lowering the work needed. Since the light source and/or the platforms don't move, painting the highlights and shadows before hand saves on resources.