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

Développement 2D, 3D et Jeux Discussion :

DirectX 12 a été présenté à la GDC 2014, la bibliothèque arrivera durant l'année 2015


Sujet :

Développement 2D, 3D et Jeux

  1. #1
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    26 826
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 26 826
    Points : 218 287
    Points
    218 287
    Billets dans le blog
    117
    Par défaut DirectX 12 a été présenté à la GDC 2014, la bibliothèque arrivera durant l'année 2015
    DirectX 12 a été présenté à la GDC 2014, la bibliothèque arrivera durant l'année 2015

    Comme cela avait été annoncé il y a quelques semaines, Microsoft a fait une présentation durant la Game Developers Conference sur DirectX 12, la nouvelle version de la bibliothèque de jeux.
    La société veut proposer une bibliothèque plus rapide et efficace que jamais. Le but est de permettre l'affiche de scènes plus riches, ayant plus d'objets et d'utiliser la totalité des dernières cartes graphiques. Contrairement aux anciennes versions, DirectX 12, n'est pas uniquement pensé pour les PC et fonctionnera aussi sur les téléphones, les tablettes et bien sûr, la Xbox One.


    Différences d'utilisation du CPU sur 3DMark (en haut DirectX 11, en bas DirectX12)

    Pour remplir ces objectifs, DirectX 12 introduit un nouveau pipeline permettant une très grande amélioration de l'efficacité des algorithmes, notamment ceux liés à la transparence indépendante de l'ordre d'affichage, la détection de collision et la sélection de géométrie (geometry culling). Les jeux vont bénéficier d'un surcoût diminué pour le GPU grâce à des fonctionnalités telles que les tables de descripteurs et des objets d'états du pipeline concis.
    En plus des améliorations de la bibliothèque, DirectX 12 sera accompagné d'outils dès sa sortie. Ceux-ci vous permettront de mieux tirer parti des nouvelles fonctionnalités et d'améliorer grandement les performances de vos jeux.


    Objets d'états du pipeline

    La représentation du pipeline disponible dans Direct3D 11, à travers les objets d'états de assembleur d'entrées, du pixel shader ou du rasterizer donnaient un convenable niveau d'abstraction mais ne correspondait pas assez bien avec le matériel. Souvent, cela est dû aux dépendances entre les états. Par exemple, les GPU rassemblent le pixel shader et l'output merger en une simple représentation matérielle mais pas pour la bibliothèque Direct3D 11 faisant que le pilote ne peut gérer cela que lorsque les deux états sont définis (souvent, au moment du rendu). Dans Direct3D 12, ce problème est réglé à l'aide des objets d'état du pipeline (Pipeline State Object (PSO)) qui sont finalisés dès la création. Cela permet aux pilotes et aux cartes graphiques de directement convertir l'objet en instructions natives. Le PSO actuellement en cours d'utilisation peut être changé dynamiquement et le matériel n'aura qu'à copier les quelques données dans les registres adéquats sans avoir à recalculer l'ensemble.


    Listes de commandes et bundles

    Dans Direct3D 11, toutes les soumissions de jobs sont effectuées dans le contexte immédiat faisant qu'il n'y a qu'un seul flux allant au GPU. Afin de gérer le multithreading, les jeux utilisent des contextes différés, mais ceux-ci ne correspondent pas parfaitement au matériel. Direct3D 12 introduit donc un nouveau modèle pour soumettre des jobs basés sur des listes de commandes contenant toutes les informations nécessaires à exécuter le job. Chaque nouvelle liste contiendra les informations telles que le PSO à utiliser, quels sont les textures et tampons nécessaires et les arguments de l'appel de rendu. Comme chaque liste de commandes est indépendante, le pilote peut précalculer toutes les commandes GPU nécessaires.
    En plus des listes de commandes, Direct3D 12 introduit un second niveau de pré-calcul : les bundles. Contrairement aux listes de commandes les bundles intègrent une forme d'héritage permettant leur réutilisation. Par exemple, si un jeu souhaite dessiner deux personnages avec différentes textures, la première approche serait d'enregistrer la liste de commandes avec deux ensembles identiques d'appels aux fonctions de rendu. Mais la seconde approche serait d'enregistrer un bundle qui dessine un seul personnage, puis "rejoue" le bundle une seconde fois sur la liste de commandes en utilisant d'autres textures. Dans ce second cas, le pilote n'a besoin de calculer les commandes qu'une seule fois.



    Descripteurs de tas et tables

    La liaison de ressources de Direct3D 11 est hautement abstraite et pratique, mais ne permet pas l'utilisation complète du matériel. À chaque fois qu'un jeu souhaite utiliser différentes ressources, il doit lier à nouveau les ressources et appeler la fonction de rendu.
    Direct3D 12 change la façon de lier les ressources pour mieux correspondre au matériel et améliorer les performances. Pour cela, Direct3D 12 fournit un descripteur de tas dans lequel les jeux peuvent créer leurs vues de ressources permettant ainsi un mécanisme au GPU pour écrire directement la description de la ressource d'une manière native dans la mémoire. Ensuite, le jeu doit simplement spécifier les descripteurs utiles pour son rendu et le matériel n'a plus qu'à faire une simple copie de ces descripteurs pour les utiliser.

    De plus, il est possible d'indexer dynamiquement les ressources dans les shaders et permettant de se passer des g-buffer.


    Pour prouver cela, Microsoft montre le jeu Forza Motosport 5, un jeu de courses pour la XBox One. Grâce à DirectX 12, il a été possible aux développeurs de retrouver l'efficacité des consoles sur un PC.

    NVIDIA a annoncé avoir travaillé en étroite collaboration avec Microsoft pour l'élaboration de cette nouvelle version de la bibliothèque. La société affirme avoir fourni déjà des kits de développement et des pilotes à 15 studios de développement.

    La nouvelle version de DirectX est prévue pour 2015.


    Votre opinion

    Pensez-vous que Mantle a jeté un pavé dans la mare et force les autres bibliothèques à s'aligner sur la réduction du surcoût du pilote ? Pourquoi pensez-vous que cela est un point essentiel pour les prochaines versions de bibliothèques ?
    Pensez-vous que les consoles seront rapidement rattrapées par les performances des PC ?
    Que pensez-vous des bibliothèques comme Direct3D et OpenGL ? Quelles bibliothèques choisiriez-vous ?


    Voir aussi

    Actualité sur Mantle.


    Ressource

    Les tutoriels DirectX de Developpez.com. Aidez et investissez-vous dans la vie de la rubrique et la mis à disposition de tutoriel DirectX récents pour la communauté en me contactant !
    Un aperçu détaillé de l'architecture de la PS4.


    Source

    Blog de développement Microsoft
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  2. #2
    Membre confirmé
    Profil pro
    C Embarqué / C++ Qt
    Inscrit en
    Janvier 2010
    Messages
    231
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : C Embarqué / C++ Qt

    Informations forums :
    Inscription : Janvier 2010
    Messages : 231
    Points : 648
    Points
    648
    Par défaut
    Pensez-vous que les consoles seront rapidement rattrapées par les performances des PC ?
    Elles ont devancé les PC à un moment ?

  3. #3
    Membre régulier
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2011
    Messages
    36
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2011
    Messages : 36
    Points : 80
    Points
    80
    Par défaut
    Citation Envoyé par Bestel74 Voir le message
    Elles ont devancé les PC à un moment ?
    La news est légèrement mal traduite a ce niveau là. En fait, les consoles sont beaucoup plus efficaces que les PC.

    DirectX offre un trade-off : une interface de programmation unique, en échange de performances plus faibles. (c'est comme la différence entre java et C++, le premier tourne sans modification sur toutes les plateformes avec un coût en performance, alors que le deuxième doit être adapté à chaque matériel/OS mais permet de coder très près du matériel et permet des optimisations très poussées).

    Même si l'API est sensiblement la même sur PC et sur XBox One (DirectX 11), sur console, la matériel est unique et donc il n'y a pas de surcharge lié à la grande hétérogénéité du matériel comme sur un PC. l'API sur consoles n'est en fait qu'une couche très fine par dessus le pilote de la carte graphique et offre donc de meilleures performances.
    À ça il faut rajouter que sur consoles il n'y a pas de changement de contexte entre user et kernel land pour les pilotes graphique (cause pas mal d'overhead sur PC), et tout un tas d'autres trucs (système d'exploitation coopératif sur PC vs accès exclusif aux ressources sur console, etc ...)

  4. #4
    Membre expert

    Développeur NTIC
    Inscrit en
    Janvier 2011
    Messages
    1 670
    Détails du profil
    Informations personnelles :
    Âge : 33

    Informations professionnelles :
    Activité : Développeur NTIC
    Secteur : Biens de consommation

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 670
    Points : 3 942
    Points
    3 942
    Par défaut
    Ah bon? Il me semblait que, justement, parce que le matériel était trop "pourri" sur la Xbox One il était impossible de développer des jeux en 1080p facilement (vu qu'il faut passer non pas seulement par la ram de la carte graphique mais aussi par un périphérique qui est externe à celle ci), d'où le fait qu'il n'y a pour l'instant aucun jeu en 1080p sur One (ou très peu).

    Par contre niveau optimisation, c'est clair que les développeurs peuvent le faire sur console sur pc c'est plus compliqué et ça prend plus de temps (de la bouche même d'un responsable chez EA l'optimisation sur pc est inutile car trop chère... Ce avec quoi je ne suis pas d'accord.)

    Après, je suis ça de loin car de toute façon les jeux pc boufferont toujours les jeux consoles (au niveau graphismes généraux mais pas au niveau optimisation), donc je peux me tromper.

    Concernant DX12 j'espère qu'ils ne le sortiront pas que sur Windows 8, sinon ...
    L'homme est un fou pour l'homme. Toi qui viens de me mettre un aie au moins le courage d'expliquer pourquoi tu n'es pas d'accord.

  5. #5
    Membre chevronné
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2007
    Messages
    677
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Décembre 2007
    Messages : 677
    Points : 2 137
    Points
    2 137
    Par défaut
    Citation Envoyé par Mr_Exal Voir le message
    Concernant DX12 j'espère qu'ils ne le sortiront pas que sur Windows 8, sinon ...
    "Je peux vous dire que rien n'est prévu pour Windows XP. Nous parlerons de Windows 7 plus tard" Citation du responsable développement de la partie graphique chez Microsoft (il se mouille pas trop quoi).
    Le WIP de The last bastion, mon projet de jeu-vidéo (un TD en 3D)

    Mon portfolio / Ma page fb

  6. #6
    Membre expert

    Développeur NTIC
    Inscrit en
    Janvier 2011
    Messages
    1 670
    Détails du profil
    Informations personnelles :
    Âge : 33

    Informations professionnelles :
    Activité : Développeur NTIC
    Secteur : Biens de consommation

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 670
    Points : 3 942
    Points
    3 942
    Par défaut
    Ca pue le DX12 Windows 8 only dans un premier temps puis sur Seven dans un deuxième temps. Dx 11 est disponible sur xp au fait maintenant ?
    L'homme est un fou pour l'homme. Toi qui viens de me mettre un aie au moins le courage d'expliquer pourquoi tu n'es pas d'accord.

  7. #7
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    26 826
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 26 826
    Points : 218 287
    Points
    218 287
    Billets dans le blog
    117
    Par défaut
    Non, DirectX 11 n'a jamais été intégré à Windows XP.
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  8. #8
    Membre chevronné
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2007
    Messages
    677
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Décembre 2007
    Messages : 677
    Points : 2 137
    Points
    2 137
    Par défaut
    Les contraintes techniques (s'il y en avait) ne sont peut-être plus les même ; autant je peux concevoir que les systèmes Xp et Seven présentent des soucis de compatibilité entre eux, autant dans ce scénario (Seven et W8.x) je pense que ce serait purement marketing s'ils n’intégraient pas Dx12 dans Seven. Auquel cas, je ne suis pas certain que ça jouerait en leur faveur =/
    Le WIP de The last bastion, mon projet de jeu-vidéo (un TD en 3D)

    Mon portfolio / Ma page fb

  9. #9
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    26 826
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 26 826
    Points : 218 287
    Points
    218 287
    Billets dans le blog
    117
    Par défaut
    Il reste que j'ai du mal à vraiment comprendre ce qui a bloqué Microsoft de fournir DirectX 11 sur Windows XP. J'aimerai que l'on m'explique, car au final, toutes les nouvelles fonctionnalités des cartes graphiques sont bien disponibles à travers les nouvelles version d'OpenGL, qui elles, sont disponibles sous XP. Alors, je sais qu'il n'y a pas que Direct3D dans DirectX, mais tout de même, je ne vois pas du tout le blocage.
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  10. #10
    Membre expert

    Développeur NTIC
    Inscrit en
    Janvier 2011
    Messages
    1 670
    Détails du profil
    Informations personnelles :
    Âge : 33

    Informations professionnelles :
    Activité : Développeur NTIC
    Secteur : Biens de consommation

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 670
    Points : 3 942
    Points
    3 942
    Par défaut
    Citation Envoyé par LittleWhite Voir le message
    Il reste que j'ai du mal à vraiment comprendre ce qui a bloqué Microsoft de fournir DirectX 11 sur Windows XP. J'aimerai que l'on m'explique, car au final, toutes les nouvelles fonctionnalités des cartes graphiques sont bien disponibles à travers les nouvelles version d'OpenGL, qui elles, sont disponibles sous XP. Alors, je sais qu'il n'y a pas que Direct3D dans DirectX, mais tout de même, je ne vois pas du tout le blocage.
    Je pense que c'est marketing ... Il me semble même avoir vu des DX11 non officiels tourner sous xp.
    L'homme est un fou pour l'homme. Toi qui viens de me mettre un aie au moins le courage d'expliquer pourquoi tu n'es pas d'accord.

  11. #11
    Membre chevronné
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2007
    Messages
    677
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Décembre 2007
    Messages : 677
    Points : 2 137
    Points
    2 137
    Par défaut
    Citation Envoyé par LittleWhite Voir le message
    Il reste que j'ai du mal à vraiment comprendre ce qui a bloqué Microsoft de fournir DirectX 11 sur Windows XP. J'aimerai que l'on m'explique, car au final, toutes les nouvelles fonctionnalités des cartes graphiques sont bien disponibles à travers les nouvelles version d'OpenGL, qui elles, sont disponibles sous XP. Alors, je sais qu'il n'y a pas que Direct3D dans DirectX, mais tout de même, je ne vois pas du tout le blocage.
    La raison officielle c'est que DirectX 11 a été en partie réécrit pour prendre en charge WDDM (Windows Display Driver Model) introduit par Windows Vista, ça et le nouveau modèle de pilote audio (toujours introduit par Vista). Et je crois même que ces changements sont arrivés avec DirectX 10 (qui ne serait donc pas compatible avec XP lui non plus).
    Bon après je ne dis pas que le marketing n'a rien à voir dans tout ça hein ^^

    Et concernant les versions officieuses de DirectX 10/11 sous XP, de souvenir c'était de gros maleware bien gras.
    Le WIP de The last bastion, mon projet de jeu-vidéo (un TD en 3D)

    Mon portfolio / Ma page fb

  12. #12
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    26 826
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 26 826
    Points : 218 287
    Points
    218 287
    Billets dans le blog
    117
    Par défaut
    Oui, DirectX 10 n'est pas disponible sous Windows XP.

    Merci pour l'explication de l'impossibilité de la non compatibilité.
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

Discussions similaires

  1. Réponses: 14
    Dernier message: 06/01/2015, 18h22
  2. Réponses: 4
    Dernier message: 19/03/2014, 19h34
  3. DirectX 12 sera dévoilé durant la GDC 2014
    Par LittleWhite dans le forum Développement 2D, 3D et Jeux
    Réponses: 13
    Dernier message: 09/03/2014, 14h28
  4. Réponses: 0
    Dernier message: 18/02/2014, 19h54
  5. Réponses: 1
    Dernier message: 08/02/2014, 11h15

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