Page 1 of 2
Rotating Storm .ssc question
Posted: 23.03.2008, 16:24
by eburacum45
One of the Orion's Arm contributors, Felipe Brando, and myself are trying to make a rotating storm texture, specifically for a tidally locked Earth-like planet similar to the world Aurelia shown on National Geographic (though the idea would work for any rotating storm).
I tried placing the storm on a cloudlayer associated with a slightly smaller planet inside the main planet; this acheived the effect of a cloud layer which rotates around a different axis. But I want that axis to always point at the local star, if possible.
Is there a way of fixing the rotation of the inner planet so that it's axis of rotation always points towards the local star? I have tried using the PrecessingOrbit declarations, but I can't make them work at all- the planet just becomes invisible.
Can anyone give us an idea how to use the Precessing Orbit declarations (or any other instructions) to make an object which rotates along an axis pointing toward the local star?
Alternately, I believe there is a simple way of locating an object on or above a planet using LongLat declarations; using this it should be possible to locate a rotating storm at any location in a planet's atmosphere. Any ideas, please?
Posted: 23.03.2008, 16:31
by Chuft-Captain
Posted: 23.03.2008, 16:35
by eburacum45
Incidentally, here is the sort of effect we are attempting- an image from the program about Aurelia
the storm remains constantly at the subsolar point, according to the simulation: see here
http://en.wikipedia.org/wiki/Aurelia_%2 ... ons_tested
Posted: 23.03.2008, 16:38
by eburacum45
Chuft-Captain wrote:http://en.wikibooks.org/wiki/Celestia/Reference_Frames#Reference_Frames
Have a look at the TwoVector example
Thanks.
Here is the section of the Wiki book in question;
--------
TwoVector
{
Center <object name>
Primary <axis>
Secondary <axis>
}
----------
How would I fill in the blanks, and where in the .ssc would I place this data?
Posted: 23.03.2008, 18:14
by chris
Here's an example of how to use a two-vector frame to orient the z-axis of the planet toward its Sun:
Code: Select all
"Aurelia" "Ross 154"
{
Color [ 0.3 0.5 1.0 ]
Texture "blueplanet.*"
Radius 6000
Atmosphere {
Height 60
CloudHeight 7
CloudSpeed 65
CloudMap "earth-clouds.*"
Mie 0.001
MieAsymmetry -0.25
Rayleigh [ 0.001 0.0025 0.006 ]
MieScaleHeight 12
}
EllipticalOrbit {
Period 0.5
SemiMajorAxis 0.25
Eccentricity 0
Inclination 0
AscendingNode 80
LongOfPericenter 24
MeanLongitude 340
}
FixedRotation { }
}
Modify "Aurelia" "Ross 154"
{
BodyFrame
{
TwoVector
{
Center "Ross 154/Aurelia"
Primary {
Axis "z"
RelativePosition { Target "Ross 154" }
}
Secondary {
Axis "x"
RelativeVelocity { Target "Ross 154" }
}
}
}
}
The planet has a fixed orientation within it's reference frame; the frame itself is responsible for the change in orientation with respect to the stars. This misrepresents the dynamics of the system, but it does give the visual effect that you want.
The BodyFrame is set with Modify because it references the body it applies to. This is not permitted in 1.5.0, but 1.6.0 does allow it. Thus, in the future the BodyFrame can go in the main object definition.
--Chris
Posted: 23.03.2008, 18:24
by zhar2
Hi im felipe the one working with steve, the above code does not seem to work, instead there is no system at all.
Posted: 23.03.2008, 18:28
by chris
zhar2 wrote:Hi im felipe the one working with steve, the above code does not seem to work, instead there is no system at all.
What version of Celestia are you using?
--Chris
Posted: 23.03.2008, 18:36
by zhar2
Version 1.5.0
it works now, just a minor mistake, now ill just fix the surface texture.
And make the storm move to other way.
Posted: 23.03.2008, 18:46
by zhar2
[img=http://img231.imageshack.us/img231/8211/hghgky2.th.jpg]
Here is the problem now, the north pole of the atmosphere is towards the star, but so its the planets.
How con i resolve this.
Posted: 23.03.2008, 22:50
by eburacum45
That is the easy part; simply create another slightly bigger planet outside the original planet (but underneath the clouds), with the same orbital characteristics. This planet wants to be tidally locked in the normal way (also easy to acheive; simply give the second, outer planet no rotation).
Give the second planet a radius 100 km more than the first planet (and raise the clouds to 110km or so.)
This arrangement should work fine, as long as eclipse shadows and cloud shadows are switched off. If you switch these on, the planet goes dark as if it were eclipsing itself.
Posted: 23.03.2008, 22:53
by chris
You need to make a new texture for the planet. There's no way in Celestia to make the rotation axis for the cloud layer different than the planet's rotation axis. The other alternative is the once mentioned by eburacum: make a separate planet for the cloud layer. This suffers from the problems mentioned in his post. Modifying the texture is the more desirable (albeit more labor intensive) approach.
--Chris
Posted: 23.03.2008, 22:54
by eburacum45
I think this should work (although I can't test it, as I'm not on my Celestia computer)
Code: Select all
"Aurelia (inner)" "Ross 154"
{
Color [ 0.3 0.5 1.0 ]
Texture "blueplanet.*"
Radius 6000
Atmosphere {
Height 160
CloudHeight 110
CloudSpeed 65
CloudMap "earth-clouds.*"
Mie 0.001
MieAsymmetry -0.25
Rayleigh [ 0.001 0.0025 0.006 ]
MieScaleHeight 112
}
EllipticalOrbit {
Period 0.5
SemiMajorAxis 0.25
Eccentricity 0
Inclination 0
AscendingNode 80
LongOfPericenter 24
MeanLongitude 340
}
FixedRotation { }
}
Modify "Aurelia (inner)" "Ross 154"
{
BodyFrame
{
TwoVector
{
Center "Ross 154/Aurelia"
Primary {
Axis "z"
RelativePosition { Target "Ross 154" }
}
Secondary {
Axis "x"
RelativeVelocity { Target "Ross 154" }
}
}
}
}
"Aurelia (outer)" "Ross 154"
{
Color [ 0.3 0.5 1.0 ]
Texture "blueplanet.*"
Radius 6100
EllipticalOrbit {
Period 0.5
SemiMajorAxis 0.25
Eccentricity 0
Inclination 0
AscendingNode 80
LongOfPericenter 24
MeanLongitude 340
}
}
Posted: 23.03.2008, 23:00
by eburacum45
Thanks, by the way, to Chris and Chuft-Captain...
Posted: 23.03.2008, 23:12
by zhar2
Here it is finished, although i had to change the map projection so no code change had to be made and it lost a bit of resolution in the process.
But ill try to test out steves code too, and thank you all very much.
Posted: 23.03.2008, 23:25
by Eb
Im assuming that your using an "Optical illusion" to do the storm, correct?
By "Optical illusion" i mean Tipping the planet on its side and modding the texture to make it appear to have a normal axis.
Posted: 23.03.2008, 23:27
by zhar2
Yes i suppose thats what we've done.
Posted: 24.03.2008, 00:12
by eburacum45
Actually, since you have been able to adjust the orientation of the texture, your version is probably the best option. To increase the resolution I suppose we could try virtual textures- not something I've tried yet, but they might be useful in this case.
Posted: 24.03.2008, 00:17
by zhar2
That sounds interesting, specially as i inteded to make this one o my highest res textures but due to difficulties it was not.
Posted: 24.03.2008, 00:25
by Eb
zhar2 wrote:Yes i suppose thats what we've done.
Do i detect a bit of sarcasm in that comment?
Heh, If so, Forgive me, I tend to point out the obvious alot

Posted: 24.03.2008, 00:30
by zhar2
Oh no sarcasm at all, i just wasnt sure my self if what we did fitted into the way you described it.