New sprites based nebulae

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: 20 years 10 months
Location: Montreal

Re: New sprites nebula (from old)

Post #21by Cham » 25.08.2011, 14:07

Another sprites based ring :

ring2.jpg


Unfortunately, the ring is ugly as seen from its side : the blobs are too large and opaque. Need more work on this.

Back to the shells. I'm using the Beta distribution to get a more "fractalised" rendering :

shell.jpg


There's an infinite set of variations possible. It will take time before I find the perfect models...
"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
Fenerit M
Posts: 1880
Joined: 26.03.2007
Age: 17
With us: 17 years 8 months
Location: Thyrrenian sea

Re: New sprites nebula (from old)

Post #22by Fenerit » 25.08.2011, 19:06

Cham, I think you are on the right path to shape nebulae. My suggestion is that of individuating nebulae "class" (their shapes) and then to works on it just to refine colors. I.e. different sprites' inclinations of your "ring" nebula can mimic NGC 6543 (Cat's eye) as is seen here: http://hubblesite.org/gallery/album/nebula/pr1995049h/ while stretched test1-2-3-4 the NGC 2818 http://hubblesite.org/gallery/album/nebula/pr2009005a/. "fractalized" sprites out from circle could mimic several others. The Hourglass and Egg's nebulae "class" maybe could be resembled with paraboloid sprites. :roll:
Never at rest.
Massimo

W0RLDBUILDER
Posts: 122
Joined: 02.06.2010
With us: 14 years 6 months

Re: New sprites nebula (from old)

Post #23by W0RLDBUILDER » 26.08.2011, 00:00

Why the eye roll, Fenerit?

Avatar
Fenerit M
Posts: 1880
Joined: 26.03.2007
Age: 17
With us: 17 years 8 months
Location: Thyrrenian sea

Re: New sprites nebula (from old)

Post #24by Fenerit » 26.08.2011, 00:33

W0RLDBUILDER wrote:Why the eye roll, Fenerit?
Because the math-genius here is Cham, not me. My concerns with parabolae, hyperbolae and such conical stuffs ends at times in which Pink Floyd did "Animals" and I should have problems to deal with for a - in short - sprites' distribution. I do not recall nothing, apart S = 1/2 at^2. Occasionally, when the astronomical game became hard, some lights are shattered... :wink:

EDIT LATER:
For example: how truncating parabola?
Never at rest.
Massimo

Avatar
Topic author
Cham M
Posts: 4324
Joined: 14.01.2004
Age: 60
With us: 20 years 10 months
Location: Montreal

Re: New sprites nebula (from old)

Post #25by Cham » 27.08.2011, 01:04

Here are 19 models for you to try (two rings and 17 planetary-like nebulae) :

http://fsgregs.startlogic.com/Public_Fi ... ebulae.zip (1.9 MB)

Preview of four of these models (mostly "Rosette-like") :

nebulae.jpg


I can generate very easily an **industrial quantity** of these models with lots of variations (there are about 13 parameters to adjust). I haven't found yet the "great" parameter set, which generate "the" nebula :

1. Total number of sprites,
2. Color of sprites,
3. Transparency of sprites,
4. Internal radius of ring or spherical shell,
5. External radius of ring or spherical shell,
6. Thickness of ring or oblateness of spherical shell,
7. Minimum size of sprites,
8. Maximum size of sprites,
9. Two statistical parameters for the distribution of sprites in space (Beta distribution),
10. Two statistical parameters for the distribution of the size of sprites (another Beta distribution),
11. An index parameter for the way the sprites size is increasing over distance...

Wewh ! I don't know how to proceed with this huge parameter space ! :x :|


You can try editing the color, transparency and the PNG file used in the CMOD file to achieve various effects...
"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
Fenerit M
Posts: 1880
Joined: 26.03.2007
Age: 17
With us: 17 years 8 months
Location: Thyrrenian sea

Re: New sprites nebula (from old)

Post #26by Fenerit » 27.08.2011, 02:01

Just to know more about your methods, if only. Do you have made some experiments with the sprites' propriety "blend add" and "color f3"? The first is not related to the second only, doing the blending amongst points' colors and material texture, but acts as "a whole" upon the different materials; so that sprites of different blocks gets "overlaid" amongst them when viewed; causing, besides the color's changing, even interesting effects when the opacity of the material's blocks is not 1.
Never at rest.
Massimo

Avatar
Topic author
Cham M
Posts: 4324
Joined: 14.01.2004
Age: 60
With us: 20 years 10 months
Location: Montreal

Re: New sprites nebula (from old)

Post #27by Cham » 27.08.2011, 02:05

Fenerit wrote:Just to know more about your methods, if only. Do you have made some experiments with the sprites' propriety "blend add" and "color f3"? The first is not related to the second only, doing the blending amongst points' colors and material texture, but acts as "a whole" upon the different materials; so that sprites of different blocks gets "overlaid" amongst them when viewed; causing, besides the color's changing, even interesting effects when the opacity of the material's blocks is not 1.

Nope, I don't think I've played with this option (actually, I don't understand it). I need more info on this...
"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
Fenerit M
Posts: 1880
Joined: 26.03.2007
Age: 17
With us: 17 years 8 months
Location: Thyrrenian sea

Re: New sprites nebula (from old)

Post #28by Fenerit » 27.08.2011, 02:20

I take up from shell13_sprites.cmod. I do not post onto the code list because needs some bold.

material # 1 Blobs
emissive 0.8 0.15 0.35
diffuse 0.8 0.15 0.35
opacity 0.2
texture0 "blob.png"
blend add
end_material

mesh
vertexdesc
position f3
pointsize f1
color f3
end_vertexdesc

vertices 2000
-0.55067038 -0.97306839 -0.51381139 0.077105771 1 0 0
0.63306053 0.00073113642 -0.86487058 0.1124243 0 1 0
0.19803419 0.47836638 -0.63846478 0.074007063 0 0 1

In bold are the additions. "blend add" does the blending amongst the color's points and the material's texture. Yet this makes some changes in nebula looks. If such procedure is made also for other spites' blocks belonging to the same nebula, all the nebula is "blended add" and when the nebula is on screen, the closer sprites are blended with the further, doing some changes in apparence. Maybe you will not like what will be shown or maybe yes. Just FYI.
Never at rest.
Massimo

Avatar
Topic author
Cham M
Posts: 4324
Joined: 14.01.2004
Age: 60
With us: 20 years 10 months
Location: Montreal

Re: New sprites nebula (from old)

Post #29by Cham » 27.08.2011, 13:26

Fenerit,

when I try your suggestion, I'm getting some "vertex error" in the console. It doesn't work and I don't know why.
"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
Fenerit M
Posts: 1880
Joined: 26.03.2007
Age: 17
With us: 17 years 8 months
Location: Thyrrenian sea

Re: New sprites nebula (from old)

Post #30by Fenerit » 27.08.2011, 14:29

Cham wrote:Fenerit,

when I try your suggestion, I'm getting some "vertex error" in the console. It doesn't work and I don't know why.
Also myself found issues with such tecnique but is explained in Celestia's Wiki:

For nebula meshes, it may be useful to specify additive blending in the material definition by adding the line 'blend add'. This is especially appropriate for emission nebula, definitely not to be used for dark nebula like the Horsehead. Additively blended objects have the advantage of not needing to be depth sorted with respect to each other. Here's a slightly more complex sprite cmod that uses additive blending and per vertex colors so that each sprite has a different color:

#celmodel__ascii
material
diffuse 1 0 0
texture0 "gaussian.jpg"
blend add
end_material

mesh
vertexdesc
position f3
pointsize f1
color f3
end_vertexdesc

# row of sprites: red, green, blue
vertices 3
1 0 0 0.25 1 0 0
2 0 0 0.25 0 1 0
3 0 0 0.25 0 0 1

sprites 0 3
0 1 2

end_mesh


I this point for your case I think be the CMOD's placeholder that breaks the routines.

P.S. If you try the example above, it works.
Never at rest.
Massimo

Avatar
Topic author
Cham M
Posts: 4324
Joined: 14.01.2004
Age: 60
With us: 20 years 10 months
Location: Montreal

Re: New sprites nebula (from old)

Post #31by Cham » 27.08.2011, 14:56

With this small CMOD example (from Fenerit's message above), I'm getting an error in the console and the model doesn't show :

Error in model file : Invalid vertex attribute semantic 'color'

Chris ?
"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: 20 years 10 months
Location: Montreal

Re: New sprites nebula (from old)

Post #32by Cham » 27.08.2011, 15:11

Combining several models (from the pack of 19 models I gave on the previous page), you can get some pretty results :

neb.jpg
neb2.jpg


A view from the inside :

inside.jpg


SSC test code (the "Test 0" object is there so you can visit the inside of the nebula) :

Code: Select all

"Test 0" "Sol"
{
Radius 1

EllipticalOrbit {
Period    3
SemiMajorAxis   100.0
}
}

####
"shell13_sprites.cmod" "Sol"
{
Class "diffuse"
Mesh "shell13_sprites.cmod"
Emissive true
Radius 500

EllipticalOrbit {
Period    3
SemiMajorAxis   100.0
}
}

"shell9_sprites.cmod" "Sol"
{
Class "diffuse"
Mesh "shell9_sprites.cmod"
Emissive true
Radius 1100

EllipticalOrbit {
Period    3
SemiMajorAxis   100.0
}
}
"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
Fenerit M
Posts: 1880
Joined: 26.03.2007
Age: 17
With us: 17 years 8 months
Location: Thyrrenian sea

Re: New sprites nebula (from old)

Post #33by Fenerit » 27.08.2011, 16:44

Cham, first I apologize for the inconvenient but I solved that several months ago and I didn't recall it.
The "color f3" must be "color0 f3". This is undocumented on Wiki's example. I've modified your shell10_sprites.cmod by adding per-vertex colors and the "blend add" propriety. The placeholder doesn't create problem at all. Of course I'm not aware about your sprite's order, so colors have been assigned by chance, and they aren't "ordered".

Image

shell 10 CMOD is here. You can take a look to the changes
Never at rest.
Massimo

Avatar
Fenerit M
Posts: 1880
Joined: 26.03.2007
Age: 17
With us: 17 years 8 months
Location: Thyrrenian sea

Re: New sprites nebula (from old)

Post #34by Fenerit » 27.08.2011, 17:55

Another thing that could be experimenticed but of which, actually, I do not ever tried, is the use of "color0 f4" of which the fourth float is the per-vertex alpha; this would ensure a fine tuning on each point!
Last edited by Fenerit on 29.08.2011, 21:05, edited 2 times in total.
Never at rest.
Massimo

Avatar
Topic author
Cham M
Posts: 4324
Joined: 14.01.2004
Age: 60
With us: 20 years 10 months
Location: Montreal

Re: New sprites nebula (from old)

Post #35by Cham » 27.08.2011, 18:08

Very nice Fenerit ! Thanks a lot for that info.

Yes indeed, this should help creating better looking nebulae !

EDIT : Unfortunately, this also means that I will have MUCH more parameters to control. The nebulae parameters space is now really HUGE !

I just examined my Mathematica nebulae generator, and the extension to Fenerit's suggestion is trivial. This will bring a true revolution in Celestia ! However, I will have to do LOTS of experiments to find a proper parameters set to generate nicely looking models. :|
"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: 20 years 10 months
Location: Montreal

Re: New sprites nebula (from old)

Post #36by Cham » 27.08.2011, 18:36

Here's a first test, using Fenerit's suggestion.

Christmas ring ! :mrgreen:
colorring.jpg


Random sprites size, color and transparency !

This will allow smooth color and transparency graduations, smooth transition from the center to the exterior side.
"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
Fenerit M
Posts: 1880
Joined: 26.03.2007
Age: 17
With us: 17 years 8 months
Location: Thyrrenian sea

Re: New sprites nebula (from old)

Post #37by Fenerit » 27.08.2011, 18:57

I think you will able to do that in short. Just to conversating. If a sprites' order color is supposed choosed, its variance could be that of randomizing color's values into its range; that is, supposed red, +- reds and so on with the other orders' colors. For what concern the multi-sprites' block, in which a nebule can be assembled , the sequence should be "color0 f3", "color1 f3", "color2 f3"...
Never at rest.
Massimo

Avatar
Topic author
Cham M
Posts: 4324
Joined: 14.01.2004
Age: 60
With us: 20 years 10 months
Location: Montreal

Re: New sprites nebula (from old)

Post #38by Cham » 27.08.2011, 19:03

In about one hour, I should have something cool. M57 is coming ! ;-)
"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
Fenerit M
Posts: 1880
Joined: 26.03.2007
Age: 17
With us: 17 years 8 months
Location: Thyrrenian sea

Re: New sprites nebula (from old)

Post #39by Fenerit » 27.08.2011, 19:08

Yup! :wink: 8O There is some sort of time-warp by crossing the ocean? Too fast! :D
Never at rest.
Massimo

Avatar
Topic author
Cham M
Posts: 4324
Joined: 14.01.2004
Age: 60
With us: 20 years 10 months
Location: Montreal

Re: New sprites nebula (from old)

Post #40by Cham » 27.08.2011, 19:36

Here we go. The Mathematica nebula code has been modified to allow color and opacity smooth graduations. I didn't added the subtle randomisation of colors and opacity yet. I'll add this later (more statistical parameters to add).

colorneb.jpg


Here's the model :
color_test.cmod.zip


I'll add a linear three colors transition (from internal yellow to red in middle to exterior blue, for example).
"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”