Gas Giants

A quieter space for design discussion of long-term projects
robn
Posts: 302
Joined: Mon Jul 01, 2013 1:11 am
Location: Melbourne, Australia

Re: Gas Giants

Post by robn »

Impressive numbers. I hope it pans out that well on mortal machines :)
FluffyFreak
Posts: 1343
Joined: Tue Jul 02, 2013 1:49 pm
Location: Beeston, Nottinghamshire, GB
Contact:

Re: Gas Giants

Post by FluffyFreak »

Yeah I need to try it on my little Linux box to see. There's a new config option to enable or disable it so it won't be a problem for those who can't use it.
FluffyFreak
Posts: 1343
Joined: Tue Jul 02, 2013 1:49 pm
Location: Beeston, Nottinghamshire, GB
Contact:

Re: Gas Giants

Post by FluffyFreak »

Well that's disappointing, if expected. My little Linux box can't compile the shader using the open source AMD GPU drivers.
Not really a surprise as it is currently a direct port and is hideous. I was optimistic though :/
DraQ
Posts: 149
Joined: Sun Mar 23, 2014 10:02 pm

Re: Gas Giants

Post by DraQ »

Sorry to sidetrack this thread, but the first thing that needs to be done with gas giants is fixing their radii.

A while a go I noticed that gas giants outside Sol have freakishly high surface gravities for their class (and mass) - after checking out their other parameters I noticed that their radii are pretty much consistently around half of what they should be (inhabitants of life-bearing gas giant moons - and visiting tourists - will probably be grateful for the fix as well).

As a part of the later improvements, Sudarsky's Gas Giant Classification could be implemented as well (in terms of visuals and possibly description):

http://en.wikipedia.org/wiki/Sudarsky%2 ... sification
http://infinitysedge.weebly.com/sudarsk ... ation.html
FluffyFreak
Posts: 1343
Joined: Tue Jul 02, 2013 1:49 pm
Location: Beeston, Nottinghamshire, GB
Contact:

Re: Gas Giants

Post by FluffyFreak »

Those are useful links, and yes the data about gas giants needs some work.
Perhaps I should have named this thread "Gas Giant Rendering/Experiments" for clarity as to what I'm doing at the moment :)
DraQ
Posts: 149
Joined: Sun Mar 23, 2014 10:02 pm

Re: Gas Giants

Post by DraQ »

FluffyFreak wrote:Those are useful links, and yes the data about gas giants needs some work.
Perhaps I should have named this thread "Gas Giant Rendering/Experiments" for clarity as to what I'm doing at the moment :)
Well, Sudarsky's classification is certainly going to help with visuals as well.

As for the problems, I still need to make myself a GitHub account to be able to submit issues.
FluffyFreak
Posts: 1343
Joined: Tue Jul 02, 2013 1:49 pm
Location: Beeston, Nottinghamshire, GB
Contact:

Re: Gas Giants

Post by FluffyFreak »

Less than you'd expect sadly :( sure it'll effect some things but aside from picking the colour palette what really needs doing is a whole lot more work than that.
FluffyFreak
Posts: 1343
Joined: Tue Jul 02, 2013 1:49 pm
Location: Beeston, Nottinghamshire, GB
Contact:

Re: Gas Giants

Post by FluffyFreak »

Fixed the colour bug, just a stupid copy n' waste error on my part.
Rewrote it slightly to generate the whole cubemap in a single job rather than 6 separate ones as that is more logical and might perform better too.
Had to add a dependency on a function for generating the mipmaps that is only officially available with a GL3.0 context. The 1.4 compatible version just wasn't working :( Need to think of a way around that.

The timing seemed a bit slower at first... then I remembered that I'd doubled the resolution of the textures generated :D speed is still much faster than CPU, hilariously faster.
FluffyFreak
Posts: 1343
Joined: Tue Jul 02, 2013 1:49 pm
Location: Beeston, Nottinghamshire, GB
Contact:

Re: Gas Giants

Post by FluffyFreak »

@DraQ, what I mean is that I'm not working on the look of things right now, just the low-level engineering part of the rendering.

When I work on things I try to split them into a number of parts so that I don't get overwhelmed doing a single gigantic piece of work that takes 8 months or something crazy.

This gas giant work started with me splitting the way their geometry was generated away from the system that the terrestrial planets use. Now I'm working on how the colour textures are generated.
I do think that we need something like the Sudarsky classification, but I won't do it as part of what I'm writing at the moment - I'll make it another separate piece of work - so that I can get this finished and either someone else can do that work, or I'll pick it up again later on :)
FluffyFreak
Posts: 1343
Joined: Tue Jul 02, 2013 1:49 pm
Location: Beeston, Nottinghamshire, GB
Contact:

Re: Gas Giants

Post by FluffyFreak »

Latest timings:

GPU timings, one-per-cubemap
(0.043852) millicycles in SingleGPUGenJob::OnRun
(0.045040) millicycles in SingleGPUGenJob::OnRun
(0.044006) millicycles in SingleGPUGenJob::OnRun
(0.043855) millicycles in SingleGPUGenJob::OnRun

CPU timings, one-per-face (separated into groups of 6 for clarity)
(24977.933657) millicycles in SingleTextureFaceCPUJob::OnRun
(29618.347026) millicycles in SingleTextureFaceCPUJob::OnRun
(31939.734688) millicycles in SingleTextureFaceCPUJob::OnRun
(34249.812628) millicycles in SingleTextureFaceCPUJob::OnRun
(34159.614609) millicycles in SingleTextureFaceCPUJob::OnRun
(34350.108273) millicycles in SingleTextureFaceCPUJob::OnRun
--
(41152.243758) millicycles in SingleTextureFaceCPUJob::OnRun
(14049.657011) millicycles in SingleTextureFaceCPUJob::OnRun
(14688.549572) millicycles in SingleTextureFaceCPUJob::OnRun
(12448.963712) millicycles in SingleTextureFaceCPUJob::OnRun
(40488.584486) millicycles in SingleTextureFaceCPUJob::OnRun
(40944.366078) millicycles in SingleTextureFaceCPUJob::OnRun
--
(14643.971400) millicycles in SingleTextureFaceCPUJob::OnRun
(41063.806212) millicycles in SingleTextureFaceCPUJob::OnRun
(12903.989143) millicycles in SingleTextureFaceCPUJob::OnRun
(41293.316112) millicycles in SingleTextureFaceCPUJob::OnRun
(41338.743652) millicycles in SingleTextureFaceCPUJob::OnRun
(14905.932630) millicycles in SingleTextureFaceCPUJob::OnRun
--
(22039.095848) millicycles in SingleTextureFaceCPUJob::OnRun
(23106.692314) millicycles in SingleTextureFaceCPUJob::OnRun
(22315.381582) millicycles in SingleTextureFaceCPUJob::OnRun
(22228.503535) millicycles in SingleTextureFaceCPUJob::OnRun
(21453.670524) millicycles in SingleTextureFaceCPUJob::OnRun
(21603.556552) millicycles in SingleTextureFaceCPUJob::OnRun

Hardware information:
OEM ID: 0
Number of processors: 8
Page size: 4096
Processor type: 586
Minimum application address: 10000
Maximum application address: fffeffff
Active processor mask: 255

Windows 7 (Service Pack 1)

OpenGL version 4.4.0, running on NVIDIA Corporation GeForce GTX 670/PCIe/SSE2
GLEW version 1.10.0
Shading language version: 4.40 NVIDIA via Cg compiler
Post Reply