"Geoff Wedig" wrote:
> Have you considered only rotating the bit of the ray
> that you haven't already travelled?
In effect that's what I'm doing. The rotated OldLocation is only used for
inertia calculations. The new trace ray is sent from the collision point
(plus offset) so the rotated OldLocation is irrelevant.
> > In order to avoid errors the ray is moved a tiny bit
> > along the normal vector of the surface:
>
> > \ /
> > \ /
> > <-\---o---/-<
> > `-----?
>
> This might cause errors with highly contorted surfaces.
> If it is moved along the normal, it could end up inside
> the upper surface.
It is moved by a very very small amount by the normal vector so it shouldn't
cause any problems.
> You might want to move a short distance along the ray itself.
> This means that any movement of o will remain outside the surface.
On the contrary. Because of the coincident surfaces problem I have to move
the ray along the normal vector or else it will be a matter of randomness
whether POV-Ray will decide that the ray is inside or outside the object.
Just like you can't expect correct behavior if you place a light_source just
on the surface of an object.
Rune
--
3D images and anims, include files, tutorials and more:
Rune's World: http://rsj.mobilixnet.dk (updated May 10)
POV-Ray Users: http://rsj.mobilixnet.dk/povrayusers/
POV-Ray Webring: http://webring.povray.co.uk
Post a reply to this message
|