News:
- “Simultaneous Multi Projection” : technologie, intégrée à l’architecture Pascal de Nivida par exemple, et qui permet de calculer plusieurs point de vue et non plus un seul. Cela annonce jusqu’à 30% de perf en +, notamment en VR. La technologie sera bientôt intégrée à UE4 et Unity.
Nvidia VRWorks:
- VR SLI : pour utiliser plusieurs CGs, mais sans augmenter la latence qui était le problème principal avec le SLI Standard.
- Lens Matched Shading (Pascal): Déformation LMS de l’image de l’image en fonction de la lentille.
- Multi Res Shading (Maxwell): chaque partie d’une image est rendue à une résolution qui correspond au mieux à la densité de pixels de l’image finale affichée en VR.
- Single Pass Stereo: Au lieu de calculer la géométrie pour chaque oeil, une optimisation a été réalisée au niveau des GPUs (Simultaneous Multi-Projection architecture) permettant de ne calculer qu’une seule géométrie.
- VRWorks Audio: La CG calcule comment le son rebondit et se propage en tenant compte de la géométrie de la pièce ou du lieu. Voir cette vidéo.
- Voir GameWorks
VRWorks 2.1 est supportée par l’Unreal Engine 4.13 et Unity 5.
AMD LiquidVR: voir cette présentation
- Latest Data Latch: Utilise le time warping, technique consistant à réduire la latence en prenant en compte les informations des capteurs de mouvements après avoir débuté, voire terminé, le calcul de l’image. Sorte de calcul prédictif. Ces informations plus récentes sont exploitées pour déformer la dernière image calculée de manière à émuler ce que nous aurions vu si l’image pouvait être calculée instantanément juste avant l’affichage.
- Asynchronous Shaders: Voir cette vidéo. Livre blanc. Les ACE (Asynchronous Compute Engines) sont des processeurs de commandes secondaires qui peuvent lancer des tâches de type compute sur le GPU de manière transparente, en même temps que celui-ci est en train de traiter des commandes graphiques. Ce traitement en parallèle permet de réduire la latence en lançant l’opération de time warping également. Si le calcul de la nouvelle image prend trop de temps, le time warping, qui est traité en parallèle via les ACE, pourra appliquer de façon transparente les dernières données de position sur l’image précédente.
- Affinity Multi-GPU: Voir cette vidéo. Permet de profiter de plusieurs GPU sans augmenter la latence et en réduisant le coût CPU globale. Le mode AFR classique est inadapté parce qu’il introduit trop de latence supplémentaire. En mode Affinity, chaque GPU peut être assigné à un œil.
- Direct-to-Display: permet aux pilotes AMD de directement gérer l’affichage sur tous les casques de réalité virtuelle, sans passer par un SDK tiers tels que celui d’Oculus.
Aucune implémentation n’est prévue pour Unreal Engine. Rien vu coté Unity non plus…
Vers un rapprochement ?
Khronos group (celui d’OpenGL, Vulkan, etc.) a lancé le 6 décembre 2016 un appel pour la définition d’une API standard pour les périphériques de réalité virtuelle. Ca n’empêchera chaque fabricant de mettre en avant des features personnelles, mais cela permettra au moins d’exploiter plus facilement les plus communes.
Ce nouveau standard appelé Khronos VR contiendrait des API communes pour des casques, contrôleurs, et autres objets trackés. Liste de compagnies déjà investies dans le projet (mais pas microsoft):