Space potatoes

Started by Chinaski, September 24, 2008, 01:13:56 AM

Previous topic - Next topic

nvseal

Really great stuff. This is very original.

darthvader

How did you set up the population for the rocks in orbit? they look fantastic

Chinaski

Thanks. ;)

To Darthvader: it's a classic rocks population: position is 0 0 0 (as the big planet), lenght (a & b) is 1.35e+006, objet spacing is 2500. There is no planet attachment, but it's "sit on a terrain"... a simple power fractal shader, with displacement (125000). So, that way, rocks are placed at different altitudes, and i have thickness in my rings.

For the blending of population, I've used two image map shaders: First one is a homemade rings picture (on plan Y, size 1.35e+006 / 1.35e+006), second one is a white image with "Through camera" projection type. That way I calculate only the rocks that I see.
You don't understand me ? That's normal, I don't speak english.

dandelO

It's really well done, Chinaski. I like this last one a lot. The moon tests are very nice too, better than just tests in my opinion. Good job!

Chinaski

Now I'll try to use an other technique with rings, and add a volumétric fog into it, with a clouds layer... Here is my first try of "cloudy rings":



I've used functions tree to clamp the clouds on Y axis... Two conditionnal scalars (-500 to infinite and 500 to infinite are multiplied) (I'm sure that there is a simplier solution, but I don't find it). I use the result to blend a rings image map. It's not bad, but not perfect, and I have several problems:

- Clouds calculating is really long, so I must reduce planet size (to 50000), that way the clouds depth is not too big.
- With 760 samples, my clouds softness isn't good. There is some noise. I don't knows why... So there is a problem somewhere, maybe the image map shader.
- My function tree just do black or white value. No grey value, so no gradient on altitude, and that's not good. Schematically I want white value (1) on y=0, black value (0) on y=1, and grey value (0.5) on y=0.5.
- If I can just use functions to draw my rings (by random seed), and delete the image map shader, it would be better. Is there a way to do that (radial gradient with function noise)?

So there is a lot of work yet. If somebody want to take a look, the scene is here. ;)


Another thing: Can we use blending (or fake blending) on an atmosphere? It would be cool, to do polar aurora (for example), or the magnetic fields of a sun. Last time I've tried that I've simulated altitude gradient density with several clouds layers... Was good for a ground view... But at the scale of a planet, see from space... As there is already altitude gradient values in atmosphere shader, use it could be fun.

Or, maybe, I can use a gradient density function, as blending, on a clouds shader. But, I guess, the render time will be very long...

nb : Please excuse my english.
You don't understand me ? That's normal, I don't speak english.

RogueNZ

I can see them now! Pretty awsome  ;)

Oshyan

You can't currently do local density variation in the atmosphere ("blending"). But this may be possible in the future.

- Oshyan

Chinaski

One week later...



This one was particulary long to render (because of rings clouds number of samples)...

I've solved few problems: Now the planet radius is 100 (by this way I've decreased again the clouds depht, and the render time), rings are draw by functions only (I can random it)(no more imagemap blending shader), and I have my altitude gradient function (-n is black, 0 is white, +n is black).

So, I'm happy. ;)

But it still some problems with shadows... No rocks shadows on rings clouds, for example (ray traced shadows is enable), and I must work on the planet surface.

@Oshyan: That's a very (very very) good news. :)
You don't understand me ? That's normal, I don't speak english.

Oshyan

Looking great! So you're using a cloud for the "dust" part of the rings? You have "Raytraced shadows" turned on in the Quality tab of your cloud shader?

- Oshyan

Chinaski

Hmmm, difficult to explain with my bad english language. So, here's the tgd (not exactly the same, I've make some changes, but will be simplier to explain with it).

On top, we have "Dust cloud group". That's for the "regular" dust around the planet. 4 others groups inside:
- 00 group make some spheric dust (I use function noise to do altitude variable intensity).
- Groups 01, 02, & 03 are some uniform dust clouds on the same plan that rings.

The result of these 4 groups is use as density blending on my first cloud layer "Dust (q 3.8)".


On bottom: "RINGS group", used to make the rings. Two others groups inside: "Rings patern gradient (04)" is making the vertical gradient, and "Rings patern (R)" is drawing the rings pattern. Result is use as density blending on my second cloud layer "Ring (q 24)".


So, for now, the scene is build with clouds & functions only. And yes, "Raytraced shadows" is turned on. The thing is that I try to reducce clouds samples number a lot (for rendering time)... And I think my problems come from here.

For example, you'll see, "coverage adjust" value is 50 in cloud fractal shaders. It's big, but, that way, I think I can decrease the cloud density and so decrease the sample number of my clouds.

But, other problem, this tweak is destructing my vertical gradient effect. I think, maybe, shadows problem is come from here too. Clouds density story. Or, maybe, my cloud layers order is wrong, and I must inverse it...?

nb: Image called "blanc.jpg" is just a white image. I'm using it to limit my rocks population. If you change camera when rendering, You must also change the "projection camera" in "Camera and RINGS shader MASK" shader. ;)
You don't understand me ? That's normal, I don't speak english.

rcallicotte

@Chinaski, this is brilliant work.  Keep going! 

And thanks for sharing your understanding and TGD.  GROOVY.   8)
So this is Disney World.  Can we live here?