Hero’s Journey. Indev. 2

Two and a half months after the first /indev dedicated to Hero s Journey, I am back with important news. Hero’s Journey is under development! Already is not only an idea in my head, but a project that will be a real and full game. I have been approximately two and a half weeks working in the game, with numerous problems and difficulties due to my inexperience, but that does not make me despair, but encourage me to learn more and more. I have not really chosen the simplest project for begin more seriously in the creation of video games, Hero’s Journey is a game in 3D, open world and made with Unreal Engine 4.

People hear about Unreal Engine 4 and they think in a complicated program, the tool with that the ‘professional’ games are made, Unreal Engine does not seem so simple tool to use as Unity 3D for example. But the truth is that I carried a pleasant, but expected, surprise with Unreal, I had already worked with it before and I knew what’s the engine was capable to offer. It is not much less complicated program that is feared, indeed its visual and well-organized interface is very nice at the sight and easy to wear, in addition, the Blueprints visual programming tool design is wonderful, Blueprints is simple to use and much more accessible for those as I are not skilled in programming languages. In my opinion is Unreal the best program of creation of the new generation games. Thoroughly I have tested Unity and I can say that I feel more comfortable in Unreal and of course is undoubted the largest power of Unreal graphics and its excellent optimization.

Even so, there are things in Unreal engine 4 that I don’t liked so much, I have bothered especially with the “compiling shaders”, the automation of the program recalculates the shaders of the work too routinely, especially using landscape painting tool engine. Only by applying a new texture in one of the chunks that landscape is divided, it passes an alpha channel while the shaders are compiled, they are often between 100 and 200 shaders by chunk. The most usual is to paint in more of one chunk, so that is not rare to compile between 1000 and 2000 shaders, it may take you 15-20 minutes, during which consume many PC resources, mainly RAM, in my PC 8 GB becomes 100%. One by one, the chunks leave the alpha channel, but it is wait too long for so apparently simple process. Sometimes back to compile shaders when we use the same texture already present! It is absurd and I hope Epic developers improve this theme in new versions.

Hero's Journey indev 2 compiling shaders unreal 4
If you make a game in Unreal Engine 4 you will see a lot of times “compiling shaders”

In end, in these aproximately two weeks and half of work, I had  time of make many things, although sometimes feel that I’m going too slow. But it is normal, since I’m introducing me by the first time in depth to several programs and there are things that I still don’t know and I am learning little by little, so I’m seeing dozens of tutorials. Not only I have used Unreal, but also Blender, Krita, Gimp, Fuse and Mixamo, in addition to other programs that I have applied little or nothing to the game such as Pixexix or Sculptris, but that I have dedicated quite a long time also.

Until I automate a process of development, and I find with the best methodology possible, I testing different methods, discarding some and choosing the best possible. This obviously slows down much the process at the beggining but improves the final result and finally also reduces costs of time with the assimilation of the best method of work. But to automate, you must first take experience, learn and acquire the necessary knowledge. At the time of create a videogame, I feel much my preferences more by the field of the art and the design than by the side of the programming, already I try to limit at the minimum possible the coding, including the Blueprints, and I try to take advantage the numerous tools and tutorials that there is and facilitate much this work.

Let’s start with the process that I followed until now to develop Hero’s Journey. The inspiration for the game were the Faroe Islands, so I began to create the game moving to Unreal Engine one of the Islands, specifically the Vágar Island, in wich is the spectacular Lake Sørvágsvatn, a lake that is located just a few yards from a huge cliff. This job was much more complex that I expected it, although in principle it is not exesively complicated, because you can export to real location to the tool landscape of Unreal using at heighmap. The problem comes when we try to get to a good heighmap and when it is exported, that the 3D model posses a considerable amount of polygons to work without problems. In principle there only exists a decent tool to get a good heighmap, it’s the http://terrain.party/ website, to website initially intended to create maps for Cities Skylines that can be used to create heighmaps of any place on Earth. The problem is that importing the images of terrain.party to Unreal the result not had the desired quality, the map was too confused and without sense. The reason is that heighmaps must have a smooth transition from the tones of white to black colors, Without pixelation and without hard edges, this type of maps requires more diffuse appearance than high resolution. Therefore, I got solve the problem applying a glow filter through Gimp to the image named “combined” of the terrain.party file, is it the more defined image of all, I add also a grade of transparency low, to the 90% approximately, with the image “Plus” of the terrain.party file, the more diffuse image of all, lower of in a layer, that improves more if fits the transition of colors of the image. The result was unbeatable.

comparison heighmap terrain.party Hero's Journey
Detail of the heighmap extracted of Terrain.party (left) and the final version with glow (Right)

The next problem came to the trying to model the terrain, since the number of polygons was insufficient and if I tried to increase it too within Unreal, the engine crashed. The first solution that I thought was create the map in an external program which allowed higher resolution of polygons, such as Blender, but the landscape files of Unreal are not typical 3D models and therefore landscape tool cannot be applied to an external 3D model, the remedy was worse than the disease. After various tests, I opted to divide the map into 4 parts, by dividing the terrain I can apply the same resolution to each of the four parts that to the original full map. Despite this, the number of polygons still was not enough for what I wanted to do, so in the end I will change what I had in mind in the design and I would add numerous 3D details, such as rocks or cliffs details, created using blender and exported to Unreal. Because of this limitation of polygons, will be more important the drawing against the 3D volume.

Hero's Journey gif week 1
Game state in the first week of development

Indeed, the drawing is one of elements that more goes to characterize to the artistic design of Hero’s Journey, each texture of the game will be draw at hand, either through Unreal for the general landscape, Blender for 3D models and Krita for other textures, as the grass or the clouds. I want that the style have a significant artistic value, visual, spot color and certain ‘low poly’ aesthetics. I want to control perfectly every detail of the drawing, something that complicated the work, because each texture is a great effort, but I think that it will improve the end result. The truth is that I am pretty happy with the result achieved so far and although I use three tools to draw, the set has enough visual unity.

Hero's Journey gif week 2.5
Actual state of the game, with a more stylized art style

Without a doubt, one of the major efforts that will require Hero’s Journey will be the sea and water in general, despite the work done until now, I am still very far of end it. With the creation of the sea and the water I’m feeling much more my shortcomings and my inexperience, since whatever is bringing me much time and many different tests. Luckily there is a free and open project created by the Unreal community called Ocean’s project, the project includes a sea with physics, buoyancy and waves, as well as many more components accessories such as floating objects and a tool of climatology. After a lot of work, I have made an appearance quite decent in the sea, very custom and with a mesh of post-processing underwater that gives an incredible when we inmerse ourselves. I still not have gotten create the water physics, what undoubtedly apply me goes to give numerous headaches.

But the far more time I have dedicated, is to the creation of the main character, indeed I have not yet completed in the absence of some tweaks. The first design of the protagonist girl, that appears in the first teaser of the game, was created with the editor of characters Fuse and animated by its online brother program Mixamo. I have no doubt that Mixamo and Fuse are two incredible programs, that give us many facilities at the time of create and animate a character, the amount of animations present in Mixamo is immense and has saved me of a great number of hours of work, although obviously I have to create some extra custom animations that are not in Mixamo. The main problem with the character came trying to make a redesign, to make it a little more original. Although I got an appearance close to the concept of art using only Fuse, I wanted to give It a touch of originality modifying both the textures and modeled. The great amount of problems to which I faced and of them still remaining embers, have been innumerable. To a large extent have been problems caused by Fuse modeling and by errors and problems of Blender, but also caused by my lack of experience in Blender.

Hero's journey main character design evolution
Evolution of the main character

Blender is without doubts one of the best free programs that exist, by number of options and power is capable of compete with programs that cost hundreds of Euros as 3D Studio or Zbrush, but Blender is also one of the programs less intuitives and with more bugs and strange problems that I have used. The main problem to which I faced was caused by the Fuse 3D model, with several layers of polygons too stuck between them, by trying to modelate the mesh of Fuse was created glitches and visual errors that have forced me in several occasions to modify or eliminate completely some pieces of the 3D model. I am not going to make a list of all the problems that I had with the creation of the main character, but have been many and very different. Still are two small problems without solve, one is with strange transparencies, both in the glove left as in the boot left, of them I know its origin, I think, but not there is a simple solution that I know. On the other hand I am having trouble applying tissue using nvidia Apex physical clothes, I think I have the solution to this problem but I have not yet applied.

 

Hero’s Journey: She
by alverspin
on Sketchfab

In addition to all these things, I have been also working in artistic elements of the landscape, as the basic stage drawn, environmental post-processing effects, redesign of the sky, with new clouds that are best suited to the visual style of the game as well as grass, a textured hand drawn and which gives all looking really nice.

Inspirations Hero's Journey
Folders with tons of images for inspire me

In recent days I have stood a little more due to personal problems, but I have not been completely calm, since that I used the pause to rethink some things. Although I had in my mind quite clear the artistic appearance and the general idea of gameplay and story, the truth is that there were some elements too diffuse and that needed to defined to improve the methodology of work. Now I can say that I already have pretty clear the basic story, there is still not a developed script, but the argument is already pretty clear in my head from start to finish. Also I have exploited to organize a little that I have made until now, sorting it in folders and create a copy of security in the cloud, passing it of Google Drive to Mega by problems of space, due to that the currently full project occupies 12 gigabytes. Also I have created a chart of work in Trello, distributing the effort in small tasks, organizing them in those that I have pending to do, those that I am doing, which are finished and which not can do until not complete another associated task. Finally, I have been doing a depth search of various images that can serve me as inspiration for the story and game art.

Trello Hero's Journey
Organization chart of work in Trello

Is still a lot of work ahead, but Hero’s Journey is now a reality and I hope that this will be unstoppable, this is not only the first serious game that I hope to finish with success, but also a challenge for me, the challenge that I am able to do to a game, I can fulfill my dreams and overcome all the problems that will arise throughout the process. See you in new /indevs, I hope that I will back with good news.