Hurricane/tornado

Started by Alfamike, January 21, 2008, 09:56:38 PM

Previous topic - Next topic

nvseal

Quote from: Mr_Lamppost on January 27, 2008, 07:56:44 AM
Here is the first test rendered with any real quality of my procedural hurricane set up. There is some work to do yet.

The node network is a total mess at the moment I will go away and tidy it up before posting  ;D


WOW!! :o :o That is looking amazing already. Me want!

Alfamike

#46
Quote from: Matt on January 28, 2008, 11:56:17 AM
Quote from: Alfamike on January 25, 2008, 09:15:53 PM
Maybe Planetside can let us know for sure whether this vertical cloud density shading is (im)possible as a direct input into the Cloud Layer Density? 'Cause I'll keep at it for a wee while longer.

The density function is 3D; functions that use the Y component are perfectly acceptable and variation along the Y component is certainly possible, even if it is not very easy to see whether or not it's working. Just make sure that your positions are derived from "Get position in texture".

Matt


Thanks for the reply, Matt.

I think I rely too much on the shader previews to see whether some setup will work or not. I noticed before that the cloud layer shader preview can be misleading... showing clouds where the density shader does not allow them.

Will go and play some more with the Y-component for the cloudlayer density now.



Quote from: j meyer on January 27, 2008, 05:43:46 PM
Great,thanks Mr.L.!

Did some tests with AM's file as displacement and got some nice
crashes and peculiar render behaviour.Couldn't figure out why though.


I had a go at this but don't get crashes. Only thing I could think of is a division by zero... but that does not cause my TG to crash.


AM.


bigben

Quote from: Mr_Lamppost on January 27, 2008, 04:12:59 PM
There are a few things that could be improved

I have already been looking at using a power of the distance from the centre to drive the density curve as a way to make the eye bigger. ...

There may also be some merit in using different functions for the rotation and density.  I used the same function for this test as they both needed a similar curve and it saved on the number of nodes, now they are more organised adding a second function shouldn't be a problem.


All of these would be good  :)

Quote from: Mr_Lamppost on January 27, 2008, 04:12:59 PM
I am also looking at ways of adding roughness to the Perlin. 

I am not sure how vital this is but it may be worth adding the ability to set an arbitrary centre.  The hurricane can be positioned by adding a transform shader to the cloud layer but it would be neater to have this as part of the hurricane.

Maybe multiplying by a smaller scale perlin for added roughness?

For positioning you might add a constant X,Y,Z to the values extracted from Get position. This should also provide some altitude control.  Unfortunately the use of XYZ means that you can't use it too far from the origin or the formation will start to lean with the curvature of the earth (I've had the same problems with image masks on clouds) but it's an great application of math  ;D

Many thanks for the TGD

Mr_Lamppost

Quote from: nvseal on January 28, 2008, 12:01:01 PM
WOW!! :o :o That is looking amazing already. Me want!

You got it  ;D

The tgd is included with my long post showing how it was made.  There are loads of improvements that can be made so you may want to keep an eye on this for improved versions.

Quote from: bigben on January 28, 2008, 03:09:38 PM
Maybe multiplying by a smaller scale perlin for added roughness?

For positioning you might add a constant X,Y,Z to the values extracted from Get position. This should also provide some altitude control.  Unfortunately the use of XYZ means that you can't use it too far from the origin or the formation will start to lean with the curvature of the earth (I've had the same problems with image masks on clouds) but it's an great application of math  ;D

I am already experimenting with combining several layers of Perlin at different scales.  My results so far have been useful but not really what I was after for this application.  It would be nice if the Perlin 3D Scalar node had inputs for Octaves and Turbulence.  Spot the POV-Ray user  ;) 

I am expecting that we will want hurricanes well away from the origin and was sort of hoping that someone else would sort out the math.  I am embarrassed at how long I spent working out how to do the rotation.   :-[  :o :-[
Smoke me a kipper I'll be back for breakfast.

rcallicotte

Oh, well then I don't feel so bad for not having a frikking clue until I saw your work.   ;D  And explanation.   ::)

Dude, this has been awesome.  I've been playing with this TGD setup almost all afternoon...in between work, of course. 

Quote from: Mr_Lamppost on January 28, 2008, 05:30:30 PM
I am embarrassed at how long I spent working out how to do the rotation.   :-[  :o :-[

So this is Disney World.  Can we live here?

Mr_Lamppost

Quote from: calico on January 28, 2008, 05:57:15 PM
Oh, well then I don't feel so bad for not having a frikking clue until I saw your work.   ;D  And explanation.   ::)

Dude, this has been awesome.  I've been playing with this TGD setup almost all afternoon...in between work, of course. 

Quote from: Mr_Lamppost on January 28, 2008, 05:30:30 PM
I am embarrassed at how long I spent working out how to do the rotation.   :-[  :o :-[



As long as you show us what you come up with  ;)

Smoke me a kipper I'll be back for breakfast.

bigben

Quote from: Mr_Lamppost on January 28, 2008, 05:30:30 PM

I am expecting that we will want hurricanes well away from the origin and was sort of hoping that someone else would sort out the math.  I am embarrassed at how long I spent working out how to do the rotation.   :-[  :o :-[


Had a few thoughts on this today.  It should be possible to use the same function but use different inputs.

X,Z - Calculate the angle between a vector from the center of the planet to the center of the hurricane, and a vector from the center of the planet to Get position, converted to an appropriate scale for the function (provides positioning of the storm as well)

Y - Substitute Get altitude for Get position (Y)

This should create a hurricane that matches the curvature of the Earth so you could recreate "The Day After Tomorrow" with really large hurricanes.

rcallicotte

I regret that my view is cropped, due to miscalculation during setup.  But, I've been fiddling with values to create a tornado, which settings are based upon Mr. Lampost's file.  I think I have something here, but need a couple more setting changes.  One is density.  The other is shape - thinner and taller.  Here's the WIP.
So this is Disney World.  Can we live here?

dhavalmistry

looks like the cloud of sand with colors way off!
"His blood-terragen level is 99.99%...he is definitely drunk on Terragen!"

Alfamike

Quote from: Mr_Lamppost on January 28, 2008, 05:30:30 PM

I am expecting that we will want hurricanes well away from the origin and was sort of hoping that someone else would sort out the math.  I am embarrassed at how long I spent working out how to do the rotation.   :-[  :o :-[


Hi,

You can shift the centre of your spiral anywhere (XZ); in the first post of this thread you can see how to rotate around any point on the XZ plane.

Now knowing the density shader can be 3D, I might put some effort into doing a rotation around Y-axis and Z or X, given some spare time..... should prove to be interesting, but painfully slow in the rendering.

AM.

Mr_Lamppost

calico:

It's a shame your tornado is being spoilt by the "Horizon through the cloud" bug because it looks very promising.


Alfamike:

I have a couple of ideas about methods for positioning the hurricane anywhere on the planet. I am just not sure when I will have the chance to try them.
Smoke me a kipper I'll be back for breakfast.

Bidmaron

The guy over at this thread (http://forums.planetside.co.uk/index.php?topic=3287.new#new) seems to have at least partially solved the problem.  I asked if he'd be willing to share his techniques.
--Dale--

Alfamike

#57
Hi everybody,

This is what I worked out for 3D rotation, with a translation to put the centre anywhere and a scale factor too if needed. (Version 1)

Don't know if I'd like to go down this road any further, it's going to cause major render times.

It's easy to check the rotation around the Y-axis works, but I find it very hard to check the other two rotations. Even doing them one axis by one it's very hard to tell whether or not the right thing is happening. Makes it hard to fault-find.

AM.

rcallicotte

nvseal's work is awesome, but I don't think he did this through functions.

Quote from: Bidmaron on January 29, 2008, 07:23:45 PM
The guy over at this thread (http://forums.planetside.co.uk/index.php?topic=3287.new#new) seems to have at least partially solved the problem.  I asked if he'd be willing to share his techniques.
--Dale--
So this is Disney World.  Can we live here?

Mr_Lamppost

I have just had a quick look at your nodes AM and I think you are doing something similar to what I have in mind.  I have several things on the go at the moment and when I do spend any time on let's call it version 2 I am working on splitting and improving the density and rotation curves.    Version 2 has basic scale built in   ;)

Even when you know what the aim is it is quite difficult to follow someone else's mode network.

Quote from: calico on January 30, 2008, 09:30:13 AM
nvseal's work is awesome, but I don't think he did this through functions.

Quote from: Bidmaron on January 29, 2008, 07:23:45 PM
The guy over at this thread (http://forums.planetside.co.uk/index.php?topic=3287.new#new) seems to have at least partially solved the problem.  I asked if he'd be willing to share his techniques.
--Dale--

nvseal  (who is aware of this; first post on page 4), is using image masks to absolutely amazing effect. 
Smoke me a kipper I'll be back for breakfast.