POV-Ray : Newsgroups : povray.general : nasty issues rendering extremely large objects Server Time
2 Nov 2024 01:22:15 EDT (-0400)
  nasty issues rendering extremely large objects (Message 1 to 8 of 8)  
From: Florin Andrei
Subject: nasty issues rendering extremely large objects
Date: 14 Oct 2010 14:05:00
Message: <web.4cb744c091bc326e7411a7fb0@news.povray.org>
I'm trying to render the Ringworld, from the perspective of someone standing on
it.

http://en.wikipedia.org/wiki/Ringworld#Ringworld_engineering

But I'm running into all sorts of trouble. Here's an initial attempt, using the
metric system for all distances:

http://pastebin.com/raw.php?i=4Cib1tiy

Command-line is:

povray torus.pov +P +W1200 +H675 -visual DirectColor

This is the result:

http://i.imgur.com/N3Hav.png

The distant end is cut off and the near portion is not rendered at all.

I changed from meters to kilometers (all the #declare numbers are 1000x
smaller), and this is the result:

http://i.imgur.com/fxZ7K.png

The far end is better but the near portion is still clipped. So I moved the
subject a lot higher: instead of 2 m, let's put the subject at 2 km:

http://i.imgur.com/WfyWz.png

Better, but there's still weird clipping. So I put the subject at 2000 km above
the Ringworld:

http://i.imgur.com/05s36.png

Okay, so this looks correct, but it's not what I want; it's not the Ringworld as
seen from someone standing on it (as opposed to flying a spaceship at 2000 km
above it).

It looks like I'm running into issues with math precision. Any suggestions?


Post a reply to this message

From: Florin Andrei
Subject: Re: nasty issues rendering extremely large objects
Date: 14 Oct 2010 14:50:01
Message: <web.4cb74fde4bd3fcf47411a7fb0@news.povray.org>
Here's a perspective view from afar, all numbers are scaled down so I don't run
into issues again, but the proportions are correct:

http://i.imgur.com/mHknm.png

That tiny thing in the middle is the Sun. :)

http://pastebin.com/raw.php?i=Ht2J3p5E

povray scale.pov +P +W1200 +H675 -visual DirectColor +A0.1 +AM2

Now, if I could only zoom in and "land" the camera on the inside of the ring and
render it correctly, at scale, from the perspective of someone standing on the
ring, without clipping or math issues, that would be great.


Post a reply to this message

From: Darren New
Subject: Re: nasty issues rendering extremely large objects
Date: 14 Oct 2010 15:03:37
Message: <4cb75409$1@news.povray.org>
Florin Andrei wrote:
> Here's a perspective view from afar, all numbers are scaled down so I don't run
> into issues again, but the proportions are correct:

I think the problem is not the magnitude but the precision. POV-Ray uses 
floats internally, so trying to model something 200 million kilometers apart 
with a detail scale of 1 meter isn't going to work so well.  Plus, there are 
bits in the code to clip sufficiently distant geometry that I'm sure someone 
else can tell you about. I don't think you're going to be able to model this 
in a simple and naive way. You'll need to do something less obvious, like 
having different models at different points in the animation.

(Note that "naive" isn't a pejorative term here.)

-- 
Darren New, San Diego CA, USA (PST)
   Serving Suggestion:
     "Don't serve this any more. It's awful."


Post a reply to this message

From: Florin Andrei
Subject: Re: nasty issues rendering extremely large objects
Date: 14 Oct 2010 15:15:01
Message: <web.4cb7562e4bd3fcf47411a7fb0@news.povray.org>
Darren New <dne### [at] sanrrcom> wrote:
> I think the problem is not the magnitude but the precision. POV-Ray uses
> floats internally, so trying to model something 200 million kilometers apart
> with a detail scale of 1 meter isn't going to work so well.  Plus, there are
> bits in the code to clip sufficiently distant geometry that I'm sure someone
> else can tell you about. I don't think you're going to be able to model this
> in a simple and naive way. You'll need to do something less obvious, like
> having different models at different points in the animation.
>
> (Note that "naive" isn't a pejorative term here.)

I think my message was misleading - when I said "zoom in" I wasn't thinking of
doing an animation. I'm only interested in the final static view, standing on
the surface of the ring.

It does seem to be some sort of precision limit or error, indeed.


Post a reply to this message

From: Bill Pragnell
Subject: Re: nasty issues rendering extremely large objects
Date: 14 Oct 2010 15:50:00
Message: <web.4cb75e3e4bd3fcf49832b76e0@news.povray.org>
"Florin Andrei" <nomail@nomail> wrote:
> It does seem to be some sort of precision limit or error, indeed.

I'm afraid there's not much you can do about it... for what it's worth, the view
seen by an observer 2m above the ring floor isn't really any different from a
view from 1000m above the ring floor.

For more detailed discussion and much rambling on the subject, see also these
threads:

http://news.povray.org/povray.binaries.images/thread/%3C436404f3$1@news.povray.org%3E/

http://news.povray.org/povray.binaries.images/thread/%3C4c14c7d2%40news.povray.org%3E/

http://news.povray.org/povray.binaries.images/thread/%3C4c234991@news.povray.org%3E/

http://news.povray.org/povray.binaries.images/thread/%3Cweb.4c1fd41611a7b4754f28787e0@news.povray.org%3E/

Bill


Post a reply to this message

From: Le Forgeron
Subject: Re: nasty issues rendering extremely large objects
Date: 14 Oct 2010 15:58:01
Message: <4cb760c9$1@news.povray.org>
Le 14/10/2010 21:12, Florin Andrei nous fit lire :
> Darren New <dne### [at] sanrrcom> wrote:

> I think my message was misleading - when I said "zoom in" I wasn't thinking of
> doing an animation. I'm only interested in the final static view, standing on
> the surface of the ring.
> 
> It does seem to be some sort of precision limit or error, indeed.

I should try... but I noticed that you used a single cylinder in your
scene. Does it change anything if you use instead a CSG of 2 cylinders,
so that the actual ring is more than a foil ?
(in fact, you would need more to make the walls)

Given the usual range & precision, I wonder if one unit = 100km would
not be better ?
(that make the view point about 0.00002 away)
Also a caveat: if the <0,0,0> is the sun, you gonna have problem to
stand on the ring.
You might better enjoy having your feet as <0,0,0>, translating your
ring to match.

And I never get the "artificial gravity" by rotating: centrifugal force
does not exist (it's a pseudo force), and I believe the gravity
direction might not be fully centrifugal: the coriolis effect would
slant it a bit away from the center


Post a reply to this message

From: Darren New
Subject: Re: nasty issues rendering extremely large objects
Date: 14 Oct 2010 17:44:08
Message: <4cb779a8$1@news.povray.org>
Le_Forgeron wrote:
> Given the usual range & precision, I wonder if one unit = 100km would
> not be better ?

I think the problem is not so much the absolute size in units as it is the 
difference between the smallest object and the biggest object.

If you only have six decimal digits of precision in your float, you're not 
going to be able to represent the difference between
   1.23456789012345 and
   1.23456789012348
any more than you will if you make them
   1.23456789012345E+10 and
   1.23456789012348E+10

> And I never get the "artificial gravity" by rotating: centrifugal force
> does not exist (it's a pseudo force), 

It certainly exists. It just only exists for an accelerated observer.

> the coriolis effect would slant it a bit away from the center

Yes, but that's true because the ringworld is rotating, not because of 
centrifugal force. The earth has corilois effects too.

-- 
Darren New, San Diego CA, USA (PST)
   Serving Suggestion:
     "Don't serve this any more. It's awful."


Post a reply to this message

From: Alain
Subject: Re: nasty issues rendering extremely large objects
Date: 14 Oct 2010 19:42:35
Message: <4cb7956b$1@news.povray.org>
Le 2010-10-14 15:57, Le_Forgeron a écrit :
> Le 14/10/2010 21:12, Florin Andrei nous fit lire :
>> Darren New<dne### [at] sanrrcom>  wrote:
>
>> I think my message was misleading - when I said "zoom in" I wasn't thinking of
>> doing an animation. I'm only interested in the final static view, standing on
>> the surface of the ring.
>>
>> It does seem to be some sort of precision limit or error, indeed.

It is a floating point precision limit. To render that corectly, you'd 
need quad- or higher precision, but your FPU is limited to double.
Others have used a plane to replace the missing fore ground part.

>
> I should try... but I noticed that you used a single cylinder in your
> scene. Does it change anything if you use instead a CSG of 2 cylinders,
> so that the actual ring is more than a foil ?
> (in fact, you would need more to make the walls)
>
> Given the usual range&  precision, I wonder if one unit = 100km would
> not be better ?
> (that make the view point about 0.00002 away)
> Also a caveat: if the<0,0,0>  is the sun, you gonna have problem to
> stand on the ring.
> You might better enjoy having your feet as<0,0,0>, translating your
> ring to match.

The problem is not the absolute value given to an unit, it's de range 
between the largest values and the smaller ones used.

>
> And I never get the "artificial gravity" by rotating: centrifugal force
> does not exist (it's a pseudo force), and I believe the gravity
> direction might not be fully centrifugal: the coriolis effect would
> slant it a bit away from the center

The effective gravity of the Ring world on the surface is exactly zero, 
but the sun's gravity is not and tend to pull everything UP. The 
perceived gravity comes from it's rotation and the "centrifugal" force 
must overcome the sun's gravity.
Now, centrifugal force in a perceived force relative to an object moving 
on a circular path.

The coriolis effect is minuscule here on earth and only works at large 
scale over periods of many hours and days, it is not effective under the 
tropics, and is maximum at the poles.
On the ring world, given the dimentions and the relative thickness of 
the athmosphere, it would be absolutely negligeable, and would only 
cause cylindrical systems parallel to the ground. It would have 
absolutely NO effect on gravity.
What CAN affect the direction of gravity is Relativity and the time 
gravity take to come from the sun compared to the ring's rotation. That 
exact same effect will also slightly shift the apparent sun's position 
away from perfectly over you.

Given the scale and proportions, it's very acurate to represent the Ring 
world as the surface of an open cylinder. At less than a Km thickness 
compared to over 100 000 000Km radius, there is practicaly no diference.



Alain


Post a reply to this message

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.