Saturday, November 16, 2013
Wednesday, November 6, 2013
Maya Fluids Training Part I
Flamethrower
More Maya Fluids
I decided to focus some more on Maya Fluids for VFX texture generation so I picked up a tutorial from Gnomon Workshop by Wayne Hollingsworth. These tutorials can sometimes be hit or miss but this one is fantastic.What I learned
I've used textures in fluids and just kinda went "yeah that looks right." However, this time I animated the texture so that it doesn't sit still throughout the ordeal but changes over time breaking up one of the typical VFX killers, noticeable repetition.Another neat trick I learned is how to break up the Maya Fluids initial emission mushroom by simply animating the emitter's turbulence to be very high at the start and tone it down after a few frames.
Tuesday, October 29, 2013
Faking Refraction
Droplet Distortion in Unity for iPad
The start of the video rendered a little screwy
Goal
My team needed an indication for when the player's boat was hit. I offered to make it look like water droplets were flowing across the screen with the typical red edges you see in a lot of games these days. I opted to go for a lean post process effect (14 pixel shader instructions).
Development
UDK Shader Tree Prototype |
Things to keep in mind
- Water refracts
- Refraction can lead to magnification
But how about Fresnel? The Fresnel was literally made for this sorta thing but we are in tangent space with technically no camera. Solution? Use the blue channel of the normal map. We want to clearly see through the front parts of the droplets but get more distortion along the edges. I invert the blue channel so that flat portions are now 0 and multiply it by the RG channel. Doing this wont distort UV's that are not part of a droplet since we are multiplying by zero. As a side note this is the same as having a camera placed at (0,0,1) and using a Fresnel since the RG channels would wind up being zero when dotted.
Lastly, I have a scalar multiplication at the end to control the whole thing. Oh and you may be wondering why I have that green channel being piped and multiplied in as well. Honestly, that was just intuition and messing around. I ended up liking the result a lot better. This whole thing ends up being added to the texture coordinates of an image as distortion.
Faking Refraction in UDK
Improvements and Polish
The water droplets are pretty stagnate and becomes more evident once they start popping out more. One way to fix this would be to flip book through a set of droplet normal maps to make it look more like the water droplets are changing shape. This would effectively also add trails to the droplets.A small splash particle effect on the screen could also help the player notice he's being splashed on the initial strike.
Lastly, droplets tend to have some shadowing and lighting. Using a gradient map of some sort could help sell this effect.
UV Flows on iPad
I rendered the video on my pc and the water droplets tend to flow in the wrong V direction. However, they flow in the right direction on iPad. I guess it's just a strange quirk.
Friday, October 25, 2013
Fire!!
Fire - No Flip books here.
Wednesday, October 16, 2013
Flamin' Volcano
Volcano
Active volcano by the sunset
Smoke Puffs
The smoke puffs are a bit over saturated in the video. H.264 seems to like to do that. Anyways, I started this by using a tutorial found on ImbueFX to learn about having lit particles. You can see me changing the directional light's angle and having it effect the smoke in the video.A normal map was created procedurally in the shader. The Light Vector was then used to light the particle using the created normals. It's essentially using Lambert lighting and suffers from all the problems that come with it but it's fast and good enough for smoke with no sub surface scattering or inner shadowing.
Another issue that the particle system is that it appears that all the particles must be lit (by the same light) before the particles are actually lit. I think this has to do with UDK's implementation of the Light Vector. I originally tried to only light the bottom part of the smoke stack with this orrangy spotlight but it just wouldn't take. However, you are able to light your particles using more than one light as I did in the video.
Rolling Fire
I reused the explosion material from an earlier post in order to create this fire. Since that shader was so customizable I was able to change a few parameters to get the right look of the fire. The particle animation however did take me some time. I wanted to make sure the particles blended well into the smoke puffs. By carefully changing the temperature and alpha curves and tweaking some color values I was able to do so.Tuesday, October 1, 2013
Confessions of a Non-Art Major
Reading Reading Reading...
I don't come from an art background and knowing that manipulating color can make or break VFX I've been reading Color. The first chapter goes over ways of categorizing and organizing colors but the most interesting and commonly used one today that I've seen is Hue, Saturation, and Value.HSV Color Wheel |
Hue, Saturation, and Value
Most modern color pickers use something like the two images below to show HSV.A Slice of the above pie |
Another common interpretation but this one is actually for something called HLS. Very similar. |
Weird Cone Shape |
So how is this useful?
Value can play a major role in how your effects are lit. If you have similar values (no matter the hues) you may end up getting very evenly lit looking pieces. If you stick to using smooth gradients in value you may instead get effects that appear to be lit from specific areas.Of course looking at the color wheel can help you tell which colors match well (the opposite ones). This can also be called contrasting hues. These naturally help each other stand out more.
Monday, September 23, 2013
BOOM!
UDK Explosion
Explosion! Bandicam likes to saturate colors
Textures - More
The textures I used could be seen in my previous post as well as more information on their creation. I used the red channel to save the temperature information, green for density, blue for the unmated alpha's, and the alpha channel for a dark to light radial filled "heat".Heat |
Combined Texture (P-Mask) - What a mess |
Shader
The shader was pretty large with around 50 instructions being done in the pixel shader but could be broken down into four portions Temperature, Density, Heat, and Opacity. Each portion primarily uses the channel in the texture provided for it with the opacity also taking advantage of the density channel. Macro-UVs were also used in the density and temperature in order to give off a little bit of that varying detail you can see when the explosion is slowed down.Particle Animation
The explosion animation has five parts. Three are explosions happening in different directions with slightly different colors to give a little bit of variation and growth. I used a Dynamic Parameter with a uniform value in each of the explosion portions to give the shader even more variations in temperature, density, etc.It also includes little flying chunks given an initial velocity and a negative velocity over time. The same method was used on the sparks however the sparks grow in the direction of their velocity. Also the sparks use a dynamically generated texture created in its own shader.
Thursday, September 19, 2013
Starting An Explosion
Maya Fluids Texture Generation
I've begun to use Maya Fluids to generate textures for an explosion. A volume axis field helped spread the fluid out in a spherical way, however, it was the temperature and turbulence that really made the explosion fluid explode. It's also a good idea to remember to set the temperature buoyancy to zero or else your explosion will gravitate upwards.I used after effects to control the growth and position of the explosion in order to make it look as if the explosion doesn't grow it all. This way I get to control the rate of it's growth in cascade (as individual particles) rather than have a texture with mostly unused space.
The explosion's density and temperature were rendered separately and can be seen below.
Temperature |
Density |
Tuesday, September 17, 2013
Burn The House Down - More Maya Fluids Practice
I made a burning house.
I made a house with different fire effects utilizing different techniques (with the help of digital tutors). There are a total of five fluid containers in this scene. This time the fires are temperature and fuel driven. I didn't make a video since rendering all this would have taken at least 15 hours on my current PC. Again, the goal wasn't to make a complete scene but to better understand Maya Dynamics so the fire colors don't match and the lighting is off.The Burning House |
The Front Door
The fire created for the front door is standard incandescence with a modified opacity graph. There is a rectangular emitter underneath the door. I only now realize it should have pushed further to theto the right along the x-axis.Front Door Fire |
The Overhang Fire
This piece is was done in a similar fashion to the front door fire however isn't as turbulent or hot. The piece of wood was also used as an emitter. A final volume axis field makes it appear as if it were being pushed around.Porch Overhang Fire Close Up |
Falling Fire Debris
I learned how to use Maya Particles as a fluid emitter here. The opacity graph really mattered here. Since I wanted the fluid to have more of a trail like effect more tinkering with the incandescence bias and opacity was required. Although I wasn't to happy with the end result. They look too globular and am not too sure how to fix that yet.Fire Debris Falling |
Window Smoke
Density driven smoke. It also oscillates emission strength to give it that nice puffy feeling that smoke has. A directed volume axis field also made it puff away from the building without having to add a collider to the building wall.Window Smoke |
Thursday, September 12, 2013
Fluid Effects - Fire and Smoke with Particle Sparks
Fluids!
I made some fire and smoke using a digital tutors tutorial. A 2D fluid container was used for both. Overall I learned a lot and am happy with the results. I didn't pay much attention to the render details since my goal was to just learn about fluids. The tutorial also covered Maya Particles. So I learned how to make some sparks as well. The background was provided by the tutorial.Fire
The fire is density driven. Density driven fire means that I'm not actually using the fluid fuel to generate Maya fire (and incandescence). Instead I'm using the shader attributes to modify the fluid color based on the density of the fluid. Combined with the opacity graph you could make very convincing fire. Finally uniform field can really make the fire look as if it's being blown violently by the wind.Smoke
The smoke is done in a similar manner but the density gradient force is positive instead of negative. Fire naturally appears to repel itself but smoke kinda clumps together. So it makes sense for the gradient force for smoke to be positive. Also turbulence and turbulence details go a long way.Tuesday, August 27, 2013
Subscribe to:
Posts (Atom)