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

OpenGL Discussion :

peut on gérer des vertex pour du dessin 2D ?


Sujet :

OpenGL

  1. #1
    Candidat au Club
    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Août 2018
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur de jeux vidéo
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Août 2018
    Messages : 8
    Points : 3
    Points
    3
    Par défaut peut on gérer des vertex pour du dessin 2D ?
    Chers collègues, je développe actuellement un mini jeux sous c++. Le programme va devoir gérer un certains nombres de "points" dans un espace à 2 dimensions, la position, la rotation, la translations etc etc. J'aimerais que le traitement de ces dits points soient évidemment gérés par le gpu étant donné que le paquets de noeuds avoisine les 50000. Seulement, si je n'm'abuse, le système interne à la carte graphique est fait pour opérer des vertex sur... des triangles... or n'y a t il pas un moyen "détourné" pour qu'il puisse gérer des formes polygonales au sens stricte du terme ? Merci beaucoup

  2. #2
    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 140
    Points
    10 140
    Par défaut
    Le forum a une section OpenGL
    Et quelle versions d'OpenGL utilise tu ?
    Parce que tu peux stocker tout tes triangles coté GPU via les VBO et faire les calculs via un vertex shaders

  3. #3
    Candidat au Club
    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Août 2018
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur de jeux vidéo
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Août 2018
    Messages : 8
    Points : 3
    Points
    3
    Par défaut
    XD parfaitement. Sauf que mes formes ne sont pas des triangles... Et je ne veux pas non plus qu'il me subdivise des formes polygonales en triangles. Je veux simplement qu'il traite mes points tels qu'ils sont (donc matrice en gl il me semble) et je veux récupérer les résultats des traitements pour les utiliser autrement (pas pour du rendu 3d).

  4. #4
    Rédacteur/Modérateur


    Homme Profil pro
    Network game programmer
    Inscrit en
    Juin 2010
    Messages
    7 115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Canada

    Informations professionnelles :
    Activité : Network game programmer

    Informations forums :
    Inscription : Juin 2010
    Messages : 7 115
    Points : 32 965
    Points
    32 965
    Billets dans le blog
    4
    Par défaut
    N'importe quelle forme géométrique n'est jamais qu'un ensemble de triangles, qui sont eux-même qu'un ensemble de points.
    Et OpenGL ne gère que triangles ou quads.
    Ou points seuls bien sûr.

    https://open.gl/drawing
    https://www.khronos.org/opengl/wiki/Primitive
    Pensez à consulter la FAQ ou les cours et tutoriels de la section C++.
    Un peu de programmation réseau ?
    Aucune aide via MP ne sera dispensée. Merci d'utiliser les forums prévus à cet effet.

  5. #5
    Candidat au Club
    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Août 2018
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur de jeux vidéo
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Août 2018
    Messages : 8
    Points : 3
    Points
    3
    Par défaut
    Cool. Je vois, c'est une manière + simple pour lui (gpuboy) d'opérer sur des formes complexes. Alors d'après ce que tu dis GL est à même d'opérer sur des points seuls. Intéressant. Ce qui l'est moins c'est que je viens d'apprendre sur un forum qu'il n'est pas possible - pour l'instant - de récupérer les produits des opérations gpu pour les traiter ailleurs sans que cela vienne gratter quelques millisecondes au passage. Décevant.

  6. #6
    Expert éminent sénior

    Avatar de dragonjoker59
    Homme Profil pro
    Software Developer
    Inscrit en
    Juin 2005
    Messages
    2 031
    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 031
    Points : 11 379
    Points
    11 379
    Billets dans le blog
    10
    Par défaut
    Mais tu veux faire quoi au final ?
    Parce que l'affichage de formes géométriques passe, au niveau du GPU, uniquement par des triangles.

    Donc autant découper toi même tes formes en triangles, passer ces triangles au GPU, pour qu'il les affiche avec les transformations que tu souhaites, via une matrice de transformation TRS (Translate Rotate Scale).
    Et encore, quand je dis "passer ces triangles au GPU", ce que je veux dire, c'est passer ta liste de points dans un VBO, et dessiner ces points en utilisant GL_TRIANGLES dans la fonction de dessin.

    Si tu ne souhaites qu'effectuer des calculs sur tes points, pour ensuite en faire autre chose que de l'affichage, tu peux utiliser les compute shaders dans ce 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).

  7. #7
    Candidat au Club
    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Août 2018
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur de jeux vidéo
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Août 2018
    Messages : 8
    Points : 3
    Points
    3
    Par défaut
    Citation Envoyé par dragonjoker59 Voir le message
    Mais tu veux faire quoi au final ?
    Je veux que le GPU se charge des transformations de points de mes formes, mais pour l'affichage en tracé vectoriel je ne peux plus compter sur GL je dois passer par la librairie Cairo. Seulement j'ai appris tout récemment qu'une telle opération oblige le GPU à soumettre ses résultats au d'abord au CPU et cela engendre une latence non négligeable lorsqu'on souhaite faire du temps réel. Merci pour la solution que tu m'as suggérée, je vais l'étudier et voir ce qu'elle donne in vivo et je reviendrai vers vous pour validation.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. je cherche des bibliothèques pour le dessin
    Par radouan17 dans le forum Windows Presentation Foundation
    Réponses: 1
    Dernier message: 22/05/2014, 17h32
  2. Réponses: 2
    Dernier message: 01/06/2009, 20h33
  3. Gérer des boucles pour publipostage
    Par LeLapinVengeur dans le forum VBA Word
    Réponses: 3
    Dernier message: 29/08/2008, 13h53
  4. [Enseignement] Quel outil pour gérer des comptes pour des TP de développement web ?
    Par Hervé Saladin dans le forum Serveurs (Apache, IIS,...)
    Réponses: 2
    Dernier message: 19/05/2008, 01h43
  5. Réponses: 6
    Dernier message: 06/12/2005, 15h52

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