New accretion disk method (WORK IN PROGRESS)

Post requests, images, descriptions and reports about work in progress here.
Avatar
Topic author
Cham M
Posts: 4324
Joined: 14.01.2004
Age: 60
With us: 21 years 1 month
Location: Montreal

New accretion disk method (WORK IN PROGRESS)

Post #1by Cham » 05.03.2007, 02:39

I'm building some new accretion disks, using Mathematica to build pure CMOD models of dust clouds. There's a lot of tweaking to do, but I think this new method has a lot of potential. The user can move inside the disk and watch the flow. The model is fully 3D volumetric, and the disk move like a real fluid (differential rotation). The animation is prefectly smooth. And the user cannot click on the particles, so the models aren't in the way, if the user has to click on background stars, central body, etc.

The accretion ring shown below is actually made of three base models (color variations of the same basic model), and each model has 10000 dots (particles). The CMOD files are 516 KB only (each). In the SSC, I'm using 12 definitions for each model, with Obliquity and EquatorAscendingNode variations. So Celestia is showing 3X12X10000 = 360000 particles.

Here are three pictures of the actual experimentation :

Image

Image

A view from inside the accretion ring (the picture has been reduced a bit from the original, so the particles may appears a bit blurry) :
Image

Too bad the dots can't be made blurry in Celestia. And too bad I can't show any Doppler shift effect on the ring (this could be awesome !).

I intend to make one ring like this with a magnetic field associated to the disk and to the central body, but I'll have to assume a rigid body rotation, in this case.

I'm very inspired by the artist renderings found here :

http://photojournal.jpl.nasa.gov/catalog/PIA08626
"Well! I've often seen a cat without a grin", thought Alice; "but a grin without a cat! It's the most curious thing I ever saw in all my life!"

chris
Site Admin
Posts: 4211
Joined: 28.01.2002
With us: 23 years
Location: Seattle, Washington, USA

Re: New accretion disk method (WORK IN PROGRESS)

Post #2by chris » 05.03.2007, 07:40

Cham wrote:Too bad the dots can't be made blurry in Celestia. And too bad I can't show any Doppler shift effect on the ring (this could be awesome !).


Very nice work, especially given that you're limited to just points right now. The next version of Celestia will extend the cmod format to allow point sprites--it's not that much development work, so you won't have to wait too long.

--Chris

Avatar
Topic author
Cham M
Posts: 4324
Joined: 14.01.2004
Age: 60
With us: 21 years 1 month
Location: Montreal

Re: New accretion disk method (WORK IN PROGRESS)

Post #3by Cham » 05.03.2007, 07:51

chris wrote:The next version of Celestia will extend the cmod format to allow point sprites--it's not that much development work, so you won't have to wait too long.

--Chris


What are sprites, in a cmod ? How does it work ?
"Well! I've often seen a cat without a grin", thought Alice; "but a grin without a cat! It's the most curious thing I ever saw in all my life!"

bh
Posts: 1547
Joined: 17.12.2002
With us: 22 years 1 month
Location: Oxford, England

Post #4by bh » 05.03.2007, 08:20

Good work here Cham...
regards...bh.

ElChristou
Developer
Posts: 3776
Joined: 04.02.2005
With us: 20 years

Re: New accretion disk method (WORK IN PROGRESS)

Post #5by ElChristou » 05.03.2007, 11:40

chris wrote: ...The next version of Celestia will extend the cmod format to allow point sprites--it's not that much development work, so you won't have to wait too long...


Too bad some configs won't have acess to such rendering... :?

Very cool Cham!
Image

ElChristou
Developer
Posts: 3776
Joined: 04.02.2005
With us: 20 years

Post #6by ElChristou » 05.03.2007, 17:44

Image

Practical this fake and exagereted asteroid belt to appreciate it's dimension without two thousands orbits! :o
Image

Avatar
Topic author
Cham M
Posts: 4324
Joined: 14.01.2004
Age: 60
With us: 21 years 1 month
Location: Montreal

Post #7by Cham » 05.03.2007, 19:57

Here's a download link to test the concept. I reduced the number of particles, but the effect is very nice anyway. You'll notice two problems with the model :

1- there's no shadow on the particles. This is because the emissivity is set to ON. If you turn it OFF in the SSC file, the model may crash your video card. I didn't tested yet what happens if I set OFF the emissivity in the CMOD file too. I suspect there's a conflict between emissivity defined in the CMOD and in the SSC.

2- The luminosity of the emissive model doesn't change with distance, which is unrealistic. At some distance, the model becomes opaque and way too luminous. There's nothing I can do about this, until Chris change something in the code for emissive objects. I suggest adding a new parameter declared in the SSC, to turn ON a distance dependant emissivity (magnitude ?). This would be very usefull to define globular clusters too, using my technique (pure CMOD models).

DOWNLOAD LINK for a test prototype :

http://nho.ohn.free.fr/celestia/Cham/accretionTEST.zip (820 KB zip file)
"Well! I've often seen a cat without a grin", thought Alice; "but a grin without a cat! It's the most curious thing I ever saw in all my life!"

rthorvald
Posts: 1223
Joined: 20.10.2003
With us: 21 years 3 months
Location: Norway

Re: New accretion disk method (WORK IN PROGRESS)

Post #8by rthorvald » 05.03.2007, 20:41

Cham wrote:I'm building some new accretion disks, using Mathematica to build pure CMOD models of dust clouds.

This is extremely interesting. :idea:
Could you please tell us some more about your method...? I??d like to see more screenshots / examples, too...

- rthorvald
Image

Avatar
Topic author
Cham M
Posts: 4324
Joined: 14.01.2004
Age: 60
With us: 21 years 1 month
Location: Montreal

Re: New accretion disk method (WORK IN PROGRESS)

Post #9by Cham » 05.03.2007, 21:04

rthorvald wrote:
Cham wrote:I'm building some new accretion disks, using Mathematica to build pure CMOD models of dust clouds.
This is extremely interesting. :idea:
Could you please tell us some more about your method...? I??d like to see more screenshots / examples, too...

- rthorvald


Ok, the CMOD files were made with Mathematica (high level math software, similar to Maple). The model itself is a flattened torus made of random dots (particles). I used a gaussian (normal) distribution along the radial distance (around a mean radius value), a gaussian distribution along the transverse ("z" or thickness) axis, and a uniform distribution along the azimuthal (angle "phi") direction. I then randomly distributed 10000 points in Mathematica, then exported all the cartesian coordinates to a TEXT file, properly formatted so Celestia could use it as a CMOD. Since I developped my magnetic fields, Mathematica now exports everything directly into a CMOD file, with all the headers info, etc. So the process of CMOD file creation is extremelly fast (about 10 seconds) for each model.

Runar, did you tried the prototype from the link given in my last post ?

Here are four more shots of a variation of the accretion disk :

Image

Image

Image

Image

Also, here's another example, around a pulsar (I was inspired by this MHD rendering : http://shayol.bartol.udel.edu/massivewi ... -ori-e.png ) :

Image

Image

Image

Image

I have yet to select the best combination of colors and transparency, the best number of "base rings" to allow a proper "fluid motion", etc. You should see the disk motion. It's really like a fluid in rotation.
Last edited by Cham on 05.03.2007, 21:11, edited 1 time in total.
"Well! I've often seen a cat without a grin", thought Alice; "but a grin without a cat! It's the most curious thing I ever saw in all my life!"

chris
Site Admin
Posts: 4211
Joined: 28.01.2002
With us: 23 years
Location: Seattle, Washington, USA

Re: New accretion disk method (WORK IN PROGRESS)

Post #10by chris » 05.03.2007, 21:08

Cham wrote:
chris wrote:The next version of Celestia will extend the cmod format to allow point sprites--it's not that much development work, so you won't have to wait too long.

--Chris

What are sprites, in a cmod ? How does it work ?


It's a method for using fuzzy points in a cmod. Point sprites will work a lot like point lists in cmods except that you'll specify a size for each point and a texture (which will typically a fuzzy disc of some sort.) It's a good way to do some volumetric effects.

--Chris

Avatar
Topic author
Cham M
Posts: 4324
Joined: 14.01.2004
Age: 60
With us: 21 years 1 month
Location: Montreal

Re: New accretion disk method (WORK IN PROGRESS)

Post #11by Cham » 05.03.2007, 21:10

chris wrote:
Cham wrote:
chris wrote:The next version of Celestia will extend the cmod format to allow point sprites--it's not that much development work, so you won't have to wait too long.

--Chris

What are sprites, in a cmod ? How does it work ?

It's a method for using fuzzy points in a cmod. Point sprites will work a lot like point lists in cmods except that you'll specify a size for each point and a texture (which will typically a fuzzy disc of some sort.) It's a good way to do some volumetric effects.

--Chris


Can you give an explicit example of the CMOD format I'll have to use ?
"Well! I've often seen a cat without a grin", thought Alice; "but a grin without a cat! It's the most curious thing I ever saw in all my life!"

rthorvald
Posts: 1223
Joined: 20.10.2003
With us: 21 years 3 months
Location: Norway

Re: New accretion disk method (WORK IN PROGRESS)

Post #12by rthorvald » 05.03.2007, 21:24

Cham wrote:...So the process of CMOD file creation is extremelly fast (about 10 seconds) for each model.

Runar, did you tried the prototype from the link given in my last post ?

Yes, i tried it just after posting.

Are you able to color each point separately in the CMOD? Or is it neccecary to use an uniform color in the ssc file? By varying the color slightly in 4-5 steps, a cloud might look more natural...

Also, if you have detailed control of shape, i can imagine a lot of possibilities for this... Regrettably, it seems your method is rather specialized... Not easy to duplicate for us?

-rthorvald
Image

Avatar
Topic author
Cham M
Posts: 4324
Joined: 14.01.2004
Age: 60
With us: 21 years 1 month
Location: Montreal

Re: New accretion disk method (WORK IN PROGRESS)

Post #13by Cham » 05.03.2007, 21:41

rthorvald wrote:Are you able to color each point separately in the CMOD? Or is it neccecary to use an uniform color in the ssc file? By varying the color slightly in 4-5 steps, a cloud might look more natural...

Also, if you have detailed control of shape, i can imagine a lot of possibilities for this... Regrettably, it seems your method is rather specialized... Not easy to duplicate for us?


In theory, I could assign a different color to each particle in the same model file, but this would make the CMOD file messy, with 10000 points and the Mathematica coding would be MUCH harder. For the moment, I prefer making a single color model, and then use several models at the same time, with a different color for each one. This is a very good way. Using, say, 5 or 10 basic ring models with their own color opens the possibility for a nice color graduation on the disk, while using the rings to allow the fluid motion at the same time. Just inspect the SSC file and the CMOD headers, from the prototype I'm giving above.

The possibilities are endless, once Chris implement the sprites, and especially if Chris add the Magnitude parameter for a distance dependant luminosity. Once done, I could EASILY create fully 3D volumetric globular clusters, irregular nebulae, accretion disks around pulsars, black holes and stars, protoplanetary systems, rings of debris around a giant planet, magnetic fields, and so on.

I even have plans to create volcanoes (Io, etc) and matter bridges on the sun, pulsars/black holes jets using the same technique. However, they'll be static in their cases (no time evolution).

As I already said before, a whole new addons universe is opening to us ! :mrgreen:

Those models needs some maths, to be created, so unfortunately it would be hard stuff for must users. I'll probably publish my Mathematica notebooks, so anyone with Mathematica could try them. I also intend to create a library of objects, so anyone could use them :

basic rings of all sorts, basic spherical distributions (globular clusters), etc. So the user would have to edit the color/transparency headers only, and create their own SSC files (from templates ?).

EDIT : In the case of the accretion rings, here's the complete Mathematica code (it's MUCH simpler than the magnetic field lines code !) :

http://nho.ohn.free.fr/celestia/Cham/Divers/ring.pdf
Last edited by Cham on 05.03.2007, 21:53, edited 2 times in total.
"Well! I've often seen a cat without a grin", thought Alice; "but a grin without a cat! It's the most curious thing I ever saw in all my life!"

rthorvald
Posts: 1223
Joined: 20.10.2003
With us: 21 years 3 months
Location: Norway

Re: New accretion disk method (WORK IN PROGRESS)

Post #14by rthorvald » 05.03.2007, 21:49

Cham wrote:The possibilities are endless [...] I even have plans to create volcanoes (Io, etc) and matters bridges on the sun, pulsars/black holes jets using the same technique I also intend to create a library of objects, so anyone could use them :


Yes, many possibilities. Even 3d clouds and smoke ;-)

A library of objects, i think, would be most welcome. With a variety of shapes, i can see a whole lot of work becoming much easier to do, not to mention practical to implement re memory constraints...

Very, very cool work, Cham! Please continue...

- rthorvald
Image

Kolano
Posts: 125
Joined: 15.02.2005
With us: 20 years
Location: New Jersey

Re: New accretion disk method (WORK IN PROGRESS)

Post #15by Kolano » 05.03.2007, 23:45

chris wrote:
Cham wrote:
chris wrote:The next version of Celestia will extend the cmod format to allow point sprites--it's not that much development work, so you won't have to wait too long.

--Chris

What are sprites, in a cmod ? How does it work ?

It's a method for using fuzzy points in a cmod. Point sprites will work a lot like point lists in cmods except that you'll specify a size for each point and a texture (which will typically a fuzzy disc of some sort.) It's a good way to do some volumetric effects.

--Chris


Alight :D

This sounds like it could make the set of galaxy survey add-on's significantly better (i.e. a set of template galaxy images could be used instead of points)
System:
Asus A8N-SLI Premium nForce4 SLI
AMD Athlon 64 X2 4200+
2xeVGA GeForce 7800 GTX 256MB
2gb Dual Channel DDR (400) 3200

buggs_moran
Posts: 835
Joined: 27.09.2004
With us: 20 years 4 months
Location: Massachusetts, USA

Post #16by buggs_moran » 06.03.2007, 00:14

Really neat work Cham. I love the differential motion feel and the 3d-ness of the whole thing. I think you're right about the look as you pull away though, the fact that the brightness doesn't diminish is a shame. You need one of those Fridger culling algorithms that he uses for labels applied to points...

I would REALLY like to see someone integrate the following work into Celestia... Perhaps once I get my linux box built I will give it a try.

http://www.astro.keele.ac.uk/~apb/OGL_CV/newimage.html
Homebrew:
WinXP Pro SP2
Asus A7N8X-E Deluxe
AMD Athlon XP 3000/333 2.16 GHz
1 GB Crucial RAM
80 GB WD SATA drive
ATI AIW 9600XT 128M

ElChristou
Developer
Posts: 3776
Joined: 04.02.2005
With us: 20 years

Post #17by ElChristou » 06.03.2007, 01:20

Yep, I was playing with this to simulate dirt disk, and indeed whith a few tweaks to get a good rendering of the brightness vs distance this could be a really nice feature...

Chris could you please think in us poor folks who won't be able to use point sprites (and other esoteric GL rendering)? :?
Image

Avatar
Topic author
Cham M
Posts: 4324
Joined: 14.01.2004
Age: 60
With us: 21 years 1 month
Location: Montreal

Post #18by Cham » 06.03.2007, 04:55

Here's another prototype. If only the luminosity was dependant on distance ! :-(

Image

Image

Image

There are 6 concentric rotating rings here. Very fluidic motion. The frame rate is very high on my system, even in the solar system with all the comets and asteroids. The color transition is very smooth. Should I place more particles in there ? The thickness should be made variable. It's a bit too constant for my taste, but this can easily be corrected.

I can't wait to add the sprites ! :mrgreen:

Download link to the prototype :

http://nho.ohn.free.fr/celestia/Cham/AccretionTest2.zip (1.8 MB zip file)
"Well! I've often seen a cat without a grin", thought Alice; "but a grin without a cat! It's the most curious thing I ever saw in all my life!"

Avatar
Topic author
Cham M
Posts: 4324
Joined: 14.01.2004
Age: 60
With us: 21 years 1 month
Location: Montreal

Post #19by Cham » 06.03.2007, 06:43

Here are two very nice views from the addon prototype given in my previous post. Click for very large pictures :

Image Image

Navigating inside that field, using the keyboard, is pretty fun too. Looks like snow all around !
"Well! I've often seen a cat without a grin", thought Alice; "but a grin without a cat! It's the most curious thing I ever saw in all my life!"

Avatar
Topic author
Cham M
Posts: 4324
Joined: 14.01.2004
Age: 60
With us: 21 years 1 month
Location: Montreal

Post #20by Cham » 06.03.2007, 21:32

Proto-moons system in formation :

Image

Image

The planet is probably too small, compared to the size of the rings. This could easily be corrected in the SSC.

The only problems here are the inability to have a planet shadow on the rings (particles), because of that crashing bug if emissivity is set to OFF, and the luminosity which increases with distance, while it should actually decrease. This problem, if not corrected, will kill all projects based on particles-clouds models :x
"Well! I've often seen a cat without a grin", thought Alice; "but a grin without a cat! It's the most curious thing I ever saw in all my life!"


Return to “Add-on development”