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 :

La spécification de Vulkan 1.2 est disponible


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
    24 735
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

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

    Informations forums :
    Inscription : mai 2008
    Messages : 24 735
    Points : 183 568
    Points
    183 568
    Billets dans le blog
    58
    Par défaut La spécification de Vulkan 1.2 est disponible
    La spécification de Vulkan 1.2 est disponible

    Vulkan est une bibliothèque bas niveau permettant de faire des rendus graphiques et de la programmation sur GPU. La spécification définit une bibliothèque multiplateforme ayant un faible impact sur les performances (impact inférieur à celui d'utiliser OpenGL). Aussi, Vulkan permet un accès plus bas niveau aux fonctionnalités de la carte graphique.
    La nouvelle version de la spécification est maintenant publiée. Ainsi, Vulkan 1.2 apporte :
    • 23 extensions maintenant intégrées à la spécification (faisant qu'une implémentation compatible Vulkan 1.2 aura obligatoirement ces nouvelles fonctionnalités) ;
    • de meilleures performances ;
    • une bibliothèque plus facile à utiliser.

    Plus précisément, cette nouvelle version ajoute les sémaphores chronologiques (timeline semaphore) (anciennement, l'extension VK_KHR_timeline_semaphore), un modèle mémoire formel, l'indexation des descripteurs et un meilleur support des shaders écrits en HLSL (langage de Microsoft pour les shaders).


    Déjà, Vulkan 1.2 est supporté dans les derniers pilotes des constructeurs NVIDIA (pilote Windows 441.99, pilote Linux 440.48.02), AMD (Radeon Software Adrenalin 2020 Edition 20.1.2), Imagination Technologies (puces IMG A-Series), Mali (architectures Bifrost et Valhall) et Stadia. Vous pouvez aussi retrouver la présentation de Vulkan 1.2 ici.


    Votre opinion

    Utilisez-vous Vulkan ?
    Pensez-vous qu'il est toujours utile d'utiliser OpenGL ?

    Source

    Annonce officielle
    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
    Modérateur
    Avatar de wax78
    Homme Profil pro
    Chef programmeur
    Inscrit en
    août 2006
    Messages
    3 925
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chef programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : août 2006
    Messages : 3 925
    Points : 7 722
    Points
    7 722
    Par défaut
    Y'a pas une erreur avec la version du driver windows ?

    Vulkan 1.2 support is available in Windows driver version 441.99 and Linux driver version 440.48.02
    (Les "ça ne marche pas", même écrits sans faute(s), vous porteront discrédit ad vitam æternam et malheur pendant 7 ans)

    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

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


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

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

    Informations forums :
    Inscription : mai 2008
    Messages : 24 735
    Points : 183 568
    Points
    183 568
    Billets dans le blog
    58
    Par défaut
    En effet. Mon doigt a du glisser .
    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.

  4. #4
    Membre expérimenté Avatar de SkyZoThreaD
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    juillet 2013
    Messages
    560
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : juillet 2013
    Messages : 560
    Points : 1 522
    Points
    1 522
    Par défaut
    Utilisez-vous Vulkan ?
    Non malheureusement, Il est beaucoup trop complexe et manque cruellement de documentation abordable pour le commun des codeurs :'(
    Pensez-vous qu'il est toujours utile d'utiliser OpenGL ?
    Bien-sûr. Tant qu'il n'y a pas besoin d'afficher des millions de polygones et des materials à 34 shaders... ça tourne bien OGL
    La liberté est à la sociologie ce que l'instant présent est à la physique relativiste.

  5. #5
    Expert éminent
    Avatar de Kannagi
    Homme Profil pro
    cyber-paléontologue
    Inscrit en
    mai 2010
    Messages
    2 751
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cyber-paléontologue

    Informations forums :
    Inscription : mai 2010
    Messages : 2 751
    Points : 8 452
    Points
    8 452
    Par défaut
    Pour ma part , je ne me suis pas mis sur Vulkan , mais j'aimerais bien si j'ai le temps !
    OpenGL utile ?
    Grande question , même si avec le temps la rétrocompatibilité rendra OGL de plus en plus complexe à maintenir !

  6. #6
    Membre chevronné Avatar de Jbx 2.0b
    Homme Profil pro
    Développeur C++/3D
    Inscrit en
    septembre 2002
    Messages
    469
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur C++/3D
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : septembre 2002
    Messages : 469
    Points : 1 812
    Points
    1 812
    Par défaut
    Utilisez-vous Vulkan ?

    Alors pour ma part je m'y suis mit depuis 2 mois environ, et comme dit plus haut, il est effectivement très complexe. Comme j'avais pu le voir dans une présentation, utiliser OpenGL c'est un peu jouer avec des cubes pour enfants, et comparativement Vulkan c'est un peu comme construire soit-même sa voiture (pour ceux qui pensent que j'en rajoute, essayez par vous même ).

    Après bien entendu tout dépend ce qu'on veut faire avec... si on a une application avec un seul pipeline, un cycle de vie de ses objets simple (toute la vie de l'appli, quoi), on peut s'en sortir "assez rapidement". Pour ma part j'essaie de mettre au point une abstraction simple avec implémentation OpenGL et Vulkan, avec possibilité de créer, supprimer des objets à la volée... et bah je pense que j'en ai encore pour un bon moment ! Mais si je me suis mit c'est uniquement par curiosité, vu que pour au boulot on utilise des frameworks haut niveau, donc j'ai tout mon temps. Et puis l’intérêt c'est qu'on apprends beaucoup sur l'architecture GPU, et ça peut aider sur d'autres projets (même OpenGL d'ailleurs).

    Pensez-vous qu'il est toujours utile d'utiliser OpenGL ?

    Alors oui parce que OpenGL est encore la référence quand on bosse en milieu industriel & scientifique. Il est caché derrière la plupart des solutions 3D, ou utilisé directement.
    Néanmoins avec des choix comme celui d'Apple de le passer en deprecated on voit qu'il est un peu attaqué. Même si je pense personnellement que c'est stupide, vu qu'il remplit son rôle parfaitement: à savoir avoir une API simple, multiplateforme qui offre des performances correctes, sans complexité superflue.
    Parce qu'il faut bien se rendre compte que développer une application Vulkan dans une petite entreprise est un poids énorme à supporter en terme de développement et maintenance. Et qu'à mon avis il vaut mieux une application mal optimisée en OpenGL qu'une incompréhensible en Vulkan...

    Un petit schéma pour bien se rendre compte

    Nom : Vulkan.jpeg
Affichages : 245
Taille : 228,0 Ko

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


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

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

    Informations forums :
    Inscription : mai 2008
    Messages : 24 735
    Points : 183 568
    Points
    183 568
    Billets dans le blog
    58
    Par défaut
    Après, même si OpenGL est déprécié, il est loin de disparaître. Il y a des solutions d'implémentation OpenGL au dessus Vulkan :
    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é Avatar de Jbx 2.0b
    Homme Profil pro
    Développeur C++/3D
    Inscrit en
    septembre 2002
    Messages
    469
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur C++/3D
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : septembre 2002
    Messages : 469
    Points : 1 812
    Points
    1 812
    Par défaut
    C'est bon à savoir, mais même si je soutiens l'initiative, elle n'est pas officielle.
    Et on peut s'interroger sur la pérennité d'une solution qui n'est plus officiellement supportée. Autant prendre une alternative plus haut niveau dans ces cas là ?

    Enfin dans tous les cas personnellement c'est plutôt le choix d'Apple qui me pose un problème. Ça ne me donne pas envie de faire des efforts particuliers pour cette plateforme, puisque je considère qu'ils n'en font pas non plus...

  9. #9
    Expert éminent
    Avatar de Kannagi
    Homme Profil pro
    cyber-paléontologue
    Inscrit en
    mai 2010
    Messages
    2 751
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cyber-paléontologue

    Informations forums :
    Inscription : mai 2010
    Messages : 2 751
    Points : 8 452
    Points
    8 452
    Par défaut
    Sinon il y'a aussi Ashes pour faire du Vulkan un peu partout (il peut utiliser OGL en interne) :
    https://github.com/DragonJoker/Ashes
    Et fait par un de nos membres qui est Dragonjoker !

  10. #10
    Expert éminent sénior

    Avatar de dragonjoker59
    Homme Profil pro
    Software Developer
    Inscrit en
    juin 2005
    Messages
    1 951
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Somme (Picardie)

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

    Informations forums :
    Inscription : juin 2005
    Messages : 1 951
    Points : 10 254
    Points
    10 254
    Billets dans le blog
    4
    Par défaut
    Utilisez vous Vulkan ?
    Oui, tous les jours depuis 2 ans, je fignole Ashes pour le support des versions d'OpenGL entre 3.2 et 4.2.
    J'ai porté Castor3D en Vulkan.

    Pensez-vous qu'il est toujours utile d'utiliser OpenGL ?
    Malheureusement oui, ne serait-ce que pour la maintenance.
    Je pense d'ailleurs qu'il faudrait que ce soit la seule raison de l'utiliser.
    Si on veut développer une application 3D, on n'a absolument aucune raison d'utiliser une API comme OpenGL ou Vulkan, on devrait utiliser un moteur 3D.
    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
    Membre averti
    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    octobre 2008
    Messages
    167
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur de jeux vidéo

    Informations forums :
    Inscription : octobre 2008
    Messages : 167
    Points : 363
    Points
    363
    Par défaut
    Citation Envoyé par dragonjoker59 Voir le message
    Si on veut développer une application 3D, on n'a absolument aucune raison d'utiliser une API comme OpenGL ou Vulkan, on devrait utiliser un moteur 3D.
    Euh... pardon ? Sur quelles API tu crois que ces moteurs 3D sont basées ? Il y a encore plein de studios qui utilisent leur propre moteur et pour de bonnes raisons. Arrêtez de croire qu'utiliser un moteur tout fait comme Unity ou Unreal vont résoudre tous les problèmes du monde.

    Non le problème aujourd'hui c'est que d'une part OpenGL est un foutoir sans nom et que sortir un jeu qui fonctionne sur toutes les cartes graphiques est un énorme casse-tête, mais d'autre part c'est qu'OpenGL ne fonctionne plus que sur Windows, Linux et Android. Du coup si on développe un jeu PC qui sortira peut-être plus tard sur Consoles ou sur Mac le mieux c'est encore de faire du DirectX qui est une bien meilleure API.

  12. #12
    Expert confirmé Avatar de yildiz-online
    Homme Profil pro
    Architecte logiciel
    Inscrit en
    octobre 2011
    Messages
    1 273
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Architecte logiciel

    Informations forums :
    Inscription : octobre 2011
    Messages : 1 273
    Points : 4 211
    Points
    4 211
    Par défaut
    Unity et Unreal ne sont pas des moteurs 3D, ce sont des moteurs de jeu.

    On peut faire un moteur de jeu custom avec un moteur 3d existant.
    Play50HZ, le retro-gaming facile: Essayez-le

    Yildiz-Engine an open-source modular game engine: Website
    Yildiz-Online a 3D MMORTS in alpha: Facebook page / Youtube page

  13. #13
    Expert éminent sénior

    Avatar de dragonjoker59
    Homme Profil pro
    Software Developer
    Inscrit en
    juin 2005
    Messages
    1 951
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Somme (Picardie)

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

    Informations forums :
    Inscription : juin 2005
    Messages : 1 951
    Points : 10 254
    Points
    10 254
    Billets dans le blog
    4
    Par défaut
    Citation Envoyé par dancingmad Voir le message
    Euh... pardon ? Sur quelles API tu crois que ces moteurs 3D sont basées ? Il y a encore plein de studios qui utilisent leur propre moteur et pour de bonnes raisons. Arrêtez de croire qu'utiliser un moteur tout fait comme Unity ou Unreal vont résoudre tous les problèmes du monde.
    Je ne vois aucun intérêt d'utiliser OpenGL/DirectX/Vulkan, si l'objectif n'est pas de développer un moteur 3D (dixit celui qui en développe un depuis maintenant 13 ans...).
    Si on ne veut pas créer un moteur 3D, on en utilise un tout fait, c'est tout (Ogre3D, Irrlicht, ou que sais-je).

    Citation Envoyé par dancingmad Voir le message
    Non le problème aujourd'hui c'est que d'une part OpenGL est un foutoir sans nom et que sortir un jeu qui fonctionne sur toutes les cartes graphiques est un énorme casse-tête
    Raison de plus pour ne pas développer de moteur 3D si ce n'est pas ton besoin (je répète : on en utilise un qui s'occupe de tout ce foin).

    Citation Envoyé par dancingmad Voir le message
    OpenGL ne fonctionne plus que sur Windows, Linux et Android.
    Excusez du peu de plateformes supportées...

    Citation Envoyé par dancingmad Voir le message
    Du coup si on développe un jeu PC qui sortira peut-être plus tard sur Consoles ou sur Mac le mieux c'est encore de faire du DirectX qui est une bien meilleure API.
    Clairement, DirectX est tellement supporté sur les consoles autres que XBox (et encore, c'est pas du vanilla D3D)... et sur MacOS... et sur Android... et sur iOS... (tu remarqueras que je n'ai pas cité Linux, car grâce à Valve on a Proton)
    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
    Expert éminent
    Avatar de Kannagi
    Homme Profil pro
    cyber-paléontologue
    Inscrit en
    mai 2010
    Messages
    2 751
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cyber-paléontologue

    Informations forums :
    Inscription : mai 2010
    Messages : 2 751
    Points : 8 452
    Points
    8 452
    Par défaut
    Citation Envoyé par dancingmad Voir le message
    Euh... pardon ? Sur quelles API tu crois que ces moteurs 3D sont basées ? Il y a encore plein de studios qui utilisent leur propre moteur et pour de bonnes raisons. Arrêtez de croire qu'utiliser un moteur tout fait comme Unity ou Unreal vont résoudre tous les problèmes du monde.
    Apparemment c'est suffisant pour pas mal de gros jeux AAA genre Borderlands ,Gears of War ,Fornite, Dragon Ball Z fighterZ , Street Fighter 4 et 5 , Shenmue III , Final Fantasy 7 remake.
    Mais oui si on veut faire mieux , faut mieux partir de zero

    Citation Envoyé par dancingmad Voir le message
    Non le problème aujourd'hui c'est que d'une part OpenGL est un foutoir sans nom et que sortir un jeu qui fonctionne sur toutes les cartes graphiques est un énorme casse-tête, mais d'autre part c'est qu'OpenGL ne fonctionne plus que sur Windows, Linux et Android. Du coup si on développe un jeu PC qui sortira peut-être plus tard sur Consoles ou sur Mac le mieux c'est encore de faire du DirectX qui est une bien meilleure API.
    Je doute que DirectX soit vraiment multiplate-forme
    Même sur les consoles XBOX utilise du AMD , il est très probable que AMD fournisse leur API Vulkan avec (et la Switch supporte Vulkan) après rien n’empêche bien sur MS de mettre DirectX dessus , mais c'est probablement pas la meilleur API (je vois mal comment elle pourrait rivaliser avec celle du constructeur).
    Pour OpenGL oui elle est de moins en moins supporté ,vu que l'API n'est plus maj depuis longtemps (la dernière version date de 2017).

  15. #15
    Membre averti
    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    octobre 2008
    Messages
    167
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur de jeux vidéo

    Informations forums :
    Inscription : octobre 2008
    Messages : 167
    Points : 363
    Points
    363
    Par défaut
    Citation Envoyé par dragonjoker59 Voir le message
    Clairement, DirectX est tellement supporté sur les consoles autres que XBox
    Citation Envoyé par Kannagi Voir le message
    Je doute que DirectX soit vraiment multiplate-forme
    Je me suis probablement mal exprimé mais j'ai jamais dit que DirectX était plus portable que OpenGL. Quand on développe un jeu PC+Console peu importe quelle API on va utiliser sur PC puisque de toute façon il faudra refaire la couche bas niveau pour le reste, donc autant utiliser DirectX qui est bien mieux.

    Citation Envoyé par dragonjoker59 Voir le message
    Je ne vois aucun intérêt d'utiliser OpenGL/DirectX/Vulkan, si l'objectif n'est pas de développer un moteur 3D
    Alors c'est sûr que ça serait un peu idiot d'utiliser OpenGL directement comme ça, sans couche d'abstraction, il faut évidement l'encapsuler dans un moteur 3D. En revanche ce n'est pas parce que tu utilise un moteur 3D déjà fait que ça va te dispenser de toucher aux APIs graphiques. Dans toutes les prod' que j'ai pu voir (ou dont on m'a parlé), il y a toujours besoin d'un ou plusieurs progs spécialisés rendu parce qu'un simple moteur ne résout pas tous les problèmes magiquement.

    Citation Envoyé par Kannagi Voir le message
    Apparemment c'est suffisant pour pas mal de gros jeux AAA genre Borderlands ,Gears of War ,Fornite, Dragon Ball Z fighterZ , Street Fighter 4 et 5 , Shenmue III , Final Fantasy 7 remake.
    Mais oui si on veut faire mieux , faut mieux partir de zero
    Justement parlons-en des AAA. Tu pense bien que quand on développe un jeu comme ça on a une armée de programmeur rendus qui vont constamment modifier le moteur et toucher aux API graphiques, même si on utilise un moteur "tout fait". Chaque prod a ses particularité et ses besoins, chaque prod AAA va tenter d'innover en matière de rendu, et pour ça il n'y a pas le choix il faut passer par Vulkan / DX12 / les APIs propriétaires. Je dit simplement qu'utiliser un moteur 3D genre Irrlicht n'empêchera pas d'avoir besoin de toucher aux APIs bas niveau.

    Il ne s'agit de pas faire mieux en repartant de 0 mais vous seriez étonné de savoir la quantité de code que les studios doivent réécrire pour adapter un moteur 3D déjà existant à leurs besoins, même sur des jeux de moyenne taille (<50 personnes). Ceci implique que coup le cout de développement à long terme de son propre moteur peut être amortis en quelques années à condition d'avoir une bonne équipe à la base.

    Citation Envoyé par Kannagi Voir le message
    Même sur les consoles XBOX utilise du AMD , il est très probable que AMD fournisse leur API Vulkan
    Ben non raté : Sur Xbox c'est un DirectX modifié, point.

Discussions similaires

  1. Réponses: 1
    Dernier message: 14/12/2018, 22h17
  2. La spécification d'OpenGL 4.6 est maintenant disponible
    Par LittleWhite dans le forum Développement 2D, 3D et Jeux
    Réponses: 0
    Dernier message: 31/07/2017, 21h46
  3. La spécification WebGL 2.0 est disponible dans sa version finale
    Par LittleWhite dans le forum Développement 2D, 3D et Jeux
    Réponses: 2
    Dernier message: 28/02/2017, 11h05
  4. La spécification de Vulkan est disponible !
    Par LittleWhite dans le forum Développement 2D, 3D et Jeux
    Réponses: 30
    Dernier message: 19/02/2016, 11h29
  5. DevC++ avec un nouveau MinGW est disponible
    Par HRS dans le forum Dev-C++
    Réponses: 1
    Dernier message: 28/02/2005, 14h37

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