21
The Reyes Image Rendering Architecture Robert L.Cook Loren Carpenter Edwin Catmull

The Reyes Image Rendering Architecture Robert L.Cook Loren Carpenter Edwin Catmull

Embed Size (px)

Citation preview

Page 1: The Reyes Image Rendering Architecture Robert L.Cook Loren Carpenter Edwin Catmull

The Reyes Image Rendering Architecture

Robert L.Cook

Loren Carpenter

Edwin Catmull

Page 2: The Reyes Image Rendering Architecture Robert L.Cook Loren Carpenter Edwin Catmull

Reyes : Sommaire

• Introduction

• Analyse du problème

• Solutions choisies

• Description de l’algorithme de rendu

• Implémentation, extensions futures

• Conclusion

Page 3: The Reyes Image Rendering Architecture Robert L.Cook Loren Carpenter Edwin Catmull

INTRODUCTION

Page 4: The Reyes Image Rendering Architecture Robert L.Cook Loren Carpenter Edwin Catmull

Reyes : Introduction

• Article publié en 1987.

• Reyes = Radical EYE Software ,

Développé par Lucasfilm LTD. et utilisé par Pixar.

• Reyes est un système dont l’architecture a été conçue afin de générer rapidement le rendu photo réaliste de scènes 3D complexes.

Page 5: The Reyes Image Rendering Architecture Robert L.Cook Loren Carpenter Edwin Catmull

ANALYSE DU PROBLEME

Page 6: The Reyes Image Rendering Architecture Robert L.Cook Loren Carpenter Edwin Catmull

Reyes : Analyse du problème (1/2)

• Projet ambitieux Nécessité de repenser entièrement le processus de rendu.

• Complexité :Complexité géométrique (Quantité et diversité des modèles …)Apparence photo réaliste (Lumières, matériaux, déformations …)Animation (2 h de film à 24 fps

calculé en un an => ~ 3 min. par image)

Page 7: The Reyes Image Rendering Architecture Robert L.Cook Loren Carpenter Edwin Catmull

Reyes : Analyse du problème (2/2)

• Exigences :

Images de haute qualité (élimination des problèmes de moiré, d’aliasing,

…)

Flexibilité du logiciel (Incorporation de nouvelles techniques et indépendance vis à vis de l’environnement )

Linéarité du temps de rendu en fonction de la taille du modèle.

Page 8: The Reyes Image Rendering Architecture Robert L.Cook Loren Carpenter Edwin Catmull

SOLUTIONS CHOISIES

Page 9: The Reyes Image Rendering Architecture Robert L.Cook Loren Carpenter Edwin Catmull

Reyes : Solutions choisies (1/7)

I. Simplification des calculs:

- Utilisation d’un système de coordonnées adapté à chaque type de calcul (texturing, culling …)

- Optimisation des calculs (vectorisation, pipeline, parallélisme,…)

Page 10: The Reyes Image Rendering Architecture Robert L.Cook Loren Carpenter Edwin Catmull

Reyes : Solutions choisies (2/7)

II. Unité de modélisation : Micro polygones

- Non limitation du nombre de primitives dans le modèle.

-Uniformisation du type de données utilisé par les algorithmes.

- Subdivision récursive de chaque primitive jusqu’aux micro polygones.

Page 11: The Reyes Image Rendering Architecture Robert L.Cook Loren Carpenter Edwin Catmull

Reyes : Solutions choisies (3/7)

- Caractéristiques des micro polygones:

- quadrilatères plats.

- approximativement de la taille d’un demi pixel

- shading effectué par application d’une seule couleur.

(« shading » = Rendu final)

Page 12: The Reyes Image Rendering Architecture Robert L.Cook Loren Carpenter Edwin Catmull

Reyes : Solutions choisies (4/7)

III. Utilisation des textures:

1. Pour la lumière :

- approximation des effets de lumières non locaux (illumination globale,…).

- lancer de rayon très coûteux, donc on approxime aussi les effets de lumières locaux (réflexion, réfraction, ombres…) par des textures.

[environment maps, shadow maps]

Page 13: The Reyes Image Rendering Architecture Robert L.Cook Loren Carpenter Edwin Catmull

Reyes : Solutions choisies (5/7)

2.Pour les primitives :

- couleur, nature des surfaces.

- perturbation de la normale.

- déformation (mouvements).

[texture maps, bump maps, displacement maps]

conséquence : beaucoup de textures, donc

nécessité d’optimiser leurs accès.

Page 14: The Reyes Image Rendering Architecture Robert L.Cook Loren Carpenter Edwin Catmull

Reyes : Solutions choisies (6/7)

C.A.T : Coherent Access Texture

(i.e qui se calquent sans problème sur la surface)

R.A.T : Random Acces Texture

Par exemple, environnement map dépend de la normale de la surface, alors que le bump map est de type C.A.T

Page 15: The Reyes Image Rendering Architecture Robert L.Cook Loren Carpenter Edwin Catmull

Reyes : Solutions choisies (7/7)

IV. Utilisation d’un stochastic sampling:

- Point sampling : simple et puissant, mais crée de l’ aliasing, incompatible avec l’exigence de qualité d’image.

- Stochastic sampling (méthode de Monte Carlo) remplace l’aliasing par du bruit, plus acceptable.

(Utilisation de « jittering »)

Page 16: The Reyes Image Rendering Architecture Robert L.Cook Loren Carpenter Edwin Catmull

DESCRIPTION DE L’ ALGORITHME DE RENDU

Page 17: The Reyes Image Rendering Architecture Robert L.Cook Loren Carpenter Edwin Catmull

Reyes : Description de l’algorithme de rendu

PRIMITIVES:

bound : délimite les frontières de la primitive.

dice : convertit une primitive en une grille de micro polygones.

split : convertit une primitive en primitives.

cull : ignore pour l’affichage.

MICRO POLYGONES:

shade : aspect de toute la grille.

sample : division de la grille.

back door : rendu « externe »

visibility : screen space / z-buffer.

filter : production des pixels.

Page 18: The Reyes Image Rendering Architecture Robert L.Cook Loren Carpenter Edwin Catmull

IMPLEMENTATION

Page 19: The Reyes Image Rendering Architecture Robert L.Cook Loren Carpenter Edwin Catmull

Reyes : Implémentation

• Grosse consommation de mémoire pour le z-buffer Nécessité de modifier l’algorithme original par subdivision de l’espace en rectangles.

• Ajout de quelques fonctionnalités.

• Implémentation effective de cette version modifiée de l’algorithme en C.

Page 20: The Reyes Image Rendering Architecture Robert L.Cook Loren Carpenter Edwin Catmull

CONCLUSION

Page 21: The Reyes Image Rendering Architecture Robert L.Cook Loren Carpenter Edwin Catmull

Reyes : Conclusion

• Reyes répondait aux attentes.

• Points positifs : simplicité des calculs, gestion des textures (accès), …

• Possibilités d’amélioration: effectuer le sampling avant le shading, améliorer la représentation de certaines primitives par les micro polygones …

• Successeur = Renderman (Pixar).