In memory of Alexey Golovin, 1986-2013

pelecanus_flight_racer_by_spidermc-d5plkmp
A little gallery with some of Alexey’s personal projects.

Some days ago I was told by his sweet wife that a great artist and precious friend passed away. Alexey was a very good man and a passionate concept artist: during our friendship he created a huge amount of sketches and concepts that I now keep like the most precious treasure, together with his photos, e-mails, chats and documents. We were collaborating on various projects and I now feel it’s my personal goal to finish all of them in his memory, though working without him is making me feel a great emptiness.

He was doing most of the vehicle concept art for our first game and also collaborating on defining an IP I had in mind for years and that he convinced me to turn into reality.

In last months he was producing more and more art for the IP while I was slow as hell because clients kept me busy; I knew he was not in good shape but I had no idea the situation was so bad. He once said to me that he learned to do as much as possible when his health was letting him; I should keep that in mind every time I feel uninspired or too lazy to work and create, instead of complaining like an idiot.

The last time I heard from him he told me he was somewhat feeling better. I now spend a lot of time looking at his web presence, seeing him in my Skype, Twitter, Google+, Hangouts, deviantArt and so on, knowing he’ll never pop up again to send me an amazing concept or just for pushing me to paint and sketch. His last tweet was a retweet of something useless I wrote. I didn’t even write a comment in his last deviantArt artworks. I never answered some of his messages on Hangouts, because I was busy with work and then I forgot; I can see them and I feel helpless because it’s not possible to answer them anymore. These are some of the thoughts I’m having since he left. I read our chats and I’m ashamed seeing how much I talked about myself and of stupid stuff, instead of showing him more care and instead of following him in his creative efforts for our project. I was just too busy with goddamn work for paying the bills for understanding his struggle to do as much as possible. I feel guilty because I was not following his rhythm, we could have done so much more together and he could have seen some of our projects finished and published.

We tend to live like it’ll last forever, you know. But every moment with the ones we care about is unique and important — and we need life to kick us hard to remember that.. and then forget it again.

Goodbye Alexey. Thanks for everything dear friend, you’ll never be forgotten.

My experiences with Construct 2 (and why I stopped using it)

Some time ago I bought a license of Construct 2, the HTML5 game engine by Scirra. I bought it even before using it, because I liked their project and I wanted to fund it somehow, before even actually trying it. I then decided to give it a try and develop a simple classic game for understanding how does the engine works: that game is Constructris (a Tetris clone) and creating it was an interesting activity. In this short post I’ll give you my opinion about Construct 2; this is not an in depth review, it’s just my point of view on the current state of the tool.

First impressions

I was a bit skeptical in beginning, because I’m used to programming and using a tool where you can’t write down actual code sounded bad to me. It turns out it’s not that bad, since the event editor of Construct 2 (simply “C2″ from now on) is a sort of code editor re-skinned to make it look simpler and less scary for non coders. There are some shortcomings in the system, because sometimes you have to spend more time moving and snapping around blocks than “writing” them down, but the overall functionality is not bad at all.

I have doubts about how good such a system would scale for a very big game; in Constructris I tried to be as rational as possible, putting all the constants and globals and the functions in separate event sheets and importing them when needed, organizing the logic blocks, commenting whenever it was wise. Commenting isn’t very practical since you can just add whole lines above or below the “code” you are referring to and so you can’t add a comment on side of an instruction; that’s because the logic blocks are filling the whole width of the event editor.

C2 has a lot of pre-made behaviors and effects, so you can actually build a simple game quite fast if you want. This is not a good thing in my opinion, because it gives the false feeling that creating a game is easy. Simple drag & drop tools are bringing us a lot of very similar and unfinished games with no defined ideas, and the creators are not learning about what they do. You can luckily ignore pre-made stuff and try to lay down things on your own, though I saw few people is actually ditching the platform behavior (for instance) and building his/her own version of it.

Why I dropped Construct 2

This is not a review though, so I’ll skip to what made me drop C2; yes, I won’t be using it anymore. I don’t regret buying the license because I’m all for funding people with ideas and that puts efforts into them. The fact that I don’t appreciate C2 doesn’t mean it is bad for everyone or that what Scirra is doing is not worth time and money.

The first issue with C2 is the exporting of your games: they publicize the engine as capable of exporting for 14 platforms, and this isn’t actually true. You develop with a single target, that is HTML5: a wrapper is then added to the game, so that various platforms can make it run. This is problematic because Scirra is not making these wrappers, so different platforms will have to face different bugs, wrapper limitations and so on. The situation is especially terrible when it comes to Android and iOS, where CocoonJS and Direct Canvas are used.

Performance of exported Android games is also terrible if you use particles or WebGL effects; Constructris only has 3 particles for deleted block, a line is made of 10 blocks, so you get 30 particles per erased line, lasting 1 second and half on screen.. and still it lags on my Galaxy Note 2. This is unacceptable. The issue is simple: HTML5 isn’t mature yet in terms of support. The technology is promising and exciting but it depend on how the various platforms implement it, and that implementation is lacking optimization, standardization and stability. As I said C2 uses third party wrappers to make the HTML5 game appear as a native game, but what the game will support and how it will run depends on the wrapper, not on C2. This means that C2 isn’t supporting any platform except HTML5 being repackaged and wrapped for being available in various platforms.

Developing with C2 means knowing that unless you target the latest Chrome and desktop you will have to forget about most of the WebGL effects; you have lots of cool stuff but you just shouldn’t be using it. If you target the mobile you also must be aware of performance as I said, and of issues with sound lag and other stuff. If you target desktop you’re actually wrapping node-webkit around your game, so that my 2MB Constructris becomes a 60MB monster; I suggested approaching some delivery system for downloadable games, something that could split the game environment + launcher and the game itself, but I was told it’s not an issue and players are too dumb to deal with a  client that lets them download and play games. I guess no one alerted Valve about that.

So when is Construct 2 useful?

I think at the moment C2 is useful in these cases:

  • if you’re an hobbist & creating games isn’t something you want do for paying bills
  • if you’re making a casual game and/or a game that is not very big in scope
  • if you target Chrome or if you don’t need most of the fancy WebGL stuff
  • if performance and fancy stuff aren’t a priority in the mobile versions

Things could change in future, who knows. What I think is that the big players are still not playing when it comes to HTML5 game and app engines, and this allows a tool like C2 to exist. But when HTML5 support will be more mature we’ll probably see companies like Adobe producing their own game engine, and that could really change the scenario. In meantime I wish the guys at Scirra the best, and I also wish them to be more clear about what their tools is offering (take a look at the home page and see what I mean with slightly deceptive marketing).

Conclusion and current choices

What about our gamedev then? After dropping HTML5 we gave Game Maker Studio a try, and we feel it offers much more than C2; it costs more but it actually supports the platforms you pay for, instead of just taking a third party wrapper and putting it on top of the HMTL5 game, leaving you to deal with countless issues.

That being said and after lots of testing we think we’ll also stop using GMS and go for Unity; it’s the most robust solution out there, it uses technology and skills you can then use on other kind of projects and job activities, it truly supports all kind of platforms. The free version is very useful and the paid one (though expensive) is not impossible to buy if you wanna do business.

Some people will say that Unity is too complicated, and this makes me feel sad; I remember the 90s demo scene was filled with teens doing awesome things in asm, creating pixel art and music using tools that required technical knowledge and patience; now a tool like Unity and it’s scripting are seen as too difficult to learn.. something went wrong.

Protecting your game assets

I’m astonished when I hear developers and supporters of frameworks and engines playing down the importance of assets protection. Such engines/frameworks are usually having all the assets exposed in a nice folder structure, ready to be grabbed by asset thieves.

When you complain about that you usually get two kind of responses:

  1. if someone wanna steal the assets you can’t stop him/her

  2. the copyright notice is the best protection for your assets

This is bullshit. Point one: let me say that there is a huge practical difference between having to hack an assets container that features proper obfuscation and just opening a (zipped or not) folder. This difference is enough to avoid having your assets ripped and posted all over the web.

The second point is also amusing. A copyright notice won’t avoid someone taking my sprites or textures, loading them into Photoshop, alter them the way they like, export them and use them in their project or sell them, or simply post them online as a freebie. Asset thieves are not only taking the art and using it, they are very often doing derivative work on it, and good luck going around with your lawyer chasing some teen on the other side of planet because you think he used your art in his project.

What I find disturbing is the arrogance of some people supporting such positions: if you think assets (and maybe code) should be exposed and only protected with licensing, I have no problem with that: but that should be a choice. I could very likely do that too I guess. To refuse seeing a problem and even trying to paint it as not serious is just wrong; the developer of a very popular HTML5 game engine wrote this in their forum:

[...] also, I don’t see much point protecting the sprite image files – copyright prevents anyone using them and it’s obvious if they have ripped them, and you can’t protect against good old print screen, so if they want the textures they got them. I don’t think I’ve ever heard of a case where somebody ripped sprites and made money without getting the legal banhammer. It seems to me that protecting images is just a load of paranoia.

How much arrogance in that paragraph. Creating graphics assets requires efforts, years of study, passion, sleepless nights; you face frustration, fight creative blocks and overcome them, so I think it’s understandable you have that “paranoia” about someone stealing your art. To ignore such facts & feelings means ignoring the value of art production itself, and I personally find it offensive. The guy goes on:

[...] protecting images isn’t really worthwhile, as I said, print screen is going to get around even the most advanced encryption, which kind of makes even bothering to protect them pointless.

There is a big difference between pressing “print screen” for capturing what is on screen and finding the 2048×2048 texture or the full sprite-sheet with animated sprites & alpha channel right in a folder, at full resolution! I can’t believe a skilled programmer can’t see that, so my idea is that he was just deliberately ignoring reality. That developer point of view is irritating ad it’s sadly not unique. I dropped their tool (for other reasons too, I could post about that).

I choose not to use tools that aren’t offering at least some basic assets protection: if they don’t care giving me that it means they don’t care about me. I see it like that.

Mobile Photography with Android

5550c1712436c09f3ada16ef6fd1a4c7

 

I gotta tell you, I always hated the term iPhoneography (and its variants). I find it a bit ridiculous and somewhat elitist. So I won’t even dare some disturbing neologism mixing the words “Android” and “photography”: let’s try to stay serious instead! This little post is meant to share a couple of apps I love and find very useful, plus some tips.

 

Focus & exposure lock.
Focus locking on Android is not possible: the autofocus is always active. By locking the focus I mean focusing on something, then moving the camera while keeping the focus exactly at that distance we focused. I accidentally found a way to do it with my Note 2 running Android 4.12, and it seems this is possible on other Android versions and devices, so give it a try! In few steps:

1 – click the screen to focus on something
2 – now touch and keep touching the shutter button
3 – the exposure and focus are locked and you can move around
4 – if you release the shutter button you shot, or…
5 – … if you slide the finger back into the screen you cancel the shot

This can be very useful and opens all kind of creative chances; for instance you could lock it on a known distance (your arm length, or approx 2 meters from you, etc) and then go and take some street photography with no need to auto-focus on your subject, and shoot in a super fast way.

 

ISO manual switching

Smartphones are usually pushing the ISO level much above the actual needed value; this means you will have more digital noise than needed and you’ll probably burn the highlights and some other parts of the photo. So my advice is (if your camera app / device allows it) to select the ISO manually and drop it to the lower acceptable value. Sometimes you’ll have to decide if to lose data in the shadows or in the highlights, but keep in mind that an app like Snapseed or VSCOcam will usually help you getting some data back, so you should only fear extreme situations.

 

Keep the phone still

In smartphones you can’t usually control the shutter speed, and the phone will adjust it depending on the amount of light it detects and the ISO you selected. So you want to keep the phone as still as possible; use a tripod if you can, or put the phone on a support/plane and keep it still. If you can do nothing like that just try to stop breathing and keep the phone as stable as possible (there are a lot of tricks for accomplishing that, in the photography field).

 

Backup your photos!

At some point for some mysterious reason I lost all of the photos in my DCIM folder; I suspect it was for a system cleaner. Whatever. In that moment I was very sorry I didn’t use a backup feature for the photos, and I decided to use the one provided by Google Plus. I did set it to only sync when I’m on wi-fi so that if I don’t want some pics to go to the backup I just keep the wi-fi off when shooting (well I have wi-fi off most of the time when not home or offices) and move them out of the camera folder before connecting to wi-fi. You can also set it to backup only when you are charging, for instance, and decide if to backup other folders too. Believe me, you never know when you’ll feel stupid for not having a backup! If you don’t want to use a cloud service you can schedule periodic backups on your pc of course, but I think that having something automatic is a much better solution, especially in a world where we have hundreds to things going on at same time. And about the fact that cloud is potentially dangerous for our privacy..  all we do is in some servers somewhere. Our e-mails, our chats, our profiles and info, our sms.. our privacy went to hell quite a lot of time ago.

 

e6ea875688d311e38b2612c9e75d70d5_8_combo

The apps I use
I tried tens of both free and paid apps since I started using Android, and I ended up using only three five of them for 99% of my mobile shooting and editing. Here they are:

Snapseed
https://play.google.com/store/apps/details?id=com.niksoftware.snapseed

This is the most “professional” app you will find on Android, when it comes to creative filters and photo editing. It has almost everything you could ever need, the filters are having an amazing quality and nothing is a gimmick. No surprise since the app was developed by Nik Software, the makers of some of the best professional post-production filters. You can do things like adding control points to only edit a part of the image, apply multiple filters in sequence, apply film grain, light leaks, increase the perceived dynamic range of the photo and much more. And I repeat, this is a solid app made for photographers, not a gimmicky app like the hundreds that are harvesting for easy money in the app stores of iOS and Android.

Picsart
https://play.google.com/store/apps/details?id=com.picsart.studio

Picsart is both a very complete editing studio and an optional social network. The editor is very useful to combine multiple images, add logos, text, borders, frames, graphics and watermarks, paint, annotate, combine multiple images into one using a very flexible grid system, apply filters with plenty of parameters, and so much more. The social network part is very interesting because the users of the app are often posting great everyday snapshots and the level of smugness is very low: if you are like me and you found Instagram to be a bit too much crowded by smugs/elitists/hipsters, you’ll love Picsart take on the matter. You’ll also find lots of garbage and some people posting photos taken with a 20 mpx dsrl or some photos they found on the net, of course, but it’s up to you to understand which users are deserving to be followed and which ones you can ignore. The platform isn’t very pretty yet and it’s missing something (a better bio where you can say something about you ala Twitter and a private messaging system to get in touch with other users without using public comments) but it’s already quite good.
You can find me there if you want: http://rublev1360.picsart.com

After Focus Pro
https://play.google.com/store/apps/details?id=com.motionone.afterfocus_pro

When I first installed it I thought this was just some gimmicky app I would erase in a moment. I ended up buying it after few minutes of usage. The way it works is simple: by painting (or using a feature called smart select, or by taking multiple photos) you decide what is in focus, what is out of focus and what is between the two. Then you decide the level of aperture to simulate, the bokeh shape and other stuff. If you put enough care selecting things & calibrating parameters you get very good results. You can even apply photo filters that sometimes rival the ones of Snapseed and Picsart in quality. What else can you want?

Instagram
https://play.google.com/store/apps/details?id=com.instagram.android

No need to introduce this app of course. I use it mainly beacuse I do upload many of my shots to Instagram (you can find me here) and because some of its features are coming handy, like the tilt-shift effect and the various filters which can sometimes work wonders. I’m also a fan of square format and Instagram forces it on you, so…

VSCO cam
https://play.google.com/store/apps/details?id=com.vsco.cam

I discovered it recently and it changed the way I do photography on the phone, pretty much the way Snapseed changed it when I discovered it. VSCO cam is having a wide range of tools that sometimes overlap Snapseed ones and some other times complement them; what sets VSCO cam apart is the quality of the output and the beauty of the presets you can buy and tweak to your liking. The folks behind this app are also providing high quality filters for Photoshop and Lightroom and this shows in the care and quality of their app. While Instagram gives you a bunch of filters VSCO cam hands you lots of power so that you can produce exactly the photo you have in mind. The only lack of VSCO cam are the tilt-shift ala Instagram and the amazing selective edit tool of Snapseed, from my point of view. That being said, this app is absolutely a must and buying all the presets is also highly suggested.

 

A last note about camera apps: I tried many of them but I shoot most of my smartphone pics with the default Samsung camera. That’s because third party cameras are offering lot of features but not every feature is supported by he various phones, so it’s a bit of hit and miss. The only secondary camera app I use is Camera FV-5 because it allows me to shoot long exposures and change the shutter speed, better frame the shoot, and some other cool features; it’s a very good app but I still can’t get used to work with it instead of the default one.

 

Some more of my smartphone shots:

Taking photos with a mobile can be a precious activity, because it lets you record images you would otherwise miss, and we got to the point when you can do some quality post-pro on the go and share your photos with the world in a matter of minutes. And no, you don’t need an iPhone for all that :)

I posted some of my smartphones shots in here, if you want to see more of them you can add me on Instagram (I’m andrejrublev there) or check my website andreabianco.eu.

Constructris

constructris_promo1-830px

You’re maybe wondering: isn’t him painting concept art & shooting photos? What is this game thing now? Well I’m a games and gamedev fan since a long time and I recently felt in love with HTML5 gamedev, so I started this little Tetris clone as a way for testing Construct 2 and see if it was practical to create games with it.

I just posted the latest release (1.6) on Kongregate at this address: http://www.kongregate.com/games/rublev1360/constructris
and I’ll soon add the final version (1.8 if everything will be fine) on my website in the new Games section currently in the works. The game works better in Chrome and I think desktop (node-webkit), Chrome and Android will be my main target for this and the next game.

The point system is heavily based on the GameBoy version; you get point for your soft-drops and when deleting the lines; the higher the level, the more points you get for a deleted line. There are 20 levels in the game, with the latest ones being quite hard.

I’m probably going to put it on Google Play sooner or later, but right now there is a big frame-rate drop on Android when you delete a line and the particles are on screen; I need to understand what’s the problem, since I don’t think 30 particles (for one line) should be a problem nor for my S2 neither for my Note2. Being just a test, I think the game is now feature complete and I only think to actually fix some minor issues and paint some better pixelartesque graphics for its background when I’ll have the time.

The virtual pad is having 8 different directions and 3+2 buttons. It has a buffer system that can recognize sequences (you can do an hadoken for instance) though I disabled the buffering parts in Constructris. I hope to use them in the next game, if I will work again with Construct2! The pad in the promo shot is having 4 buttons but I dropped one and went for 3, which are more than enough for my needs. I hope you will have fun playing and please let me know if you spot any bug or weird stuff going on!

About in-game ads & purchases

I usually don’t install or I promptly uninstall games that feature in app purchases. Especially when they’re games that cost money. This became a strong trend in gaming and I really can’t stand it; I understand developers need to make money and pay bills and so on, but this must happen following some ethic, in my humble point of view. I think games should be sold for a price or be free: everything in between is a territory where dirty behaviors are feeling home. The same goes for in game ads: why should I see them if I already paid for the game? Why should I see ads at all? If you need to earn from the game, fix a price and don’t fill them with shit. But the business model became roughly something like that: set a low tag price to attract users so they download your game and you get nice stats (look we got 10000000000 download so we are cool) and then you put in game ads and/or in app purchases to get more money for the game. This is disturbing me: gaming is something important, I believe that. A good game can help people forget their problems for a while, it makes you kick that shitty co-worker or boss away from your thoughts for a while, it maybe helps you forget the bills you must pay or the fact that school kills your mood etc. You play to live adventures, maybe to evade reality, to kill time having some fun and relaxing.. and when you do it and you get some flashing ad in your face this is all screwed up. The same happens when the game asks you MONEY: once you buy the game, there should be no more money talking. The developer sells the game so that the user can live it and play it at its best, that’s all. In game ads and in game purchases are like when a commercial interrupts an intense scene in a move on TV: it sucks and TV networks should not complain you prefer to download the series / movie with a torrent.

What really puts me off is that this business model became so popular: app stores are stuffed with apps and games that are “free” or extremely cheap, but this is just a lie because they are full of ads or require you to pay money if you want some core or very important function. I don’t think this business model will go away soon, because it works; most people doesn’t feel like I do and so developers go for it. I just find it wrong and that’s what the rant was all about.

Console blues

Some days ago I had a couple of minutes to spend between two clients meetings and so I went back home, fixed a strong coffe and turned on the XBox for a fast Halo 4 game. I started the single player campaign  a while ago and I try to finish it, but time is never enough. So I’m there sitting and drinking my coffe; and the familair logo appears and disappear.. ok ready to play, Andrea! Not really: the console software needs to update. I wait for the download, the reboot, some more installing. Time passes, coffee is finished. I finally get control of the console, I select Halo 4 and I start it.. but guess what, Halo 4 needs to update too. I let it do it (not really having a choice, actually). More time passes, I drink some water, wash teeth, get back to console. Halo finishes updating and I turn off the console and go to the client. I wasted around 20 minutes with updates, installs and shit. This made me somewhat mad, I got to admit it.

So I remembered the time when I turned on my Sega MegaDrive (Genesis) and instantly started playing some awesome Street Fighter 2. No updates, no downloads, no waiting. The console didn’t have a fucking operating system stuffed with features I don’t need nor want, it didn’t try to be a tv, an hi-fi, an internet browser, a smartphone, a vibrator, an NSA agent and a fridge. It was there to let me play great games. Shitty games too sometimes. It was perfect. Games were released and I never had to restart one of them or lose a save-game for a crash; back in the time they used to do some serious beta testing, because they knew their game was coming out and staying the same. Now they rush a game out because they need to cash XMas money, and what you buy is a bugged version that will need many updates before you can call it finished and stable. By that time, there will be the inevitable new title of the series. And the game you bought is not even the complete experience, nope, it’s just 2/3 of it, because the last third (if you are lucky!) is split in two DLCs. And if you wanna play it online you must pay too. And so on.

I miss the times when gaming was simpler and better. No OS in the console, no waiting, no updates, no day-one patches, no patches at all, no stupid features. I’m using my XBox less and less and I’ll probably end up removing it all together from the living room; luckily there is PC gaming with some very cool titles out there and with plenty of emulators to enjoy some masterpieces of the past no fucking Assassin’s Creed 10 or Call of Duty 13 will ever match. End of the rant :)

Updates

Lately I got lots of work for clients and very few time for personal projects, but I still manage to keep something going on, and here are the updates.

ZIMA: development was moved from AGS to Construct 2, which I’m testing and liking quite a lot. AGS is a very lovely little software with a great community but I like the idea of using HTML5 instead and also bringing the game to the browsers instead of just Windows desktop; that being said, Construct 2 is also having a great community and lots of learning material, and in the end I think I did the right move. I gotta say that since I love to code I found it weird to deal with a tool that has no way to enter code, but I’m feeling more comfortable now.

PlanetB : who follows me since some years knows that many of my creatures, characters and vehicles concepts are sharing the same fictional universe and especially a planet called “Planet B”. I did team up with an awesome concept artist and we’re crafting a book that describes this fictional world and the stuff in it. It’s progressing and I hope I can post some wip pages soon.

Software: I’ve always been using open source tools for my work, but this partially changed in last months as I switched to Adobe Creative Cloud. There are some reasons for that:

1. some of the open source software I used couldn’t provide all the features I need in my work, plus many non destructive tools in Adobe software are huge timesavers (and time is the greatest resource as a freelance!).

2. I often work in team with other professionals and a 100% compatibility with industry standard file formats and software features is required.

3. On a less practical note: there are mediocre concept artists out there that are using open source tools and thus are being considered good by fans of open source. I think being considered good cos of the tools you use is sad and wrong. The choice of software has nothing to do with the actual value of the produced art: a crappy painting with anatomy issues and poor composition is not becoming good because it was made with Gimp, MyPaint and Blender, just like a bad render is not becoming good because it was made with Max, VRAY and Photoshop, etc. I happily keep Gimp, Scribus, Inkscape etc installed & updated but I noticed I use them more rarely, because when you spend 12h every day on Photoshop, InDesign, Illustrator and Painter it becomes a time waste to change workflow when dealing with personal projects. Time is too precious, I’m really learning that. I still use Blender as my main 3D software though.

That’s all folks, thanks for reading my blog and visiting my website, next post will include some art!

Zima concept art

Zima-external23-resized

Zima is the codename for my own little indie game, as some of you may know already. I thought I could start posting some of the concept art in here as a way to motivate myself to find time and finally finish it! So meet a view of one of the external settings. Everything made in MyPaint with some Gimp. The original image is in a much higher resolution so I resized it for web usage.

For the ones being interested: Zima is a short point & click adventure game with an adult target and some interesting gameplay twist. The final version will probably be HTML5 but right now I’m using AGS to develop the prototype.