REYES, Primitives & Some Philosophy

REYES is the abbre­vi­a­tion for ‘Ren­ders Every­thing You Ever Saw’. It is an algo­rithm devel­oped at Indus­trial Light and Magic in the early 80’s of the last cen­tury. This algo­rithm, in some form or another, is today used by most Ren­der­Man (RMan) com­pli­ant ren­der­ers and a few oth­ers, for exam­ple Side Effect’s VMantra. Speak­ing of RMan com­pli­ant ren­der­ers: AIR and Pixie (the lat­ter with some of its hiders) in par­tic­u­lar use dif­fer­ent approaches.

Basi­cally, REYES dices all geom­e­try into tiny poly­gons at ren­der­time. These poly­gons are so tiny that they are com­monly called microp­oly­gons. Under typ­i­cal cir­cum­stances they are about a pixel in size for the resp. image being ren­dered. This is also the rea­son why REYES ren­der­ers are com­monly referred to as “microp­oly­gon renderers”.

The mere details of REYES are beyond the scope of this essay, but a nice descrip­tion can be found in the SIGGRAPH 2000 RMan course notes. It is called ‘How Pho­to­Re­al­is­tic Ren­der­Man Works’. Actu­ally, an exact copy of this text can be found in the book ‘Advanced Ren­der­man — Cre­at­ing CGI for Motion Pic­tures’. So essen­tially, by down­load­ing the above PDF, you get this chap­ter of the book for free!

Prim­i­tive’ is the term used for the geo­met­ric objects that make up a scene. They are called prim­i­tives because there is no geom­e­try more atomic than a prim­i­tive in a scene. Let’s talk about prim­i­tives in most other ren­der­ers a bit first, to see why they are way cooler in a REYES renderer.

Pages: 1 2 3 4 5 6

3 Comments »

  1. Myles says:

    Moritz– nice lit­tle article.

    You may remem­ber me from such pro­duc­tions as ‘Ani­malia’ (I’m one of the joonya’s that sat next to you).

    Ques­tion after read­ing the arti­cle– If Sub­di­vi­sion is recal­cu­lated frame by frame in order to opti­mize microp­oly­gon num­bers, is it ever likely to encounter arti­facts caused by a timestep and result­ing mesh change. That is to say if the topol­ogy of the sur­face is chang­ing to incor­po­rate more or less poly­gons will the change every lead to prob­lems. I won­der­ing both about pos­si­ble sil­hou­ette issues and tex­ture prob­lems. I sup­pose what I’m really ask­ing is if I was to crank the shad­ing rate to 50 or 100 (assum­ing it lets me and the con­trol sur­face is suit­ably low poly) would the mesh pop in a ran­dom fash­ion either side of the ‘limit sur­face’ or would the sub­di­vi­sion remain, by some mir­a­cle, rel­a­tively uniform .

    Obvi­ously I would assume such vari­a­tions would be next to impos­si­ble to detect on a mov­ing object with a suit­able shad­ing rate but all the same I wonder.

    Myles

  2. Moritz says:

    Yes, it is indeed so that in REYES, the dic­ing of a mesh will change every frame, if that mesh is deforming/transforming and/or the cam­era is trans­form­ing or chang­ing para­me­ters, rel­a­tive to the gprim in question.

    This can lead to crawl­ing arti­facts on very slowly deform­ing geom­e­try (slowly, as in: lit­tle change over many frames and pos­si­bly motion blur not being used to worsen things). Par­tic­u­lal­rly displacement/bump map­ping is prone to expose the problem.

    Note, how­ever, that this is all hap­pen­ing in aligne­ment with the primtives’s UV para­me­ter­i­za­tion which (sup­pos­edly) is the same, direc­tion wise, over a sequence of frames. This and the fact that motion blur is almost always used in images com­ing out of REYES ren­der­ers, helps hid­ing the issue, if there is any vis­i­ble one.

    Con­sider the alter­na­tive in a ray tracer: every pixel is sam­pled (many times). Were a ray hits the prim­i­tive (aka: the ray-tracer’s “shad­ing rate”) has noth­ing to do with the UV para­me­ter­i­za­tion of the sur­face at all. Even with cor­rect fil­ter­ing, you can get sim­i­lar pop­ping of fea­tures but it will likely be much more pro­nounced than in a REYES renderer.

  3. cubrikaska says:

    la idea muy buena

RSS feed for comments on this post. / TrackBack URI

Leave a Reply

A Comment on the iPhone 4’s “Retina Display” Debate

Sev­eral blogs and mail­ing lists I fre­quent linked to an arti­cle inves­ti­gat­ing the valid­ity of Apple’s claims that the iPhone 4′s dis­play has a ‘ter­mi­nal’ res­o­lu­tion for the appli­ca­tion at hand: namely a human read­ing its dis­play at an ‘aver­age’ dis­tance (which, being unspec­i­fied in Apple’s press release, offers quite a bit of lat­i­tude for interpretation).

The arti­cle ignores sev­eral impor­tant facts.

Con­tinue »

On Plagiarism & Creativity in the Digital Age

A while ago there was a thread on the 3D-Pro mail­ing list that diverged from its orig­i­nal sub­ject and took a turn towards a debate about copyright.

The debate resulted when some­one dis­cov­ered that part of an image was being used as a back­drop for another image with­out giv­ing proper credit. It is note­wor­thy that the lat­ter work was not of com­mer­cial nature. The poster got very upset about this nev­er­the­less. I think what upset them most was the fact that the cre­ator of the derived work claimed copy­right. The poster called that per­son an “artist” (they used quotes to express their dis­agree­ment with the use of that term) who had “the filthy guts to rip of another (real) artist’s hard work”.

Con­tinue »

Planet Japan

I arrived in Tokyo last week but due to the sen­sory over­load this city imposes on the brain, par­tic­u­larly on a geek’s brain, I needed some time to con­tem­plate (read: process) my impres­sions before writ­ing any­thing about it.

Let me start by say­ing that I feel utterly stu­pid, by now, for not hav­ing vis­ited Japan ear­lier. My aunt is Japan­ese; through her I got to watch “Naus­caä of the Val­ley of the Wind” (in Japan­ese, w/o sub­ti­tles), when I was 11 years old, in 1985, the year after the movie came out. The images never left my head and I believe they were part of the rea­son I ended up pur­su­ing a career in film.

Con­tinue »