Monday, December 22, 2014

PHI - DEVLOG 4

BASIC WORK DONE ON THE SEWER/RESERVOIR MAZE


Yep, still following the same plan: Laying out the basic level for the prototype. Since the last devlog I have been working intensively on just one section of the game (well, the preproduction prototype level). The area is sort of a small reservoir or a sewer if you will. For the actual game this will not be only a small area but rather a whole section with lots of rooms and a lot of tricky puzzles. I was not surprised that it took a bit longer to do this area because this time I had pretty high goals as well as a lot of new stuff to get into. In the end it was absolutely worth the effort, judging not only from what I've learned.


 

NEW GEOMETRY AND GROUPING


Since water is supposed to flow in this reservoir and the structure also should resemble a maze, I had to make a whole new set of models for it. All in all I have done more than 20 new assets together with necessary mapping of the UVs. Most importantly: the pieces are connectable in multiple ways and really allowed me to make this area how I wanted it to.

One very important and utterly timesaving thing I have learned while doing this is to do group exports/imports for Unity3D; So far I've been working a lot with the UDK and from a building perspective Unreal was always quite nice giving you assets like walls (essentially cubes) and allowing to put different textures on every side of them. Well, maybe I am just superbly stupid, but one thing I missed in Unity, ever since I started to use it quite a while ago, is that this apparently is not possible there. To me it seems as if Unity is mostly just assuming you have all your assets from another source because building even the simplest structures in Unity can either be extremely painful or even impossible. Also - although the option exists - it is not possible to offset textures for individual - or even general - pieces of geometry. This function exists but I really think that this function is buggy - at least for the Unity version I am running.

Anyway, I found a very neat - and probably even logical - way to avoid all this and not having to import for example six individual sides of a cube and then group them in Unity but to simply export groups of meshes. That way Unity will also just import one single object as group (one big cube with 6 sides), let you place, scale etc. one single object as a group BUT also give you access to separated pieces of geometry and for example let you assign different materials to different "child" pieces (the sides of the cube)! - The scales fell from my eyes...


THE MAGIC OF DECALS


This time I really wanted to go a bit more into the optics, mainly just to try out if decals, in the way I plan on massively using them for the real game, will do the trick. - Luckily, they passed! Although not really representative for the final game, I am highly pleased with the results so far. All the moss in this area are different types of decals... they really give it a bit of the je ne sais quoi, right?

If I now already had the shaders I wanted and some real and working depth sorting, instead of the "built-in" one, I could really go crazy with that.

Unfortunately for now, transparent plus normal remains an issue, especially when there is a render task of for example: geometry - transparent texture - transparent particles - transparent texture and five different shaders are involved.


WE ALL NEED WATER, RIGHT?


Since this area is kind of a sewer, water was quite essential to it. So I've been playing a lot with the free and the pro version of Unity's built-in water systems. Although they both seem quite nice neither produced a result I could live with in terms of visual as well as performance. - Unfortunately both seemed to made just for one purpose or rather scenario: Outside, for either terrain based lakes, rivers or a vast sea, for ship games and so on. I see a lot of potential in the pro water, but unfortunately I can't tell too much about its settings and options since most of them - naturally - are not available in the basic version of Unity. - If you're wondering, yes, you can use the pro water also in the basic version, BUT you can't change or edit 80% of its properties. Unfortunately I am yet again left with the impression that nobody produces or thinks about games that play INSIDE anymore. Today it's obviously all about the usual open-world, quest-driven, boring, outside games...


ADVANCED SWITCH PUZZLE


Of course this area was also to include a more demanding puzzle, since - naturally - the preproduction prototype has to get more difficult with time as well. - Again, thanks to the new assets I could really play around and create a small maze with the goal to find and activate three switches (this time in form of stone platforms to be stepped on), which will also activate or redirect the water flow, before the player can activate the final switch and by doing so open the door to leave the area. - Let me tell you; I'm having a blast running through this area pressing switches already!


MOBILITY UPGRADES... AGAIN!


Not only the area itself demanded it, but since it is also in the plan for the final game, the famous black stickman got upgraded again and is now starting to become a real adventurer:


1. Sliding down side walls...

so that he won't get hurt from falling and - primarily - to look damn good while doing it. - No, seriously, a game like that would never work without sliding the walls.
While for now this ability is just unlocked by entering this section, but in the final game, Daniel will get this ability by finding Imhotep's Sandals, one of the many relics that can be found in the game.


2. Walljumping up side walls...

to traverse up, when there's no rope or a ladder near. - Another typical mechanic for platformers and always one I enjoyed a lot. Now approaching this topic from a programming/how does it really work - point of view, I have to admit it wasn't that easy to implement. In all honesty, my solution is not working quite like the walljumps I can remember, but... first of all it's OK for now and secondly - since I had to deal with several limitations - I still think that I made it work well and probably even intuitively for the next-gen folks playing more Assassins Creed than old-fashioned Super Metroid. For now walljumping works by holding the A-(jump)-Button and when touching a wall, pushing the left stick (movement) towards the opposite wall within a reaction time limit. I don't know... what do you think? To me it feels a bit strange not to press A every time when you want to jump off the wall too, but somehow it is also quite nice, working good and after traversing one wall segment it becomes second nature. - I guess I will have to wait on real feedback for that.


IN CONCLUSION:


In the past few days, when I had the time to work on the game, I spent it on making several new assets for the basic level foundation and learned a lot by doing that. I completed a whole new section, and this time put a bit more effort on the visuals, which not only proved to myself that my decal plans are quite fruitful but also caused massive experimentation with water and water effects in Unity, leading to some great understanding, knowledge and decent enough results.

Furthermore I made like a handful of new scripts including mobility upgrades, that start to give the real feeling of adventures exploration, as well as multiple switch/event triggers and so on... ah... and also small things - have you noticed the water splashes while the character is walking in the water? Not that hard to do but yeah... it's there now!

All in all I am really happy and I feel like a lot has been progressing again. This will not be the last time I will be writing before - or rather during - the upcoming Christmas time, but it is definitely the last devlog for this year. Of course I will work on the game also during the holidays and I will most certainly put up some posts for other topics, but please expect the next devlog just around Mid-January.

So from a development perspective, let me already wish you Merry Christmas and a Happy New Year!

- Please enjoy the new video:




Play more! Slide more!

No comments:

Post a Comment