Posts

Showing posts from January, 2019

Decision

Prior to the previous blog post, I started researching and thinking of what to do. I now feel that making a dynamic water simulation is the best course as the main challenge seems to revolve around that. I am not dismissing the other ideas because Pivot Painter is really something I want to try and explore. However, to use Pivot Painter I first need to understand how to create a character using rigging and animation. Another reason is given by Mark Brown in one of his videos. This is that it might give me the opportunity to create something unique because I will be exploring and refining how a game character interacts with the world. Also I might come across new, complex challenges. One problem with this is that the process of making a character is not really pushing boundaries until i reach the actual animation and blueprinting stages. So I may need to approach this as a side project while putting my main focus on the dynamic water simulation.

Back to work

Image
It’s been a pretty busy Winter break especially with the fever i've had. I've been trying to push on with the work and decide what the next project should be about. Recap So far I have done: Created Pirate Cabin Scene - This was an experiment to see if my project idea is worthwhile. Customisable Block out material - Created a material aligned to the world (also known as Tri Planar mapping) and highly customizable, allowing changes to colour texture and other properties Rain and Snow Particles - Made particle systems including rain and snow in Niagara Particle System. Explosion Particle - Made by following Imbuefx tutorials and adapted to the Niagara particle system. Rain Material Function -  It was initially a material but decided to make it into a material function so it can be blended with another material for dynamic weather systems in games. Fluid simulation in bottles - I followed the concept from Simon Trumpler's Blog post and added my own changes. Nex

Fever 🤢🤮🤧🤒 and some interesting stuff about animation

Image
So I have a fever for a few weeks and now slowly recovering. I have been trying to push on with work but the doctor said I needed to rest. So I have been doing some light research on what to do next. I went particularly on Game Maker's Toolkit youtube channel by Mark Brown where he describes what makes a game so special and why. He analyses various games and makes recommendations for design ideas and improvements. It's not directly related to my research topic but it has very useful animation tips that could make things special. One particular video talks about developers including Shigeru Miyamoto, who spent months just focusing on the animation of Mario before he actually layed out the levels or the environment.  https://youtu.be/216_5nu4aVQ This actually made me think about the behind the scenes videos from Ori and the Blind Forest Definitive Edition. The developers also approached things in a similar way whereby they made 2D animations of a square box, representing Ori,

Fluid Simulation in Bottles

Image
This was a fairly old project but i migrated it into this project to implement new changes. I found a blog post by Simon Trumpler about Boomer bile/puke flask in Left 4 Dead 2 game:  https://simonschreibt.de/gat/left-4-dead-2-puke/  This used Rigging and animation to simulate fluid in bottls. He also explores how other artists have made fluid simulation in bottles, the one by Tyler was very interesting. I also found a twitter post by Joyce [MinionsArt] where someone used this same technique but added a Sine movement to it:  https://twitter.com/minionsart/status/986374665399685121  Even though it was designed for Unity Game Engine, it was really easy to understand the script when combined with Tyler's Fluid simulation. It did require experimenting with the Start Preview node in UE4. Fluid Simulation in a bottle UE4 This actually gave me the idea of adding UV distortion to the material to create my own version of  fluid simulation in a bottle. I world aligned the bubbles

Rain Material

Image
I was hoping this experiment would be a small project but it took a bit of time as I kept wanting to add extra functionality to it. The masking concept from tri-planar mapping/ WorldAlignmentTexture node gave me an idea. I decided to make dynamic rain material, whereby rain ripples appear at the top, raindrops slide down the sides and there is no rain at the bottom. Here is the material in action: Final Rain Material The ripples at the top is a flipbook, made by following Josh Trevisiol's Raindrop flipbook tutorial: https://www.youtube.com/watch?v=2dpFtqlWt1o   As for the rain texture, I painted 3 different variations of raindrop texture into a graypack. The first two are panning slowly and being distorted to give it the realistic motion effect of rain sliding. The 3rd texture is very subtly panned as well but is being masked by noise to make it fade in and out. Adding further variation, I then baked the normal map information in Knald using those 3 painted heightmaps.

World alignment (Tri-planar mapping)

Image
From reading the UE4 documentation, I found out that material functions are a bunch of nodes packed into one node. I figured out the Math behind how world alignment works by deconstructing and experimenting with the World Aligned Texture node. This node is one example of a material function. It is also widely known as Tri-planar mapping in substance painter. Material Function for Tri-planar mapping  This gave me the idea to make a block out material which can have grids, scale without texture stretching and change colours the way I want it to. I also wanted to add the functionality of animating the material. I did this by making some modifications to the World Aligned Texture material function. Modified Material function with comments to help understand which part is doing what. I found that substracting the WorldPosition from the Object Position will force the material to move along with the object and not have a weird scrolling effect whenever you move the object.

Mo' VFX

Image
I've never really made an effect using flipbooks so I thought I'd try learning the workflow used in the Games industry in creating a fluid simulation and make flipbooks out of it. I went  through the Imbuefx tutorial on Fluid Dynamics and Explosions in UDK:  https://www.youtube.com/watch?v=3kJr5wC_oyY&list=PLoAbgsIP97amgAQgdg2dwJLIE1FEVBg2H  I adapted the particle to Niagara. Final Explosion Particle made in Niagara  On another note, Maya's method of fluid simulation and rendering has been really frustrating. All I wanted to do was to just make a flipbook but the process was agonisingly slow. Anyway, I pushed on as I felt it was important to learn with it being a standard technique used in industry. Hopefully, I'll move onto something a lot more simpler and faster in the future like Embergen by JangaFX (currently under development.) Embergen might be a blessing for VFX artists around the world who just need to make flipbooks. 😊 https://jangafx.com/   M

Literature Review and Cool Resources

Image
So its been a pretty busy few weeks as I've been juggling between my literature review essay and my practical work. I found some really interesting reading from various online articles and books on materials. I thought I'd share them as they are definitely worth checking out. GDC talk describing how material techniques and the tools used to create them have evolved as each Uncharted game was developed:  https://www.gdcvault.com/play/1015655/The-Tricks-Up-Our-Sleeves Game Development and Simulation with Unreal Technology by Alireza Tavakkoli is an amazing book as it shows the ins and outs of Unreal Engine 4. It's actually really interesting when he talks about materials, especially when he describes texture coordinates. However, I'm not sure if Tri-planar mapping is a texture coordinate or not. Here is the newer edition coming out on 21st December:  https://www.amazon.co.uk/Development-Simulation-Unreal-Technology-Second/dp/1138092193/ref=dp_ob_title_bk  Masterin