Brevet FR3160251A1 — publié le 20250919

Un aspect de l’invention concerne un procédé (200), mis en œuvre par ordinateur, de gestion d’un contenu web interactif dans un environnement 3D, le procédé comprenant : Obtention (210) de l’environnement 3D et du contenu web, Affichage (220) du contenu web dans un rendu de l’environnement 3D, l’affichage étant effectué avec une texture comprise dans le rendu de l’environnement 3D affiché, la texture étant générée en effectuant un rendu d’une vue web comprenant le contenu web, le contenu web affiché dans le rendu de l’environnement 3D ayant une première plage de coordonnées dans un repère du rendu de l’environnement 3D correspondant à une seconde plage de coordonnées du contenu web dans un repère de la vue web, Lorsqu’une interaction utilisateur est détectée : Déterminer (230) de coordonnées de l’interaction utilisateur dans le repère de l’environnement 3D, Transformation (240) des coordonnées obtenues dans le repère de la vue web, et Lorsque les coordonnées transformées sont comprises dans la seconde plage de coordonnées du contenu web, génération (250), dans la vue web, d’au moins un événement simulant une interaction utilisateur sur le contenu web, l’interaction utilisateur simulée ayant les coordonnées transformées (240). Figure à publier avec l’abrégé : Figure 2 Procédé de gestion d’un contenu web interactif dans un environnement 3D DOMAINE TECHNIQUE DE L’INVENTION Le domaine technique de l’invention est celui de l’interaction utilisateur et plus spécifiquement de l’interaction utilisateur de contenus web dans des applications utilisant des moteurs de rendus 3D, pour trois dimensions, comme les jeux vidéo, les mondes virtuels, la réalité virtuelle, la réalité augmentée... La présente invention concerne un procédé de gestion d’un contenu web interactif dans un environnement 3D. ARRIERE-PLAN TECHNOLOGIQUE DE L’INVENTION Dans le domaine de la technique, des moteurs de rendus 3D tels que Unity, Unreal et d’autres, sont couramment utilisés pour générer et afficher une représentation virtuelle et en temps réel d’un environnement 3D. L’environnement 3D est composé d’objets 3D. D’un point de vue macroscopique, pour un utilisateur final, ces objets 3D sont des bâtiments, des véhicules, des planètes, des objets du quotidien…. Du point de vue du moteur de rendu, il s’agit d’une liste de formes géométriques ayant des coordonnées dans l’espace, des propriétés de surface ou des règles de mouvement dans le temps. D’un point de vue technique, un moteur de rendu a pour objet de dessiner en temps réel sur un plan de rendu appelé « viewport », une pluralité d’objets compris dans l’environnement 3D. Ces objets sont définis dans le repère de l’environnement 3D, autrement appelé l’espace de coordonnées (x,y,z) de l’environnement 3D. Pour cela, avec référence à la FIG. 1 , un objet 100 est projeté sur un viewport 110 depuis le point de vue d’une caméra 120, elle aussi définie dans le repère de l’environnement 3D. La caméra 120 a donc une position dans le repère de l’environnement 3D ainsi qu’une direction. La direction de la caméra est perpendiculaire au plan de rendu de l’environnement 3D, c’est-à-dire au viewport 110. Un moteur de rendu utilise plusieurs techniques afin de projeter et dessiner correctement la scène sur le plan de rendu. Ces techniques sont combinées au sein d’un « render pipeline » aussi appelé pipeline graphique. Afin de permettre à l’utilisateur d’interagir dans l’environnement 3D, il est courant que des interactions utilisateurs tel que le clic, le double clic, le long clic, le swipe soient détectées, par exemple lorsqu’elles sont localisées sur certains objets affichés, ou certaines parties des objets affichés. Le plan de rendu peut aussi comprendre du contenu web additionnel. Le Web, ou World Wide Web, est un système d'informations basé sur des hyperliens qui permet aux utilisateurs de naviguer et d'accéder à des ressources multimédias telles que des pages web, des images, des vidéos, via Internet. Un contenu web peut donc se définir, d’une manière générale, comme étant le contenu, i.e. toutes les ressources multimédias accessibles, d’un site internet. Ce contenu web peut actuellement être affiché dans un environnement 3D selon deux techniques. La première technique consiste à afficher le contenu web dans une fenêtre en 2D, pour 2 dimensions, affichée au-dessus du viewport. La seconde technique consiste à intégrer le contenu web dans le pipeline graphique afin qu’il soit affiché dans l’environnement 3D en tant que texture. Pour cela, il est nécessaire d’utiliser un composant logiciel de type vue web, « webview » en anglais. La vue web est un environnement de rendu spécifique HTML séparé dont le rendu est ensuite affiché dans une texture utilisable par le moteur de rendu. Ces deux techniques présentent différents inconvénients. En effet, avec la première technique, une partie du viewport est masquée, ainsi l’expérience utilisateur est grandement dégradée. Avec la deuxième technique, le principal inconvénient est que le contenu web tel qu’affiché dans l’environnement 3D n’est pas interactif, c’est-à-dire qu’il ne permet pas d’interactions utilisateurs. Il existe donc un besoin de fournir un procédé permettant de gérer un contenu web interactif dans un environnement 3D. L’invention offre une solution aux problèmes évoqués précédemment, en permettant la gestion d’un contenu web interactif dans un environnement 3D. En effet, afin de permettre des interactions utilisateur avec la vue web comprenant le contenu web, l’interaction utilisateur est détectée depuis le moteur de rendu de l’environnement 3D, puis les coordonnées de l’interaction utilisateur sont ensuite transformées dans le repère de la vue web. Enfin, un test est effectué en utilisant ces coordonnées transformées afin de déterminer si, dans le repère de la vue web, l’interaction utilisateur a été effectuée sur une zone interactive. Ainsi, avec cette détection de l’interaction utilisateur et de ses caractéristiques, il est possible de mettre en œuvre une réponse adaptée à cette interaction utilisateur. Un premier aspect de l’invention concerne un procédé, mis en œuvre par ordinateur, de gestion d’un contenu web interactif dans un environnement 3D, le procédé comprenant : Obtention de l’environnement 3D et du contenu web, Affichage du contenu web dans un rendu de l’environnement 3D, l’affichage étant effectué avec une texture comprise dans le rendu de l’environnement 3D affiché, la texture étant générée en effectuant un rendu d’une vue web comprenant le contenu web, le contenu web affiché dans le rendu de l’environnement 3D ayant une première plage de coordonnées dans un repère du rendu de l’environnement 3D correspondant à une seconde plage de coordonnées du contenu web dans un repère de la vue web, Lorsqu’une interaction utilisateur est détectée : Détermination de coordonnées de l’interaction utilisateur dans le repère de l’environnement 3D, Transformation des coordonnées obtenues dans le repère de la vue web, et Lorsque les coordonnées transformées sont comprises dans la seconde plage de coordonnées du contenu web, génération, dans la vue web, d’au moins un événement simulant une interaction utilisateur sur le contenu web, l’interaction utilisateur simulée ayant les coordonnées transformées. Grâce à l’invention, il est possible d’introduire du contenu web interactif dans un environnement 3D. De plus, ce contenu web interactif est affiché par l’intermédiaire d’une texture gérée par le moteur de rendu de l’environnement 3D. Ainsi, le caractère immersif de l’environnement 3D est préservé durant l’affichage du contenu web. Enfin, grâce à une gestion de l’interaction utilisateur permettant le transfert de l’événement et de ses caractéristiques de l’environnement 3D vers la vue web, le contenu web affiché est interactif. Outre les caractéristiques qui viennent d’être évoquées dans le paragraphe précédent, le procédé selon un aspect de l’invention peut présenter une ou plusieurs caractéristiques complémentaires parmi les suivantes, considérées individuellement ou selon toutes les combinaisons techniquement possibles : lorsque les coordonnées transformées sont comprises dans la seconde plage de coordonnées du contenu web, le procédé comprend en outre au moins une étape parmi : Modification du contenu web affiché, Modification de la taille de l’affichage du contenu web dans l’environnement 3D, Modification de la position du contenu web dans l’environnement 3D, lorsque les coordonnées transformées sont comprises dans la seconde plage de coordonnées du contenu web, le procédé comprend en outre : Détection d’une tentative d’affichage d’un nouveau contenu web dans la vue web, Lorsque la tentative d’affichage du nouveau contenu web dans la vue web est détectée : Blocage de l’affichage du nouveau contenu web dans la vue web, et Affichage du nouveau contenu web dans un interstitiel, L’ordinateur est un téléphone intelligent comprenant un écran tactile et fonctionnant sous un système d’exploitation Android®, l’interaction utilisateur est un clic, la vue web est une classe de type android.webkit.WebView, la génération, dans la vue web, du au moins un événement est mise en œuvre en effectuant deux appels consécutifs à la fonction WebView.dispatchTouchEvent(), un premier appel des deux appels consécutifs simulant un doigt se posant sur l’écran tactile et un second appel des deux appels consécutifs simulant un doigt se retirant de l’écran tactile, L’ordinateur est un iPhone comprenant un écran tactile et fonctionnant sous un système d’exploitation iOS®, l’interaction utilisateur est un clic, la vue web est une classe de type WKWebView, la génération, dans la vue web, du au moins un événement est mise en œuvre en effectuant un appel à une méthode HTMLElement.click() au sein d’une méthode evaluateJavascript() de la classe de type WKWebView. la vue web de type WKWebView comprend : un premier contenu web provenant d’un premier domaine internet compris dans une première balise HTML d’un modèle d'objets de document HTML, la première balise étant la racine du modèle d'objets de document HTML, et un second contenu web provenant d’un second domaine internet compris dans une seconde balise HTML de type « iframe » du modèle d'objets de document HTML, la seconde balise HTML étant une balise fille de la première balise HTML, le second contenu web ayant une troisième plage de coordonnées dans le repère de la vue web, le procédé comprend en outre une étape, effectuée après l’obtention (210) et avant l’affichage, d’ajout local de scripts javascript au niveau de la première et seconde balise HTML, les scripts étant configurés pour générer, dans la vue web, le au moins un événement simulant une interaction utilisateur sur le contenu web, l’interaction utilisateur simulée ayant les coordonnées transformées : la génération, dans la vue web, du au moins un événement simulant une interaction utilisateur sur le contenu web comprenant, lorsque les coordonnées transformées sont comprises dans la troisième plage de coordonnées du second contenu web, les sous-étapes de : transmission d’informations du clic, par le script ajouté au niveau de la première balise HTML, au script javascript ajouté au niveau de la seconde balise HTML, et appel, par le script javascript ajouté au niveau de la seconde balise HTML, à la méthode HTMLElement.click() au sein de la méthode evaluateJavascript() de la classe de type WKWebView Un second aspect de l’invention concerne un produit programme d'ordinateur comprenant des instructions qui, lorsque le programme est exécuté par un ordinateur, conduisent celui-ci à mettre en œuvre le procédé selon l’invention. Un troisième aspect de l’invention concerne un support d'enregistrement lisible par ordinateur comprenant des instructions qui, lorsqu'elles sont exécutées par un ordinateur, conduisent celui-ci à mettre en œuvre le procédé selon l’invention. Un quatrième aspect de l’invention concerne un système configuré pour exécuter le procédé selon l’invention. L’invention et ses différentes applications seront mieux comprises à la lecture de la description qui suit et à l’examen des figures qui l’accompagnent. BREVE DESCRIPTION DES FIGURES Les figures sont présentées à titre indicatif et nullement limitatif de l’invention. La FIG. 1 montre une illustration simplifiée d’un exemple de fonctionnement d’un moteur de rendu graphique. La FIG. 2 est un schéma synoptique illustrant les étapes d'un exemple du procédé selon l'invention. Les figures 3 et 4 montrent une illustration simplifiée d’un exemple d’affichage d’un contenu web dans un rendu d’environnement 3D. DESCRIPTION DETAILLEE Sauf précision contraire, un même élément apparaissant sur des figures différentes présente une référence unique. La FIG. 2 est un schéma synoptique illustrant les étapes d'un exemple du procédé 200 selon l'invention. Les étapes obligatoires de l'exemple du procédé 200 sont indiquées par un rectangle en traits pleins et les étapes facultatives sont indiquées par un rectangle en traits pointillés. Le procédé 200 selon l’invention est mis en œuvre par ordinateur. Par « mis en œuvre par ordinateur », il est entendu que les étapes, ou pratiquement toutes les étapes du procédé 200, sont exécutées par au moins un ordinateur ou processeur ou tout autre système similaire, tel qu’un téléphone intelligent, « smartphone » en anglais, ou une tablette tactile ou une console de jeu ou un masque de réalité virtuelle ou réalité augmentée. Ainsi, des étapes sont réalisées par l’ordinateur, éventuellement de manière entièrement automatique, ou semi-automatique. Dans des exemples, le déclenchement d'au moins certaines des étapes de ces méthodes peut être effectué par interaction utilisateur-ordinateur, autrement appelée dans la présente demande interaction utilisateur. Le niveau d'interaction utilisateur requis peut dépendre du niveau d'automatisme prévu et mis en balance avec la nécessité de mettre en œuvre les souhaits de l'utilisateur. Dans des exemples, ce niveau peut être défini par l'utilisateur et/ou prédéfini. L’interaction utilisateur peut être effectuée à l’aide d’une souris ou de tout autre dispositif tel qu’une manette de jeu vidéo. Lorsque l’ordinateur comprend un écran tactile ou une caméra, l’interaction utilisateur peut être effectuée avec toute partie du corps de l’utilisateur telle que la main ou un ou plusieurs doigts de l’utilisateur. Des exemples d’interactions utilisateur, sont le clic, le double clic, le « tap », le double « tap », ou encore le « swipe », c’est-à-dire un geste dans lequel l'utilisateur glisse son doigt sur l'écran tactile dans une direction spécifique, généralement de gauche à droite ou de droite à gauche, pour effectuer une action particulière. Une interaction de type swipe est composée d’une multitude de sous interactions, ayant chacune leur jeu de cordonnées : une détection du posé de doigt, appelé « touchdown » en anglais, des détections de changements de position du doigt, appelés « touchmove », une détection d’un relevé de doigt, appelé « touchup » en anglais. Un exemple typique d’implémentation par ordinateur du procédé 200 consiste à exécuter le procédé 200 avec un système adapté à cet effet. Le système peut comprendre un processeur couplé à une mémoire et une interface utilisateur graphique (GUI), la mémoire ayant enregistré dessus un programme informatique comprenant des instructions pour mettre en œuvre le procédé. La mémoire peut également stocker une base de données. La mémoire est tout matériel adapté pour un tel stockage, comprenant éventuellement plusieurs parties physiques distinctes. De manière alternative, l’implémentation par ordinateur du procédé 200 consiste à exécuter au moins certaines étapes du procédé 200 sur un serveur situé à distance, le serveur exécutant au moins une partie du procédé en réponse à une requête envoyée par un système client, par exemple l’ordinateur ou le téléphone portable intelligent. La requête peut par exemple être transmise via une application de type web, en réponse à une interaction utilisateur, et lorsque le serveur a terminé l’exécution des calculs et la préparation du rendu, le serveur peut transmettre les résultats au système client qui peut ensuite les afficher. La transmission d’informations entre le serveur et le système client peut être effectuée à l’aide d’un réseau mobile sans fil, par exemple de 3ème ou 4ème génération. Le procédé 200 permet la gestion d’un contenu web interactif dans un environnement 3D. Le terme « gestion » dans la présente demande peut comprendre l’affichage du contenu web dans l’environnement 3D ainsi que la détection d’une interaction utilisateur sur la zone d’affichage du contenu web. Le contenu web peut par exemple contenir une publicité mais aussi diverses informations accessibles via le web. L’invention est donc indépendante de la nature du contenu web géré. Une première étape 210 du procédé 200 comprend l’obtention de l’environnement 3D. Le terme « obtention » peut signifier dans la présente demande « recevoir », « accéder en mémoire » ou « générer ». Par exemple, l’environnement 3D peut être stocké en mémoire de l’ordinateur et l’obtention consiste à accéder à la mémoire de stockage de l’environnement 3D ou à accéder à la mémoire de stockage d’au moins une partie de l’environnement 3D en fonction de la position de la caméra dans l’environnement 3D. Dans un autre exemple, l’environnement 3D peut être stocké sur un serveur à distance et l’ordinateur peut recevoir cet environnement 3D, ou au moins une partie de l’environnement 3D en fonction de la position de la caméra dans l’environnement 3D. L’environnement 3D comprend des objets 3D et un terrain. Chaque objet 3D et le terrain sont localisés dans le repère de l’environnement 3D. De plus, les objets 3D et le terrain peuvent être texturés, c’est-à-dire qu’ils peuvent comprendre une texture appliquée à leur surface. Une texture est une image ou une série d'images qui est appliquée à la surface d'un objet 3D ou d’un terrain pour lui donner des détails visuels et des caractéristiques graphiques par exemple des caractéristiques réalistes. La première étape 210 du procédé 200 comprend aussi l’obtention du contenu web à gérer. Par exemple, le contenu web peut être reçu par l’ordinateur mettant en œuvre le procédé après avoir effectué une requête http, pour « Hypertext Transfer Protocol » en anglais, à un serveur http, qui, en réponse, envoie le contenu web à l’ordinateur. De manière alternative, plusieurs requêtes, par exemple de type html, pour « HyperText Markup Language » en anglais, et/ou de type css, pour « Cascading Style Sheets » en anglais, et/ou de type javascript et de type images. La deuxième étape 220 du procédé 200 comprend l’affichage du contenu web dans un rendu de l’environnement 3D. L’affichage est effectué avec une texture générée à partir d’une vue web, « webview » en anglais , comprenant le contenu web. La texture est ensuite affichée dans le rendu de l’environnement 3D. Une vue web est un composant d'interface utilisateur utilisé dans le développement d'applications mobiles et de logiciels pour afficher du contenu web. De manière simple, une vue web est une vue qui permet d'afficher des pages web à l'intérieur d'une application sans avoir besoin de lancer un navigateur internet externe. L’utilisation d’une vue web dans le procédé 200 permet notamment l’exécution de code javascript. Ce code javascript permet par exemple l’exécution de « trackers » publicitaires. Un tracker publicitaire est un code javascript permettant un suivi d’un comportement en ligne d’un utilisateur et un recueil des informations sur ce comportement. Ce code javascript peut aussi permettre aussi la synchronisation des cookies, appelés aussi témoins de connexion ou témoins. La vue web peut aussi implémenter des normes d’extension définies par l’IAB, « Interactive Advertising Bureau » en anglais. L’IAB est une organisation regroupant les acteurs de la publicité sur Internet et dont le but est notamment de développer des normes. Par exemple, l’IAB définit la norme MRAID, pour « Mobile Rich Media Ad Interface Definitions » an anglais, des fonctions javascript disponibles que les vues web doivent implémenter Ainsi, le contenu web est ajouté au pipeline graphique de l’environnement 3D à l’aide d’une vue web afin qu’il soit converti en une texture. Le contenu web, affiché dans le rendu de l’environnement 3D en utilisant la texture, possède donc une première plage de coordonnées dans un repère du rendu de l’environnement 3D. Cette première plage de coordonnées correspond à une seconde plage de coordonnées du contenu web dans le repère de la vue web. Le terme « correspond » signifie ici que pour toute coordonnée de la première plage de coordonnées, il est possible d’identifier la coordonnée correspondante de la seconde plage de coordonnées. De même, pour toute coordonnée de la seconde plage de coordonnées, il est possible d’identifier la coordonnée correspondante de la première plage de coordonnées. La FIG. 3 montre un schéma sur lequel le viewport 110 comprend une texture 130, affichée dans le rendu 170 de l’environnement 3D. La texture 130 a été générée en effectuant le rendu de la vue web 140. Le point 150 de la texture 130 a un premier jeu de coordonnées dans le repère du rendu 170 de l’environnement 3D et un second jeu de coordonnées dans le repère du rendu de la vue web 140. De manière similaire, le contenu web 180 a une première plage de coordonnées dans le repère du rendu 170 de l’environnement 3D et une seconde plage de coordonnées dans le repère de la vue web 140. Dans un exemple, compatible avec les exemples précédents, la vue web 140 comprenant le contenu web peut être affichée à de multiples lieux dans le rendu de l’environnement 3D. Ainsi, la texture 130 générée en effectuant le rendu de la vue web 140 peut être dupliquée en plusieurs instances et affichée à plusieurs positions dans l’environnement 3D. La FIG. 4 montre un exemple d’une vue web 140 étant affichée 3 fois à l’aide de 3 textures 130. Il est aussi possible qu’une seule zone du contenu web 180 soit interactive ou que le contenu web 180 comprennent plusieurs zones interactives. De plus, il est aussi possible que la vue web 140 comprennent plusieurs contenus web 180. Le procédé 200 permet aussi de gérer ces différents exemples. Les étapes suivantes, c’est-à-dire les étapes 230 à 310, du procédé 200 sont mises en œuvre lorsqu’une interaction utilisateur est détectée. La troisième étape 230 du procédé 200 comprend la détermination des coordonnées de l’interaction utilisateur dans le repère de l’environnement 3D. Afin de déterminer les coordonnées de l’interaction utilisateur dans le repère de l’environnement 3D, les coordonnées de l’interaction utilisateur dans le repère du viewport 110, ou dans le repère de l’écran de l’ordinateur, peuvent être utilisées. Par exemple, avec les coordonnées de l’interaction utilisateur dans le repère du viewport 110, il est possible d’utiliser une méthode de lancer de rayons, « raycasting » en anglais afin de déterminer les coordonnées de l’interaction utilisateur dans le repère de l’environnement 3D. En effet, un rayon peut être lancé depuis la position dans l’environnement 3D correspondant aux coordonnées de l’interaction utilisateur dans le repère du viewport 110. Cette position est dans le plan de la caméra 120, c’est-à-dire dans le plan formé par la position de la caméra et un vecteur parallèle à la direction de la caméra 120, qui constitue la normale du plan. De plus, la direction du lancer de rayon peut être parallèle à la direction de la caméra 120. Enfin, l’intersection entre le rayon lancé et un objet 3D ou le terrain de l’environnement 3D correspond aux coordonnées de l’interaction utilisateur dans le repère de l’environnement 3D. Il est possible de noter que d’autres méthodes connues pourraient être utilisées afin de déterminer les coordonnées de l’interaction utilisateur dans le repère de l’environnement 3D. La quatrième étape 240 du procédé 200 comprend la transformation des coordonnées obtenues dans le repère de la vue web. Ainsi, les coordonnées de l’interaction utilisateur dans le repère de l’environnement 3D sont transformées afin de les changer de repère et d’obtenir les coordonnées correspondantes dans le repère de la vue web. Par exemple, deux opérations peuvent être appliquées : une rotation et une translation. Ces deux opérations peuvent être opérées par une matrice de transformation permettant de passer du repère de l’environnement 3D vers le repère de la vue web. Les étapes suivantes, c’est-à-dire les étapes 250 à 310, du procédé 200 sont mises en œuvre lorsque les coordonnées de l’interaction utilisateur dans le repère de la vue web sont comprises dans la seconde plage de coordonnées du contenu web. Ainsi, ce test permet de déterminer si l’interaction utilisateur est bien localisée sur la texture permettant l’affichage du contenu web dans le rendu de l’environnement 3D. Afin d’effectuer ce test, il est possible de vérifier que les coordonnées de l’interaction utilisateur dans le repère de la vue web sont comprises dans la plage de coordonnées du contenu web dans le repère de la vue web. La cinquième étape 250 du procédé 200 comprend la génération dans la vue web d’au moins un événement simulant une interaction utilisateur sur le contenu web. De plus, l’interaction utilisateur simulée a les coordonnées de l’interaction utilisateur dans le repère de la vue web calculées à l’étape 240. La mise en œuvre de cette étape 250 peut être effectuée en utilisant d’une interface de programmation applicative, couramment appelée API pour "Application Programming Interface" en anglais, de la vue web et implémentée à l’aide de scripts Javascript. Lors de la simulation de l’interaction utilisateur, le type de l’interaction utilisateur, par exemple de type clic, swipe, etc., est aussi pris en compte et reproduit. Par exemple, si l’interaction utilisateur détectée est de type clic, alors l’interaction utilisateur simulée sera aussi de type clic. La sixième étape 260 optionnelle du procédé 200 comprend la modification du contenu web affiché. Par exemple, le contenu web affiché peut être remplacé par un autre contenu web ou son aspect graphique peut être modifié, par exemple le contenu web peut être affiché en nuances de gris. La septième étape 270 optionnelle du procédé 200 comprend la modification de la taille de l’affichage du contenu web dans l’environnement 3D. Par exemple, la taille du contenu web peut être augmentée afin de permettre une lecture facilitée d’une information affichée dans le contenu web. Dans un autre exemple, la taille du contenu web peut être réduite afin de permettre : d’afficher d’autres informations dans la vue web, ou d’agrandir le reste de la vue web, ou de réduire la taille de la vue web et donc de la texture générée à partir de la vue web. Afin d’effectuer la modification de la taille de l’affichage du contenu web dans l’environnement 3D, différentes techniques sont possibles. Par exemple, il est possible d’agrandir la taille de la texture générée à partir de la vue web conservant sa taille initiale. Il est aussi possible d’agrandir la taille du contenu web dans la vue web. Il est enfin possible d’agrandir la taille de la vue web ce qui permettra d’agrandir la taille de la texture générée. La huitième étape 280 optionnelle du procédé 200 comprend la modification de la position du contenu web dans l’environnement 3D. Dit autrement le contenu web peut être déplacé dans l’environnement 3D. Par exemple, la position de la texture générée à partir de la vue web peut être modifiée. Cela permet par exemple de remplacer ce contenu web par un autre contenu web ou d’afficher ce contenu web à une autre position de l’environnement 3D. La neuvième étape 290 optionnelle du procédé 200 comprend la détection d’une tentative d’affichage d’un nouveau contenu web dans la vue web. Le nouveau contenu web peut par exemple être effectué en réponse à l’ouverture d’un lien internet. Les étapes optionnelles suivantes, c’est-à-dire les étapes 300 et 310, du procédé 200 sont effectuées lorsque la tentative d’affichage du nouveau contenu web dans la vue web est détectée. La dixième étape 300 optionnelle du procédé 200 comprend le blocage de l’affichage du nouveau contenu web dans la vue web. Le terme « blocage » signifie dans la présente demande que l’affichage du nouveau contenu web dans la vue web est empêché. Cette étape 300 peut être effectuée à l’aide des mêmes méthodes que celles utilisées pour l’étape 290, et ce pour chacun des modes d’implémentation. La onzième étape 310 optionnelle du procédé 200 peut comprendre l’affichage du nouveau contenu web dans un interstitiel. Un interstitiel est une bannière web qui peut être affichée au-dessus de l’ensemble du viewport 110 ou sur une partie du viewport 110. Étant donné que l’interstitiel est affiché au-dessus du rendu de l’environnement 3D, l’affichage de l’interstitiel interrompt l’activité de l’utilisateur et attire son attention, par exemple à des fins publicitaires. L’interstitiel est donc un affichage en 2D qui est indépendant de l’affichage de l’environnement 3D et qui dans la présente demande est affiché au-dessus du rendu de l’environnement 3D. De manière alternative, la onzième étape 310 optionnelle du procédé 200 peut comprendre l’affichage du nouveau contenu web dans un navigateur internet, par exemple le navigateur internet par défaut de l’ordinateur mettant en œuvre le procédé 200. De plus, dans un exemple, le contenu de la vue web d’origine peut être partagé avec cette nouvelle vue web par exemple en conservant les cookies de la vue web d’origine. Dans un premier mode d’implémentation, compatible avec les exemples précédents, l’ordinateur mettant en œuvre le procédé 200 est un téléphone intelligent. Le téléphone intelligent a un système d’exploitation Android®. Par exemple, l’ordinateur peut fonctionner avec l’une quelconque des versions Android® comprises entre la version 1.0 et la version actuelle. De plus, dans ce premier mode d’implémentation, le téléphone intelligent comprend un écran tactile. Dans ce premier mode d’implémentation, la détection 290 d’une tentative d’affichage d’un nouveau contenu web dans la vue web peut s’effectuer en utilisant la fonction WebViewClient.shouldOverrideUrlLoading(). La signature de la fonction WebViewClient.shouldOverrideUrlLoading() peut être WebViewClient.shouldOverrideUrlLoading(WebView view, WebResourceRequest request). Dans un exemple du premier mode d’implémentation, l’interaction utilisateur est un clic, autrement appelé « tap » lorsqu’il effectué avec un doigt de l’utilisateur. Dans cet exemple, la vue web est une classe de type android.webkit.WebView disponible par exemple sur une version quelconque parmi les versions 1.0 à actuelle de l’API Android. De plus, dans cet exemple, la génération 250, dans la vue web, du au moins un événement simulant l’interaction utilisateur sur le contenu web est mise en œuvre en effectuant deux appels consécutifs à la fonction dispatchTouchEvent() dont la signature peut être dispatchTouchEvent(MotionEvent event). Dans un exemple d’implémentation, les deux évènements peuvent être envoyés séquentiellement sans délai entre les deux. Le premier appel des deux appels consécutifs peut par exemple simuler un doigt de l’utilisateur se posant sur l’écran tactile, appelé « touchdown » en anglais. Le second appel des deux appels consécutifs peut par exemple simuler un doigt de l’utilisateur se retirant de l’écran tactile, appelé « touchup » en anglais. Dans un exemple du premier mode d’implémentation, la onzième étape 310 optionnelle procédé 200 peut être mise en œuvre en affichant le nouveau contenu web dans le navigateur internet par défaut de l’ordinateur mettant en œuvre le procédé 200 ou tout autre comportement adapté. De plus, l’adresse URL du lien internet dont l’affichage du contenu web a été empêché peut-être récupérée à l’aide de la méthode WebViewClient.shouldOverrideUrlLoading(). Dans un second mode d’implémentation, compatible avec les exemples précédents, l’ordinateur mettant en œuvre le procédé 200 est un téléphone intelligent de type iPhone. L’iPhone a un système d’exploitation iOS®, pour « iPhone Operating System ». Par exemple, l’iPhone peut fonctionner avec l’une quelconque des versions iOS® comprises entre la version iOS 8.0 et la version actuelle. Dans ce second mode d’implémentation, l’iPhone comprend un écran tactile. Dans un exemple du second mode d’implémentation, l’interaction utilisateur est un clic, par exemple effectué avec un doigt de l’utilisateur. Dans cet exemple, la vue web est une classe de type WKWebView. La classe de type WKWebView fait partie de la structure de développement logiciel, appelée « framework » en anglais, WebKit. La classe de type WKWebView est disponible par exemple sur une version quelconque parmi les versions iOS 8.0 à actuelle du framework WebKit. De plus, dans cet exemple, la génération 250, dans la vue web, du au moins un événement simulant l’interaction utilisateur sur le contenu web est mise en œuvre en effectuant un appel à une méthode en javascript click() dont la signature est HTMLElement.click(). L’élément sur lequel est appliqué cette méthode est détecté grâce à la fonction document.elementFromPoint(x, y). Ces appels sont effectués au sein d’une méthode evaluateJavascript() de la classe de type WKWebView. Dans un exemple du second mode d’implémentation, compatible avec l’exemple précédent, la vue web de type WKWebView comprend au moins deux contenus web provenant de deux domaines internet différents. Le premier contenu web provient d’un premier domaine internet. Le premier contenu web est compris dans une première balise HTML d’un modèle d'objets de document HTML, couramment appelé HTML DOM pour HTML « document object model » en anglais. La première balise est à la racine du HTML DOM. Le second contenu web provient d’un second domaine internet. Le second contenu web est compris dans une seconde balise HTML de type du HTML DOM. Une balise de type permet l’incorporation d’un contenu web provenant d’une page HTML à l’intérieur de la page HTML actuelle, c’est-à-dire la page HTML correspondant au HTML DOM. La seconde balise HTML est une balise fille de la première balise HTML dans l’arbre du HTML DOM. Un script javascript est en outre ajouté au niveau de la première et de la deuxième balise HTML. Le script javascript de la première balise HTML est configuré pour transmettre les informations de l’interaction utilisateur au script javascript de la seconde balise HTML, telles que les coordonnées transformées de l’interaction utilisateur. Le script javascript de la seconde balise HTML est configuré pour simuler l’interaction utilisateur avec les coordonnées transformées de l’interaction utilisateur. Enfin, le second contenu web a une troisième plage de coordonnées dans le repère de la vue web. Cette troisième plage de coordonnées permet notamment de déterminer si les coordonnées transformées de l’interaction utilisateur sont comprises dans la troisième plage de coordonnées du second contenu web. Il est possible de noter que cet exemple du procédé peut être récursif. Par exemple le second contenu web peut comprendre un troisième contenu web provenant d’un troisième domaine internet, pouvant lui-même comprendre un quatrième contenu web provenant d’un quatrième domaine, etc. Dans cet exemple, les sous-étapes 251 et 252, sont effectuées lorsque les coordonnées transformées sont comprises dans la troisième plage de coordonnées du second contenu web. La sous-étape 251 comprend une transmission d’informations du clic, par le script ajouté au niveau de la première balise HTML, au script javascript ajouté au niveau de la seconde balise HTML. Les informations transmises peuvent par exemple comprendre les coordonnées transformées de l’interaction utilisateur. La sous-étape 252 comprend un appel par le script javascript ajouté au niveau de la seconde balise HTML, à la méthode HTMLElement.click() au sein de la méthode evaluateJavascript() de la classe de type WKWebView. Cet appel permet la génération, dans la vue web, du au moins un événement simulant l’interaction utilisateur sur le contenu web. Dans ce second mode d’implémentation, la détection 290 d’une tentative d’affichage d’un nouveau contenu web dans la vue web peut s’effectuer en utilisant la fonction decidePolicyForNavigationAction(). La signature de la fonction decidePolicyForNavigationAction () est (void)webView:(WKWebView *) webView decidePolicyForNavigationAction:(WKNavigationAction *) navigationAction decisionHandler:(void (^) (WKNavigationActionPolicy)) decisionHandler; Dans un exemple du second mode d’implémentation, la onzième étape 310 optionnelle procédé 200 peut être mise en œuvre en instanciant et en affichant un SFSafariViewController en plein écran, en 2D, ou bien en déclenchant un comportement sur mesure tel qu’un affichage : d’une fenêtre contextuelle, appelée « pop up » en anglais, comprenant un lien commercial, par exemple d’un lien app store, ou d’une lecture d’une vidéo avec un lecteur vidéo. Enfin, l’adresse URL du lien internet dont l’affichage du contenu web a été empêché peut être récupérée à l’aide de la méthode decidePolicyForNavigationAction() par exemple à l’étape 290 ou après cette étape. Procédé (200), mis en œuvre par ordinateur, de gestion d’un contenu web interactif dans un environnement 3D, le procédé comprenant : Obtention (210) de l’environnement 3D et du contenu web, Affichage (220) du contenu web dans un rendu de l’environnement 3D, l’affichage étant effectué avec une texture comprise dans le rendu de l’environnement 3D affiché, la texture étant générée en effectuant un rendu d’une vue web comprenant le contenu web, le contenu web affiché dans le rendu de l’environnement 3D ayant une première plage de coordonnées dans un repère du rendu de l’environnement 3D correspondant à une seconde plage de coordonnées du contenu web dans un repère de la vue web, Lorsqu’une interaction utilisateur est détectée : Détermination (230) de coordonnées de l’interaction utilisateur dans le repère de l’environnement 3D, Transformation (240) des coordonnées obtenues dans le repère de la vue web, et Lorsque les coordonnées transformées sont comprises dans la seconde plage de coordonnées du contenu web, génération (250), dans la vue web, d’au moins un événement simulant une interaction utilisateur sur le contenu web, l’interaction utilisateur simulée ayant les coordonnées transformées (240). Procédé (200) selon la revendication 1 comprenant en outre, lorsque les coordonnées transformées sont comprises dans la seconde plage de coordonnées du contenu web, au moins une étape parmi : Modification (260) du contenu web affiché, Modification (270) de la taille de l’affichage du contenu web dans l’environnement 3D, Modification (280) de la position du contenu web dans l’environnement 3D. Procédé (200) selon la revendication 1 ou 2 comprenant en outre, lorsque les coordonnées transformées sont comprises dans la seconde plage de coordonnées du contenu web, les étapes de : Détection (290) d’une tentative d’affichage d’un nouveau contenu web dans la vue web, Lorsque la tentative d’affichage du nouveau contenu web dans la vue web est détectée : Blocage (300) de l’affichage du nouveau contenu web dans la vue web, et Affichage (310) du nouveau contenu web dans un interstitiel. Procédé (200) selon la revendication 1 à 3 dans lequel : L’ordinateur est un téléphone intelligent comprenant un écran tactile et fonctionnant sous un système d’exploitation Android®, l’interaction utilisateur est un clic, la vue web est une classe de type android.webkit.WebView, et la génération (250), dans la vue web, du au moins un événement est mise en œuvre en effectuant deux appels consécutifs à la fonction WebView.dispatchTouchEvent(), un premier appel des deux appels consécutifs simulant un doigt se posant sur l’écran tactile et un second appel des deux appels consécutifs simulant un doigt se retirant de l’écran tactile. Procédé (200) selon la revendication 1 à 3 dans lequel : L’ordinateur est un iPhone comprenant un écran tactile et fonctionnant sous un système d’exploitation iOS®, l’interaction utilisateur est un clic, la vue web est une classe de type WKWebView, et la génération (250), dans la vue web, du au moins un événement est mise en œuvre en effectuant un appel à une méthode HTMLElement.click() au sein d’une méthode evaluateJavascript() de la classe de type WKWebView. Procédé (200) selon la revendication précédente dans lequel : la vue web de type WKWebView comprend : un premier contenu web provenant d’un premier domaine internet compris dans une première balise HTML d’un modèle d'objets de document HTML, la première balise étant la racine du modèle d'objets de document HTML, et un second contenu web provenant d’un second domaine internet compris dans une seconde balise HTML de type « iframe » du modèle d'objets de document HTML, la seconde balise HTML étant une balise fille de la première balise HTML, le second contenu web ayant une troisième plage de coordonnées dans le repère de la vue web, le procédé (200) comprenant en outre une étape (215), effectuée après l’obtention (210) et avant l’affichage (220), d’ajout local de scripts javascript au niveau de la première et seconde balise HTML, les scripts étant configurés pour générer (250), dans la vue web, le au moins un événement simulant une interaction utilisateur sur le contenu web, l’interaction utilisateur simulée ayant les coordonnées transformées (240) : la génération (250), dans la vue web, du au moins un événement simulant une interaction utilisateur sur le contenu web comprenant, lorsque les coordonnées transformées sont comprises dans la troisième plage de coordonnées du second contenu web, les sous-étapes de : transmission (251) d’informations du clic, par le script ajouté au niveau de la première balise HTML, au script javascript ajouté au niveau de la seconde balise HTML, et appel (252), par le script javascript ajouté au niveau de la seconde balise HTML, à la méthode HTMLElement.click() au sein de la méthode evaluateJavascript() de la classe de type WKWebView. Produit programme d'ordinateur comprenant des instructions qui, lorsque le programme est exécuté par un ordinateur, conduisent celui-ci à mettre en œuvre le procédé selon l’une quelconque des revendications 1 à 7. Support d'enregistrement lisible par ordinateur comprenant des instructions qui, lorsqu'elles sont exécutées par un ordinateur, conduisent celui-ci à mettre en œuvre le procédé selon l’une quelconque des revendications 1 à 7. Système configuré pour exécuter le procédé selon l’une quelconque des revendications 1 à 7.