3D sans polygones, suite.

Posté par  . Modéré par Fabien Penso.
Étiquettes : aucune
0
11
sept.
2001
Technologie
Récemment une nouvelle sur la société SGDL était passée sur LinuxFr, elle indiquait que cette société avait présenté une technique de représentation d'images 3D où les objets ne sont pas décrits par des polygones mais par un language. Cependant nous n'avions pas beaucoup d'informations et beaucoup d'entre-vous se posaient des questions. Michel Dumais de SGDL nous a écrit:

"Conscient qu'une mise au point s'imposait, nous avons donc demandé à Temy Tidafi, directeur du GRCAO (Groupe de Recherches en Conception Assistée par Ordinateur) de l'Université de Montréal, et vice-président, Recherches et Universités, chez SGDL Systèmes, de vulgariser et d'expliquer à vos lecteurs ce que sont les technologies 3D ainsi que la « révolution SGDL ». Permettez-nous aussi de signaler à vos lecteurs que la technologie SGDL a été conçue sous Linux, et que notre environnement de programmation 3D, SGDLScript Z2, « turbine » sous le signe du Pingouin."

Vous pouvez de plus leur envoyer vos questions, ou simplement les poser ici par l'intermédiaire des commentaires, qu'ils ne manqueront pas de suivre. Comme je suis un des tous premiers utilisateurs de cette techno, que
j'ai même assisté à sa naissance, que je l'enseigne et que je l'exploite
pour mes projets de recherche, je vais donc essayer d'apporter quelques
clarifications apparemment nécessaires.


Tout d'abord, précisons certains points d'ordre géométrique :

1- le système géométrique de la technologie SGDL est développé sur
les principes de la géométrie projective, fondée il y a quelques 350
années par Sieur Desargues Lyonnois. Les autres systèmes (CSG, B-rep ou
les systèmes hybrides CSG/B-rep) sont développés sur les bases de la
géométrie euclidienne.

2- cette géométrie projective, selon le classement de Félix Klein,
se situe hiérarchiquement au dessus des géométries affine et
euclidienne. Autrement dit, cette géométrie englobe les deux autres et
donc permet le passage vers ces géométries.

3- la géométrie euclidienne s'intéresse à la métrique des formes (ex
: rayon, la géométrie affine, à l'infini (ex : point infini) et la
projective, aux qualités des formes (ex : tangence).



Ensuite, caractérisons la techno SGDL. Elle ne dispose que d'une
primitive géométrique, à savoir la quadrique (la quartique va bientôt
être commercialisée et des formes de degré supérieur sont à venir),
traduite sous la forme d'une équation implicite. La géométrie projective
permet une généralisation des définitions de différentes formes
géométriques. Ce qui signifie que :

1- nous pouvons passer d'une initialisation de la quadrique à une
autre. Autrement dit, à partir d'un simple déplacement de points dans
l'espace, nous pouvons passer, par exemple, d'une sphère à un cône ou
encore à un cylindre.

2- de plus, avec une seule primitive, il n'y a donc plus lieu, comme
dans les systèmes courants, de disposer de plusieurs définitions des
opérateurs. Autrement dit, plus besoin de vérifier l'identité des
primitives et ensuite de choisir l'opérateur qui leur convient. La
techno SGDL ne dispose que d'une seule définition pour chaque opérateur
volumique.



La technologie SGDL utilise également une représentation ternaire de
l'espace. Ceci signifie que l'intérieur, l'enveloppe et l'extérieur
d'une forme géométrique sont distingués. L'intérieur d'une forme possède
par défaut une valeur de 2, l'enveloppe, 1 et l'extérieur 0. Ainsi,
lorsque nous additionnons deux formes géométriques qui s'intersectent,
nous additionnons (à l'aide d'opérateurs arithmétiques de Kleene)
également les valeurs correspondantes. Par la suite, à l'aide
d'opérateurs particuliers, nous pouvons filtrer les résultats ainsi
obtenus et ne retenir que les parties de l'espace disposant des valeurs
que nous souhaitons. Nous pouvons bien sûr soustraire, additionner mais
aussi multiplier, voire retenir la racine carrée d'un volume.

Il y a un professeur de mathématiques, Prof. Sawyer, de la célèbre
Institution MIT qui se demandait déjà en 1956 comment expliquer à ses
étudiants que tout ce qu'ils avaient appris auparavant était en fait
erroné (réf.), voire sans fondement logique. Et de plus, la géométrie
projective sur laquelle repose la technologie SGDL était d'ailleurs déjà
décriée au 17ème siècle

Avec la technologie SGDL, ce que nous définissons en 3D n'est qu'une
projection d'une définition de l'espace 3D +1. Autrement dit, la notion
de projection permet de rendre un cube, une sphère, un cône ou encore un
ellipsoïde par exemple, comme étant la projection du résultat de
l'initialisation d'une et unique équation d'un espace supérieur, hier
une quadrique, aujourd'hui une quartique et demain, d'un degré encore
plus élevé. Non, il n'y a pas de polygones. Non, il n'y a pas une série
de solides, mais une seule primitive initialisable en plusieurs cas
particuliers, dont ceux des systèmes CSG.

Comme la géométrie projective englobe celles qui lui sont inférieures
hiérarchiquement (affine et euclidienne), elle hérite aussi des qualités
ou propriétés des subordonnées. Exemple : la notion d'infini fait partie
intégrante du modeleur SGDL. Les coordonnées sont au nombre de quatre et
la dernière permet d'indiquer une direction dans le cas de l'infini et
une homogénéisation des coordonnées lorsqu'elle est ramenée à 1 pour un
espace euclidien. Donc, pas d'infini spécifié pour un grand nombre!

Avec ces quelques caractérisations de la technologie SGDL, nous voyons
qu'il est difficile de la comparer à quelque chose comme PovRay et
d'ailleurs pratiquement tous les modeleurs, y compris les plus répandus
Acis, FormZ, AutoCAD, Catia et bien d'autres.

Pour ceux qui continuent à croire et à penser aux polygones, il me
semble qu'il leur faudrait essayer la technologie SGDL. Et, ceux qui ne
croient pas à une révolution, ils continuent alors à accepter
l'antiquité euclidienne et renient ce que pourtant plein de spécialistes
comme notamment les célèbres Pascal, Monge ou encore Poncelet
commençaient à découvrir mais ne pouvaient explorer davantage par ce
qu'ils ne disposaient pas à l'époque d'outils pour le calcul aussi
puissants que les notre.

Et je ne vous parle pas de la dimension fonctionnelle d'un langage de
programmation. Et lorsqu'on comprendra que le repère est projectif,
beaucoup comprendront que le ray-tracing traditionnel ne s'applique
plus. Une révolution implique souvent plusieurs remises en question
fondamentales.

J'espère avoir pu contribuer à au moins inciter chez vous une réflexion
sur les fondements théoriques sur lesquels sont basés les modeleurs que
vous connaissez. J'ai encore plein d'aspects distincts que je me garde
de discuter avec vous à ce stade-ci des commentaires que j'ai lu.

Temy Tidafi

directeur du GRCAO (Groupe de Recherches en Conception Assistée par
Ordinateur)

Université de Montréal

vice-président, Recherches et Universités

SGDL Systèmes

Temy.tidafi@umontreal.ca

Aller plus loin

  • # Euh .... ils ne diraient pas un peu n'importe quoi ?

    Posté par  . Évalué à -2.

    > Les autres systèmes (CSG, B-rep ou les systèmes hybrides CSG/B-rep) sont développés sur les bases de la géométrie euclidienne.
    Mmmm, à ma connaissance il ne s'agit pas de B-rep mais de F-Rep pour "Functionnal Representation", abbréviation utilisée par le projet HyperFun (http://www.hyperfun.org(...) )
    Bon, ça tombe bien, je bosse avec un des "Misters HyperFun" en ce moment, donc quand il arrive au bureau today, je lui fait lire ... pardon ... je lui traduis (c'est un américain ...) leur bout de texte. Je sens qu'il va pas aimer du tout.

    Il faut noter qu'Alexander Pasko a expliqué pas pas mal de recettes de cuisines à ces gens de SGDL qui se sont empressés d'aller essayer de poser des brevets là-dessus juste après en douce.

    Donc déjà là, il y a un problème d'attitude.

    Yep, je crois que LÀ, c'est parti pour troller.
    • [^] # Re: Euh .... ils ne diraient pas un peu n'importe quoi ?

      Posté par  . Évalué à -1.

      Hop, j'arrête tout, B-rep != F-Rep, j'ai rien dit.

      Modéro, tu me colles -5 aux deux commmentaires stp ?
      • [^] # Re: Euh .... ils ne diraient pas un peu n'importe quoi ?

        Posté par  . Évalué à 1.

        Quelqu'un de courageux, qui reconnait ses erreurs !
        Bravo, il n'y en a plus beaucoup de nos jours, notamment un certain A. Nonyme pout ne pas le citer.

        Sinon, j'aimerais bien voir ce que répond ton collègue à ce texte, est-ce possible de nous en faire un petit résumé s'il-te-plaît-je-t-en-prie-allez-soit-sympa :)
        • [^] # Re: Euh .... ils ne diraient pas un peu n'importe quoi ?

          Posté par  . Évalué à 1.

          C'est surtout mon maître de stage en fait :)
          Il est rentré d'Italie hier et part en Chine dans
          quelques heures, donc en fait, il a pas trop envie d'être embêter par ça pour l'instant ;-)

          Désolé, mais je compte bien lui en parler.
  • # C'est une vulgarisation ? J'ai pas comprit la moitié.

    Posté par  (site web personnel) . Évalué à 10.

    Mr Michel Dumais,

    Je suis entièrement d'accord avec votre vice-président Recherches et Universités Mr Temy Tidafi, en particulier quand il nous conseille "Pour ceux qui continuent à croire et à penser aux polygones, il me semble qu'il leur faudrait essayer la technologie SGDL."

    Avec la visibilité que nous (pov petit end-user) avons sur votre société et votre technologie, nous n'avons aucun moyen de déterminer si c'est du pipeau ou non.
    Après des épisodes comme celui d'i2bp, on ne peut pas se contenter de quelques personnes qui disent "C'est révolutionnaire" pour être convaincu. I2bp viens tout de suite en tête, mais il y en a eu beaucoup d'autre. J'ai moi-même travaillé pour une société qui développait un produit qui allait révolutionner notre secteur d'activité grace aux idées fabuleuses de personnes visionnaires. C'est dire! (Je vous rassure, c'est fini. On a coulés)


    Bref bref... J'en arrive au point que je voulais aborder dans ce commentaire :
    Ce qui est je pense le plus difficile à comprendre pour nos petites têtes, c'est pourquoi vous ne mettez pas en ligne une petite démonstration de votre technologie. Une version toute minimaliste qui permet de comprendre comment se fait une modélisation avec SGDL et pouvoir voir les performance de votre moteur. Je pourrais ainsi enfin libérer mon esprit de la tenaille des méchants polygones.
    • [^] # Re: C'est une vulgarisation ? J'ai pas comprit la moitié.

      Posté par  . Évalué à 3.

      Je vous conseille a tous un petit bouquin tres bien fait, aux editions hermann,
      Geometries affine, projective et euclidienne.
      Enfin pour les s faut voir, je suis au japon la, j'ai pas le bouquin sous la main.
      L'auteur mechappe, mais lediteur et le titre devraient suffire. Cest vraiment un bouquin genial, a la Bourbaki, cest a dire quil suffit presque de ne savoir faire qu'une addition pour le lire. Enfin j'exagere, des connaissances en algebre aideront pas mal.
      Et ce bouquin illuminera, en plus de vos soiree, cette technologie.
    • [^] # Re: C'est une vulgarisation ? J'ai pas comprit la moitié.

      Posté par  (site web personnel) . Évalué à 1.

      (moi, je vais me fendre d'une lettre a M Temy Tidafi)

      M. Temy Tidafi

      Je vous remercie pour vos explications, qui, meme si je n'y ai compris goutte, vont me permettrent, pour reprendre vos termes, de mener une réflexion sur les fondements théoriques sur lesquels sont basés les modeleurs que je connais. Je vais de ce pas d'ailleurs rechercher le livre qui a été proposé plus haut ...

      Il est en effet toujours bon d'élargir le domaine de ses connaissances. Et non, je ne désire pas m'enfoncer dans l'ocultisme intellectuel et renier l'apport de Monge, Pascal, etc...
      Néanmoins, quand on présente une information de manière aussi vague que l'article de Zdnet, on peut etre en droit de se poser certaines questions. Vous qui nous invitez a remettre en question la géométrie euclidienne (a raison peut être), devez savoir combien de canulards, fausses demonstrations, ont jalonnées l'histoire des mathématiques. Une remise en question de ce qui nous a été présenté est alors 'normale', avant d'entamer un processus de remise en question de ses propres convictions, ne pensez vous pas ?

      Un parallèle avec l'existant (POV en l'occcurence) et le SGDL était donc, je pense, inévitable. Pardonnez nous.

      Je vous remercie une fois encore de nous avoir fait l'honneur d'avoir tenté de nous expliquer un aspect de votre domaine de recherche. Je suis toujours a l'affut de nouvelles informations, croyez le bien.

      Cordialement.
    • [^] # Re: C'est une vulgarisation ? J'ai pas comprit la moitié.

      Posté par  . Évalué à 5.

      Je crois avoir un tout ptit peu compris ce que le monsieur, il disait. Mais j´aimerais bien que qqun qui s´y connaisse un peu mieux confirme.

      Voila ce que j´ai compris:
      1) D´habitude, on bosse en 3D, avec des primitives 3D. Exemple: on dit à povray "fais-moi une sphère de centre <x,y,z> et de rayon r". On a donc plein de primitives différentes : paralléloïde, sphère, cône, cylindre, etc...
      Pour arriver à faire des formes plus complexes (par exemple une tour de château-fort), on utilise des opérations de CSG: union, soustraction, ou exclusif.
      On a qques pbs qqfois avec des opérations CSG sur des primitives plus complexes...

      2) Là où le monsieur nous promet une révolution, c´est que lui bosse en 4D, avec une primitive unique, qu´il projette sur notre monde en 3D.
      (Un exemple de projection de 3D vers la 2D ? Imaginez une orange -donc une shere- éclairée par une ampoule. Son ombre sur la table fait un cercle -en 2D- ou une ellipse si l´ampoule n´est pas juste au-dessus de l´orange).
      L´hypercube de la défense est un exemple de projection du monde 4D vers notre monde 3D.

      3) Les avantages de cette révolution ?
      Une seule primitive, donc pas de pb de CSG à réécrire suivant qu´on fait une addition entre telle ou telle primitive, etc... Ca marche une fois pour toutes.
      Une seule primitive donc plus de rapidité à interpréter (je pense), moins de complexité dans le programme.
      Une seule primitive, donc des animations plus aisées: passer d´une sphère à un cône me paraît difficile à faire avec povray, tandis qu´apparemment ici, ce serait possible.
      Par rapport à la 3D-polygones, qui ne bosse, en gros, je crois, qu´avec des triangles dans l´espace, on garde le même intérêt de simplicité(un triangle est défini invariablement par trois points, une quadrique invariablement par quatre points plus la projection plus le type de projection), tout en ayant bcp plus de formes à notre disposition.

      Bon, après relecture, j´ai un peu l´impression d´avoir seulement fait de la paraphrase, c'est pas grave, je poste qd même.

      Je ne vois pas ce qu´il y a de révolutionnaire dans le principe. Mathématiquement, ça me paraît ultra-simple. Mais c´est bien de l´implémenter informatiquement. Par contre, ça me paraît assez révolutionnaire sur les possibilités apportées à la modélisation graphique.

      Si qqun pouvait expliquer ce que c'est que "B-rep ou les systèmes hybrides CSG/B-rep" ?

      Par ailleurs, il serait sympa de savoir comment ils comptent intégrer les quartites ?
      Une deuxième primitive dans le même système ferait perdre tout l´intérêt d'avoir une seule primitive...

      Enfin...
      Si je comprend bien, leur gros intérêt, c'est de diffuser ce système de modélisation et surtout des add-ons pour les différents progs (les browsers par ex). C´est sur ces add-ons qu´ils feront leur bénef. Ils comptent les faire libres ?
      Parce que si mathématiquement, ils n´apportent rien, leurs brevets seront caducs (tant qu´on ne peut pas breveter des idées en europe), et des alternatives libres fleuriront...
      • [^] # sur la complexite

        Posté par  . Évalué à 0.

        la complexite en nombre d'operations ne diminue pas, c'est le programme qui est plus simple, les calculs sont majoritairements plus complexes tu va te taper une projection 4->2.

        -1 j'ai peur que ca parte en TROLL
        • [^] # Re: sur la complexite

          Posté par  . Évalué à 2.

          Oui, c´est ce que je pensais.
          L´intérêt donc, c´est que le programme est de taille plus légère en RAM, et qu´on s´appuie à la place sur le processeur qui, dans le cas des browsers par ex, est sous-sollicité.

          Pour les browsers, ok, mais concernant les jeux vidéos, que peuvent en penser les fabricants de cartes vidéos ?
      • [^] # Re: C'est une vulgarisation ? J'ai pas compris la moitié.

        Posté par  . Évalué à 1.

        Je ne sais rien à la géométrie projective non plus, mais j'ai compris à peu près la même chose que toi... je crois ...

        Si qqun pouvait expliquer ce que c'est que "B-rep ou les systèmes hybrides CSG/B-rep" ?

        "B-rep" est l'acronyme pour "Boundary representation", ou "représentation par frontière", c'est à dire que l'objet est simplement défini par une formulation (le plus souvent explicite) de sa frontière (triangulation, spline, ...). C'est ce qui est utilisé pour la plupart des cartes graphiques 3D accélérées.

        Pour les systèmes hybrides CSG/B-rep, je crois qu'il est clair que ce sont des modèles où l'on autorise indifférement les 2 représentations.

        Par ailleurs, il serait sympa de savoir comment ils comptent intégrer les quartites ?

        Avant ça il faudrait peut-être comprendre comment on peut intuitivement modéliser un objet à partir de la projection d'une quadrique dont on donne les paramètres (car, si j'ai bien tout compris, il n'y a pas de modeleur visuel, juste un langage de description) ?
        • [^] # Re: C'est une vulgarisation ? J'ai pas compris la moitié.

          Posté par  . Évalué à 1.

          Avant ça il faudrait peut-être comprendre comment on peut intuitivement modéliser un objet à partir de la projection d'une quadrique dont on donne les paramètres (car, si j'ai bien tout compris, il n'y a pas de modeleur visuel, juste un langage de description) ?

          Un modeleur visuel qui sortirait les projections en 3D (OpenGL par exemple) dans une série de fenêtres doit pas être bien dur à implémenter.

          Intuitivement, je pense qu´il serait assez facile avec un peu de pratique de trouver la quadrique dont la projection crée le volume qu´on cherche.
          Faut juste un peu de pratique ! ;)
          • [^] # Petite contribution géométrique

            Posté par  . Évalué à 1.

            Car j'ai l'impression que ça part un peu en couille.
            Alors la quadrique est l'équivalent à 3D de la conique 2D, c'est-à-dire que comme la conique (ellipse parabole hyperbole) est la section par un plan d'un cone, la quadrique est la section entre un hyperplan (plan à 4D) et un hypercone.
            L'analogie algébrique est tout aussi évidente, alors que les coniques sont décrites par des fonction du second degré des deux coordonnées d'espace x et y (ex: x²+y²=1 est un cercle), les quadriques sont décrites par une fonctions du second degré des trois coordonnées d'espace x y et z (ex: x²+y²+z²=1 est une sphère).
            Par contre je ne sais pas exactement ce qu'est une quartique.
      • [^] # Re: C'est une vulgarisation ? J'ai pas comprit la moitié.

        Posté par  . Évalué à 1.

        > Une deuxième primitive dans le même système ferait perdre tout l´intérêt d'avoir une seule primitive...

        Non, non. En fait l'idée très simple est de modéliser un object d'un espace à N dimensions comme une projection (affine dans le cas de la géométrie affine, perspective dans le cas de la géométrie projective) d'un object d'un espace à N+1 dimensions.

        Pour la quartite, l'idée est de monter d'un cran et modéliser un objet à N dimensions par un objet à N+2 dimensions et ainsi d'obtenir plus de contrôle des formes primitives i.e. celles qu'on peut obtenir avec une seule primitive en changeant juste les paramètres de projection. Du coup, tu n'as pas deux primitives mais une (la quartite) dont la quadrique est un cas particulier (enfin, une projection plutôt).


        Par contre une question toute bête : ce système est très efficace pour modéliser des formes lisses parfaites, économisant plein de polygones. Mais quand on va vouloir modéliser un objet réel (rugueux par exemple), on va se retrouver avec plein de bouts de primitives si je ne m'abuse ?

        Que deviens alors l'intérêt de ce système ? De plus la modélisation avec polygones a l'intérêt de conduire à des équations linéaires dans l'espace modélisé. Dans cette technologie, on est linéaire à une projection près. C'est pas forcément super cool. D'autant plus que la plupart des algorithmes (système d'éclairage par exemple) sont assez simples. La complexité nécessaire pour transformer tous ces algorithmes dans l'espace projectif vaut-il le gain supposé de cette technique ?
        • [^] # Re: C'est une vulgarisation ? J'ai pas comprit la moitié.

          Posté par  . Évalué à 1.

          Par contre une question toute bête : ce système est très efficace pour modéliser des formes lisses parfaites, économisant plein de polygones. Mais quand on va vouloir modéliser un objet réel (rugueux par exemple), on va se retrouver avec plein de bouts de primitives si je ne m'abuse ?

          C´est déjà le cas dans povray.
          Pour une fourrure par exemple, on peut utiliser plein plein de cônes. Ben là, ce sera pareil, je pense, sauf que les poils auront sans doute une forme un peu plus naturelle. Par contre, bonjour le temps de calcul !
          Comme d´hab, on va alors utiliser des textures super travaillées ...

          Que deviens alors l'intérêt de ce système ?

          Un seul processus de calcul, toujours le même, peut-être ?
          Globalement, dans la modélisation 3D, on préfère se concentrer sur les textures que sur les formes.
          Si on doit faire qqch de très irrégulier, on crée une texture qui l´imite, on le plaque sur un objet sans ombre très simple de forme, et on crée un objet invisible, plat et avec ombre pour faire croire que c´est l´objet principal qui projette l´ombre.
          Ici, la quartite prend tout son intérêt: pour un tel objet, on n´aura sans doute besaoin que d´une seule quartite!
          Mais c´est valable que pour les images. Qd on fait de l´animation, vaut mieux avoir de puissantes machines, parce que des trucs comme ça sont impossibles...

          De plus la modélisation avec polygones a l'intérêt de conduire à des équations linéaires dans l'espace modélisé. Dans cette technologie, on est linéaire à une projection près. C'est pas forcément super cool.

          Heu... Pourquoi ?!

          D'autant plus que la plupart des algorithmes (système d'éclairage par exemple) sont assez simples. La complexité nécessaire pour transformer tous ces algorithmes dans l'espace projectif vaut-il le gain supposé de cette technique ?

          C´est vrai que des benchs seraient sympas ...
    • [^] # Re: C'est une vulgarisation ? J'ai pas comprit la moitié.

      Posté par  . Évalué à 4.

      Perso je trouve ce texte plutôt sympa pour plusieurs raisons :

      - Pour le contenu ( même si je me demande s'il va pas y avoir des problèmes de performance si j'ai bien compris).
      - Et les réactions : certains ne comprennent pas tout et trouve le texte obscur ... ben oui c'est pas un texte de journaliste il part du principe que le lecteur a un certain niveau en géométrie.

      A chaque article de presse qui parle de Linux, pleins de gens reproche au journaliste, d'être imprécis, d'avoir oublié des choses, de pas utiliser le bon vocabulaire ...

      J'espère que la lecture de ce texte leur montreront ce que pourrait donner un texte qui parait simple par l'auteur sur un sujet que le lecteur ne maitrise pas. C'est souvent pourquoi les journalistes simplifie beaucoup ( et souvent trop pour des gens comme nous).

      A mon avis la vulgarisation est vraiment queqlue chose de trés dur ... et rare sont les vrais pédagogue ( pour en citer un Hubert Reeves est dans son domaine pas mauvais du tout ... mais comme c'est aussi un domaine qui m'interesse).

      Voilà ... j'attendais un texte comme celui ci pour exprimer mon avis.
      • [^] # Re: C'est une vulgarisation ? J'ai pas comprit la moitié.

        Posté par  (site web personnel) . Évalué à 1.

        Je suis d'accord avec toi.

        Néanmoins, ce qui m'a fait réagir, moi, c'est plutot le ton de l'explication. Je n'attendais pas que ce soit limpide, non pas vraiment. Si c'est technologique, ca fait appel a des notions qui ne sont pas abordables par tous le monde.

        Moi, ce qui m'a le plus 'gonflé', c'est que j'ai vraiment l'impression que le type nous traite comme des gens pas tres évolués, et digne de retourner a nos jouets : en gros, dans sa conclusion, il nous dit: vous etes incapable d'apprehender des concepts nouveaux, retournez a ce que vous croyez, il y a des gens bien plus intelligents qui eux comprennent et vous emmerdent.

        (c'est l'impression que j'ai eu, pas ce qu'il a dit, hein ! )

        Pour un prof d'université, je trouve pas ca très chouette. Mais bon, j'ai connu des profs qu'étaient pas pédagogues pour 2 sous non plus ...
  • # "commercialisée" !!!

    Posté par  (site web personnel) . Évalué à 10.

    J'ai fait quelques études en mathématiques et informatique théorique. Cette nouveauté semble etre interessante, des démarches similaires ayant permis de résoudre de nombreux problèmes en mathématiques.
    Mais ce n'est pas là que le bas blesse, mais plutot dans le vol des figures géométriques de mon enfance :
    "la quartique va bientôt être commercialisée"
    On m'a volé ma quartique ! Ce méfait aurait été moins grave s'il avait été le fait du président d'une quelconque i2bp.
    Ici, c'est le directeur d'un groupe de recherche universitaire qui "commercialise" des formes géométriques.
    Bien sur, il s'agit d'une méthode basé sur des formes géométriques. Mais l'équipe de Monsieur Tidafi a beau développer sous Linux, elle n'en commercialise pas moins chaque goutte du produit de ces recherches.
    La production de logiciel OpenSource devrait pourtant etre une des preoccupations majeures des universitaires.
    Je sais trop bien quel peut etre le prix d'un autre politique : confinement de la recherche, expansion ralentie des idées...
    • [^] # Re: "commercialisée" !!!

      Posté par  . Évalué à 2.

      Tout a fait d'accord. Cette technologie peut sembler interessante mais il est à craindre un précédent si, pour une raison ou pour une autre, un groupe peut copyrighter une expression mathématique ( avec ou sans sa représentation dans une espace de dimension quelconque ) comme s'il s'agissait d'un vulgaire Logo ou slogan ...

      Le cas extrème s'il en est : supposons que l'on fasse une recherche fondamentale en physique des particules et que brutalement, un génie se rende compte que le comportement jusqu'à présent aléatoire de ces particules suit en faite une logique mathématique copyrightée, De quel droit devrait-il alors verser des royalitées à une quelconque entreprise sous prétexte que la formule est protégée ?

      On nous fais déjà le coup avec le génome. Par pitier, que les maths restent en dehors des brevets ...

      PS : Je n'ai pas compris ( du moins dans son contexte ) la phrase :
      "Et je ne vous parle pas de la dimension fonctionnelle d'un langage de
      programmation."
      • [^] # Re: "commercialisée" !!!

        Posté par  . Évalué à 2.

        Pas de panique, si j'ai bien compris, tout ce qu'ils ont fait c'est capter une theorie mathematique un peu ardue, et en faire un logiciel, ils n'ont rien invente en dehors d'un langage capable de manipuler simplement les equations de definition des objets.

        Perso j'ai pas reussi a faire quelquechose d'interessant en projective, j'ai meme pas reussi a aprehander les operateurs de base.

        L'aspect fonctionnel ca doit etre au niuveau langage (le programme n'est qu'une enorme expression sans variable intermediaire)
  • # mouais ...

    Posté par  . Évalué à 2.

    C'est quoi la revolution ?
    C'est juste d'avoir invente un langage pour manipuler des equations en 4D ?

    J'ai essaye de bosser un peu avec de la projective et j'ai pas reussi, si quelqu'un veut s'y mettre, voici un bouquin qui donne un bon depart : http://www.amazon.com/exec/obidos/ASIN/0262062208(...)

    J'ai une petite question : le probleme actuellement c'est la vitesse des bus entres les elements de calculs (passage proc->carte graphique ...) en quoi le fait de modeliser la scene dans une geometrie differente (qui plus est avec une dimension en plus), par l'intermediaire d'equations implicites (qu'il faudra bien dessiner a un certain moment) va-t-il accelerer le chmilblick ?

    Sans compter que j'ai passe 2 semaine sur cette geometrie et que j'ai pas capte les operateurs de base, alors le projeteur neuneu qui utilise AutoCAD ...
    On a le droit d'etre sceptique ? (je suis pas employe et pas VC)
    • [^] # Re: mouais ...

      Posté par  . Évalué à 1.

      J'ai une petite question : le probleme actuellement c'est la vitesse des bus entres les elements de calculs (passage proc->carte graphique ...)
      Tu parles des cartes 3d (Nvidia...). Je pense que la technique presentee vise plus a changer la facon de modeller. Le but n'est pas d'accelerer le rendu.
      Pour ce qui est de l'interet pratique, je suis egalement sceptique. Deja que les plus belles images sous POV n'utilisent quasiment que des polygones...
      Par contre, il y a sans doute un interet theorique.
  • # Tentative d'explication

    Posté par  . Évalué à 3.

    Meme si je ne suis pas un specialiste en geometrie et en topologie, je vais tenter d'exposer ce que j'ai compris du texte. N'hesitez pas a me corriger/completer.
    1. Geometrie projective
    On cree des formes 3d en projetant des formes 4d dans un espace 3d. Un peu comme les ombres chinoises: on cree des formes 2d a partir d'un objet 3d (les mains). Le simple fait de tourner ou deplacer les mains permet d'exprimer un large panel de formes 2d.

    1'. Metrique vs qualites des formes
    L'exemple donne de la tangente ne distingue pas la nouvelle technologie de celle utilisant des espaces euclidiens 3d. Pov aussi sait calculer des tangentes a des volumes. Heureusement, sinon pas de ray-tracing possible.


    2. Valeurs attribuees a des points de l'espace
    A mon avis (mais je me trompe peut-etre), le fait d'attribuer des valeurs differentes pour l'interieur, l'enveloppe et l'exterieur d'une forme n'est pas nouveau. POV utilise exactement la meme chose. D'ailleurs, toutes les primitives de POV peuvent etre exprimees a l'aide d'equations. Ainsi, pour la sphere: x2 + y2 +z2 = r2. Si on retouche cette equation, on obtient x2 + y2 + z2 - r2 = 0. La valeur 0 correspond a l'enveloppe, <0 a l'interieur de la sphere, >0 a l'exterieur. C'est pareil pour toutes les autres formes.

    3. J'ai rien compris au passage sur le MIT

    4. Clairement, les polygones n'ont rien a faire dans l'histoire

    5. Le ray-tracing ne s'applique pas a la methode des espaces projectifs. Pourquoi ? Elle permet bien de generer des formes 3d, non ? Et on dispose bien d'une description analytique de la forme obtenue apres projection ?

    6. Espaces projectifs plus puissants que la 3d euclidienne.
    Certes. Mais seul un sous-ensemble des figures possibles est exploite (quadrique et quartique). Est-ce que cela suffit pour rendre possible la creation de figures inaccessibles a POV ?

    7. Personnellement, je me demande quels sont les apports de cette technique:
    - Le rendu est-il accelere ?
    - Les eventuelles nouvelles formes proposees ont-elles un interet pour les utilisateurs (art, industrie)

    8. Dernier question: je me demande quelle est la toplogie de l'espace utilise ? Quelles sont ses dimensions. J'ai suppose tout au long du commentaire qu'il s'agissait d'un espace euclidien a 4 dimensions, mais je peux me tromper.
    • [^] # Re: Tentative d'explication

      Posté par  . Évalué à 1.

      Hop, je me reponds a moi-meme.

      5. Ben non, si on disposait toujours d'une expression analytique de la forme apres projection, ca voudrait dire que les espaces projectifs ne sont pas plus puissants que la geometrie euclidienne, par exemple. Et je ne pense pas que les gens qui ont prouve ca se soient trompes...
  • # Humour mais quand même :)

    Posté par  . Évalué à 2.

    1-Il existe dans POV une primitive quadrique...et ça date pas d'aujourd'hui. Par contre mes pauvres connaissances en géomètrie me permette pas de dire si il sagit du même type de primitive qu'utilise SGDL.

    2-Si on me demande de "dessiner un mouton", je me servirai d'un modeler polygonal, si on me demande de dessiner la caisse dans laquelle se trouve le mouton, j'essaierai peut être SGDL.

    Une vraie question :
    Est il plus rapide de travailler avec des polygones, ou avec des primitives quadriques pour modèliser des objets ou êtres complexes ?
    Modèliser ne si limite pas à l'art de pondre des objets improbables, et purement mathèmatiques.
    Evidement les outils qui permettent ce type de modèlisation sont importants, et utiles, mais faut pas tout mélanger non plus.
  • # Révolutionnaire ?

    Posté par  (site web personnel) . Évalué à 2.

    Je vois là un résumé très intéressant d’un logiciel, mais je ne vois pas réellement l’innovation.

    En effet, tous se qui est annoncé existe déjà dans POV depuis quelques années :

    - la différenciation entre intérieur / extérieur existe depuis longtemps (mot clé interior dans les version 3.1 et supérieures, halo… dans les versions antérieures) ;

    - l’existence des quadrics, quartic et autres existent également. Dans la documentation de POV, il précise que c’est une équation en x, y, z de 4ème ordre ;

    - le passage d’une sphère à un cône peut se faire alors très rapidement, puisque l’on modélise les objets par une équation mathématique... le changement d’une constante peut faire de grosse différence (je n’ai pas d’exemple sous la main, mais je peux en trouver si quelqu’un le désire, avec source POV à l’appuie) ;

    - et enfin, les facettes : oui POV les gère, mais ils ne transforment pas la quadric en facette, il calcul directement les intersections avec l’équation.

    Donc, maintenant, pour que j’abandonne POV, il faut me persuader en me donnant la possibilité de tester ce logiciel, qui, peut très bien être révolutionnaire sur le temps/qualité de rendering...
  • # Ca me rappelle quelques vagues souvenirs...

    Posté par  . Évalué à 2.

    Du temps de mon deug de maths pures (ouh là, ça commence à dater), on faisait de la géométrie en calculant dans |H, à savoir, un corps hamiltonien isomorphe à |R X |R3, donc de dimension 4, appelé aussi ensemble des Quaternions.
    Autrement dit un quaternion q comporte une partie réelle et une partie "quaternion pur" à 3 dimensions. C'était assez éclatant car on peut ainsi exprimer de manière très simple des transformations géométriques à partir d'opérations basiques sur les quaternions. On vire ensuite la partie réelle pour ne garder que la partie quaternion pure qui est de dimension 3 donc directement transposable dans l'espace 3D.
    Il y a des passages dans l'explication de la techno ci-dessus qui me font fortement penser aux quaternions ; SGDL exploite peut-être en partie ces notions. Si c'est le cas, à ma connaissance il s'agit effectivement d'une approche encore peu (pas ?) explorée par la modélisation 3D "classique".
  • # Re: C'est une vulgarisation ? J'ai pas comprit la moitié.

    Posté par  . Évalué à 2.

    Il me semble que c'est une bonne paraphrase (plus claire que l'original, pour le non spécialiste de la modélisation géométrique) :-)

    B-rep, ça veut dire "Boundary Representation". C'est une méthode de modélisation géométrique dans laquelle les solides sont représentés par leur "peau". La "peau" est modélisée comme une surface (au sens mathématique du terme) ou un assemblage de surfaces. Cette modélisation est souvent appelée "solide exact", car on ne "discrétise" pas les surfaces, on utilise les objets mathématiques "purs".

    C'est en opposition avec la modélisation "volumique" dans laquelle les objets sont découpés en petits éléments primitifs (des triangles ou des polygones en 2D, des tétrahèdres ou des parallélépipèdes en 3D).

    La construction de volumes avec la méthode CSG (opération booléennes sur des volumes) a été historiquement créée pour la modélisation "volumique".

    Pour pouvoir continuer à utiliser la CSG avec les "solides exacts" (les B-reps), on a créé un type de modélisation dite "hybride" qui combine les possibilités de la CSG et des B-Reps.

    Ce sont les fameux systèmes hybrides dont il est question.

    Là, les exemples que l'on peut voir sur le site web (en bas de la page) sont assez sommaires et sont particulièrement adaptés à des quadriques.

    Il serait intéressant de voir un "vrai objet" habituel de la CAO modélisé par cette méthode.

    Un moteur de fusée, par exemple, c'est plus complexe qu'un lemniscate.
  • # Performances

    Posté par  . Évalué à 1.

    Hello,

    On peut lire dans le PDF "Historique de SGDL"
    (http://www.sgdl-sys.com/index-fr.htm(...))

    "Ajoutons que ces avantages se traduisent
    1. par une minimisation du nombre des calculs,
    2. par des possibilités de numération entière et 3. par l'émergence d'un fort parallélisme intrinsèque."

    1. 2. Admettons
    3. A t'il fini d'émerger complètement? Quid de la mise en oeuvre ? Sur quel type d'architecture ?

    - Peut on tirer parti des capacités des cartes graphiques récentes (taillées pour manger des polygones texturés) pour accélérer les temps de calcul du SGDL ?

    - Envisagez vous une nouvelle "race" de carte graphique adaptée à ces calculs ?



    Enzo Bricolo

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.