shadow on plane

Started by
3 comments, last by alvaro 11 years, 4 months ago
Hi

im trying to work out how to get the "shadow" of a sphere which is positioned on a plane. The light is a point somewhere above the sphere. The shadow will be a cone/plane intersection that is a ellipse or maybe a parabola/hyperbola in weird cases. what i would like is the 2 radii for the ellipse and the points where the ellipse "starts" and "ends" so i might stretch a pre made "shadow" image to the right size and just place it there. Has anyone encountered this before?

thank you for your time

[sharedmedia=core:attachments:12865]
Advertisement
I've encountered it. Why?
You might want to look up the math for conic sections:

http://en.wikipedia....i/Conic_section
Look up texture projection. You should be able to create a projection matrix (based on the light source and the sphere positions) that, when applied to the world space position of each vertex of the surface you're projecting onto, generates a texture coordinate for that vertex.

The projection of a sphere on a plane is an ellipse. I can think of several strategies to compute exactly what ellipse it is. For instance, you can compute the lowest and highest ray that are tangent to the sphere, intersect them with the ground plane and that will give you the major axis of the ellipse. The point where the sphere touches the ground is a focus of the ellipse. That's already enough information to recover the ellipse exactly.

This topic is closed to new replies.

Advertisement