0.8.1 Release/fr
From OpenSimulator
Languages: |
English Français |
Note de version
Généralités
Bienvenue sur OpenSimulator 8.1, environnement virtuel 3D open-source multi-utilisateurs et serveur de plate-forme de métaverse.
Comme toujours, OpenSimulator est un système très complexe. Différents scénarios d'utilisation (standalone, grille, Hypergrid, etc.) en combinaison avec différentes dépendances (par exemple, les différentes versions de mono sur Linux / Mac) peuvent parfois produire des résultats inattendus ou instables.
Si vous mettez à jour une version précédente d'OpenSimulator, nous vous recommandons fortement de commencer avec les fichiers de configuration et les ports par défaut. Ensuite, si tout fonctionne bien, vous pourrez ajouter toutes les modifications de votre ancienne version OpenSimulator.
Vous êtes sur une page de wiki, ainsi, ne vous privez pas si vous le désirez, de la mettre à jour avec plus d'informations sur la migration, ou d'autres questions au fur et à mesure qu'elles apparaissent. Il peut aussi y avoir des erreur de traduction de l'article anglais, si vous en trouvez, merci de les corriger.
Vous pouvez télécharger cette version d'OpenSimulator depuis http://opensimulator.org/wiki/Download
Problèmes connus
- Clé abstraite(Arbitrary key) : la valeur de stockage pour les régions n'est pas encore implémentée pour SQLite ou MSSQL. Elle est utilisée pour conserver les paramètres temporaires des attachements. Cette fonctionnalité est considérée comme expérimentale.
- Régression de la fonctionnalité RLV, ainsi les objets partagés via la fonction llGiveInventoryFolder() avec un nom de dossier au format #RLV/~gift sont encore placés dans le dossier #RLV mais maintenant avec le nom "#RLV/~gift" plutôt que simplement "~gift".Cette question est traité dans http://opensimulator.org/mantis/view.php?id=6311. Toute aide des développeurs de viewer à ce sujet sera la bienvenue.
- Aucune forme d'équivalence aux primitives n'est implémentée pour les meshes.
- Le chargement de scripts depuis la section bibliothèque des inventaires ne fonctionne pas correctement.
- Le générateur de carrés de carte Warp3D, qui n'est pas le générateur par défaut, génère des fuites importantes de mémoire. Nous vous recommandons de l'utiliser une seule fois au début de chaque session de simulateur.
- Pour les autres bogues, veuillez vous référer au Mantis (système de suivi des anomalis) d'OpenSimulator.
Besoins
OpenSimulator requiert :
- .NET Framework 4 sur Windows.
- Et au minimum Mono 2.8 pour fonctionner sur Mono (Linux ou Mac). Toutefois, nous vous recommandons d'utiliser au moins Mono 2.10 car les versions Mono 2.8.x sont connues pour être moins stables dans certaines conditions d'utilisation d'OpenSimulator. Il a également été signalé que Mono 3 est compatible avec OpenSimulator.
Changements avec problèmes de compatibilité possibles
Moteur de script
Cette version remplace la stratégie d'arrêt des scripts par interruption par une stratégie co-opérative (co-op).Elle est définie à l'aide du paramètre ScriptStopStrategy dans la section [XEngine] d'OpenSim.ini.
L'approche par interruption, arrête simplement le déroulement du script actif s'il n'est pas stoppé après un certain délai. Dans de rares cas, en particulier avec des simulateurs très chargés, les threads sont arrêtés au milieu d'un code critique ce qui peut conduire à une instabilité et à des crashes. L'approche co-op est plus stable car elle insère des contrôles dans le script compilé pour assurer un arrêt plus propre.
Cependant, cette nouvelle configuration nécessite une recompilation des scripts. Cela ne peut pas être fait automatiquement. Par conséquent, si au démarrage, le moteur de script rencontre un script compilé pour une stratégie d'arrêt différente (par exemple le script est compilé pour une stratégie d'arrêt par interruption alors que la configuration est définie pour une co-op) alors un avertissement sera enregistré. Le script sera lancé et utilisera la stratégie de la compilation.
Si vous voyez un message pour forcer la recompilation des DLLS de scripts, veuillez définir dans la section [XEngine] DeleteScriptsOnStartup = true pour au moins une session du simulateur ou supprimez manuellement les DLLs de script compilé. Cela supprimera toutes les anciennes DLLs qui pourront être recompilées. L'état des scripts et les scripts eux-mêmes ne seront *pas* perdus.
Aternativement, vous pouvez définir explicitement dans [XEngine] ScriptStopStrategy = abort. Cependant, ce n'est pas recommandé car cela à nouveau provoquer une instabilité. L'option reste à des fins de débogage.
Support de base de données MSSQL
Ce support a été supprimé car il n'avait pas été maintenu depuis plus de deux ans et personne n'était en mesure de s'engager à le faire.
Autres changements
Généralités serveur
- L'historique de la console de commande sera sauvegardé entre les sessions si ConsoleHistoryFileEnabled = true dans la section [Startup] de la configuration. Actuellement, ce n'est pas défini par défaut.
Généralités simulateur
- Un simulateur va maintenant se plaindre et non démarrer si deux régions sont configurées avec la même adresse UDP. Auparavant, on pouvait simplement rencontrer de mystérieux problèmes.
- Ajout d'un dispositif expérimental qui permet au serveur de modifier l'interface du viewer de l'utilisateur à l'aide d'informations envoyées par la fonction SimulatorFeatures d'une région. Ce n'est pas encore documenté, mais un exemple de configuration peut être trouvé dans la Distribution Diva.Son viewer expérimental open-source OnLook est compatible avec ces nouveaux paramètres.
Configuration
- Un nouveau dispositif de configuration a été ajouté. Il permet de se référer à une valeur de configuration précédente pour définir d'autres valeurs de configuration. Par exemple, si PublicPort = 8002 dans la section [Const] d'un fichier ini, alors cette valeur pourra être référencée plus tard avec la syntaxe ${<section-name>|}, exemple MapTileURL = ${Const|BaseURL}:${Const|PublicPort}. Cela permet de définir un paramètre une seule fois et de le réutiliser si nécessaire. Veuillez vous référer à la liste de diffusion pour plus de détails - ce dispositif n'est pas encore documenté dans le wiki.
Services
- Des varregions enregistrées ne peuvent plus chevaucher accidentellement d'autres régions.
- Ajout d'un paramètre get_grid_extra_features au service de la grille. Il retourne à la fois SearchURL, MapTileURL, DestinationGuide et ExportSupported au simulateur, de sorte qu'ils n'ont plus besoin d'être définis séparément pour chaque simulateurs.
- Ajout de la commande de console "show grid size" pour donner la taille approximative d'une grille en km carré. Cela ne sera pas exact si des régions crashent ou ne sont pas correctement arrêtées et désenregistrées du service de grille.
- La fonction GetMesh peut maintenant être directement servi depuis service d'assets tout comme la fonction getTexture.
Hypergrid
- Correction d'un problème où les attachements pouvaient parfois disparaître ou apparaître deux fois après une téléportation depuis une grille.
- Réduction de l'utilisation des ressources CPU et de la mémoire par le simulateur pour l'importation d'attachement depuis un service d'assets étranger pour l'affichage d'un utilisateur.
- Introduction d'un meilleur contrôle du rezze des attachements pendant l'HG pour des utilisateurs ayant de nombreux attachements ou pour de nombreux utilisateurs qui entrent en même temps sur une région.
- Correction d'un problème pour lequel un simulateur pouvait tenter continuellement de retrouver les URLs d'un service Hypergrid d'un utilisateur étranger si la première requête avait échoué.
- Ajout d'un support de destination Hypergrid au profils utilisateur pour (l'intégration des profils ?).
- L'URL et le nom de la grille courante ont été ajoutés à la fonctionnalité SimulatorFeatures pour permettre aux viewers d'afficher ces informations quand un utilisateur visite une grille étrangère.
Archivage
- Le contenu des IARs exports maintenant peut être filtré sur la base des permissions copie/modification/transfert comme pour les OARs.
Avatars
- Amélioration de la réactivité des mouvements des avatars.
- La position debout d'un avatar est maintenant correcte si un script le déplace alors qu'il est assis.
- La définition d'une position de connexion avec des décimales sera désormais arrondie alors qu'avant la connexion échouait.
- Réduction de la sensibilité de déclenchement de l'envoi du message AgentUpdate UDP de 0.1 à 0.01.Cela n'influence pas la de façon notable la sensibilité du viewer et diminue le traitement des messages UDP sur les régions à fort trafic.
- L'actualisation périodique et automatique de l'apparence est maintenant désactivée par défaut. Le problème qui avait été résolu avec cette solution (apparences des avatars manquantes) semble avoir disparu. Cette désactivation réduit le trafic UDP sortant des simulateurs, en particulier ceux qui sont très peuplés.
- Ajout de la commande "wearables show" qui affiche des informations sur les éléments portés par les avatars (silhouette, yeux, etc.).Analogue à la commande "attachments show".
- Ajout de la commande "wearables check" pour contrôler si tous les assets requis pour afficher un élément porté peuvent être trouvés.
Amis/profils
- Maintenant, les annonces peuvent être supprimées dans les profils de base.
- Correction de la gestion des préférences de mise à jour de l'utilisateur si aucune adresse email n'est spécifiée pour l'utilisateur.
Groupes
- Adaptateur de base de données PGSQL ajouté pour les groupes intégrés.
- Ajout du pouvoir EventHost manquant pour les propriétaires de groupe pour les groupes intégrés.
Messages instantanés
- Le nom du groupe a été ajouté pour les IMs de groupe. Il est utilisé par certains viewers (par exemple Singularity mais pas Firestorm) pour afficher l'information à la reception d'un message de groupe.
Inventaires
- Pas de changement significatif dans cette version.
Objets
- L'action d'un clic sur un objet est désormais redéfinit à "toucher" après avoir été acheté.
Carte
- Pas de changement significatif dans cette version.
Mesh/Sculpt
- Les textures de meshes téléchargés sont affichées désormais comme des éléments de texture dans l'inventaire de l'utilisateur.
Supervision
- Pas de changement significatif dans cette version.
NPC
- Pas de changement significatif dans cette version.
Physics
- BulletSim intégré est mis à jour vers la version 2.82.
- Dans BulletSim, les avatars ne tombent plus sur le sol lorsqu'ils volent à très faibles altitude.
- Dans BulletSim, la vitesse d'arrivée des avatars en cas de chute a été implémentée.
- Dans BulletSim, correction d'une exception possible si un objet lié est créé quand un mesh enfant n'est pas disponible.
- Dans BulletSim, implémentation du flag LSL, VEHICLE_FLAG_LIMIT_ROLL_ONLY.
- Dans BulletSim, correction d'un problème où le simulateur peut ne pas démarrer en raison d'accès concurrents dans le traitement de la liste d'avatars.
- Dans BulletSim, ajout de l'option AvatarToAvatarCollisionsByDefault. Cela désactive les collision si il est défini à false. La valeur par défaut est true. C'est la même chose que le paramètre av_av_collisions_off pour ODE.
- Dans BulletSim, correction d'un problème pour lequel le simulateur peut crasher avec Windows quand de multiples meshes physiques sont traités.
- Dans ODE correction d'un problème où un avatar ne peut pas sauter et avancer quand il est orienté vers le sud ou l'ouest.
Regions/Domaines/Parcelles
- La performance des mises à jour UDP s'est améliorée pour les régions comptant un grand nombre d'avatars (plus de 50).
- La précision du timing de mise à jour des scènes s'est amélioré.
- Correction d'un problème où parfois une varregion voisine n'apparaissait pas aux utilisateurs.
- Ajout d'une commande de console "show region" pour afficher tous les paramètres de la région courante, comme le nom de l'hôte, les limites d'agen, etc.
Region Franchissement/Téléportation
- Correction d'un problème pour lequel un viewer pouvait ne plus répondre si un utilisateur faisait un aller-retour rapide entre deux régions. La solution mise en place désactive la deuxième traversée tant que la première n'est pas terminée.
- La réactivité des téléportations à été améliorée pour les simulateurs très sollicités.
- Le passage d'un avatar dans une région a été quelque peu amélioré. La vitesse et la direction du déplacement est préservé.
- Amélioration de la téléportation depuis la carte vers une varrégion.
- Ajout de la commande de console "region set" qui permet de définir agent-limit et max-agent.agent-limit est la limite d'avatars pour une région, qui peut être également paramètrée dans le viewer. Cependant, beaucoup de viewer imposent une limite de 100. Le paramètre max-agent-limit impose un nombre maximum pour agent-limit. Par exemple, s'il est défini à 50 alors agent-limit ne pourra pas être défini depuis la console ou le viewer à une valeur supérieure à 50.
Son
- Pas de changement significatif dans cette version.
Terrain
- Par défaut, les informations du terrain sont maintenant envoyées une aire centrée sur l'avatar plutôt que pour toute une région.
Cela permet d'augmenter la réactivité dans les varregions. Le paramètre SendTerrainUpdatesByViewDistance qui contrôle cette fonctionnalité se trouve dans la section [Terrain] des fichier de configuration.
- Des terrains rectangulaires peuvent maintenant être créés à l'aide de la commande de console "terrain feature".
Voix
- Pas de changement significatif dans cette version.
Langage de script
- De nombreuses imprécisions dans le report des lignes et des colonnes des erreurs de compilation on été corrigées.
- [LL-Functions] le paramètre RestrictMail a été ajouté, il permet d'nvoyer un email uniquement à l'adresse du propriétaire du script avec la fonction llEmail.
- Ajoute de l'événement LSL transaction_result.
- Maintenant, OBJECT_ROT et OBJECT_VELOCITY dans llGetObjectDetails() retournent les propriétés de l'avatar si le scripy est dans un attachement.
- Les appels de llSetPrimitiveParams() ne sont plus ignorés après llSetTextureAnim(FALSE).
- Maintenant, l'appel de llStopMoveToTarget() dans le script d'un attachement va arrêter l'avatar s'il se déplace en direction d'une cible.
- Le fait de donner le nom d'un item qui n'existe pas à llGiveInventory() ne génère plus à tort une exception mais génère une erreur.
- L'implémentation de osForceOtherSit() avec un niveau de threat VeryHigh. Cette fonction permet d'asseoir un avatar sans demander de permission.
- osNpcMoveToTarget() ne génère plus d'exception si la fonction est appelée pour un NPC assis.
Test
- L'outil de test de charge pCampbot a été grandement amélioré pour réduire les faux positifs.
Remerciements
Merci, merci beaucoup à tous les développeurs, les testeurs et les membres de la communauté qui ont contribué à ce communiqué et qui aident OpenSimulator en général. Votre travail acharné rend tout cela possible.