Programmation 3D

De plus en plus d'applications en ligne, sur ordinateur de bureau ou appareils nomades, intègrent aujourd'hui des rendus 3D. La programmation 3D fait appel a des connaissances multiples aussi bien en infographie (modélisation), qu'en mathématiques et en développement de bas niveau, ce qui rend cette discipline assez complexe. Pour simplifier le travail des concepteurs, des solutions intégrés prenant en charge la partie la plus technique sont ainsi apparu, en particulier dans le domaine du jeu vidéo (par exemple Unity3D pour ne citer que lui, qui est à la fois un moteur de jeu et un outil de conception de haut niveau).

L'infographie 3D présente l'intérêt de pouvoir créer des objets virtuels en 3D. Quand bien même ceux ci sont ensuite visualisés en 2D, ils sont définis dans leurs trois dimensions et peuvent ainsi être exposés sous différents angles sans qu'il y ait besoin de redessiner une vue. On peut donc souhaiter réaliser des objets 3D sans pour autant s'intéresser aux rendus 3D. Cette étape de conception peut s'assimiler à la réalisation de maquette (virtuelle) en 3D.

De nombreux logiciels dédiés ou non à l'industrie permettent cette étape dite de modélisation 3D. Que l'utilisateur travaille de manière intuitive en façonnant progressivement son objet ou le conçoive en le paramétrant précisément, le logiciel enregistrera un ensemble de données géométriques et des caractéristiques graphiques qui permettront ensuite de le représenter. Selon le logiciel le paramétrage ou le façonnage intuitif sera plus ou moins aisé.

Cet objet 3D (ou s'il s'agit d'une composition plus complexe, cette scène 3D) peut avoir différente vocation, artistique, commerciale ou industrielle : de l'industrie du jeu vidéo aux trucages cinématographiques, de la conception architecturale aux visites virtuelles proposées par les agents immobiliers, de la bijouterie au design aéronautique, jusqu'à la conception de produits alimentaires... tous les secteurs peuvent être concernés. Et selon les besoins de simulation, de prototypage, de production automatisée ou encore de rendu en temps réel et d'interactivité, les solutions logicielles adaptées varieront énormément.


Rendu 3D et moteurs de rendu

On appelle rendu la représentation visuelle de l'objet ou de la scène 3D. Le rendu est une étape délicate : il requiert de la part de l'ordinateur de nombreux calculs, qui contribuent à rendre l'infographie 3D gourmande en puissance.

Le rendu peut prendre compte des conditions physiques spécifiques, comme par exemple l'éclairage. Plus ces conditions sont riches, et plus il y aura de calculs.

Ces calculs sont effectués à l'aide de ce qu'on appelle un moteur de rendu, lequel peut être à la fois une solution logicielle et/ou matérielle. Parmi les moteurs de rendu logiciel, on citera par exemple LuxRender, POV-Ray, V-Ray, ou Mental-Ray).

Les moteurs de rendu photoréalistes sont particulièrement appréciés dans les domaines du design et de l'architecture. Vous trouverez une présentation des principaux moteurs de rendu 3D photoréalistes dans l'article de la revue pixelcreation.fr Nos 5 premiers moteurs de rendu 3D photoréalistes et les 5 suivants.

Le rendu peut être une image 2D ou 3D, fixe ou animée, interactive ou non.


Le rendu 3D en temps réel

C'est le plus spectaculaire, le plus populaire aussi. Il est utilisé pour les jeux vidéos, la simulation de vol, les visites virtuelles ou encore le Web3D. Mais aussi dans l'imagerie industrielle ou la visualisation médicale.

Il est nécessaire dès qu'il y a interactivité, car celle-ci implique le calcul du rendu de l'image au fur et à mesure des interventions de l'utilisateur. Pour que le mouvement reste fluide, ce calcul doit pouvoir être fait très rapidement, souvent au détriment de la qualité de l'image. La puissance des ordinateurs s'étant énormément améliorée, cumulée à la généralisation des processeurs graphiques, on peut obtenir maintenant des résultats bluffants.

Parmi les moteurs de rendu 3D en temps réel, on citera par exemple Unity, Shiva, Nova ou Ogre 3D. Certains sont inclus dans les moteurs de jeux comme Unity.

Focus