« Réunion du 12-09-2023 » : différence entre les versions
Aller à la navigation
Aller à la recherche
Aucun résumé des modifications |
(→Cartes) |
||
Ligne 6 : | Ligne 6 : | ||
=== Cartes === | === Cartes === | ||
* Il est possible que COOL VL Viewer utilise encore les tuiles de carte V1 c'est à dire une image par région qui est un asset qui remplit les base de données. Le viewer V2 récupère la carte à partir d'un service de carte spécial.(V1 et V2 font surtout référence au type de viewer). Cela implique deux solutions pour faire la même chose et un spam d'assets. | * Il est possible que COOL VL Viewer utilise encore les tuiles de carte V1 c'est à dire une image par région qui est un asset qui remplit les base de données. Le viewer V2 récupère la carte à partir d'un service de carte spécial.(V1 et V2 font surtout référence au type de viewer). Cela implique deux solutions pour faire la même chose et un spam d'assets. | ||
* Requête SQL pour trouver les enregistrements inutiles liés à la carte dans la base de données de la grille: | * Requête SQL pour trouver les enregistrements inutiles liés à la carte dans la base de données de la grille et purger toutes les versions uniques sauf les plus récentes : | ||
SELECT (`name`), id, FROM_UNIXTIME(create_time) | SELECT (`name`), id, FROM_UNIXTIME(create_time) | ||
FROM assets WHERE `name` LIKE '%terrainImage%' | FROM assets WHERE `name` LIKE '%terrainImage%' | ||
ORDER BY create_time DESC; | ORDER BY create_time DESC; | ||
* Développement : regioninfo indique au Viewer le handle, la taille et l'identifiant de la carte. Robust peut donner une tuile au viewer très rapidement. | (NDLR : sur ma grille je trouve des résultats en remplaçant la table assets par fsassets puisque j'utilise cette fonctionnalité). Le nom de la maptile est terrainImage_ suivi de l'identifiant de la région. Donc, en se basant sur cela et sur l'horodatage, on peut créer une seule tuile pour chaque région. | ||
* Développement : | |||
**regioninfo indique au Viewer le handle, la taille et l'identifiant de la carte. Robust peut donner une tuile au viewer très rapidement. | |||
** Utilisation du flag de l'asset | |||
asset.Flags = AssetFlags.Maptile; | |||
** Code dans le système d'exploitation pour essayer de supprimer les assets temporaires chaque fois qu'un nouvel asset est créé/ | |||
private void GenerateMaptile(Bitmap mapbmp) | |||
{ | |||
bool needRegionSave = false ; | |||
// supprimer les anciens actifs | |||
UUID lastID = m_scene.RegionInfo.RegionSettings.TerrainImageID ; | |||
if (!lastID.IsZero()) | |||
{ | |||
m_scene.AssetService.Delete(lastID.ToString()) ; | |||
* Solution : se débarrasser des anciennes tuiles. Ces assets ont un flag temps dans la base de donnée (ndrl : asset_flags ?) mais généralement, il ne fonctionne pas. | |||
* La heighmap | * La heighmap | ||
** demande de mise en cahe de la Heighmap pour ne pas devoir la recharger à chaque passage sur une région surtout varregion. | ** demande de mise en cahe de la Heighmap pour ne pas devoir la recharger à chaque passage sur une région surtout varregion. | ||
** problème : la carte des hauteurs peut changer dynamiquement si quelqu'un modifie le terrain. | |||
** une idée serait d'utiliser une sorte de hachage pour que le viewer vérifie si la carte ou la haighmap est toujours valide. Mais, le viewer doit pouvoir le supporter. | |||
* Projet de Joe Magarac : construire des cartes en 3D en prenant des photos en 2D sous différents angles et en les introduisant dans Open Drone Mapper. | * Projet de Joe Magarac : construire des cartes en 3D en prenant des photos en 2D sous différents angles et en les introduisant dans Open Drone Mapper. | ||
* Exemple d'affichage de carte : http://animats.com/sl/map/. Presser sur la touche CTRL + bouton gauche de la souris. | ** Exemple d'affichage de carte : http://animats.com/sl/map/. Presser sur la touche CTRL + bouton gauche de la souris. | ||
** Carte 3D : https://community.secondlife.com/forums/topic/502095-big-world-impostor-test-128m/page/2/#comment-2630978 | |||
= Bugs = | = Bugs = |
Version du 5 novembre 2023 à 12:23
Changements du code de la semaine
- Pas de changement de code cette semaine.
Noyau
Base de données
Modules
Cartes
- Il est possible que COOL VL Viewer utilise encore les tuiles de carte V1 c'est à dire une image par région qui est un asset qui remplit les base de données. Le viewer V2 récupère la carte à partir d'un service de carte spécial.(V1 et V2 font surtout référence au type de viewer). Cela implique deux solutions pour faire la même chose et un spam d'assets.
- Requête SQL pour trouver les enregistrements inutiles liés à la carte dans la base de données de la grille et purger toutes les versions uniques sauf les plus récentes :
SELECT (`name`), id, FROM_UNIXTIME(create_time) FROM assets WHERE `name` LIKE '%terrainImage%' ORDER BY create_time DESC;
(NDLR : sur ma grille je trouve des résultats en remplaçant la table assets par fsassets puisque j'utilise cette fonctionnalité). Le nom de la maptile est terrainImage_ suivi de l'identifiant de la région. Donc, en se basant sur cela et sur l'horodatage, on peut créer une seule tuile pour chaque région.
- Développement :
- regioninfo indique au Viewer le handle, la taille et l'identifiant de la carte. Robust peut donner une tuile au viewer très rapidement.
- Utilisation du flag de l'asset
asset.Flags = AssetFlags.Maptile;
- Code dans le système d'exploitation pour essayer de supprimer les assets temporaires chaque fois qu'un nouvel asset est créé/
private void GenerateMaptile(Bitmap mapbmp) { bool needRegionSave = false ; // supprimer les anciens actifs UUID lastID = m_scene.RegionInfo.RegionSettings.TerrainImageID ; if (!lastID.IsZero()) { m_scene.AssetService.Delete(lastID.ToString()) ;
- Solution : se débarrasser des anciennes tuiles. Ces assets ont un flag temps dans la base de donnée (ndrl : asset_flags ?) mais généralement, il ne fonctionne pas.
- La heighmap
- demande de mise en cahe de la Heighmap pour ne pas devoir la recharger à chaque passage sur une région surtout varregion.
- problème : la carte des hauteurs peut changer dynamiquement si quelqu'un modifie le terrain.
- une idée serait d'utiliser une sorte de hachage pour que le viewer vérifie si la carte ou la haighmap est toujours valide. Mais, le viewer doit pouvoir le supporter.
- Projet de Joe Magarac : construire des cartes en 3D en prenant des photos en 2D sous différents angles et en les introduisant dans Open Drone Mapper.
- Exemple d'affichage de carte : http://animats.com/sl/map/. Presser sur la touche CTRL + bouton gauche de la souris.
- Carte 3D : https://community.secondlife.com/forums/topic/502095-big-world-impostor-test-128m/page/2/#comment-2630978
Bugs
Tests
- Le projet de tests xunit est toujours bloqué au même endroit , c'est à dire essayer de faire fonctionner les tests dans Visual Studio sans utiliser Nuget.
Projets en cours / Infos
Viewers
Sharpview
- Recherche en cours : travail sur le protocole de connexion du viewer à une région et recueil d'informations sur les événements.
- Discussion sur les forums SL : https://community.secondlife.com/forums/topic/503010-obscure-question-when-does-the-simulator-send-establishagentcommunication-to-the-viewer
Dayturn
- Pas encore de retour aux anciens profils pour le viewer OpenSim.