IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

DirectX Discussion :

DirectX passe à l’ère du lancer de rayons


Sujet :

DirectX

  1. #1
    Responsable Qt & Livres


    Avatar de dourouc05
    Homme Profil pro
    Ingénieur de recherche
    Inscrit en
    Août 2008
    Messages
    26 609
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur de recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2008
    Messages : 26 609
    Points : 188 582
    Points
    188 582
    Par défaut DirectX passe à l’ère du lancer de rayons
    Presque tous les jeux sous Windows utilisent DirectX pour leur rendu. Cette technologie de Microsoft fournit une certaine couche d’abstraction des cartes graphiques et facilite l’utilisation de leurs fonctionnalités avancées. Après la version 11, sortie en 2009 avec Windows Vista, DirectX semblait quelque peu stagner : peu d’évolutions, alors que les cartes graphiques ont continué à se perfectionner. Six ans plus tard, avec Windows 10, Microsoft a annoncé DirectX 12, une toute nouvelle génération : l’API cherche plus à exposer directement le matériel qu’à fournir une couche d’abstraction (la différence entre ces deux versions est très similaire à celle entre OpenGL et Vulkan).


    Malgré ces améliorations techniques, le rendu en lui-même des jeux n’a pas beaucoup changé depuis le début de la 3D sur ordinateur : il se base toujours sur le principe de la matricialisation de l’image (rasterisation). Les objets en 3D sont projetés sur un plan, celui de la caméra, ce qui forme l’image à afficher. Cette opération s’effectue par un produit matriciel, pour lequel les cartes graphiques fournissent une excellente performance. Avec les années et la puissance de calcul, divers effets ont pu être implémentés par-dessus à l’aide de diverses sortes de nuanceurs (shaders) : appliqués par pixel (pixel ou fragment shader), par polygone (geometry shader) ou par sommet (vertex shader), ils peuvent influencer considérablement le rendu et l’amener à un très haut niveau de photoréalisme.


    Depuis le début, une autre technique de rendu est annoncée : le lancer de rayons (ray tracing). Le principe en est totalement différent : il s’agit de simuler l’entièreté du trajet des rayons de lumière (d’où le nom), entre le moment où ils sont émis par une lumière jusqu’à l’instant où ils franchissent le plan de la caméra, en étant notamment réfléchis sur tout objet se trouvant sur le chemin. Évidemment, le réalisme d’un tel rendu est bien meilleur que par matricialisation, mais demande une puissance de calcul phénoménale — pour afficher ne fût-ce qu’une image, il peut falloir plusieurs heures. C’est la raison pour laquelle les films 3D utilisent le lancer de rayons, sur une batterie d’ordinateurs puissants, depuis plus d’une dizaine d’années (par exemple, Renderman, le moteur de rendu utilisé par le célèbre studio d’animation Pixar, est passé d’un rendu par matricialisation dans les années 1980 à un rendu uniquement par lancer de rayons en 2016).

    Au niveau matériel, Imagination Technologies avait déjà proposé des cartes graphiques avec une accélération particulière du lancer de rayons, mais avec un succès assez mitigé à l’époque (c’était en 2016).





    DirectX Raytracing



    Avec des cartes graphiques de plus en plus puissantes, le rêve d’utiliser le lancer de rayons pour l’entièreté de scènes interactives (où les images doivent être prêtes en une fraction de seconde, car l’utilisateur interagit sans cesse avec l’application — déplacer la caméra, un objet, etc.) persiste depuis des décennies… et pourrait très bientôt devenir réalité ! En effet, la nouveauté principale annoncée cette année par Microsoft lors de la Game developer conference est DXR, l’acronyme de DirectX Raytracing. Il s’agit d’une interface pour réaliser un rendu en temps réel par lancer de rayons. Celle-ci a déjà permis de réaliser un certain nombre de démonstrations technologiques.



    L’effet sur le rendu est bluffant, surtout quand on le compare à un rendu plus traditionnel. Le lancer de rayons permet ainsi d’afficher des réflexions très précises d’objets qui n’existent pas dans la vue de la caméra.



    Les réflexions montrées sont entièrement correctes d’un point de vue physique, peu importe la surface considérée.



    De manière générale, toute la scène profite de ce regain de réalisme.



    Techniquement, toute la scène n’est pas encore affichée par lancer de rayons — la puissance de calcul n’est pas encore disponible. DirectX Raytracing fonctionne en spécifiant une certaine zone qui doit être affichée par lancer de rayons (souvent bien plus petite que l’écran au complet), par exemple les objets dont la surface est réfléchissante. Le rendu est configuré par un nouveau type de nuanceurs, appliqués pour chaque objet dans la scène, pour indiquer les cas d’intersection entre un rayon et une surface (sans oublier les cas où le rayon rebondit sur plusieurs surfaces).


    Par ailleurs, Microsoft est déjà prêt au niveau de l’outillage : son débogueur PIX gère nativement l’intégralité des nouvelles fonctionnalités apportées par DirectX Raytracing, bien que de manière expérimentale. Il suffit de mettre à jour sa version de Windows 10 (pour bénéficier de la mise à jour de DirectX, uniquement disponible à ceux en mode fast ring pour le moment), puis d’installer la dernière version de PIX.



    Côté implémentation

    Comme pour le reste de DirectX, Microsoft fournit surtout une interface à respecter, une bonne partie du travail doit être faite par les fabricants des cartes graphiques à travers leurs pilotes. La performance dépendra donc fortement de ces implémentations et du matériel disponible. Néanmoins, une implémentation utilisant DirectCompute sera disponible et utilisée chaque fois qu’une implémentation plus spécifique n’est pas disponible — de telle sorte que toute carte graphique compatible DirectX 12 pourra utiliser ce module. Ce mode de fonctionnement pourrait se répéter à l’avenir : selon Microsoft, le futur des cartes graphiques ne se situe pas au niveau d’un matériel spécifique pour des fonctions fixes, mais bien d’opérations flexibles et généralistes.

    D'un côté, AMD ne se mouille pas trop : un pilote sera disponible dans le futur, mais la compagnie semble se focaliser sur ses solutions pour le lancer de rayons. Ainsi, le moteur de rendu maison Radeon ProRender pourra utiliser ce lancer de rayons en temps réel ; il n'est pas vraiment prévu pour du jeu vidéo, mais plutôt des applications professionnelles. AMD travaille également depuis des mois sur Radeon Rays, une bibliothèque de lancer de rayons pouvant exploiter OpenCL, Vulkan ou encore Embree pour l'accélération matérielle (GPU pour OpenCL et Vulkan, CPU pour OpenCL et Embree), aussi prévu pour des jeux vidéo.


    NVIDIA semble avoir une longueur d’avance

    D’un autre côté, NVIDIA travaille depuis très longtemps sur le sujet du lancer de rayons, avec par exemple son moteur OptiX dès 2009 ; la société a également racheté Mental Ray en 2007, devenu depuis lors Iray, un moteur de rendu utilisé dans des applications professionnelles comme la conception par ordinateur (AutoCAD, CATIA, SolidWorks, etc.) ou l’animation (3D Studio Max, Cinema 4D, Maya, Houdini…).

    Spécifiquement pour DirectX Raytracing, NVIDIA ne parle que de son implémentation RTX : une API spécifique sera disponible, mais RTX sera aussi utilisé derrière DirectX Raytracing. Élément intéressant : RTX fonctionnera particulièrement bien sur les GPU de génération Volta ou plus récente ; pour les joueurs, cela signifie uniquement la Titan V (ou les prochains GPU dont on attend l’annonce depuis longtemps). On peut s’attendre à ce que les nouveaux cœurs tensoriels soient mis à l’épreuve pour ce lancer de rayons.

    Dernier détail : RTX sera disponible dès la prochaine version des pilotes NVIDIA, la 396. Elle arrivera début avril pour le grand public.


    Nom : 170153.png
Affichages : 2257
Taille : 891,9 Ko

    Et les jeux, donc ?



    Plusieurs studios de développement de jeux étaient associés à l’annonce de DirectX Raytracing. Notamment, Unreal Engine intègre déjà cette technologie dans certaines versions de développement, tout comme Unity. Des développeurs comme Epic Games, DICE et Electronic Arts ont déjà annoncé qu’ils intégreront DirectX Raytracing dans leurs moteurs et leurs jeux. On pourrait déjà voir des effets utilisant ces nouvelles possibilités dans des jeux cette année.










    En manque de détails techniques ?



    Téléchargement : SDK DXR, PIX.


    Sources et images : Futuremark Demonstrates Raytracing Demo with DirectX 12, Random Thoughts on Raytracing, AMD Announces Real-time Ray Tracing Support for ProRender and Radeon GPU Profiler 1.2, Expanding DirectX 12: Microsoft Announces DirectX Raytracing, Announcing Microsoft DirectX Raytracing!, NVIDIA Announces RTX Technology: Real Time Ray Tracing Acceleration for Volta GPUs and Later, Nvidia talks ray tracing and Volta hardware.
    Vous souhaitez participer aux rubriques Qt (tutoriels, FAQ, traductions) ou HPC ? Contactez-moi par MP.

    Créer des applications graphiques en Python avec PyQt5
    Créer des applications avec Qt 5.

    Pas de question d'ordre technique par MP !

  2. #2
    Inactif  

    Homme Profil pro
    NR
    Inscrit en
    Juin 2013
    Messages
    3 715
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : NR
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juin 2013
    Messages : 3 715
    Points : 1 184
    Points
    1 184
    Billets dans le blog
    9
    Par défaut
    je trouve dommage depuis ces 10 dernière années de s’intéresser surtout aux graphismes mais au reste...

    Dans les années 2008 on avait eu des moteurs physiques vraiement géniaux ou toute la map était 100% destructible dans red Faction
    Ou alors des IA assez bluffante dans FEAR de 2005

    En 2018 c'est juste des jeux multi avec des beau graphismes à gogo mais avec des IA nuls et une physique pire que les jeux de l'an 2000.
    Le pire c'est que les jeux multi sont tellement mal fait que tu est plus avantagé en jouant en low qu'en ultra, car moins de feuillage...etc.

    Pourtant des puces dédié à l'ia dans les gpu se serait possible, optimisé pour y faire tourner des réseaux de neurones par exemple bien plus intéressant que les IA classique basé sur les arbres de décisions.

    et sinon concernant le ray tracing j'utilise une technique de "environment mapping" qui offre un rendu assez similaire mais qui est beaucoup moins gourmand.
    je sais pas si on verra réellement une différence dans les jeux.

  3. #3
    Membre émérite Avatar de onilink_
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    597
    Détails du profil
    Informations personnelles :
    Âge : 32
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 597
    Points : 2 439
    Points
    2 439
    Par défaut
    Comme tu peux le voir dans les captures c'est vraiment "blingbling", totalement facultatif a mon sens, enfin dans ces exemples la en tout cas.
    On a poussé la rasterisation assez loin pour reproduire de manière assez fidèle pas mal d'effets, sans que l'humain n'y voit une nette différence (quand bien appliqué).

    Mais au delà de ces bêtes effets visuels j'imagine que le raytracing pourra être utilisé pour d'autres choses plus intéressantes. Donc bon pourquoi pas, ça mange pas de pain.

    Pour les réseaux de neurones aucun intérêt d'utiliser des puces externes pour tout ce qui touche au jeu vidéo. On est très loin des réseaux de neurones profonds utilisé en reconnaissance d'image qui demandent de gros calculs pour l'apprentissage.
    D'autant que la on parle pas de la phase d'apprentissage, mais d'utiliser un réseau pré-entraîné. Ce qui est déjà très rapide et actuellement utilisable sans problèmes (même sur des PC avec des performances pas forcement folles).
    C'est utilisé dans certains domaines comme l'animation procédurale, y a pas mal dé démo plutôt classes.

    De toute façon il faut pas se leurrer, même quand on aura des technologies assez folles (ce qui est déjà plus ou moins le cas en fait), dès qu'il faudra apporter un tant soit peu de boulot par dessus on restera toujours au même niveau, c-a-d des jeux relativement génériques, pour en produire plus et gagner plus d'argent. Donc ça changera pas grand chose, malheureusement.

    Mais il y aura toujours quelques perles pour exploiter les dernières technologies et nous époustoufler (je pense a INSIDE par exemple, le système d'animation procédural a la fin est assez fou )
    Circuits intégrés mis à nu: https://twitter.com/TICS_Game

  4. #4
    Membre éclairé
    Homme Profil pro
    Ingénieur de recherche
    Inscrit en
    Janvier 2012
    Messages
    325
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur de recherche
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Janvier 2012
    Messages : 325
    Points : 888
    Points
    888
    Par défaut
    Si l'IA est débile dans les jeu, je ne pense pas que ce soit un problème technologique.

    Je me souviens d'une conférence (ou article je ne sais plus) où Sid Meier parlait de l'IA dans Civilisation. En gros il avait essayé une IA assez complexe mais lors des tests il s'était rendu compte que les joueurs ne l'aimait pas du tout car il la trouvait trop imprévisible (genre quand elle déclarait la guerre). Du coup il a du revenir à une IA bébète.

    Et je pense que ce genre de réflexion est généralisable à beaucoup de jeux. Par ex dans WoW les monstres ont une "IA" ridiculement basique, mais qui est à la base de tout le gameplay PvE (roles tank/healer/dps, placement, stratégies pour engager le combat, stratégie contre chaque boss etc.). Je ne dis pas qu'une IA plus poussée ne serait pas intéressante (au contraire), mais du coup ça ne serrait plus du tout le même jeu.

    Enfin bref tout ça pour dire qu'une IA débile peut tout à fait être justifiée du point de vue gamedesign et que ça doit expliquer les IA de pas mal de jeux.

  5. #5
    Membre émérite Avatar de onilink_
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    597
    Détails du profil
    Informations personnelles :
    Âge : 32
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 597
    Points : 2 439
    Points
    2 439
    Par défaut
    Oui, j'imagine qu'il parlait plus des FPS par exemple, c'est toujours mieux d'avoir des ennemis plus "humains".
    Mais a ce niveau y a pas mal de jeux qui poussent pas mal les choses, je me souviens par exemple que Left 4 Dead 2 avait été très bien critiqué au niveau des IA.

    En tout cas, bossant dans le domaine, j'ai remarqué que beaucoup de jeux même 2d ne se prennent vraiment pas la tête a ce niveau.
    Je dev un sandbox et je suis en ce moment même a galérer a intégrer un "bête" pathfinding (bon en fait avec la gravité c'est vite casse tête) + quelques systèmes de réactions des monstres, ben cette chose que l'on pourrait voir comme ultra "basique" (en terme de design tout du moins) n'est présente que sur très peu de jeux du genre.
    Par exemple Terraria ou encore Starbound qui sont des sandbox qui ont fait des millions de ventes n'intègrent même pas cela... et la on ne peut pas dire que ce n'est pas utile au gameplay.

    J'ai l'impression qu'on est vraiment dans un mode de production ou on accoutume les joueurs au strict minimum, car de toute façon les gens sont habitués et ça fait faire de grosses économies (niveau temps de dev et donc argent).
    Et au final dans les jeux 3d on essaye souvent de se démarquer beaucoup plus sur les graphismes que sur le reste. Et c'est dommage.
    Circuits intégrés mis à nu: https://twitter.com/TICS_Game

  6. #6
    Inactif  

    Homme Profil pro
    NR
    Inscrit en
    Juin 2013
    Messages
    3 715
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : NR
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juin 2013
    Messages : 3 715
    Points : 1 184
    Points
    1 184
    Billets dans le blog
    9
    Par défaut
    avec le environment mapping voila ce que j'ai en temps réel chez moi :

    Nom : mapping.JPG
Affichages : 2624
Taille : 83,6 Ko
    Nom : mapping2.JPG
Affichages : 2662
Taille : 94,9 Ko

    donc je pose la question en toute légitimité, verra ton réellement des changements dans le jeu ?
    d’ailleurs l'exemple avec le miroir est complètement faux, cela fait au moins 20ans que l'on sait faire des miroir réaliste dans les jeux vidéos.

  7. #7
    Expert éminent sénior
    Avatar de Kannagi
    Homme Profil pro
    cyber-paléontologue
    Inscrit en
    Mai 2010
    Messages
    3 214
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cyber-paléontologue

    Informations forums :
    Inscription : Mai 2010
    Messages : 3 214
    Points : 10 136
    Points
    10 136
    Par défaut
    @RyzenOC ton rendu est très basique , limite j'ai l'impression qu'il y a juste un effet de bloom sur ton rendu ^^'

    Sinon pour moi c'est un truc assez mercantile la CG fait entre 13-14k euros !
    Ils ont augmenté la puissance du GPU et puis ils ont dit "voila ce qu'on peut faire maintenant" , avec des techniques connu depuis belle lurette !
    Pour info les AMD Vega sont assez proche niveau puissance entre 10-13 TFLOPS pour 800-2000 Euros
    Je note que les Vega peuvent faire des calcul de float 16bits donc ont une puissance en Half-precision floating-point de 20 TFLOPS ^^

    Quoi qui parle d'attrape-couillon ici ?

  8. #8
    Expert éminent sénior

    Avatar de dragonjoker59
    Homme Profil pro
    Software Developer
    Inscrit en
    Juin 2005
    Messages
    2 045
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Software Developer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2005
    Messages : 2 045
    Points : 11 368
    Points
    11 368
    Billets dans le blog
    10
    Par défaut
    Mouais... L'environment mapping, c'est mignon, mais ça veut dire que tu rends tes objets autant de fois qu'il y a de faces dans le cube qui contient ton env map.
    Alors, tu me diras, tu peux utiliser le frustum culling, pour diminuer ce nombre, mais ça veut tout de même dire que tu dois rendre les objets non visibles par la caméra principale, pour le dessin de ton env map.
    Si en plus de ça tu gères les objets dynamiques, tu as le choix : soit tu génères une env map par objet recevant des réflexions (yeehaa...) soit tu places dans ta scène des noeuds qui vont recevoir une env map, et tu mets en place des algos d'interpolation pour calculer la réflexion que tes objets reçoivent. Ce qui implique de multiples rendus de toute ta scène pour ces noeuds (yeehaa...).
    Et une fois que tu as ça, ben c'est quand même dégueulasse avec les effets de parallaxe que tu vas avoir parce qu'il n'y a pas d'algo d'interpolation infaillible, pour les passages d'une env map à l'autre.
    Sans compter que si tu veux vraiment faire ça bien, il te faut encore, sur le même objet faire les interpolations pour que les réflections soient "correctes".

    Là, avec le ray casting, tu ne dessines pas toute ta scène pour chaque env map.
    Tu dessines ta scène normalement avec ton frustum/occlusion culling pour la caméra principale, puis tu ne calcules les réflexions que pour les objets en ayant besoin, et là encore, pas en redessinant toute ta scène, mais en fournissant que les informations nécessaires au rebond de ton rayon.
    Et tu te retrouves avec des réflexions vraiment correctes cette fois.

    Au final, ça t'apporte une économie dramatique au niveau des ressources, des réflexions plus correctes et donc beaucoup plus jolies et probablement une économie de temps de rendu, pour peu que tu ne fasses pas trop de rebonds avec tes rayons, si tu as de nombreux objets recevant des réflexions.
    Cependant ce n'est possible en temps réel qu'avec nos gros GPU actuels parce que ce sont des calculs lourds,

    Au passage, tes captures ne font absolument pas honneur à l'env mapping.
    Voilà ce que moi j'obtiens :

    Nom : Sans titre.jpg
Affichages : 3035
Taille : 169,9 Ko

    Et encore, sur cette capture on ne voit pas les réflexions/réfractions entre les objets.
    Et ça tourne à la vitesse faramineuse de ... 60 FPS... (ben oui, 3 envmaps)
    Si vous ne trouvez plus rien, cherchez autre chose...

    Vous trouverez ici des tutoriels OpenGL moderne.
    Mon moteur 3D: Castor 3D, presque utilisable (venez participer, il y a de la place)!
    Un projet qui ne sert à rien, mais qu'il est joli (des fois) : ProceduralGenerator (Génération procédurale d'images, et post-processing).

  9. #9
    Inactif  

    Homme Profil pro
    NR
    Inscrit en
    Juin 2013
    Messages
    3 715
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : NR
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juin 2013
    Messages : 3 715
    Points : 1 184
    Points
    1 184
    Billets dans le blog
    9
    Par défaut
    mon but n'était pas d'en mettre plein la vue juste pour faire une démo.
    Mais je peut avoir mieux, suffit de demander et moi sa tourne à 193.3fps et meme si cela n'a aucun rapport, mon code est parfaitement multithreadé sur 16coeurs na (je génère un terrain de manière procédurale avec le bruit de Perlin)
    je ne dévoilerais pas le nom de mon gpu parce que c'est indécent mais je peut vous dire que mon code tourne que sur 1 seul GPU, j'ai pas besoin de 3GPU à 3000$ comme sur les démo de la news.

    Nom : pipoune3.jpg
Affichages : 2955
Taille : 312,8 Ko


    j'en profite pour faire un peu de pub pour un CPU à la puissance inégalable, parce que je le vaux bien, un bon jeu commence par un bon CPU
    edit : 193fps en fenêtré, en plein écran sa redescend à 95fps... mais en plein écran je pourrais montrer mon cpu

  10. #10
    Expert éminent sénior

    Avatar de dragonjoker59
    Homme Profil pro
    Software Developer
    Inscrit en
    Juin 2005
    Messages
    2 045
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Software Developer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2005
    Messages : 2 045
    Points : 11 368
    Points
    11 368
    Billets dans le blog
    10
    Par défaut
    Ah ben voilà! Tu aurais montré ça dès le début...
    Si vous ne trouvez plus rien, cherchez autre chose...

    Vous trouverez ici des tutoriels OpenGL moderne.
    Mon moteur 3D: Castor 3D, presque utilisable (venez participer, il y a de la place)!
    Un projet qui ne sert à rien, mais qu'il est joli (des fois) : ProceduralGenerator (Génération procédurale d'images, et post-processing).

  11. #11
    Inactif  

    Homme Profil pro
    NR
    Inscrit en
    Juin 2013
    Messages
    3 715
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : NR
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juin 2013
    Messages : 3 715
    Points : 1 184
    Points
    1 184
    Billets dans le blog
    9
    Par défaut
    Citation Envoyé par dragonjoker59 Voir le message
    Ah ben voilà! Tu aurais montré ça dès le début...
    le probleme c'est que c'est pas réaliste
    Les reflets dans les murs et dans les sols, les carrosseries luisantes sur astiqué c'est jolie à l’œil mais c'est pas réaliste.

  12. #12
    Membre éclairé

    Homme Profil pro
    Non disponible
    Inscrit en
    Décembre 2012
    Messages
    478
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Non disponible

    Informations forums :
    Inscription : Décembre 2012
    Messages : 478
    Points : 877
    Points
    877
    Billets dans le blog
    1
    Par défaut
    J'ai l'impression que l'on met plus en avant la réflexion, alors que cette techno me semble vraiment intéressante pour la lumière dynamique ?!

  13. #13
    Expert éminent sénior

    Avatar de dragonjoker59
    Homme Profil pro
    Software Developer
    Inscrit en
    Juin 2005
    Messages
    2 045
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Software Developer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2005
    Messages : 2 045
    Points : 11 368
    Points
    11 368
    Billets dans le blog
    10
    Par défaut
    Citation Envoyé par RyzenOC Voir le message
    le probleme c'est que c'est pas réaliste
    Les reflets dans les murs et dans les sols, les carrosseries luisantes sur astiqué c'est jolie à l’œil mais c'est pas réaliste.
    Tout à fait, et c'est bien là que le raytracing va pouvoir apporter du plus : en réalisme ^^
    Si vous ne trouvez plus rien, cherchez autre chose...

    Vous trouverez ici des tutoriels OpenGL moderne.
    Mon moteur 3D: Castor 3D, presque utilisable (venez participer, il y a de la place)!
    Un projet qui ne sert à rien, mais qu'il est joli (des fois) : ProceduralGenerator (Génération procédurale d'images, et post-processing).

  14. #14
    Inactif  

    Homme Profil pro
    NR
    Inscrit en
    Juin 2013
    Messages
    3 715
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : NR
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juin 2013
    Messages : 3 715
    Points : 1 184
    Points
    1 184
    Billets dans le blog
    9
    Par défaut
    Citation Envoyé par dragonjoker59 Voir le message
    Tout à fait, et c'est bien là que le raytracing va pouvoir apporter du plus : en réalisme ^^
    bah non justement... tu peut voir les démo les reflets sont comme moi, ils sont sur exagéré à outrance. c'est pas en rajoutant plus de reflet que c'est plus réaliste mais c'est en les supprimant justement...
    t'a déjà vu un sol "miroir" toi ?

  15. #15
    Expert éminent sénior

    Avatar de dragonjoker59
    Homme Profil pro
    Software Developer
    Inscrit en
    Juin 2005
    Messages
    2 045
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Software Developer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2005
    Messages : 2 045
    Points : 11 368
    Points
    11 368
    Billets dans le blog
    10
    Par défaut
    Ben l'objectif de la vidéo c'est de montrer ce que ça peut donner, et quoi de mieux que d'accentuer l'effet ?
    Après, moi, quand je vois la vidéo Star Wars, j'ai trouvé la qualité très bonne, et ça m'a vachement fait penser à un film.
    Derrière, ce sera évidemment aux développeurs de faire que ça paraisse comme ils le souhaitent (réaliste ou pas), mais le principal c'est que ça y est, on peut commencer à faire du ray casting en temps réel, pour moi ça ne présage que du bon pour le futur
    Si vous ne trouvez plus rien, cherchez autre chose...

    Vous trouverez ici des tutoriels OpenGL moderne.
    Mon moteur 3D: Castor 3D, presque utilisable (venez participer, il y a de la place)!
    Un projet qui ne sert à rien, mais qu'il est joli (des fois) : ProceduralGenerator (Génération procédurale d'images, et post-processing).

  16. #16
    Expert éminent sénior
    Homme Profil pro
    Analyste/ Programmeur
    Inscrit en
    Juillet 2013
    Messages
    4 627
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Analyste/ Programmeur

    Informations forums :
    Inscription : Juillet 2013
    Messages : 4 627
    Points : 10 551
    Points
    10 551
    Par défaut
    Citation Envoyé par RyzenOC Voir le message
    bah non justement... tu peut voir les démo les reflets sont comme moi, ils sont sur exagéré à outrance. c'est pas en rajoutant plus de reflet que c'est plus réaliste mais c'est en les supprimant justement...
    t'a déjà vu un sol "miroir" toi ?
    Si je me remémore mes cours de la faculté images le lancer de rayons n'agit que sur la réflexion spéculaire (et est dépendant du point de vue).
    Et donc pour avoir encore plus de réalisme, il faut y combiner la radiosité qui agit sur la réflexion diffuse (et est indépendant du point de vue).

    Si je ne dis pas de bêtises cela vient de la dualité onde-particule.

    Le truc c'est que la radiosité c'est assez long à calculer

  17. #17
    Inactif  
    Profil pro
    Inscrit en
    Août 2008
    Messages
    238
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 238
    Points : 620
    Points
    620
    Par défaut
    Oh mais ma bonne dame, vous parlez d'une innovation : le lancé de rayons, je l'implémentais déjà en pascal sur mon 286/287 VGA Paradise 256 Ko 320x200 256 couleurs.
    Trêve de me faire mousser.

    Je n'aurais jamais cru qu'un jour, cette technique deviendrait temps-réel, surtout avec l'annonce déjà vieille (presque 20 ans que l'on en parle) que la technologie du semi-conducteur allait trouver sa limite avec l'effet tunnel. C'est tout simplement vertigineux.

  18. #18
    Expert confirmé Avatar de Zefling
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2007
    Messages
    1 168
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 168
    Points : 4 654
    Points
    4 654
    Par défaut
    Citation Envoyé par RyzenOC Voir le message
    bah non justement... tu peut voir les démo les reflets sont comme moi, ils sont sur exagéré à outrance. c'est pas en rajoutant plus de reflet que c'est plus réaliste mais c'est en les supprimant justement...
    t'a déjà vu un sol "miroir" toi ?
    Oui, t'as des marbres qui ont un niveau de réflexion hallucinant, comme tu passer sur une rivière avec un soleil couchant avec une lumière encore plus abusé que dans certains jeux vidéo, mais c'est la réalité (par contre, ça te défonce vraiment les yeux). Là il en mettent à gogo pour les démo technique. Mais ça reste plus crédible qu'avant en terme de réalisme de la réflexion.

  19. #19
    MikeRowSoft
    Invité(e)
    Par défaut
    Photoréalisme, selon la meilleur source que j'avais consulté.



    Sinon, les corrections de " perspective des reflets dans un miroir " retire comme un bogue mais n'explique pas la raison de pourquoi elle existait.

    Cela étant j'admire vos travaux, même ceux jugé ridicule par vous même. J'ai bien voulu utilisé Blender, mais je crois bien que c'est pas mon truc.
    Si vous avez entendu une " petite voix " qui vous disait que je vous trouvais tous nul ou dénigrer votre travail, détrompez vous. Cette " petite voix " ne vous veux pas que du bien et à moi même par la même occasion...
    Dernière modification par MikeRowSoft ; 25/03/2018 à 13h39.

Discussions similaires

  1. lancer de rayon sur des surfaces parametriques
    Par ant12oine dans le forum Algorithmes et structures de données
    Réponses: 5
    Dernier message: 04/05/2008, 11h21
  2. Lancer de rayon
    Par parano dans le forum OpenGL
    Réponses: 1
    Dernier message: 15/01/2007, 00h52
  3. OpenGL et le lancer de rayon
    Par Premium dans le forum OpenGL
    Réponses: 7
    Dernier message: 06/12/2006, 18h04
  4. Lancer de rayon
    Par Bethoring dans le forum Algorithmes et structures de données
    Réponses: 2
    Dernier message: 29/11/2005, 23h28
  5. Lancer de Rayon
    Par Wyatt dans le forum OpenGL
    Réponses: 3
    Dernier message: 05/05/2005, 14h51

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo