Réunion du 19-07-2022

De OSWiki
Aller à la navigation Aller à la recherche

Source : http://opensimulator.org/wiki/Chat_log_from_the_meeting_on_2022-07-19

Introduction

[11:12] Ubit.Umarov @hg.osgrid.org:80 : il a 2022 à tester

[11:12] Andrew Hellershanks : Bonjour à tous.

[11:12] Ubit.Umarov @hg.osgrid.org:80 : cela devrait aussi fonctionner parfaitement.

[11:12] Ubit.Umarov @hg.osgrid.org:80 : Bonjour Andrew, humide et gelé.

[11:12] Andrew Hellershanks : J'ai oublié quel jour on était et j'ai un peu somnolé après le déjeuner.

[11:12] Vincent Sylvester: hehehe

[11:13] Ubit.Umarov @hg.osgrid.org:80: "

[11:13] Ubit.Umarov @hg.osgrid.org:80 : * Tampa jette un seau d'eau sur Plugh

  • Tampa jette des glaçons sur Plugh

[11:13] Ubit.Umarov @hg.osgrid.org:80: "

[11:13] Ubit.Umarov @hg.osgrid.org:80: ( at irc)

Changements de la semaine

[11:13] Vincent Sylvester : Pas beaucoup de changements cette semaine, quelques corrections de fsassets et une autre chose mineure dans libomv en essayant de comprendre pourquoi ça pourrait planter.

[11:14] Vincent Sylvester : Jusqu'à présent, je n'ai pas entendu parler d'autres plantages après le retour de mono à la version 122 et les journaux sont vides également.

[11:16] Andrew Hellershanks : Bonjour, Kayaker.

[11:17] Vincent Sylvester : En parcourant l'api lsl pour ajouter plus de try catch j'ai trouvé quelques petites choses pour lesquelles je pourrais préparer des patches si je peux me rappeler où elles étaient exactement.

[11:17] Kayaker Magic : Bonjour à tous. Est-ce que j'ai manqué beaucoup de choses dans le premier quart d'heure ?

[11:17] Andrew Hellershanks : Kayaker, non, tu n'as rien manqué.

[11:20] Andrew Hellershanks : En ce qui concerne un autre élément de la semaine dernière, j'ai résolu les causes des exceptions que j'avais la semaine dernière avec un objet scriptés.

[11:20] Andrew Hellershanks : Le problème de la référence nulle pendant la compilation a été résolu en mettant à jour le code de la grille vers 0.9.2.1.

[11:22] Andrew Hellershanks : L'erreur HeapException a été résolue en faisant glisser l'objet de l'inventaire vers le sol, en recompilant les scripts, puis en ramenant l'objet dans l'inventaire. Après cela, je n'ai plus eu d'exception de tas en faisant glisser l'objet vers le sol.

[11:23] Andrew Hellershanks : Quand je creusais encore dans le code de la grille pour déterminer la cause du problème de référence nulle, j'ai vu une incohérence dans la vérification du tas qui me laisse encore perplexe.

[11:24] Andrew Hellershanks : Pour le test local pour voir s'il y a encore du tas disponible, il ajoute un usage avant le texte mais pour le ArraysHeap, il ne le fait pas.

[11:24] Ubit.Umarov @hg.osgrid.org:80 : as-tu regardé le code actuel ?

[11:25] Vincent Sylvester : Je ne me souviens pas exactement quand, mais il y a eu des changements assez récents dans le calcul du tas après qu'un rapport de mantis ait signalé qu'il était erroné.

[11:25] Vincent Sylvester : Cela fait peut-être deux mois.

[11:27] Ubit.Umarov @hg.osgrid.org:80 : Oui.

[11:27] Andrew Hellershanks : Je pensais l'avoir fait, mais je vais devoir regarder à nouveau. Je dois regarder le code sur une autre machine pour me rappeler quel fichier contient les routines qui font le contrôle d'utilisation.

[11:28] Vincent Sylvester : Essaie le dernier master dev pour voir les résultats que tu obtiens avec ça, ça peut être déjà corrigé, sinon, yay plus de corrections sur le chemin

[11:28] Andrew Hellershanks : Vincent, le problème est déjà résolu depuis la 0.9.2.1, il n'est donc pas nécessaire que je vérifie le master.

Script : llSetPrimitiveParams avec PRIM_POINT_LIGHT

[11:29] Andrew Hellershanks : C'est l'heure des questions-réponses. :) Jagga, tu as quelques questions.

[11:29] Jagga Meredith : Je fais une zone de cours sur Aviworlds. Je fais un tutoriel sur le scripting.

[11:30] Selby.Evans @grid.kitely.com:8002 est entré dans la distance de dessin (25,44 m).

[11:30] Selby.Evans @grid.kitely.com:8002 est entré dans la région (25.44 m).

[11:30] Jagga Meredith : Si cela vous intéresse de jeter un coup d'œil, voici l'olandmark

[11:30] Selby.Evans @grid.kitely.com:8002 est entré dans la zone de chat (10.81 m).

[11:30] Jagga Meredith : deux problèmes à résoudre.

[11:30] Ubit Umarov : bienvenue selby.Evans

[11:30] Selby.Evans @grid.kitely.com:8002 : bonjour à tous.

Problèmes avec les paramètres

[11:30] Jagga Meredith:

   requestid = llRequestInventoryData( llGetInventoryName( INVENTORY_LANDMARK, 0 ) );
   dataserver(key id, string data)
   {
       if (id == requestid)
       {    llSay(0,(data);

[09:57] dataserver demo 1: LOOKING UP Orientation

[09:57] dataserver demo 1: <122.368202, 1316115418448010.000000, 30.213690>

[11:30] Andrew Hellershanks: Bonjour, Selby.

[11:31] Jagga Meredith murmure : la deuxième valeur est bancale.

[11:31] Andrew Hellershanks : C'est certainement le cas.

[11:31] Jagga Meredith : Orientation de l'île, Orientation de l'île (122, 136, 30)

[11:32] Jagga Meredith : aussi...

11:32] Jagga Meredith:

 {// [integer boolean,vector color,float intensity,float radius,float falloff]
   llSetPrimitiveParams([PRIM_POINT_LIGHT, toggle, colour, intensity, size, falloff]);

[11:32] Jagga Meredith : la taille ne semble pas avoir d'effet.

[11:33] Andrew Hellershanks pense que quelqu'un joue avec les paramètres de windlight.

[11:33] Andrew Hellershanks : Jagga, as-tu déposé une mantis pour ce premier problème ?

[11:33] Jagga Meredith : non, il y a une prim en face de vous.

[11:33] Jagga Meredith : non.

[11:33] Jagga Meredith : Je viens de le découvrir.

[11:35] Andrew Hellershanks : L'autre question est de savoir quelle version du code Aviworlds utilise. Il est possible qu'ils aient modifié quelque chose qui a entraîné cette erreur. Il devrait être assez facile de tester le comportement dans le master.

[11:35] Jagga Meredith : j'ai essayé ici.

[11:35] Jagga Meredith : même problème.

[11:35] Andrew Hellershanks : ok, bon à savoir.

[11:35] Ubit Umarov : où est le point prim ?

[11:36] Jagga Meredith : dans une sphère.

[11:36] Ubit Umarov : Je veux dire ici.

[11:36] Ubit Umarov : je suis trop paresseux pour faire mon propre test :p

[11:37] Andrew Hellershanks : hehe

[11:37] Ubit Umarov : je l'aime bien.

[11:37] Jagga Meredith : je te l'ai donné.

[11:37] Jagga Meredith : ou bien tu peux t'en procurer un exemplaire.

[11:37] Ubit Umarov : ou obtenir des pouvoirs divins

[11:37] Jagga Meredith : heh

[11:38] Jagga Meredith : tu dois être propriétaire pour que le menu fonctionne.

[11:38] Vincent.Sylvester @hg.zetaworlds.com:8002 : Le dataserver affiche deux réponses comme ça, quel est exactement le problème ?

[11:38] Jagga Meredith : c'est une démonstration de l'utilisation de la fonction.

[11:39] Jagga Meredith : le paramètre size ne semble rien faire.

[11:39] Jagga Meredith : ou je l'utilise mal.

[11:39] Ubit Umarov : float big = 75.0 ;

[11:39] Ubit Umarov : max est 20

[11:39] Jagga Meredith : ah

[11:39] Ubit Umarov : https://wiki.secondlife.com/wiki/PRIM_POINT_LIGHT

[11:40] Jagga Meredith : merci.

[11:40] Ubit Umarov : float small = 30.0 ;

[11:40] Jagga Meredith : ça va le faire.

[11:40] Ubit Umarov : aussi faux

[11:41] Ubit Umarov : maintenant je vois 15 sur big

[11:41] Ubit Umarov : oups c'est parti lol

[11:41] Jagga Meredith : je vais le corriger.

[11:42] Jagga Meredith : Erreur RTFM

[11:42] Ubit Umarov : mais c'était le problème.

[11:42] Ubit Umarov : valeurs hors limites

[11:42] Ubit Umarov : non le lm

[11:42] Ubit Umarov : pas sûr qu'on puisse le lire comme ça.

[11:42] Ubit Umarov : mais qui sait :)

Documentation LSL et OSSL

[11:42] Jagga Meredith : c'est ce que dit le Wiki, mais le Wiki est horriblement dépassé et seuls les Linden peuvent le mettre à jour apparemment.

[11:43] Jagga Meredith : avons-nous notre propre wiki ?

[11:43] Ubit Umarov : seulement avec ossl.

[11:43] Kayaker Magic : Quelqu'un a une copie de l'ancien wiki de LSL.

[11:43] Andrew Hellershanks : Jagga, oui mais pas pour des informations sur les fonctions de LSL autres que celles qui ont été implémentées.

[11:43] Jagga Meredith : ok.

[11:43] Kayaker Magic : Donc nous aurons quelque chose quand LL supprimera les leurs.

[11:43] Jagga Meredith : oui.

[11:43] Ubit Umarov : Digi en a un.

[11:44] Ubit Umarov : le vieux wiki de Sl.

[11:44] Ubit Umarov : une copie de celui-ci

[11:44] Andrew Hellershanks : Il y avait un autre wiki sur les fonctions LSL autre que celui de LL mais je ne sais pas s'il existe encore.

[11:44] Kayaker Magic : Oui, il n'est plus à jour mais c'est mieux que rien.

[11:44] Jagga Meredith : beaucoup d'exemples douteux, orthographe/grammaire, trucs cassés.

[11:45] Ubit Umarov: http://opensimulator.org/wiki/Scripting_Documentation

[11:45] Ubit Umarov : le nôtre avec ossl

[11:46] Ubit Umarov: http://opensimulator.org/wiki/OSSL_Implemented

[11:46] Jagga Meredith : yup - on l'utilise beaucoup.

[11:46] Ubit Umarov: http://opensimulator.org/wiki/YEngine

[11:46] Vincent.Sylvester @hg.zetaworlds.com:8002 : La première réponse de dataserver est l'événement réel qui a été déclenché, la seconde est les données qui ont été retournées.

[11:47] Andrew Hellershanks: bbiba

[11:47] Objet : Script en cours d'exécution

[11:48] Vincent.Sylvester @hg.zetaworlds.com:8002 : Ou quelle est la question sur le code du dataserver ?

[11:48] Objet : Script en cours d'exécution

Deuxième question : deuxième valeur bancale

[11:49] Jagga Meredith : pourquoi la deuxième valeur est bancale ?

[11:49] Vincent.Sylvester @hg.zetaworlds.com:8002 : Parce que c'est la coordonnée totale de la région où on se trouve.

[11:49] Jagga Meredith : Orientation Island, Orientation Island (122, 136, 30)

[11:49] Objet : Script en cours d'exécution

[11:49] Object: <18446744073709400000.000000, 11437119952138600.000000, 37.792831>

[11:50] Jagga Meredith: [09:57] dataserver demo 1: <122.368202, 1316115418448010.000000, 30.213690>

[11:50] Vincent.Sylvester @hg.zetaworlds.com:8002 : Le vecteur de région est celui de cette même région.

[11:50] Ubit Umarov : ouais, de belles valeurs lol

[11:50] Andrew Hellershanks : Je suis de retour.

[11:50] Kayaker Magic: RegionCorner+region locale ?

[11:50] Kayaker Magic: Regioncorner*256+region locale ?

[11:50] Ubit Umarov : je ne me souviens pas de ce qu'ils utilisent.

[11:50] Vincent.Sylvester @hg.zetaworlds.com:8002 : La description du vecteur retourné dans l'événement dataserver ci-dessus implique que la valeur est une coordonnée de région ; elle représente en fait la distance en mètres de l'emplacement du point de repère par rapport à <0,0,0> dans la région dans laquelle le script s'exécute. Pour un point de repère pointant vers un emplacement dans la région actuelle, c'est la même chose qu'une coordonnée de région ; cependant, lorsqu'il est utilisé avec un point de repère pointant vers une région différente, les valeurs x et y du vecteur peuvent être assez grandes (et/ou négatives). Le vecteur peut être utilisé pour calculer une coordonnée globale (comme ci-dessus) ou la distance d'un point de repère par rapport à l'objet contenant le script dans la région actuelle ou sur toute la grille. [11:50] Ubit Umarov : il est possible que ce soit global, oui.

[11:51] Vincent.Sylvester @hg.zetaworlds.com:8002 : Ne pas oublier la section avertissements  :)

[11:51] Ubit Umarov : oui, cela ressemble à des coordonnées globales.

[11:51] Andrew Hellershanks : C'est ce que je pensais aussi.

[11:52] Ubit Umarov: Pour lbsa x est 10402

[11:52] Ubit Umarov : nahh ne correspondra pas lol

[11:52] Vincent.Sylvester @hg.zetaworlds.com:8002 : Il s'agit d'une valeur relative entre le point de départ et le point d'arrivée, et non de la coordonnée de la région globale, donc cela vous indique simplement la distance à l'autre région en x et y.

[11:52] Vincent.Sylvester @hg.zetaworlds.com:8002 : Vous devez récupérer les coins de la région pour calculer les coordonnées globales.

[11:53] Vincent.Sylvester @hg.zetaworlds.com:8002 : région actuelle + coordonnées du point de repère (landmark)

[11:53] Vincent.Sylvester @hg.zetaworlds.com:8002 : Il y a un script d'exemple sur le wiki LSL pour cela.

[11:53] Jagga Meredith : ok

[11:53] Ubit Umarov: c'est 2,667,520 m

[11:54] Jagga Meredith : toujours étrange que peu importe où je l'essaie, c'est toujours la deuxième valeur qui est bizarre.

[11:54] Jagga Meredith : les deux autres valeurs sont correctes.

[11:55] Jagga Meredith : je vais essayer de faire fonctionner Visual Studio et de le trouver par moi-même.

[11:55] Ubit Umarov:

     if(lm != null)
        {
           double rx = (lm.RegionHandle >> 32) - World.RegionInfo.WorldLocX + (double)lm.Position.X;
           double ry = lm.RegionHandle - World.RegionInfo.WorldLocY + (double)lm.Position.Y;
           LSL_Vector region = new LSL_Vector(rx, ry, lm.Position.Z);
           reply = region.ToString();

[11:56] Ubit Umarov: errr

[11:56] Andrew Hellershanks : Pourquoi ce code ne fait pas le >> 32 bit pour ry ?

[11:56] Ubit Umarov : parce qu'il n'est pas censé le faire :p

[11:56] Jagga Meredith : *gloussements*

[11:56] Andrew Hellershanks : alors pourquoi le fait-il pour rx ?

[11:57] Ubit Umarov : parce qu'il est censé le faire.

[11:57] Ubit Umarov : :p

[11:57] Kayaker Magic : Précise.

[11:57] Andrew Hellershanks : Cela ne semble pas avoir de sens qu'il produise des types de valeurs complètement différents pour X et Y dans le cadre d'un seul résultat.

Découverte d'un bogue à tester

[11:57] Ubit Umarov : mais je vois un bug là.

[11:58] Jagga Meredith : uh oh

[11:58] Ubit Umarov:

    double rx = (lm.RegionHandle >> 32) - World.RegionInfo.WorldLocX + (double)lm.Position.X;
    double ry = (lm.RegionHandle & 0xffffffff) - World.RegionInfo.WorldLocY + (double)lm.Position.Y;
    SL_Vector region = new LSL_Vector(rx, ry, lm.Position.Z);

[11:58] Ubit Umarov : c'est mieux comme ça.

[11:58] Ubit Umarov : je testerai plus tard

[11:58] Jagga Meredith : ok

[11:58] Objet : Script en cours d'exécution

[11:58] Object: <18446744073709400000.000000, 11437119952138600.000000, 37.792831>

[11:59] Ubit Umarov : bien sur lbsa X est aussi étrange

[11:59] Ubit Umarov : très :)

[11:59] Ubit Umarov: nad sorry elaborate what? [12:00] Andrew Hellershanks: We are at the top of the hour. Any last minute topics for today? [12:00] Ubit Umarov: a region handle is a 64bit thing that has 2 32bit things encoded [12:00] Jagga Meredith: I'm done [12:00] Kayaker Magic: Elaborate why the formula for x should be different for y. All you said was "supposed to be" [12:00] Andrew Hellershanks: Jagga, ok. [12:00] Ubit Umarov: X on the high 32 bits [12:00] Ubit Umarov: ok? [12:01] Andrew Hellershanks: Kayaker, I know. I don't like the apparent inconsistency issue. [12:01] Vincent.Sylvester @hg.zetaworlds.com:8002: 12314530233958400 That's a region handle [12:01] Kayaker Magic: Internally it was stored as a 64bit integer? I've never heard of that data type in OpenSim [12:01] Vincent.Sylvester @hg.zetaworlds.com:8002: The true location of that region handle is: 2867200 2867200 [12:01] Ubit Umarov: it is also called a long [12:02] Kayaker Magic: I mean I never heard of co-ords stored as packed 64 bit integers. [12:02] Ubit Umarov: since ever.. [12:02] Ubit Umarov: region handle [12:02] Andrew Hellershanks: Kayaker, region handles. [12:02] Ubit Umarov: region/viewer thing [12:03] Ubit Umarov: but this code is confusing [12:03] Ubit Umarov: seems to return a distance from current region corner [12:03] Kayaker Magic: OH, I've seen LL do weird bit packing sh*t before, that explains everything. [12:04] Vincent.Sylvester @hg.zetaworlds.com:8002: That's what it is supposed to return [12:04] Ubit Umarov: selel (lm.RegionHandle & 0xfffffff) seems missing there [12:04] Vincent.Sylvester @hg.zetaworlds.com:8002: It's a true offset from the region you are on to the position of the landmark on the other region [12:05] Ubit Umarov: Landmark (vector) The vector data received by dataserver is an offset from <0,0,0> of the current region. To obtain the global position of a landmark add llGetRegionCorner(). [12:05] Vincent.Sylvester @hg.zetaworlds.com:8002: If you applied it globally while standing at <0,0,0> on the current region you'd end up on the exact coordinate [12:05] Ubit Umarov: yeah it is the lm position in current region local coords [12:05] Ubit Umarov: can be < 0 etc [12:05] Andrew Hellershanks: If the code is unpacking a region handle then the mask does appear to be missing from ry. [12:06] Ubit Umarov: y just told that twice :p [12:06] Andrew Hellershanks: i was agreeing with you. [12:06] Vincent.Sylvester @hg.zetaworlds.com:8002: Today we all overheating lol [12:07] Andrew Hellershanks: Vincent, apparently so. [12:07] Ubit Umarov: :) [12:08] Andrew Hellershanks: Anything else for today? I need to go shortly. My cat has been after me for play time (or attention) for the last 15 or so minutes. [12:08] Ubit Umarov: old 0.8 had other form of the bug lol [12:08] Vincent.Sylvester @hg.zetaworlds.com:8002: Could probably build a ossl function for landmark data to return a list of the various parameters of the lm, not sure what for, but it has a bunch more parameters as well [12:09] Jagga Meredith: yes please [12:09] Ubit Umarov: public class AssetLandmark : AssetBase

   {
       public Vector3 Position;
       public ulong RegionHandle;
       public UUID RegionID;
       public string Gatekeeper = string.Empty;
       public int Version;

[12:09] Ubit Umarov: not many :) [12:10] Vincent.Sylvester @hg.zetaworlds.com:8002: Actual Position might be useful and uuid I suppose [12:10] Jagga Meredith: yup [12:10] Ubit Umarov: ok i know why the big number [12:10] Ubit Umarov: i think [12:11] Ubit Umarov: its a negative thing lol [12:11] Jagga Meredith: was wondering about that [12:12] Ubit Umarov: double rx = (double)(lm.RegionHandle >> 32) - (double)World.RegionInfo.WorldLocX + (double)lm.Position.X;

                               double ry = (double)(lm.RegionHandle & 0xffffffff) - (double)World.RegionInfo.WorldLocY + (double)lm.Position.Y;

[12:12] Ubit Umarov: sould do it [12:12] Andrew Hellershanks: Is that pulling apart of a region handle packing going to work properly with a negative value? [12:12] Kayaker Magic: Ah, when you hack out the lower half, you have to sign extend it. [12:12] Jagga Meredith: kewl [12:12] Ubit Umarov: nopes [12:13] Ubit Umarov: handler and worldloc are uints [12:13] Ubit Umarov: well ulong and uint [12:13] Jagga Meredith: but are you trying to stuff something bigger in them? [12:13] Ubit Umarov: no [12:13] Kayaker Magic: How about converting the regionHandle to a 32bit int before converting it to double? [12:14] Ubit Umarov: it is there [12:14] Ubit Umarov: fun compliler tells the (double) is not needed :) [12:15] Andrew Hellershanks: :) [12:15] Ubit Umarov: well ill test this and commit [12:15] Kayaker Magic: Good catch Jagga! Thanks for bringing this to Ubit's attentioin! [12:15] Andrew Hellershanks: Always nice seeing a bug report followed by a quick fix. [12:16] Jagga Meredith: ty [12:17] Andrew Hellershanks: With that I'll wrap up todays meeting. I think my cat has already given up on me but I'll go see her anyway to see if she still wants to play. [12:17] Ubit Umarov: better that the lm is for a region n same grid also :P [12:17] Andrew Hellershanks: Thank you all for coming. See you again next week. [12:17] Selby.Evans @grid.kitely.com:8002: bye all [12:17] Andrew Hellershanks: Bye, Selby. [12:17] Ubit Umarov: cya