I landed on a host of tutorials on Motion capture (aka Mocaps). It all starts with these free motion captures files from the AACAD (Ohio State U.), then you take MakeHuman, a free tool for making realistic figures for rigging, then the rigging per say in Blender adding the Mocap animation data on top of it. Finally, importing mesh and animation into UE4. I’m still learning but I do believe my brain grew a millimetre today. 🙂
The picture below must look strange to you: A poor sod being looked upon a group of billboard-carrying Wilber aficionados.
Like all tutorials gone wild, I had some fun improvising on the Blueprint tutorials from the Unreal Team. The example here is focused on mass-producing a series of attributes and behaviour into one object – a Blueprint – and then drop as many as I want into the scene.
So here we see the famous UE4 Blue Man in idle position. Around him is a capsule that prevents the player to go through him and an additional box that is used as a trigger when my player enters his “personal space”. Once in it, I can then use some key to trigger an interaction between me and the character.
The ‘Wilber’ (the GIMP’s mascot) on top of the head was a funny thing. It’s my first try in billboards and I’m currently using the one that’s built-in the characters blueprint. I originally wanted to write names and professions over each character’s head when I figured that dealing fonts and transparencies isn’t that easy. So I went with something simpler, like having this iconic mascot with transparent contours. I happy with the “always-facing” part but it needs to be less geographically located on the Z axis (or whatever axis that may be since UE4 uses Z for “up”).
I still have issues with it. Unreal fails to load a 32-bits PNG file with transparency into the asset editor directly. So I got the simple DirectX texture tool, loaded the PNG into it then saved it as a A8R8G8B8 format. When I load it, the texture is now considered as a DXT5 file but it still kept it’s alpha channel. I finally got transparency when I took the alpha channel and connected it to the opacity property with a translucent blend mode. I’m not sure if this is the best way but it will suffice for the moment.
Making a custom engine is cool but takes a lot of time. To my potential customer, I could only guarantee a full functioning engine (not a game) within a year or two, so I might as well look at what was available commercially.
Unity3D is always a favourite but don’t let the “free” aspect fool you. The licence explicitly forces to buy the pro version for $1,500 even if your creating a game for a NGO that has over $100K in operations. If you think $100K is a lot of money for an NGO think about a director, a secretary, a web site contractor and several other expenses including rent and you’ve capped your limit pretty quickly. And if you want to port to Android and iOS, that’s another $1,500. Each! And with version 5 coming up, all those who bought the previous licence will need to fork an additional $600 for the upgrade. The free version has limits so you can’t just try out the software, build a complete game and buy your way into the licensing once your game is finished. And it’s a per-user licence, so the more the merrier Unity3D company heads are to become.
On the other hand, Unreal 4 came out a few months back. For $20 a month, you get the full source code of the complete engine, not just some part of the SDK, downloadable directly from GitHub and you can contribute to the code yourself if you feel like it. The catch is a 5% payment on all your gross revenue from the game (the binaries, not the T-shirts or posters or guides you wish to produce). For a multi-million dollar game this adds up very quickly: 5% of 50M, is a hefty 2,5M, but even an indie game like Minecraft that’s allegedly pulled $330M in sales, an Unreal 4 version of this game that would be as successful would translate into $16,5M. I would definitely ask Tim Sweeny to at least lower my costs by giving me free access to the source code for my whole team if I were to be that successful. Huh, Tim ol’buddy, what do you say ? I could at least get a couple of thousands back …
Citing numbers like that is quite dizzying and doesn’t really account for the reality indie developers face. What’s the most they can hope for? 50K ? 100K ? That would translate to a total of $ 2,500 to $ 5,000 in engine costs, totally acceptable in my book. And since my NGO doesn’t expect anything from it except a good educational and promotional tool, the cost becomes almost non-existent.
The problem with Unreal 4 is that it’s still a work-in-progress, so there are a lot of promises for future support in Linux, Android, iOS, all of which are pretty sketchy. Let’s just hope that the current pricing isn’t a temporary one and that as soon as the engine matures, the price won’t skyrocket. Since Crytek just announced some undercutting price themselves, that would probably keep the pressure on from jacking up the price.
Of course big powerful engines have always generated a lot of buzz around their licensing prices and schemes. But gone are the days where a single source code with half-assed tools like id’s Quake / Radiant or Valve’s long dated Source / Hammer setup. Today’s engines are modern. And Unity3D, Unreal 4 and other Cryteks of this world are well positioned to win the hearts and minds of developers.
My heart is certainly going towards Unreal 4 though. The code is in C++ (I never had any interest in C#) so that caught my eye. But after playing with the Blueprint visual scripting language, I was sold. It’s so easy to prototype stuff with it, I can see an entire game built this way as a first stage. And if a bottleneck shows up, I could then dive into the C++ side of things without hesitation. A tutorial that shows how to do a complete 3rd person client-server program in about 6 hours will beat the pants off on any other Unity3D tutorials I saw recently. The in-editor playing – simulating – designing is powerful stuff.
So powerful that I wish to put all my attention into learning about it. All of it! Because quite simply put, you don’t need a programmer to program a game anymore. It’s scary. I’m sure there’s always a place for code and stuff, but in a development room where you have 5 programmers, I could easily see a CEO chop off a head or two and replace them with designers that will prototype your game just as fast and leave the hard stuff (platform testing, network bottlenecks, porting issues) to techies. It’s sad, it’s bewildering, it’s exciting all at the same time. But that’s life. Better make the most of it.
This is my blog. There are many like it, but this one is mine.