Informatique graphique 3

KINIAAG1 - M2 IAFA - UPS

Loïc Barthe
David Vanderhaeghe

L'équation du rendu

\[\begin{aligned} & L_i(p, \omega_i) = L_o(vis(p), -\omega_i)\\ & L_o(x, \omega_o) = E(x, \omega_o) + \int_{\Omega} L_i(x, \omega_i) \rho(x, \omega_o, \omega_i) \cos\theta_i\partial \omega_i \end{aligned} \]

Pipeline de rendu temps réel

Optimisation du pipeline de rendu temps réel

Représentation des données

  • Vertex
    • Position + ensemble de données
  • Descriptions des primitives (triangles)
    • Un cube, 6 faces, 12 triangles, 12 × 3 vertices ?

Forward shading

  • Faire une passe de z + ambient + normal
  • Une passe par lumière
  • Quid des objets transparents ?

Rendu différé

Rendre les données d'entrées de la fonction de shading

Limite du nombre de lumière

  • Plus il y a de lumière, plus ca prends du temps
  • Même si certains pixels ne sont éclairé que par un ou deux lumières
  • Idée : decouper l'image, et regarder quels sont les lumière qui ont effectivement un impact sur un groupe

Rendu par regroupement

Many lights

VPL

Imperfect shadow maps