Sunday, 20 March 2016

Creating the Material

This week I wanted to get started on the material/shader for this project to create the snow and water weather effects.
The plan is to use ShaderFX as mentioned before because the node based system seemed pretty easy to use and the previous experience from Unreal's Shaders should help me.

To get a better understanding of how ShaderFX works I decided to watch a few videos to get a brief overlook.




After I watched this I went about to think about making the shader.
As I had limited time to do this I planned on using some of my own textures and texture I found from elsewhere just because I don't have the time to make the textures all themselves.

This texture was created and found by the people at Game Textures which can be found and downloaded at https://share.allegorithmic.com/libraries/31


This snow texture was created by myself. 

As for the water, I was just going to have that as a simple vector color which would be black with a tint of blue and make sure my roughness was pretty high to get reflective water.

I began working on the shader and exposing parameters so in the future I could drive them in the code later on. 


ShaderFX only works with Viewport 2.0 and for some reason the rendering gave of an odd effect and the shader really needed some work as I wasn't getting the effect I wanted and I am not sure why it wasn't doing that because I've done shaders before and this is normally the way to do it. I also tried another way but I couldn't get the look I wanted. When you would rotate the camera you would the texture would just go....black.


I was also having issues on getting the snow to look the way I wanted. When the material transition to it being snowing, it would brighten up the texture giving it an ugly effect and it wouldn't cover the entire material.

I tried making 2 other shaders to see other ways of making it though I had the same problems.



I began thinking of other ways I could achieve this, first i was wondering if I could switch to Unity and try and create something in that engine and using C# and/or CG to create the shader to get it working.
I also looked at using the Substance Designer plug-in for the project with can run in Maya though I wasn't 100% sure how I could call the functions inside of Python.
After looking at some talks from GDC I think it somehow is possible but there isn't any documentation for it, I couldn't even find much in regards to making this effect in Unity, the only ones I found were in Unreal Engine.
Later this week my hard-drive choose to delete most of my university work. Lucky enough I manage to recover a lot of the modules and I manage to get the textures back however my scene for Scripting & dynamics was gone so I would have to re-create the material. 
It also didn't help that this week I was ill and didn't get as much done because of that.

The next week I'm going to try to either make a better shader using the ShaderFX or try using the Substance plug-in and to use the Substance Designer to make the material transition and expose paramaters that I could hopefully change via Python 

No comments:

Post a Comment