Réunion du 16-04-2024
Introduction NDLR
- Cette réunion fut très très compliquée à résumer. J'ai du zapper pas mal de choses sur les physiques.Surtout vers la fin avec une histoire de boule creuse physique et un ou plusieurs avatars à l'intérieur.
- Ubit Umarov parle aussi de définir les frames par secondes du simulateur à 50fps... je ne sais pas le faire, je n'ai pas pu ajouter l'information dans le résumé. Voulait-il parler de FrameTime (voir ci-dessous) ? Je ne sais pas. De plus il ne donne pas toutes la suite des configurations Update[***]EveryNFrames, ... si vous voulez essayer cette config, faites des tests. Personnellement, je remplacerais peut être aussi UpdateTerrainEveryNFrames, UpdateStorageEveryNFrames et UpdateTempCleaningEveryNSeconds.
Changements du code de la semaine
Support SSL de Robust
- Correction d'un bug pour créer des clients web partagés après avoir lu la configuration.[1]
Ajout de la capacité DispatchRegionInfo
Texture de terrain
- Mise à jour des caractéristiques du simulateur avec une taille de texture maximale de 1024px.[4] (Linden Lab semble se lancer à fond dans les textures de 2048px).
Il semble que les viewers affichent déjà des images de cette taille, mais n'autorisent pas le téléchargement.
Modules du l'ancien viewer de Diva
- Certains modules dédiés à l'ancien viewer de Diva étaient activés par défauts. Ils sont maintenant désactivés par défaut mais activables depuis la configuration.[5]
Avertissement
Attention : Ce résumé existe pour orienter vos recherches. Des erreurs d'interprétation ne sont pas à exclure. Pour plus de précisions, veuillez vous référer aux sources ou vous adresser directement aux développeurs d'OpenSimulator en assistant aux réunions du mardi ou sur le canal IRC. Je ne fais pas partie des développeurs, ne vous adressez pas à moi pour les joindre. Merci.😉 |
Configuration et scripts
La gravité dans OpenSim (suite de la réunion du 09-04-2024)
Déplacement des avatars
- Essayer de déplacer un avatar avec des scripts ne fonctionne pas même en utilisant llApplyimpulse[6] (à moins qu'il ne soit assis), c'est parce que les avatars ont leurs propres moteurs de physique.
- Ubit Umarov va permettre la désactivation temporaire du moteur de l'avatar. Cela va aussi dépendre du moteur de physique.
- D'après Vincent Sylvester il est possible de déplacer physiquement un avatar et de le faire planer en utilisant dans un capteur :
llPushObject(llDetectedKey(agentNum), force, ZERO_VECTOR, 0) ;
Problème de la course à l’œuf
Description
- Cuga Raja a un jeu dans lequel un avatar se tient à l'intérieur d'un ellipsoïde creux géant avec la physique activée. Le jeu est une "course à l'œuf", l'avatar court à l'intérieur de l'œuf et l'ellipsoïde est entraîné. Dans OpenSim les jambes de l'avatar passent à travers le fond de l’œuf. Cela se produit avec les deux moteurs de physique UbODE et BulletSim mais avec des bugs différents.
Causes possibles
- Désynchronisation des objets envoyés via UDP.
- Limites de la force de séparation des objets et le moteur de l'avatar est très fort et peut annuler la séparation.
- On peut modifier la configuration. Les paramètres par défaut sont dans le fichier OpenSimDefaults.ini (même dossier que OpenSim.ini). Unit Umarov conseille de changer la configuration, les valeurs par défaut n'étant bonnes que pour les régions où l'on danse :
; Cette valeur définit le rythme de plusieurs événements de simulation. MAIS on doit aussi modifier certains paramètres de fluidité pour que leur rythme reste similaire. ; FrameTime en millisecondes (ms) est le facteur .Le temps pris par OpenSimulator pour compléter la dernière image. Le temps standard est de 18,18 ms. Dans des ; conditions normales, il y aura de petites variations au-dessus et en dessous de ce chiffre, probablement en raison de la faible résolution de la mise en veille des ; threads. Ce chiffre peut parfois augmenter si la machine virtuelle sous-jacente (Mono ou .NET) prend beaucoup de temps pour récupérer la mémoire inutilisée. Si ce ; nombre est constamment plus élevé, c'est que votre simulateur est surchargé. FrameTime = 0.02 ; Valeur d'origine 0.0909. UpdateObjectsEveryNFrames = 1 ; inchangé UpdateAgentsEveryNFrames = 1 ; inchangé UpdateEntityMovementEveryNFrames = 1 ; inchangé UpdateCoarseLocationsEveryNFrames = 250 ; passe de 50 à 250 etc.
- Pour que la commande stats show affiche les fps réelles vous pouvez utiliser le paramètre de configuration :
Normalized55FPS = true
Viewers
Contours des objets physiques
Retour sur une question de la semaine dernière
- Est-il possible de voir les contours des objets physiques dans la viewer ? (C'est à dire la surface qui a un effet de blocage). Réunion_du_09-04-2024#Contours_des_objets_physiques
Réponse d'Ubit Umarov
- Il n'y a pas de moyen de voir la boîte de délimitation des physiques. De toute façon ce serait faux pour le moteur de physiques BulletSim. Le type de forme de physiques est en grande partie erroné sur BulletSim. Il n'y a pas de surfaces de délimitation. Chaque moteur fait les premières étapes de détection des collisions en utilisant sa propre idée des boîtes de rebond (bouding box). Certains moteurs peuvent en avoir une pour un objet lié... d'autres, juste pour les primitives...
- Avec Firestorm, on peut voir le maillage utilisé pour les physiques, mais ça ne s'affichera pas pour les sculpties et les prims normales. La physique utilise tout au plus des boîtes alignées sur l'axe.
- Developer -> Render Metadata -> Physics Shapes (Développeurs -> Métadonnées de rendu -> formes physiques) ne fonctionne pas , cette option montre la physique pour toutes les primitives.
Réponse de Gavin Hird
- Gavin Hird est sur que son viewer Dayturn affichera cela à partir de l'éditeur dans l'onglet Features (Attributs).
- Ubit Umarov dit aussi que dans l'éditeur c'est beaucoup mieux, il ne montre pas les primitives normales ni les sculpties.
Test dans l'éditeur avec un mesh non physique
- Dans Attributs sélectionner "enveloppe ..." et cliquer sur l'oeil.
-
BulletSim
-
UbODE
Peut-on définir une primitive d'objet lié à non physique ?
- Oui on peut définir le format d'une primitive à "non-physique" sauf si c'est la primitive racine.
- Une primitive enfant "non physique" agira comme une primitive fantôme sauf que le fantôme entre en collision avec le terrain, pas la primitive non physique. Ceci est vérifié avec le moteur de physiques UbODE, à vérifier pour BulletSim.
Source
http://opensimulator.org/wiki/Chat_log_from_the_meeting_on_2024-04-16