FR2870374A1 - Client-server architecture for displaying three dimensional digital model, has server and clients whose network synchronizing modules permit to update scene state relative to model, within communication network, between clients and server - Google Patents

Client-server architecture for displaying three dimensional digital model, has server and clients whose network synchronizing modules permit to update scene state relative to model, within communication network, between clients and server Download PDF

Info

Publication number
FR2870374A1
FR2870374A1 FR0405118A FR0405118A FR2870374A1 FR 2870374 A1 FR2870374 A1 FR 2870374A1 FR 0405118 A FR0405118 A FR 0405118A FR 0405118 A FR0405118 A FR 0405118A FR 2870374 A1 FR2870374 A1 FR 2870374A1
Authority
FR
France
Prior art keywords
server
module
client
model
clients
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
FR0405118A
Other languages
French (fr)
Other versions
FR2870374B1 (en
Inventor
Jean Marc Krattli
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Kappa-Sc Fr
Original Assignee
Individual
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Priority to FR0405118A priority Critical patent/FR2870374B1/en
Publication of FR2870374A1 publication Critical patent/FR2870374A1/en
Application granted granted Critical
Publication of FR2870374B1 publication Critical patent/FR2870374B1/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/131Protocols for games, networked simulations or virtual reality
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/565Conversion or adaptation of application format or content
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/16Indexing scheme for image data processing or generation, in general involving adaptation to the client's capabilities

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Graphics (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Processing Or Creating Images (AREA)
  • Computer And Data Communications (AREA)

Abstract

The architecture has a server (2) with a network synchronizing module (24). Clients (3, 3a) have objects display modules (30) for representing a three dimensional model and network synchronizing modules (31). The server and the clients are included in a communication network (4) e.g. Internet. The modules (24, 31) permit to update a scene state relative to the model, within the network, between the clients and the server. An independent claim is also included for a method of displaying a three dimensional digital model in a client-server architecture.

Description

ARCHITECTURE CLIENT-SERVEUR POURCLIENT-SERVER ARCHITECTURE

LA VISUALISATION D'UNE MAQUETTE NUMERIQUE  VISUALIZATION OF A DIGITAL MODEL

TRIDIMENSIONNELLETHREE DIMENSIONAL

L'invention concerne une architecture client-serveur pour la visualisation d'une maquette numérique tridimensionnelle (3D) ainsi qu'une méthode de visualisation d'une telle maquette.  The invention relates to a client-server architecture for viewing a three-dimensional digital model (3D) and a method for viewing such a model.

De nombreuses entreprises conçoivent des produits en utilisant des outils de conception assistée par ordinateur (CAO). Les outils de CAO permettent essentiellement de concevoir mais aussi de visualiser et d'interagir sur des maquettes numériques 3D représentant les futurs produits.  Many companies design products using computer-aided design (CAD) tools. CAD tools essentially allow to design but also to visualize and interact on 3D digital mockups representing future products.

Ces maquettes sont utilisées au cours des différentes étapes de conception et de validation des produits en vue de vérifier leur aspect esthétique, de simuler leur comportement, par exemple, leur résistance aux chocs ou leur encombrement, de résoudre les contraintes de fabrication, voire de promouvoir les produits auprès de clients potentiels ou de former du personnel sur ces produits.  These models are used during the various stages of design and validation of products to verify their aesthetic appearance, to simulate their behavior, for example, their impact resistance or their size, to resolve manufacturing constraints, and even to promote products from potential customers or to train staff on these products.

Toutefois, ces étapes de conception, validation, promotion et de formation, nécessitent bien souvent l'intervention simultanée d'une pluralité d'utilisateurs sur les maquettes, ces utilisateurs étant situés en des lieux différents, quelquefois même dans des pays différents.  However, these stages of design, validation, promotion and training, often require the simultaneous intervention of a plurality of users on the models, these users being located in different places, sometimes even in different countries.

C'est la raison pour laquelle, on a développé des architectures du type client-serveur permettant à une pluralité d'utilisateurs, physiquement éloignés, de visualiser une même maquette.  This is why we have developed client-server architectures allowing a plurality of users, physically distant, to view the same model.

Une telle architecture est divulguée dans le document WO 01/84501. Cette architecture met en uvre un serveur, un réseau de communication et au moins un client. Le serveur comprend, d'une part, un module de rendu configuré pour permettre le rendu d'une image en deux dimensions (2D) générée à partir de données de scène 3D et, d'autre part, une interface configurée pour transmettre ces images aux clients, au travers du réseau. Le poids des images 2D, c'est-à-dire la quantité d'information qu'elles comportent en bits, octets ou multiples de ces unités, est suffisamment faible pour permettre la transmission rapide des images au travers d'un réseau de faible débit et leur affichage au niveau du client même si ce dernier ne bénéficie pas d'une machine performante. Un système de commande/réponse permet au client d'interagir sur l'image et, en liaison avec le serveur, sur les données de scène de ce serveur.  Such an architecture is disclosed in WO 01/84501. This architecture implements a server, a communication network and at least one client. The server comprises, on the one hand, a rendering module configured to render a two-dimensional image (2D) generated from 3D scene data and, on the other hand, an interface configured to transmit these images. to customers, through the network. The weight of the 2D images, that is to say the amount of information they contain in bits, bytes or multiples of these units, is sufficiently small to allow the fast transmission of the images through a weak network. flow and their display at the client level even if the latter does not benefit from a powerful machine. A command / response system allows the client to interact on the image and, in conjunction with the server, on the scene data of that server.

Aussi, dans l'architecture divulguée dans le document WO 01/84501, le client ne dispose pas de données 3D représentatives des données de scène de sorte qu'il n'est pas possible, pour l'utilisateur, d'interagir sur lesdites données de scène.  Also, in the architecture disclosed in WO 01/84501, the client does not have 3D data representative of the scene data so that it is not possible for the user to interact on said data. of scene.

D'autres architectures sont divulguées dans les documents US-6,377,257 et US-6,384,821. Dans ces architectures, les données 3D d'une scène, notamment des données géométriques, sont transmises entre un serveur et un ensemble de clients dans un réseau. Le client possède généralement un module de rendu pour permettre la visualisation des données 3D.  Other architectures are disclosed in US-6,377,257 and US-6,384,821. In these architectures, the 3D data of a scene, in particular geometric data, is transmitted between a server and a set of clients in a network. The client usually has a rendering module for viewing 3D data.

Néanmoins, dans ces architectures, la connexion des clients au réseau de communication doit impérativement être une connexion à large bande passante de manière à autoriser un débit important de données géométriques du serveur auxdits clients. En outre, les machines clients doivent eux-mêmes disposer de cartes graphiques puissantes comportant un module de rendu de haute qualité pour pouvoir gérer ces données géométriques et conférer un rendu suffisant aux représentations graphiques visualisées.  Nevertheless, in these architectures, the connection of the clients to the communication network must imperatively be a broad bandwidth connection so as to allow a large flow of geometric data from the server to said clients. In addition, the client machines themselves must have powerful graphics cards with a high quality rendering module to be able to manage these geometric data and give a sufficient rendering to the graphic representations visualized.

Considérant l'état de la technique précité, un problème que se propose de résoudre l'invention est de réaliser une architecture client-serveur pour la visualisation d'une maquette numérique tridimensionnelle, ainsi qu'une méthode correspondante, qui permettent à un ensemble d'utilisateurs de visualiser, interagir et finalement collaborer sur des données 3D partagées au sein d'un réseau.  Considering the above-mentioned state of the art, a problem to be solved by the invention is to provide a client-server architecture for the visualization of a three-dimensional digital model, as well as a corresponding method, which allow a set of users to view, interact and ultimately collaborate on shared 3D data within a network.

La solution de l'invention au problème précité a pour premier objet une architecture client-serveur pour la visualisation d'une maquette numérique tridimensionnelle comprenant: - une base de données tridimensionnelles relative à ladite maquette; - un serveur comportant un module de synchronisation réseau; et - un ou plusieurs clients, chaque client comportant un module de visualisation pour la représentation de ladite maquette et un module de synchronisation réseau, ledit serveur et le ou lesdits clients étant compris dans un réseau de communication, lesdits modules de synchronisation étant aptes à mettre à jour un état de scène relatif à la maquette, au sein du réseau, entre le ou les clients et le serveur.  The solution of the invention to the aforementioned problem is firstly a client-server architecture for viewing a three-dimensional digital model comprising: a three-dimensional database relating to said model; a server comprising a network synchronization module; and one or more clients, each client comprising a display module for the representation of said model and a network synchronization module, said server and said client (s) being included in a communication network, said synchronization modules being able to put update a scene state relating to the model, within the network, between the client or clients and the server.

Elle a pour second objet une méthode de visualisation d'une maquette tridimensionnelle dans une architecture client-serveur, caractérisée en ce qu'elle comporte les étapes suivantes selon lesquelles: - on fournit une base de données tridimensionnelles relative à ladite maquette, un serveur comportant un module de synchronisation réseau, un ou plusieurs clients, chaque client comportant un module de visualisation pour la représentation de ladite maquette et un module de synchronisation réseau, et un réseau de communication; - le serveur génère, à partir de la base de données tridimensionnelles, une représentation tridimensionnelle de la maquette; et - des états de scène de cette représentation tridimensionnelle sont mis à jour, au sein du réseau, entre le ou les clients et le serveur, au moyen des modules de synchronisation.  Its second object is a method for viewing a three-dimensional model in a client-server architecture, characterized in that it comprises the following steps according to which: a three-dimensional database relating to said model is provided, a server comprising a network synchronization module, one or more clients, each client comprising a display module for the representation of said model and a network synchronization module, and a communication network; the server generates, from the three-dimensional database, a three-dimensional representation of the model; and - scene states of this three-dimensional representation are updated, within the network, between the client or clients and the server, by means of the synchronization modules.

Ainsi, les modifications des états de scène de la maquette tridimensionnelle effectuées chez un client sont mises à jour au sein du réseau, via le serveur, de sorte que l'ensemble les utilisateurs puissent non seulement visualiser la maquette de manière synchrone et cohérente, mais aussi interagir collaborativement avec celle-ci et ce, avec une haute qualité visuelle, quelle que soit la complexité de la maquette, quelle que soit la bande passante du réseau et quelle que soit la puissance graphique dont dispose les clients.  Thus, the modifications of the scene states of the three-dimensional model made in a client are updated within the network, via the server, so that the set of users can not only view the model synchronously and coherently, but also interact collaboratively with it and with a high visual quality, regardless of the complexity of the model, regardless of the bandwidth of the network and regardless of the graphics power available to customers.

L'invention sera mieux comprise à la lecture de la description non limitative qui va suivre, rédigée en référence aux dessins, dans lesquels: - la figure 1 schématise l'architecture client- serveur selon l'invention; la figure 2 illustre la division du calcul d'une image en couches indépendantes représentant différents types d'effets visuels pour la mise en oeuvre de l'invention; la figure 3 illustre les différents niveaux de qualité associés à la couche Ombre montrée à la figure 2 la figure 4 illustre la gestion du rendu 20 progressif opérée pour la création d'une image selon l'invention; - la figure 5 est un exemple de métalangage de niveaux utilisé pour la définition de couches selon l'invention; - la figure 6 illustre les actions de composition d'une image effectuées par le module de visualisation client dans une architecture selon l'invention, lorsque les paramètres d'une ombre sont modifiés; la figure 7 schématise différentes étapes d'un 30 synchronisation réseau selon l'invention; - la figure 8 illustre le découplage de la complexité selon l'invention; la figure 9 illustre le rendu progressif distant opéré par le serveur ainsi que l'enrichissement progressif en local; la figure 10 illustre le principe de visualisation collaborative selon l'invention; - la figure 11 détaille les différents modules logiciels ou matériels d'un serveur partie d'une architecture selon l'invention; et - la figure 12 détaille les différents modules logiciels ou matériels d'un client partie d'une architecture selon l'invention.  The invention will be better understood on reading the nonlimiting description which follows, written with reference to the drawings, in which: FIG. 1 schematizes the client-server architecture according to the invention; FIG. 2 illustrates the division of the calculation of an image into independent layers representing different types of visual effects for the implementation of the invention; FIG. 3 illustrates the different quality levels associated with the Shadow layer shown in FIG. 2; FIG. 4 illustrates the management of the progressive rendering performed for the creation of an image according to the invention; FIG. 5 is an example of level metalanguage used for the definition of layers according to the invention; FIG. 6 illustrates the actions of composition of an image performed by the client display module in an architecture according to the invention, when the parameters of a shadow are modified; FIG. 7 schematizes various steps of a network synchronization according to the invention; FIG. 8 illustrates the decoupling of the complexity according to the invention; FIG. 9 illustrates the remote progressive rendering operated by the server as well as the progressive enrichment locally; FIG. 10 illustrates the collaborative visualization principle according to the invention; FIG. 11 details the various software or hardware modules of a server part of an architecture according to the invention; and FIG. 12 details the various software or hardware modules of a client that is part of an architecture according to the invention.

Ainsi que cela est montré à la figure 1, l'architecture client-serveur selon l'invention comporte une base de données tridimensionnelles 1, un serveur 2 et un ou plusieurs clients 3, 3a distants du serveur 2. Le serveur 2 et les clients 3 sont connectés entre eux au sein d'un réseau de communication 4.  As shown in FIG. 1, the client-server architecture according to the invention comprises a three-dimensional database 1, a server 2 and one or more clients 3, 3a distant from the server 2. The server 2 and the clients 3 are connected to each other within a communication network 4.

La base 1 comporte des données tridimensionnelles natives concernant une maquette numérique 3D. Ces données sont enregistrées dans une mémoire non volatile par exemple d'un disque dur. Ce disque dur est partie du serveur 2 ou en liaison avec celui-ci, comme dans le cas de la figure 1.  The base 1 comprises native three-dimensional data concerning a 3D digital model. This data is stored in a non-volatile memory for example of a hard disk. This hard disk is part of the server 2 or in connection therewith, as in the case of Figure 1.

Le serveur 2 est d'un type connu comportant une carte mère munie d'au moins un microprocesseur pour le traitement des données, de cartes informatiques ainsi que de supports mémoire volatile et non volatile. Ce serveur 2 comporte en outre, selon l'invention, un module 20 d'importation et de conversion des données natives, un module 21 pour la génération de tridimensionnelles et la gestion des générer des représentations 3D allégées, gestion des attributs d'une scène l'association de matériaux ou les et un module 23 de rendu 3D de progressif permettant l'obtention de représentations photo-réalistes des maquettes 3D. Le serveur 2 comporte enfin un module de synchronisation 24 des espaces virtuels serveur/clients.  The server 2 is of a known type comprising a motherboard provided with at least one microprocessor for data processing, computer cards as well as volatile and non-volatile memory media. This server 2 further comprises, according to the invention, a module 20 for importing and converting native data, a module 21 for three-dimensional generation and the management of generating lightweight 3D representations, managing the attributes of a scene the combination of materials or them and a module 3D rendering 3d progressive to obtain photo-realistic representations of 3D models. The server 2 finally includes a synchronization module 24 server / client virtual spaces.

Chaque client 3, 3a est formé par un ordinateur, par exemple de type ordinateur personnel, comportant un module de visualisation 30 d'objets allégés de basse résolution et un module de synchronisation réseau 31. Une interface utilisateur 32 permet à un utilisateur d'interagir avec les différents modules client.  Each client 3, 3a is formed by a computer, for example of the personal computer type, comprising a low-resolution lightweight object display module 30 and a network synchronization module 31. A user interface 32 allows a user to interact with the different client modules.

Le réseau 4 est un réseau par exemple du type Internet ou privé. Le serveur 2 et les clients 3, 3a ont accès à ce réseau 4 selon une bande passante qui leur est propre. Les données circulant au sein du réseau pour la mise en uvre de l'invention sont susceptibles d'être cryptées, par exemple selon le protocole SSL (Secure Sockets Layer).  The network 4 is a network for example of the Internet or private type. The server 2 and the clients 3, 3a have access to this network 4 according to a bandwidth of their own. The data circulating within the network for the implementation of the invention may be encrypted, for example according to the SSL (Secure Sockets Layer) protocol.

Le module de conversion 20 du serveur 2 importe les données natives des maquettes 3D, qui proviennent d'outils de CAO existants tels que CatiaTM, Pro-EngineerrM, VDA-FS', IGESTM, AutodeskTM, AliasTM ou SoftimageTM, les traduit, et génère une description de ces données dans un format spécifique apte à être géré par le module de représentations détails apte à un module 22 de 3D tels que paramètres de qualité, très haute qualité et visualisation client 30. Ce format spécifique est adapté aux besoins de l'invention et permet notamment une gestion ultérieure des niveaux de détail, une lecture en continu, un découplage de la complexité et une association de matériaux.  The conversion module 20 of the server 2 imports the native data of the 3D models, which come from existing CAD tools such as CatiaTM, Pro-EngineerrM, VDA-FS ', IGESTM, AutodeskTM, AliasTM or SoftimageTM, translates them, and generates a description of these data in a specific format that can be managed by the detail representation module adapted to a module 22 of 3D such as quality parameters, very high quality and client visualization 30. This specific format is adapted to the needs of the invention and allows in particular a subsequent management levels of detail, a continuous reading, a decoupling of complexity and a combination of materials.

Le module de gestion des détails 21 du serveur 2 génère des niveaux de détails topologiques à partir des données 3D importées et converties par le module 20. Ces représentations sont plus ou moins précises et plus ou moins lourdes en termes de poids mémoire. En particulier, les détails peuvent être générés à partir des informations surfaciques ou polygonales selon une méthode minimisant les déformations. La représentation 3D obtenue par le module de gestion de détails 21 est ainsi allégée de manière à faciliter, d'une part, leur transfert au sein du réseau 5 et, d'autre part, leur affichage par les machines clients ne disposant pas de capacités graphiques élevées.  The details management module 21 of the server 2 generates levels of topological details from the 3D data imported and converted by the module 20. These representations are more or less precise and more or less heavy in terms of memory weight. In particular, the details can be generated from the surface or polygonal information according to a method minimizing the deformations. The 3D representation obtained by the detail management module 21 is thus lightened so as to facilitate, on the one hand, their transfer within the network 5 and, on the other hand, their display by the client machines that do not have capacities. high graphics.

Le module de gestion de scènes 22 gère les modifications apportées aux scènes 3D, qui portent par exemple sur la position des objets, leurs attributs de rendu tels que la visibilité, la couleur, la transparence, la texture ou les reflets, et gère les propriétés globales de rendu 3D telles que la qualité, les effets de contour, le brouillard ou les effets de lentille optique.  The scene management module 22 manages the modifications made to the 3D scenes, which relate, for example, to the position of the objects, their rendering attributes such as visibility, color, transparency, texture or reflections, and manages the properties global 3D rendering such as quality, edge effects, fog or optical lens effects.

Le module ou moteur de rendu progressif 23 calcule des images 2D de haute qualité à partir des descriptions de scènes 3D obtenues du module 22 et des représentations topologiques des maquettes 3D obtenues du module 21.  The module or rendering engine 23 calculates high quality 2D images from the descriptions of 3D scenes obtained from the module 22 and the topological representations of the 3D models obtained from the module 21.

A cet effet, il divise le calcul de l'image en couches indépendantes représentant les différents types d'effets visuels, tels que les ombres, la réflexion, la transparence, les effets volumiques comme par exemple la fumée et tels que les effets de lentille comme par exemple la profondeur de champ. Cette division ou découpe en couches indépendantes est illustrée à la figure 2 au regard de couches Matière et Illumination, Ombre, Transparence et Reflet. Elle permet l'exécution des calculs de chaque couche de manière indépendante et sur une pluralité de machines, les clients effectuant les travaux les plus simples, le serveur prenant le relais pour les travaux plus complexes. Elle permet en outre d'améliorer la qualité de l'image de manière progressive, cette amélioration progressive étant visible par l'utilisateur. Elle permet enfin la réalisation de calculs sur chaque couche selon des méthodes différentes, plus ou moins rapides et/ou de plus ou moins bonne qualité.  For this purpose, it divides the calculation of the image into independent layers representing different types of visual effects, such as shadows, reflection, transparency, volume effects such as smoke and such as lens effects. such as the depth of field. This division or cutting into independent layers is illustrated in Figure 2 with regard to layers of Matter and Illumination, Shadow, Transparency and Reflection. It allows the execution of the calculations of each layer independently and on a plurality of machines, the customers performing the simplest work, the server taking over for the more complex work. It also makes it possible to improve the quality of the image in a progressive manner, this progressive improvement being visible to the user. It finally allows the realization of calculations on each layer according to different methods, more or less fast and / or more or less good quality.

D'ailleurs, le module de rendu progressif 23 définit et gère des niveaux de qualité de manière matérielle ou logicielle pour chacune des couches et gère par suite le temps de calcul de chacune des couches d'image. La figure 3 illustre les différents niveaux de qualité associés à la couche Ombre de la figure 2. Au niveau de qualité 0, le temps de calcul est de 40 ms et l'ombre projetée est de basse qualité. Au niveau de qualité 1, le temps de calcul est de 1 s et l'ombre projetée est de bonne qualité. Au niveau de qualité 2, le temps de calcul est de 10 s et un lancé de rayons de l'ombre prend en compte la transparence et la couleur de l'objet. Au niveau de qualité 3, le temps de calcul est de 1 min et le lancé de rayons précité prend alors en compte le calcul de la pénombre.  Moreover, the progressive rendering module 23 defines and manages quality levels in hardware or software for each of the layers and hence manages the calculation time of each of the image layers. Figure 3 illustrates the different quality levels associated with the shadow layer of Figure 2. At quality level 0, the computation time is 40 ms and the projected shadow is of low quality. At Quality Level 1, the computation time is 1 s and the projected shadow is of good quality. At Quality Level 2, the computation time is 10 s and a Shadow Ray roll takes into account the transparency and color of the object. At quality level 3, the computation time is 1 min and the aforementioned spoke run then takes into account the calculation of the penumbra.

En définitive, ainsi que cela est montré à la figure 4, le rendu progressif est décrit par un graphe d'opérations dans lequel chaque n ud correspond à un type d'effets, un n ud pouvant être calculé avec différents moteurs, chaque moteur apportant une qualité plus ou moins haute en fonction de sa performance.  Finally, as shown in Figure 4, the progressive rendering is described by a graph of operations in which each node corresponds to a type of effects, a node that can be calculated with different engines, each engine providing a higher or lower quality depending on its performance.

Bien entendu, un métalangage de niveaux est défini de manière à permettre l'encapsulation des concepts gérés par les moteurs de rendu classiques. Ce métalangage supporte le concept de la découpe en couches et assure une exécution optimale des effets visuels. Les différentes variables de ce langage se réfèrent aux couches elles-mêmes, aux niveaux de qualité disponibles pour une couche donnée et aux effets susceptibles d'être obtenus pour ladite couche. Un exemple d'organisation des niveaux selon ce métalangage est montré à la figure 5, pour les couches Matière et Illumination (Illumination Layer), Transparence (Transparency Layer) et Ombre (Shadow Layer). Ainsi que cela est montré dans cette figure, on définit, pour chaque couche, des paramètres tels que les paramètres Couleur (Color) , Texture, Brillance (Shininess). On définit en outre, pour chaque couche, des niveaux de qualité disponibles tels que Qualité 0, 1, 2 ou 3 (Quality 0, 1, 2 or 3) ainsi que des pointeurs tels que phong-OGL ou phong-software , désignant les moteurs de rendu destinés à exécuter les calculs.  Of course, a metalanguage of levels is defined so as to allow the encapsulation of the concepts managed by the classic rendering engines. This metalanguage supports the concept of layered cutting and ensures optimal performance of visual effects. The different variables of this language refer to the layers themselves, to the quality levels available for a given layer and to the effects that can be achieved for that layer. An example of organization of levels according to this metalanguage is shown in Figure 5, for the layers of Matter and Illumination (Illumination Layer), Transparency (Transparency Layer) and Shadow (Shadow Layer). As shown in this figure, parameters for each layer are defined, such as Color, Texture, Shininess. In addition, for each layer, available quality levels such as Quality 0, 1, 2 or 3 (Quality 0, 1, 2 or 3) are defined, as well as pointers such as phong-OGL or phong-software, designating the rendering engines for performing the calculations.

Le module de visualisation 30 fournit un support visuel local à chaque client 3, 3a. Il permet d'interagir avec les maquettes 3D pour changer de point de vue ou éditer les propriétés de rendu. Ce module 30 reçoit les versions allégées des maquettes 3D dans lesquelles le niveau de qualité est défini automatiquement en fonction de la puissance de la machine hôte. Il hérite de technologies mises en uvre dans le module de rendu progressif 23 du serveur 2 puisqu'il est apte à calculer certains niveaux de basse qualité en dépendance avec la puissance de la machine hôte client. De surcroît, le module de visualisation 30 incorpore un moteur de composition d'images 2D qui permet d'assembler en temps réel les différentes couches calculées par le module de rendu progressif 23. Dans l'exemple de la figure 6, un utilisateur modifie les paramètres de l'ombre d'une maquette numérique. Le serveur 2 recalcule cette ombre et renvoie le résultat de ce calcul au client 3, 3a. Le client 3, 3a recompose alors une nouvelle image avec cette ombre recalculée ainsi que les autres couches qui n'ont pas subi de modifications.  The visualization module 30 provides local visual support to each client 3, 3a. It allows you to interact with 3D models to change your point of view or edit the rendering properties. This module 30 receives light versions of 3D models in which the quality level is automatically defined according to the power of the host machine. It inherits technologies implemented in the progressive rendering module 23 of the server 2 since it is able to calculate certain levels of low quality depending on the power of the client host machine. In addition, the display module 30 incorporates a 2D image composition engine which makes it possible to assemble in real time the different layers calculated by the progressive rendering module 23. In the example of FIG. shadow settings of a digital mockup. The server 2 recalculates this shadow and returns the result of this calculation to the client 3, 3a. The client 3, 3a then recomposes a new image with this recalculated shadow and the other layers that have not been modified.

Les modules de synchronisation réseau 24, 31 mettent à jour les états de scène, non seulement, entre un client donné et le serveur, mais aussi, entre le serveur et les autres clients, ce qui permet une collaboration entre les utilisateurs. La figure 7 représente les différentes actions générées au sein de l'architecture selon l'invention lorsqu'un utilisateur U1 modifie la couleur d'un objet. Dans ce cas, la modification est transmise (A) au module de synchronisation 31 du client 3 correspondant à cet utilisateur Ul. Ce module de synchronisation 31 informe (B) le module de synchronisation 24 du serveur 2 de la modification effectuée. Le gestionnaire de scènes 22 reçoit (C) cette modification qui est par la suite transmise (D) au module de rendu, qui relance le calcul de l'image en tenant des changements. Le module de synchronisation 24 informe(E) alors les autres clients 3a de la modification. En particulier, l'utilisateur U2 reçoit (F) la modification de couleur effectuée par l'utilisateur U1.  The network synchronization modules 24, 31 update the scene states, not only between a given client and the server, but also between the server and other clients, which allows collaboration between users. FIG. 7 represents the different actions generated within the architecture according to the invention when a user U1 modifies the color of an object. In this case, the modification is transmitted (A) to the synchronization module 31 of the client 3 corresponding to this user U1. This synchronization module 31 informs (B) the synchronization module 24 of the server 2 of the modification performed. The scene manager 22 receives (C) this modification which is subsequently transmitted (D) to the rendering module, which restarts the calculation of the image by taking changes. The synchronization module 24 informs (E) then the other clients 3a of the modification. In particular, the user U2 receives (F) the color change made by the user U1.

En définitive, selon l'invention, on a créé un format spécifique des données qui peut être géré par le module de visualisation client. Il y a par suite un découplage entre le format natif des données tridimensionnelles et le format spécifique des données de l'invention. Ce découplage permet à un utilisateur non familiarisé avec les langages de CAO d'interagir sur des maquettes tridimensionnelles quel que soit le format des données d'origine de cette maquette. Etant donné que ce format supporte les niveaux de détails, des versions dégradées de données natives peuvent être générées. Cela facilite le transfert des données représentatives des maquettes au travers du réseau et la visualisation de ces maquettes par les utilisateurs disposant de machines de faibles capacités graphiques. Le découplage de la complexité est illustré à la figure 8. Il apparaît que la dégradation des données natives diminue la qualité de visualisation des maquettes numériques 3D (image de basse résolution). Toutefois, grâce à la haute qualité du serveur de rendu 3D, l'image locale et dégradée de la maquette est enrichie, dans le temps, par l'envoi de pixels 2D photoréalistes calculés sur le serveur puissant. La représentation de la maquette s'enrichit, sur l'écran de l'utilisateur, progressivement. Le travail en local au niveau du client ainsi que l'enrichissement progressif de la représentation de la maquette visualisée par le client par l'envoi de données du serveur sont illustrés en figure 9. En définitive, grâce à sa haute qualité, le module de rendu du serveur vient en soutien du client en générant des images 2D de haute qualité pour améliorer progressivement cette représentation. L'utilisateur voit l'image qu'il visualise s'améliorer par enrichissement progressif.  Finally, according to the invention, a specific format of the data has been created which can be managed by the client visualization module. There is therefore a decoupling between the native format of the three-dimensional data and the specific format of the data of the invention. This decoupling allows a user unfamiliar with the CAD languages to interact on three-dimensional models regardless of the format of the original data of this model. Since this format supports detail levels, degraded versions of native data can be generated. This facilitates the transfer of the representative data of the models through the network and the visualization of these models by the users having machines of weak graphical capacities. The decoupling of complexity is illustrated in Figure 8. It appears that the degradation of native data decreases the visualization quality of 3D digital mockups (low resolution image). However, thanks to the high quality of the 3D rendering server, the local and degraded image of the model is enriched, in time, by sending photorealistic 2D pixels calculated on the powerful server. The representation of the model is enriched, on the screen of the user, gradually. The local work at the client level as well as the progressive enrichment of the representation of the model visualized by the client by sending data from the server are illustrated in Figure 9. Finally, thanks to its high quality, the module of server rendering comes in customer support by generating high quality 2D images to gradually enhance this representation. The user sees the image that he visualizes to improve by progressive enrichment.

La figure 10 illustre finalement le principe de visualisation collaborative selon l'invention. Ainsi que cela est montré dans cette figure, des utilisateurs localisés dans des endroits différents peuvent, au même moment visualiser à la même image représentative d'une maquette numérique telle qu'une maquette de lunettes ou une maquette de carrosserie automobile et interagir sur cette maquette, collaborativement.  Finally, FIG. 10 illustrates the collaborative visualization principle according to the invention. As shown in this figure, users located in different locations can, at the same time, view the same representative image of a digital model such as an eyeglass model or a bodywork model and interact on this model. , collaboratively.

Les figures suivantes, référencées 11 et 12, détaillent les différents modules logiciels et matériels présent sur le serveur 2 et le client 3, dans un mode particulier de mise en oeuvre de l'invention.  The following figures, referenced 11 and 12, detail the various software and hardware modules present on the server 2 and the client 3, in a particular embodiment of the invention.

Ainsi que cela est montré à la figure 11, le serveur 2 comporte un module de gestion de données 200, un module de rendu progressif 214 et un module de synchronisation 222.  As shown in FIG. 11, the server 2 comprises a data management module 200, a progressive rendering module 214 and a synchronization module 222.

Le module de gestion des données 200 remplit les fonctions décrites cidessus des modules de conversion 20, de gestion des détails 21 et du gestionnaire de scène 22. A cet effet, il comprend un module de gestion de commandes 201, un module de conversion des données 202, un module 203 de génération de niveaux de détails géométriques, un gestionnaire de modèles de données 204, un gestionnaire de scène 205, un gestionnaire de session 206, un gestionnaire de librairies de matériaux 207, un gestionnaire des utilisateurs 208, un gestionnaire de résolutions géométriques associées aux scènes 209, un gestionnaire d'évènements 210 et un dictionnaire de requêtes 211.  The data management module 200 performs the functions described above of the conversion modules 20, the details management 21 and the scene manager 22. For this purpose, it comprises a command management module 201, a data conversion module. 202, a geometric detail level generation module 203, a data model manager 204, a scene manager 205, a session manager 206, a material library manager 207, a user manager 208, a database manager, geometric resolutions associated with the scenes 209, an event manager 210 and a query dictionary 211.

Le gestionnaire de scènes 205 maintient une base de données de scènes 3D comprenant des fichiers natifs ainsi que les données associées auxdits fichiers telles que les niveaux de résolution. Le gestionnaire de modèles de données 204 permet d'associer des outils spécifiques à chaque type de données. Par exemple, ce gestionnaire comporte des outils qui permettent de convertir les données du type Catiarm au format spécifique selon l'invention et qui permettent de générer les différents niveaux de détails géométriques. Le gestionnaire de modèles de données 204 assure la gestion de tels modèles. Le module de conversion de données 202 permet de convertir les données natives vers le format spécifique de l'invention. Toutefois, ce module se contente d'exécuter les commandes gérées par le module de gestion de commandes 201 et ne contient pas de technologie de conversion de données sensu stricto. Le module de gestion de commandes 201 comporte un module de script et interpréteur 212 et un gestionnaire d'outils externes 213. Le module de script et interpréteur 212 permet d'écrire et d'exécuter des scripts. Le gestionnaire d'outils externes 213 gère et référence les logiciels externes qui peuvent être appelés à partir du langage de script en vue de former des commandes complexes. Le module de génération de niveaux de détails géométriques 203 génère les niveaux de détails en exécutant les commandes disponibles dans le gestionnaire de commandes 201. Le gestionnaire de session 206 gère les accès ainsi que les processus associés de visualisation et d'interaction sur une scène 3D par un utilisateur. Le gestionnaire des utilisateurs 208 gère les utilisateurs pouvant participer aux sessions. Le gestionnaire de librairies de matériaux 207 gère les librairies associées aux différents éléments d'une scène. Le gestionnaire des résolutions géométriques 209 associées aux scènes permet de choisir un niveau de résolution adapté à chaque client dans le cadre d'une session. L'interaction sur une scène génère différents évènements qui doivent être synchronisés entre les clients 3, 3a et le serveur 2. Le gestionnaire d'évènements 210 assure cette fonction. Il s'agit par exemple des évènements suivants: modification du point de vue, mouvement d'objets, association de matériaux, édition des paramètres des matériaux. La synchronisation des différentes instances d'une même scène entre les clients 3, 3a et le serveur 2 est réalisée par l'envoi et la réception de requêtes. Une requête permet de définir une action et contient des informations décrivant le type d'action, la cible, l'utilisateur ayant effectué l'action etc.... Le dictionnaire de requêtes 211 permet de définir les actions possibles. Ces requêtes sont ensuite traduites en évènements.  The scene manager 205 maintains a database of 3D scenes including native files as well as data associated with said files such as resolution levels. The data model manager 204 allows to associate tools specific to each type of data. For example, this manager includes tools that make it possible to convert the data of the Catiarm type to the specific format according to the invention and which make it possible to generate the different levels of geometrical details. The data model manager 204 manages such models. The data conversion module 202 converts the native data to the specific format of the invention. However, this module merely executes the commands managed by the command management module 201 and does not contain data conversion technology sensu stricto. The command management module 201 comprises a script and interpreter module 212 and an external tool manager 213. The script and interpreter module 212 makes it possible to write and execute scripts. The external tool manager 213 manages and references external software that can be called from the scripting language to form complex commands. The geometric detail level generation module 203 generates the detail levels by executing the commands available in the command manager 201. The session manager 206 manages the accesses as well as the associated visualization and interaction processes on a 3D scene. by a user. The user manager 208 manages the users who can participate in the sessions. The library of material libraries 207 manages the libraries associated with the different elements of a scene. The geometric resolutions manager associated with the scenes makes it possible to choose a level of resolution adapted to each client as part of a session. The interaction on a scene generates different events that must be synchronized between the clients 3, 3a and the server 2. The event manager 210 performs this function. These are for example the following events: modification of the point of view, movement of objects, association of materials, edition of the parameters of the materials. The synchronization of the different instances of the same scene between the clients 3, 3a and the server 2 is achieved by sending and receiving requests. A request makes it possible to define an action and contains information describing the type of action, the target, the user having performed the action, etc. The query dictionary 211 makes it possible to define the possible actions. These queries are then translated into events.

Le module de rendu progressif 214 comporte un gestionnaire de couches 215, un gestionnaire de niveaux de qualité 216, un gestionnaire de tâches 217, un gestionnaire du métalangage de niveaux 218 et un gestionnaire de moteurs de rendu 219.  The progressive rendering module 214 comprises a layer manager 215, a quality level manager 216, a task manager 217, a level metalanguage manager 218 and a rendering engine manager 219.

Le gestionnaire de couches 215 comporte un gestionnaire de dépendances entre les couches 220 et un module d'optimisation des calculs entre les couches 221. Il gère l'exécution du calcul de chaque couche d'effet constituant une image. Une couche d'effet a trait par exemple à la couleur, l'ombre, les reflets ou la réflexion. Certaines couches doivent être calculées avant d'autres, par exemple, le reflet d'un objet. Le gestionnaire de dépendances entre les couches 220 assure le bon ordonnancement du calcul des différentes couches pour obtenir une image finale cohérente. Le module d'optimisation 221 analyse les paramètres d'une scène pour éliminer les calculs non nécessaires (objets cachés et/ou de petites tailles). Le gestionnaire des niveaux de qualité 216 permet de définir le niveau de qualité pour le calcul des différentes couches. Il permet de gérer l'envoi des données correspondant aux couches de haute qualité aux clients 3, 3bis connectés à une session. Le gestionnaire de tâches 217 permet d'exécuter le calcul de certaines couches sur des ordinateurs distants pour améliorer la vitesse de calcul en faisant intervenir d'autres ressources matérielles de calcul. Le gestionnaire de métalangage de niveaux 218 réalise la syntaxe et l'interprétation de ce métalangage. Il permet de décrire l'effet visuel d'une matière en tenant compte les différentes couches et procédés pour calculer les différents niveaux de qualité. Le gestionnaire de moteurs de rendu 219 répertorie l'ensemble des moteurs de rendu logiciels et matériels disponibles et gère ces moteurs de rendu pour le calcul des couches et des niveaux de qualité.  The layer manager 215 includes a dependency manager between the layers 220 and a module for optimizing the calculations between the layers 221. It manages the execution of the calculation of each effect layer constituting an image. An effect layer, for example, relates to color, shadow, reflections or reflection. Some layers must be calculated before others, for example, the reflection of an object. The dependency manager between the layers 220 ensures the proper scheduling of the calculation of the different layers to obtain a coherent final image. The optimization module 221 analyzes the parameters of a scene to eliminate unnecessary calculations (hidden objects and / or small sizes). The quality level manager 216 makes it possible to define the level of quality for the calculation of the different layers. It makes it possible to manage the sending of the data corresponding to the high quality layers to the clients 3, 3bis connected to a session. The task manager 217 makes it possible to perform the computation of certain layers on remote computers to improve the speed of calculation by involving other computing hardware resources. The level metalanguage manager 218 realizes the syntax and interpretation of this metalanguage. It allows to describe the visual effect of a material taking into account the different layers and processes to calculate the different levels of quality. The rendering engine manager 219 lists all available software and hardware rendering engines and manages these rendering engines for calculating layers and quality levels.

Le module de synchronisation 222 comporte un gestionnaire de flux 223, un gestionnaire de requêtes 224 et un gestionnaire de connexion 225.  The synchronization module 222 comprises a flow manager 223, a request manager 224 and a connection manager 225.

Le gestionnaire de flux 223 gère le transfert des flux d'information dans le réseau (transfert de fichiers ou transfert en continu (streaming)). Le gestionnaire de requêtes 224 permet de recevoir et envoyer des requêtes entre les clients 3, 3bis et le serveur 2. Le gestionnaire de connexion 225 gère les connexions notamment de bas niveau au sein du réseau entre les clients et le serveur et gère en particulier les pare- feux et les routeurs.  The flow manager 223 manages the transfer of information flows in the network (file transfer or streaming). The request manager 224 makes it possible to receive and send requests between the clients 3, 3bis and the server 2. The connection manager 225 manages the particularly low-level connections within the network between the clients and the server and manages in particular the firewalls and routers.

Ainsi que cela est montré à la figure 12, chaque client 3, 3a comporte une interface de programmation (API) 300, un gestionnaire de graphes de scène 3D 301, un gestionnaire d'évènements 302, un dictionnaire de requêtes 303, un compositeur de couches 304, un gestionnaire de couches 305, le gestionnaire de métalangage de niveaux 306, un moteur de rendu matériel 307, un gestionnaire de topologie de scène 308, et un module de synchronisation réseau 309.  As shown in FIG. 12, each client 3, 3a comprises a programming interface (API) 300, a 3D scene graph manager 301, an event manager 302, a request dictionary 303, a composer of layers 304, a layer manager 305, the level metalanguage manager 306, a hardware rendering engine 307, a scene topology manager 308, and a network timing module 309.

L'API 300 est utilisée pour construire des applications de l'utilisateur final et permet d'accéder aux informations d'une scène et de commander les actions. Le gestionnaire de graphes de scènes 3D 301 gère les paramètres de graphe des scènes tels que l'information de parenté, la position de la caméra, les paramètres de translation, l'orientation et la taille des objets, ou le nom des objets. Le gestionnaire d'évènements 302 et le dictionnaire de requêtes 303 du client ont des fonctions identiques au gestionnaire d'évènements 210 et au dictionnaire de requêtes 211 du serveur, respectivement. Le compositeur de couches 304 effectue la composition des différentes couches, telle que la couche couleur, la couche ombre ou la couche reflets, pour l'obtention de l'image finale. Le gestionnaire de couches 305 et le gestionnaire de métalangage de niveaux 306 ont des fonctions identiques au gestionnaire de couches 215 et au gestionnaire de métalangage de niveaux du serveur, respectivement. Le moteur de rendu matériel 307 est un moteur de rendu permettant un calcul rapide, mais approximatif, des différentes couches. Le gestionnaire de topologie de scène 308 gère les informations géométriques des scènes à un niveau de résolution compatible avec les capacités graphiques du client et de la bande passantes du réseau entre celui-ci et le serveur. Enfin, le module de synchronisation réseau 309 du client est similaire au module de synchronisation réseau 222 du serveur et comporte de ce fait, de même que ce module 222, un gestionnaire de flux 310, un gestionnaire de requêtes 311 et un gestionnaire de connexion 312.  The API 300 is used to build end-user applications and provides access to scene information and control actions. The 3D scene graph manager 301 manages scene graph parameters such as kinship information, camera position, translation parameters, object orientation and size, or object names. The event handler 302 and the client request dictionary 303 have identical functions to the event handler 210 and the server request dictionary 211, respectively. The layer composer 304 performs the composition of the various layers, such as the color layer, the shadow layer or the reflective layer, to obtain the final image. The layer manager 305 and the level metalanguage manager 306 have functions identical to the layer manager 215 and the server level metalanguage manager, respectively. The hardware rendering engine 307 is a rendering engine allowing a quick but approximate calculation of the different layers. The scene topology manager 308 manages the geometric information of the scenes at a resolution level compatible with the graphical capabilities of the client and the bandwidth of the network between the latter and the server. Finally, the network synchronization module 309 of the client is similar to the network synchronization module 222 of the server and therefore comprises, like this module 222, a flow manager 310, a request manager 311 and a connection manager 312 .

Claims (12)

REVENDICATIONS 1. Architecture client-serveur pour la visualisation d'une maquette numérique tridimensionnelle comprenant: une base de données (1) tridimensionnelles relative à ladite maquette; un serveur (2) comportant un module de synchronisation réseau (24) ; et un ou plusieurs clients (3, 3a), chaque client comportant un module de visualisation (30) pour la représentation de ladite maquette et un module de synchronisation réseau (31), ledit serveur (2) et le ou lesdits clients (3, 3a) étant compris dans un réseau de communication (4), lesdits modules de synchronisation (24, 31) étant aptes à mettre à jour un état de scène relatif à cette maquette, au sein du réseau (4), entre le ou les clients (3, 3a) et le serveur (2).  A client-server architecture for viewing a three-dimensional digital mockup comprising: a three-dimensional database (1) relating to said mock-up; a server (2) having a network timing module (24); and one or more clients (3, 3a), each client having a display module (30) for the representation of said model and a network synchronization module (31), said server (2) and said one or more clients (3, 3a) being included in a communication network (4), said synchronization modules (24, 31) being able to update a scene state relating to this model, within the network (4), between the client or clients (3, 3a) and the server (2). 2. Architecture selon la revendication 1, caractérisée en ce que le serveur (2) comporte en outre un module (20) de conversion de données apte à convertir les données tridimensionnelles de la base de données (1) tridimensionnelles, d'une pluralité de formats, dans un format spécifique apte à être géré par le module de visualisation client (30).  2. Architecture according to claim 1, characterized in that the server (2) further comprises a data conversion module (20) able to convert the three-dimensional data of the database (1) three-dimensional, a plurality of formats, in a specific format that can be managed by the client visualization module (30). 3. Architecture selon l'une des revendications 1 ou 2, caractérisée en ce que le module (21) pour la génération de représentations tridimensionnelles du serveur (2) est apte à générer des représentations allégées de ladite maquette tridimensionnelle pour une communication facilitée au sein du réseau de communication (4).  3. Architecture according to one of claims 1 or 2, characterized in that the module (21) for generating three-dimensional representations of the server (2) is able to generate light representations of said three-dimensional model for facilitated communication within of the communication network (4). 4. Architecture selon l'une des revendications 1, 2 ou 3, caractérisée en ce que le serveur (2) comporte en outre un module (22) de gestion d'attributs de scène.  4. Architecture according to one of claims 1, 2 or 3, characterized in that the server (2) further comprises a module (22) for managing scene attributes. 5. Architecture selon l'une des revendications précédentes, caractérisée en ce que le serveur (2) comporte en outre un module de rendu (23).  5. Architecture according to one of the preceding claims, characterized in that the server (2) further comprises a rendering module (23). 6. Architecture selon la revendication 5, caractérisée en ce que le module de rendu (23) est progressif.  6. Architecture according to claim 5, characterized in that the rendering module (23) is progressive. 7. Architecture selon la revendication 5, caractérisée en ce que le module de rendu (23) est apte à diviser une image en couches, un coefficient de qualité étant affecté à chaque couche.  7. Architecture according to claim 5, characterized in that the rendering module (23) is capable of dividing a layered image, a quality coefficient being assigned to each layer. 8. Architecture selon l'une des revendications précédentes, caractérisée en ce qu'un métalangage de niveaux est défini, ce métalangage étant apte à gérer les couches ainsi que les niveaux de qualités associés à ces couches.  8. Architecture according to one of the preceding claims, characterized in that a level metalanguage is defined, the metalanguage being able to manage the layers and the levels of qualities associated with these layers. 9. Méthode de visualisation d'une maquette numérique tridimensionnelle dans une architecture client-serveur, caractérisée en ce qu'elle comporte les étapes suivantes selon lesquelles: on fournit une base de données (1) tridimensionnelles relative à ladite maquette, un serveur (2) comportant un module (21) pour la génération de représentations tridimensionnelles de ladite maquette et un module de synchronisation réseau (24), un ou plusieurs clients (3, 3a), chaque client (3, 3a) comportant un module de visualisation (30) pour la représentation de ladite maquette et un module de synchronisation réseau (31), et un réseau de communication (4) ; des états de scène de cette représentation tridimensionnelle sont mis à jour, au sein du réseau (4), entre le ou les clients (3, 3a) et le serveur (2), au moyen des modules de synchronisation (24, 31).  9. Method for viewing a three-dimensional digital model in a client-server architecture, characterized in that it comprises the following steps according to which: a three-dimensional database (1) relating to said model, a server (2) is provided; ) comprising a module (21) for generating three-dimensional representations of said model and a network synchronization module (24), one or more clients (3, 3a), each client (3, 3a) comprising a visualization module (30); ) for the representation of said model and a network synchronization module (31), and a communication network (4); stage states of this three-dimensional representation are updated, within the network (4), between the client or clients (3, 3a) and the server (2), by means of the synchronization modules (24, 31). 10. Méthode selon la revendication 9, caractérisée en ce que les données tridimensionnelles de la base de données (1) sont converties, dans un format spécifique, par un module (20) de conversion de données.  10. Method according to claim 9, characterized in that the three-dimensional data of the database (1) are converted, in a specific format, by a data conversion module (20). 11. Méthode selon l'une des revendications 9 ou 10, caractérisée en ce qu'un module de rendu (23) du serveur (2) divise le calcul d'une image en couches indépendantes représentant chacune un effet visuel et gère des niveaux de qualité.  11. Method according to one of claims 9 or 10, characterized in that a rendering module (23) of the server (2) divides the calculation of an image into independent layers each representing a visual effect and manages levels of quality. 12. Méthode selon l'une des revendications 9, 10 ou 11, caractérisée en ce que le module de rendu (23) génère des images 2D de haute qualité qui vont enrichir progressivement la représentation de la maquette visualisée par le client.  12. Method according to one of claims 9, 10 or 11, characterized in that the rendering module (23) generates high quality 2D images which will progressively enrich the representation of the model visualized by the customer.
FR0405118A 2004-05-12 2004-05-12 CLIENT-SERVER ARCHITECTURE FOR VISUALIZATION OF A THREE-DIMENSIONAL DIGITAL MODEL Expired - Fee Related FR2870374B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
FR0405118A FR2870374B1 (en) 2004-05-12 2004-05-12 CLIENT-SERVER ARCHITECTURE FOR VISUALIZATION OF A THREE-DIMENSIONAL DIGITAL MODEL

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR0405118A FR2870374B1 (en) 2004-05-12 2004-05-12 CLIENT-SERVER ARCHITECTURE FOR VISUALIZATION OF A THREE-DIMENSIONAL DIGITAL MODEL

Publications (2)

Publication Number Publication Date
FR2870374A1 true FR2870374A1 (en) 2005-11-18
FR2870374B1 FR2870374B1 (en) 2006-08-11

Family

ID=34945498

Family Applications (1)

Application Number Title Priority Date Filing Date
FR0405118A Expired - Fee Related FR2870374B1 (en) 2004-05-12 2004-05-12 CLIENT-SERVER ARCHITECTURE FOR VISUALIZATION OF A THREE-DIMENSIONAL DIGITAL MODEL

Country Status (1)

Country Link
FR (1) FR2870374B1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2936074A1 (en) * 2008-09-17 2010-03-19 Grooviz Three-dimensional object's interest zone representing method, involves defining configuration of detail tree, and representing interest zone of object by client stations according to detail levels contained in configuration of detail tree
FR2940703A1 (en) * 2008-12-31 2010-07-02 Cy Play Display modeling method for application on server, involves forming image based on pixels of traces, and transmitting image and encoding information conforming to assembly of modification data to encoder by transmitting unit
WO2010076436A3 (en) * 2008-12-31 2010-11-25 Cy Play Method for macroblock modeling of the display of a remote terminal by means of layers characterized by a movement vector and transparency data

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001084501A2 (en) * 2000-04-28 2001-11-08 Mental Images Gmbh & Co. Kg. Method for interactive multi-user sustomizable web data retrieval and rendering
US6377257B1 (en) * 1999-10-04 2002-04-23 International Business Machines Corporation Methods and apparatus for delivering 3D graphics in a networked environment
US6593925B1 (en) * 2000-06-22 2003-07-15 Microsoft Corporation Parameterized animation compression methods and arrangements

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6377257B1 (en) * 1999-10-04 2002-04-23 International Business Machines Corporation Methods and apparatus for delivering 3D graphics in a networked environment
WO2001084501A2 (en) * 2000-04-28 2001-11-08 Mental Images Gmbh & Co. Kg. Method for interactive multi-user sustomizable web data retrieval and rendering
US6593925B1 (en) * 2000-06-22 2003-07-15 Microsoft Corporation Parameterized animation compression methods and arrangements

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JEREMY BIRN: "Digital Lighting & Rendering", July 2000, NEW RIDERS PUBLISHING / DAVID DWYER, ISBN: 1-56205-954-8, XP002313630 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2936074A1 (en) * 2008-09-17 2010-03-19 Grooviz Three-dimensional object's interest zone representing method, involves defining configuration of detail tree, and representing interest zone of object by client stations according to detail levels contained in configuration of detail tree
FR2940703A1 (en) * 2008-12-31 2010-07-02 Cy Play Display modeling method for application on server, involves forming image based on pixels of traces, and transmitting image and encoding information conforming to assembly of modification data to encoder by transmitting unit
WO2010076436A3 (en) * 2008-12-31 2010-11-25 Cy Play Method for macroblock modeling of the display of a remote terminal by means of layers characterized by a movement vector and transparency data
US9185159B2 (en) 2008-12-31 2015-11-10 Cy-Play Communication between a server and a terminal

Also Published As

Publication number Publication date
FR2870374B1 (en) 2006-08-11

Similar Documents

Publication Publication Date Title
CN101542534B (en) Temporary low resolution rendering of 3D objects
US20150310662A1 (en) Procedural authoring
JP2014517961A (en) Animation of transitions in client applications that employ mesh files
Di Benedetto et al. Web and Mobile Visualization for Cultural Heritage.
EP2511842B1 (en) Digital model lookup from lightweight stations
Allard et al. A shader-based parallel rendering framework
KR20070061181A (en) A unified framework based on extensible styles for 3d non-photorealistic rendering and configuring method for this
EP3497674B1 (en) System for composing or modifying virtual reality sequences, method of composing and system for reading said sequences
EP2350890A1 (en) Method and device for producing a finite element model
FR2870374A1 (en) Client-server architecture for displaying three dimensional digital model, has server and clients whose network synchronizing modules permit to update scene state relative to model, within communication network, between clients and server
US8379028B1 (en) Rigweb
Rodrigues et al. A case study of 3D technologies in higher education: Scanning the metalwork collection of museums sheffield and its implications to teaching and learning
Hynst et al. A work-flow and data model for reconstruction, management, and visualization of archaeological sites
Yang et al. Architectural sketch to 3D model: An experiment on simple-form houses
WO2008148818A1 (en) Source code generator for a graphics card
Conde et al. LiDAR Data Processing for Digitization of the Castro of Santa Trega and Integration in Unreal Engine 5
FR2994298A1 (en) Software architecture for realistic-and real-time virtual navigation system for e.g. floor of building, has management module VRPN device allowing real time interaction of devices based on virtual navigation scenarios
Jia et al. DEVELOPMENT OF AN APP FOR TRANSFORMING PHOTOS TO REALITY
WO2020070459A1 (en) Method for transforming a three-dimensional (3d) model into a 3d model that can be embedded in a human-machine interface of a piece of on-board equipment
Morabito et al. Photogrammetry Workflow Managed in Cloud
Vastenhoud et al. Pixel+ Universal Web Interface for Interactive Pixel-Based File Formats
KR20220024770A (en) Computer-implemented methods and programmable systems for rendering 2D/3D models
FR2816740A1 (en) Three-dimensional image creation uses 3D image support combined with 2D images providing texture to scene for all-round viewing
Nahon Building Immersive VR Experiences for the General Public: Technical, Economic and Ergonomic Choices
CN115115748A (en) Animation scene rendering manufacturing method and device

Legal Events

Date Code Title Description
TP Transmission of property
CD Change of name or company name

Owner name: KAPPA-SC, FR

Effective date: 20120625

PLFP Fee payment

Year of fee payment: 13

PLFP Fee payment

Year of fee payment: 14

PLFP Fee payment

Year of fee payment: 15

PLFP Fee payment

Year of fee payment: 16

ST Notification of lapse

Effective date: 20210105