Website powered by

Fluid Simulation Broken 😞

General / 18 August 2019
Bad news, since the water system has been changed significantly the Fluid Simulation feature has broken. The material/blueprint connections have somewhat been affected. It will require more time to fix and with the amount of time I have left for the project, I'm afraid I will have to leave this feature out of the waters system. Who knows, if I get a bit of time I might be able to add it later on but for now it will be removed from the water system.

Dungeon Entrance Blockout

General / 16 August 2019
I've made a block out model of the Dungeon entrance in Blender. I'm a little confused whether to cut this into modular pieces or if I should make it as one big piece. If I model as one piece there will be issues with texel density but modular pieces will produce weird results when trying to put things together.
Dungeon Entrance Blockout Whichever way I choose, I still have to sculpt, bake and texture the asset.


Rocks

General / 11 August 2019
I have finished making 6 Rocks:

It might not look much but there is a lot going on in the material.
I still wasn't satisfied with the rock's plain base colour information so I overlayed a Noise in substance painter.

Moss

When I looked at the actual concept art, I forgot to add in some moss variations. So I added Moss variations in substance painter. Since Metallic Map wasn't being utilized I used the moss as a mask and controlled that through the material. I went a bit further and added the option to paint over or remove the Moss pattern with vertex painting. I could add moss based on the vertex Normals where all faces pointing up will be covered with moss but I wanted to use vertex painting to add an extra level of control and produce more or less the same result.

Mossy Rock in the metallic map. It can also be Vertex Painted on top. Moss has Fuzzy Shading (Will talk more about it in Normal based Sand/Moss)  Then, I thought about adding more functionality to the material to break the repetitiveness as much as possible by having glowing cracks to make it mysterious and including terrain blending techniques.

Glowing Cracks

I painted the glowing cracks in substance painter and put that into the roughness map. However, It also required changing the Normal map information so it further required reimporting into UE4 as another variation.
Glowing Cracks Variation with Alpha Erosion. Normal method (Multiplying with Noise) would have produced a harsh result I initially multiplied the glowing cracks with a clouds texture similar to the one used in the Substance Atlantis Project but I wasn't satisfied with the result. I then remembered an old technique called alpha erosions and it produced a much, much better result. Bill Kladis's (ImbueFX) tutorial on alpha erosions is a very good example: https://www.youtube.com/watch?v=724ZMiQx200

Terrain Blending 

Since Distance field is a gradient and not exclusively used for water, which is the way I have used it, it can be utilized in very different ways such as terrain blending. Long before I learned about Distance fields, terrain blending first popped up as an awesome tool by Olmo Potums. He mentioned he was going to share his tool on Gumroad, but sadly, I haven't heard from him since then. Luckily, there are tutorials on Youtube available. Here is the one I learned from, which is by Elliot: https://www.youtube.com/watch?v=kc76I0iSUck


Normal based Sand/Moss 

Initially, I was going to use Vertex Normal to make moss/sand appear on faces pointing up but I wanted to see if there was a better method to this. One great example was Normal map blending by Mind Games Interactive: https://www.youtube.com/watch?v=HDluA1f5gzw
It makes moss/sand appear on certain areas based on the normal information making it appear on faces facing up in World space Z direction. It makes it look a lot more natural than the vertex normal technique I was going to use. The video also introduced Fuzzy Shading which is adding Subsurface information to moss (looks a bit like fresnel to me). It gives nice information so I decided to add fresnel to it since the moss doesn't have any Normal map to fully utilise  Fuzzy Shading.


Normal Blending for Moss Normal blending for Sand
With all these changes being modular I can use the rocks in multiple combinations and variations making the rocks look different. I may have gone a little overboard with the amount of time I spent on creating the asset but in the long run, hopefully, it will save me time as I intend to use more or less the same techniques on the actual Dungeon Entrance.




Git

General / 07 August 2019
In a humble bundle game development bundle I purchased, I found one tutorial on learning how to use Git Version control from Udemy (Git Smart: Learn Git The Fun Way With Unity ). I have heard about version control like Perforce a few times in the past and it was recommended that I learn how to use it. I thought I'd see what its all about and try it out since it is a short course.

I have put the project into Git version control so I do not have to create manual backups for each iteration like I have been doing in the past. It also saves space on the hard drive. It can also 'respawn' your project if you accidentally delete it as if nothing happened to it. It feels easy like saving a game except you are doing the same with a project.

However, the main reason I am using it is that I can revert back to a change I made earlier. This gives me the freedo to experiment and not have to worry about messing up the project. This makes version control very useful and important for a project.

I am also using Gitkraken as the main GUI for Git. Gitkraken has a Glo board to help keep track of what I need to make for the project.

Gitkraken GUI for Git - From what I understand Git is usually hidden under the hood so you need a GUI/Client to visualise and manage Git. It can be done in command prompt but its easier with a GUI. Gitkraken Glo Board - Kanban board to help keep track of my project.

Blender 2.8 afterthoughts

General / 04 August 2019
So I've been learning about Blender in the past week using tutorials from Blender themselves, Dallas Doan Maya to Blender tutorials (https://www.youtube.com/playlist?list=PL5gK0C5TrIwdLSZHPnr9Up6LjhbIiFTJv) and skimming through  one of  the Udemy tutorials (Blender 2.8 for beginners - Sword creation): https://www.udemy.com/blender-28-for-beginners-sword-creation/

There are a few things that are annoying about Blender and that is the UV Editor and 3D Cursor. The 3D Cursor comes in the way when modelling and the UV editor lacks in certain features like visualizing flipped faces. Although there is a workaround with an addon called Magic UV but it's not a great solution since I have to manually keep clicking on a button to update the colours of the flipped UVs,  Maya wins in this area.  As for the 3D Cursor, I was able to make an addon in my spare time as previously mentioned in an earlier post.

Also, Ubisoft, a Triple A studio, have announced that they have switched to  Blender: https://news.ubisoft.com/en-us/article/353364/ubisoft-joins-blender-development-fund-to-support-open-source-animation. Plus, Epic games have also made a Mega grant donation to Blender. As it seems to be growing rapidly, who knows Blender might become the industry standard.
Blender Development fund page: https://fund.blender.org  Anyway, I'm now using Blender 2.8 as part of my main workflow for the Project. I'll still use Maya here and there for certain tasks I do not know about like cleaning up non-manifold geometry.

3D Cursor Auto-Visibility Addon for Blender

General / 28 July 2019
I still wasn't too fond of the 3D Cursor so I went to BlenderArtists.org. I was able to create this Addon in collaboration with a Python user, Iceythe, in the past 3 weeks in my free time. The addon reveals the 3D Cursor when you press the shortcut and then automatically hides the 3D Cursor when you use a different tool.  It was a good opportunity to do some python scripting since it's an important skill for a technical artist to have.

However, Iceythe was able to enhance the script even further by adding a mini UI within the Addon in V2.0 (hopefully the last version) to change the keyboard shortcut easily. The old version V1.8 required manually calling one of the operator/functions in the keymap and changing the shortcut manually in the script for the other operator which is a bit unintuitive.

Anyway, I have managed to put this onto Github along with a wiki/instructions as someone on the Blender.community forums suggested: https://github.com/IbyA/3D-Cursor-Auto-Visibility


Ray-Marching

General / 25 July 2019
The Fluid Simulation I made earlier using render targets broke as I made a lot of changes to the water system since I first made the render target. However, before I attempt to fix this I thought it might be a good idea to try and integrate another type of fluid simulation I saw on Twitter by Campo Santo's Matt Wilde.


New on the blog: Matt Wilde (@skilful) dives deep into a scene cut from the announcement trailer. https://t.co/nPW71WjhC0 pic.twitter.com/Hlc8OZHrLf
— Campo Santo (@camposanto) March 16, 2018




I was a little confused by what Signed Distance Field is and if it was related to the normal distance field I see in UE4. However, James Burton (White Paper Games) informed me that signed distance field are usually used in Ray Marching. He advised me to watch some Youtube videos on the subject.. He also mentioned that this was getting into Graphics programming territory. As much as I'd like to learn how this is made, I might have to leave this alone and attempt to fix the render target fluid simulation I'm trying to create.


I thought you might like this funny video of Pythagoras using Laptop as seen in Sebastian Lague's video on Ray Marching. The sound effect in his video makes it even funnier: https://youtu.be/Cp5WWtMoeKg?t=16

Distance Field Flow Maps

General / 16 July 2019
I managed to integrate distance field flow maps into the waterfall using the basic concept from this Unreal Engine Forum Post: https://forums.unrealengine.com/development-discussion/rendering/47456-distance-field-flow-map

I then combined this with the techniques I learned from the free assets on the Unreal Engine Marketplace called River Water Tool with Flow Buoyancy by James Stone: https://www.unrealengine.com/marketplace/en-US/slug/river-water-tool-with-flow-buoyancy

I was also studying up Ryan Bruck's GDC presentation on distance fields and compared with his approach: https://www.gdcvault.com/play/1026262/Technical-Artist-Bootcamp-Distance-Fields

One thing that piqued my interest in Ryan's work is how he included a regular normal map of the small stones which controls the flow of the water. The stones are just part of the landscape material using height data. It's a pretty nifty trick.
Changing the flow of water through the use of the regular normal map in Fortnite. Although this a pretty cool trick, I won't be including this for my water system. I intend to make my water for general purpose use and not for a specific use such as flowing around stones.

I also followed some of the concepts from this tutorial on 80.lv too: https://80.lv/articles/how-to-make-dynamic-flowing-water-in-ue4/

After studying all of these techniques above, I did a bit of experimenting in the material and this is what I was able to make:


Waterfall with Distance Field Flow. Notice how the water appears to flow around the sphere.
It's now onto working on creating vertex paintable flow maps, the final feature I want to try adding into the water system.

Establishing Workflow for the Environment

General / 07 July 2019
I've been doing some research and looking into how I'm going to create the environment. I needed to establish a workflow for stylized projects so I've been working on creating the first model:



First meshes tend to take a while to make because I'm trying to get to grips with establishing the art style, the modeling, texturing and rendering techniques and the workflow process. Hopefully, now I can speed up a bit in creating some of the assets.

Blender 2.8

General / 02 July 2019

Blender 2.8 UI - Very easy to read and when you hover your mouse over something, you get a tooltip explaining what that thing does. This might seem like a review but I wanted to share my views on Blender. Last year, Blender 2.8 was released and I have been watching its development every now and then to see how it compares to other 3D Modelling software. It's been popping up here and there on 80.lv and I found that there is a pivot painter addon for Blender. So I thought I'd finally try out Blender 2.8, after using it occasionally in my spare time. The software is INCREDIBLE! I more or less understood how the software worked. Everything was explained in the UI. I set the keyboard shortcuts to Industry compatible (a bit like Maya's navigation).


3D Cursor in Blender  -
Always there in the way
One thing that did bother me is the 3D Cursor. It feels really odd and always in the way. Does it really need to be there all the time? There is an option to hide it but I wish it would hide away automatically whenever I use a different tool rather than manually hiding it in the viewport overlay.





Option to Hide 3D Cursor Blender isn't the industry standard but I noticed that some industry artists are integrating Blender into their workflow so its growing and I hope it becomes an industry standard some day. I remember an 80.lv Article that a Ubisoft FX Artist, Francisco Garcia-Obledo, was integrating Blender's fluid simulation into his VFX for Assassin's Creed 3 Remastered. https://80.lv/articles/001agt-behind-the-scenes-blood-in-assassins-creed/ From the videos I've seen, Blender's Eevee (no I don't mean the pokemon) renderer is real-time and fast. I mean just look at this video, it makes you want to cry: https://youtu.be/2hGSDD9-Tkc. I remember the horrors of using Maya's Fluid Simulation last year and rendering it out was a pain😭: https://iby-z.blogspot.com/2019/01/mo-vfx.html It's also got an active and friendly community over at Blenderartists.org and Blender.community which compared to Autodesk forums are a lot faster. I tend to get replies 6 months later with Autodesk forums.

There are a ton of cool features and some of the really cool ones are explained here: https://youtu.be/yyCepAM7Ftc 

Overall, I'm seriously considering moving over to Blender. It's free and it's like an all-in-one 3D modelling package that has everything you would need as a 3D Artist. It's even got sculpting mode a bit like Zbrush! It's like the UE4 of 3D modelling software packages. However, for the current project, I plan on slowly transitioning and learning to use Blender in my free time but for now I'm sticking to Maya. Although I do know how to use the basic areas of Blender, there are some features I still haven't fully figured out like how to smooth a mesh for a high poly workflow. Another reason is that  I don't want to use up time learning Blender especially with the amount of time I have left to spend on this project.