PBR - Les miroirs

De OSWiki
Aller à la navigation Aller à la recherche

Ce tutoriel décrit la création de miroirs dans OpenSim 0.9.3 avec le viewer Firestorm 7.1.9, optimisé pour utiliser les fonctionnalités PBR. Les miroirs peuvent ajouter un élément intéressant à vos mondes virtuels, bien que leur utilisation puisse être limitée par les limites de votre matériel et de celui de vos visiteurs. Ce tutoriel vous guidera pour intégrer des miroirs dans vos créations. C'est le résultat de tests qui ont été faits sur une standalone, Sqlite, système d'exploitation Ubuntu 22.04. Il est possible que les miroirs réagissent différemment dans d'autres conditions. Ce tutoriel est un début. Faites vos tests. Bonne lecture et bonne exploration !

Pré-requis

Pour tout le monde

Le viewer

  • Pour suivre ce tutoriel il faudra utliser la version PBR du viewer Firestorm c'est à dire la version 7.1.9 ou supérieure. Si vous utilisez une version moins récente, vous ne verrez ni les matériaux et les terrains PBR ni les miroirs.
  • Activer les miroirs dans Firestorm :

Pour cela, ouvrez les préférences du viewer (Edit/préférences). Puis sous l'onglet "Graphiques" sous "Shaders" cochez la case "Miroirs". (Voir l'image ci-dessous).

Optimisation matérielle éventuelle

  • La version PBR de Firestorm demande plus de ressources matérielles que les versions antérieures. Si vous disposez d'une machine trop ancienne, il se peut que vous ne puissiez pas l'utiliser.
  • Le système d'exploitation aussi risque de poser quelques problèmes. Par exemple, Firestorm PBR ne fonctionne pas sur Ubuntu 20.04 mais sur Ubuntu 22.04 (versions Ubuntu plus récentes, Microsoft et Mac non testées).
  • Pour limiter le lag, deux paramètres du viewer sont importants (voir l'image des préférences ci-dessus).Adaptez ces deux paramètres à votre matériel :
    • La résolution du miroir qui va de 256 à 2048. Plus la résolution est élevée plus l'image est nette.
    • Le rythme de mise à jour du miroir.
      Vous aurez le choix entre  :
      • toutes les images ,
      • toutes les 2 images,
      • toutes les 3 images ou
      • toutes les 4 images.

      À partir de 2 images le rendu de la scène est saccadé.

Administrateur de région

Opensimulator

  • La version 0.9.3 d'Opensimulator vous permettra d'utiliser PBR et de créer des miroirs. À la date de création de ce tutoriel OpenSim 0.9.3 est la version de développement. Référez-vous à cette page pour télécharger cette version.
  • Sur GNU/Linux, depuis OpenSim 0.9.3 il n'est plus possible d'utiliser Mono [1] pour lancer un simulateur. Il faudra installer dotnet 8 et quelques autres paquets. Par exemple, sur Ubuntu 22.04 lancez ces commandes :
sudo apt install -y apt-utils libgdiplus libc6-dev
sudo apt install -y dotnet-runtime-8.0
  • Vous trouverez plus d'informations ici : http://opensimulator.org/wiki/Dependencies
  • On me dit dans mon oreillette qu' OpenSim 0.9.2.2 permet aussi la création de miroirs. Je testerai et vous tiendrai au courant. 😀 : alors j'ai testé, je n'ai pas réussi à avoir un miroir avec reflet de l'avatar sur une région 0.9.2.2. On voit un reflet, mais ce n'est pas le vrai miroir.

Configuration de Firestorm

  • Activez "Sélectionner les sondes de réflexion" depuis le menu "Construire/Options" (Voir l'image de droite).
Activer les sondes de réflexion

Étapes de création d'un miroir PBR

Création du miroir

Créez une surface brillante en PBR ou en texture classique . L'image de droite montre comment créer une surface brillante classique dans le nouvel éditeur d'objets de FireStorm.

Créer un miroir

Dans l'outil d'édition des textures vous verrez 3 onglets : PBR, Blinn Phong et Média.

  • Comme vous pouvez vous en douter PBR permet d'appliquer un matériau PBR sur un objet.
  • L'onglet Blinn Phong correspond aux textures classiques.
  • Média permet de créer un MOAP (Média On A Prim).

Cliquez sur l'onglet Blinn Phong et choisissez des textures diffuse et spéculaire blanches et une normale map par défaut.
Définissez la brillance et l'environnement à 255.

Sondes de réflexion

Création de la sonde

  • Rezzez un cube.
  • Dans l'éditeur d'objet dans "Attributs" cochez la case "Sonde de réflexion".
  • Sélectionnez le mode de mise à jour "Miroir (tout)".

Ajustement de la sonde pour le miroir

  • Choisir l'axe de grille "Local" pour positionner les objets dans l'éditeur.
  • Orientez la sonde comme sur la deuxième image ci-dessus. La flèche bleue qui représente l'axe des Z doit être perpendiculaire à la surface brillante du miroir et orientée dans le sens miroir -> extérieur.
  • Étirez la sonde et déplacez-la de telle façon qu'elle enveloppe le miroir comme sur la troisième image ci-dessus.
  • Il est possible d'ajouter d'autres miroirs et de les englober dans la sonde de réflexion. Mais tous les miroirs ajoutés doivent être placés sur la même ligne comme sur la 4ème image.

Résumé rapide

  1. Activer les miroirs dans Préférences/Graphique et ajuster la résolution et le rythme de mise à jour du miroir.
  2. Activer la Sélection de la sonde de réflexion dans "Construction/Options"
  3. Créer le miroir  : primitive avec une surface brillante Blinn-Phong ou PBR.
  4. Rezzer un cube et cocher "Sonde de réflexion" dans les attributs de l'éditeur d'objets. Sélectionnez le mode de mise à jour "Miroir (tout)"
  5. Choisir l'axe de grille "Local" pour positionner les objets.
  6. Étirer et déplacer la sonde pour envelopper le miroir .
  7. Il est possible de créer plusieurs miroirs dans la même sonde de réflexion mais, sur la même ligne.

Expériences Pratiques : Réussites et Limitations

Fonctionnalités stables testées

Les nouveaux miroirs dans OpenSim reflètent :

  • les avatars, les primitives, les meshes, le mouvement des avatars
  • les animeshes et leur mouvement,
  • les éclairages,
  • la transparence des objets,
  • les particules,
  • les environnements EEP
  • les captures d'écran montrent d'autres utilisations testées.

Éléments à prendre en considération

  • Le glow et full brightness ne sont pas reflétés.
  • Pendant le déplacement de l'avatar on voit un effet étrange dans l'eau lorsqu'il y a un miroir proche de l'avatar.
  • Si deux sondes sont trop proches l'une de l'autre le viewer ne sait pas à quelle sonde se référer et il y a conflit. Les reflets peuvent être altérés.
  • On ne peut pas mettre de miroir en vis-à-vis, pas de mise en abyme, le reflet du miroir sera déformé et laid.
  • Si un des bords de la sonde de réflexion est trop proche de la surface brillante du miroir alors le reflet près de ce bord sera déformé. Donc il faut bien faire dépasser la sonde de tous cotés.

Ressources Complémentaires