0
$\begingroup$

Let's suppose that we have a light source. Which of the following are correct for the tree of recursive ray-tracing (ray tree) that create when we make the colors for each pixel in the screen. Which of the following are correct:

a) if the scene contains one non-convex polyhedron (random shape and position) then we can't have a bound for the height of the tree in general. (Even the camera is outside of the object)

b) if the scene contains two convex polyhedrons then the height of the tree can be at most 2 independent of the position of the camera and the position of objects (the camera is outside two objects)

c) if the scene contains two non-convex polyhedrons (random shape and position) then we can't have a bound for the height of the tree in general. (Even the camera is outside of the object)

d) if the scene contains one convex polyhedron then the height of the tree can be at most 1 independent of the position of the camera and the position of objects (the camera is outside of the object)

e) if the scene contains one non-convex polyhedron then the height of the tree can be at most 1 independent of the position of the camera and the position of the object (the camera is outside of the object)

I am confused about the choice of polyhedrons (convex or non-convex), I can't understand the difference. The ray that inserts into an object from the front after we have polyhedrons always leave from the back?

Also, I don't understand how the camera inside or outside of objects can help to make the ray tree. If the camera is inside an object which the difference of been out of one?

$\endgroup$
1
$\begingroup$

Note: Questions like this may be a better fit on Computer Graphics SE.

I assume that you're talking about reflective surface interactions only, and are ignoring transmission, subsurface scattering, and other kinds of interaction like that. In which case, the outgoing ray of the interaction must always be within a hemisphere centred on the normal to the surface at the interaction point. That is what "reflective" means.

So if the object is convex and the incoming ray originates from outside the object, the outgoing ray cannot possibly intersect the same object.

This isn't true if the object is concave (since part of the object may be "visible" inside the hemisphere), or the incoming ray originates inside the object (an internal reflection is internal).

Did that answer your question?

$\endgroup$
4
  • $\begingroup$ I did not get the answer that i wanted. I will try to explain it more. if a ray R1 inserts into a convex polyhedron object from front then always leave from the back another ray R2. So for convex objects i believe that we can define a height for the tree. if the object is non-convex then we can have multiple different rays that insert and leave in the object. Because there are parts of object that if we get a line are not all in this object. So can we define as upper bound the number of vertices (or something else) of the object as the maximum number of possible rays ? $\endgroup$
    – Maria Zak
    Jun 16 at 13:36
  • $\begingroup$ For example in the link erich.realtimerendering.com/ptinpoly in first image can i set a bound for the maximum points that from an origin ray other rays can intersect ? $\endgroup$
    – Maria Zak
    Jun 16 at 13:41
  • $\begingroup$ I don't know what you mean by "the tree". I think you're either talking about the tree of rays spawned in Whitted-style raytracing (or path tracing), or you're talking about a specific kind of ray acceleration structure, but it's not clear to me which. $\endgroup$
    – Pseudonym
    Jun 16 at 13:57
  • $\begingroup$ An example of the tree that i reference you can find here www3.cs.stonybrook.edu/~cse328/2021-lecture-notes/… (35/92) $\endgroup$
    – Maria Zak
    Jun 16 at 14:45

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.