[Opensim-users] Latency in LSL scripts with touch start and llLoadUrl
Haravikk
opensim at haravikk.me
Sun Mar 10 18:04:20 UTC 2019
> On 10 Mar 2019, at 14:18, Asaff Belfer <asaffb at gmail.com> wrote:
>
> Hello,
>
> Lately we tried a script and found that it reacts pretty slowly and the
> delay somewhat increases in the second and third clicks.
>
> The script is a simple script that sends a url to the user after he clicks
> on a scripted prim.
>
> Here is the script:
>
> default
> {
> state_entry()
> {
>
> }
>
> touch_start(integer num_detected)
> {
> llOwnerSay("URL = " + "http://google.com");
> llLoadURL(llGetOwner(),"","http://google.com");
> llOwnerSay("URL = " + "http://google.com");
> }
> }
>
> May I ask you to try this script in your grids and click the prim a few
> times? Do you get the dialog after 6-8 seconds from the click too?
>
> Thanks,
> Asaff
Could you try adding some kind of timing functions to your script? This might help diagnose the problem and determine if it's the scripting system or some kind of network delay or such instead.
For example:
default {
state_entry() {
llOwnerSay("Time now is " + llGetTimestamp());
}
touch_start(integer num_detected) {
llOwnerSay(llGetTimestamp() + ": URL = " + "http://google.com");
llLoadURL(llGetOwner(),"","http://google.com");
llOwnerSay(llGetTimestamp() + ": URL = " + "http://google.com");
}
}
This will at least let you see when the owner say messages were created, vs. when you received them (which is what your viewer shows), I also put a message in the state entry so when you reset the script you can see what time it reports compared to your current time, which might help in figuring out what the delay might be; if you touch the object right after resetting the script, then the first message the touch event sends should give you an idea of how long it took for the touch to register.
I'm afraid I've no idea what the cause might be, but this might help to gather more information.
More information about the Opensim-users
mailing list