Difference between revisions of "LlGetRegionTimeDilation"

From Second Life Wiki
Jump to navigation Jump to search
m (<lsl> tag to <source>)
 
(19 intermediate revisions by 8 users not shown)
Line 1: Line 1:
{{LSLFunctionAll
{{LSL_Function
|func_id=227
|func_id=227|func_sleep=0.0|func_energy=10.0
|func_sleep=0.0
|func_energy=0.0
|func=llGetRegionTimeDilation
|func=llGetRegionTimeDilation
|return_type=float
|return_type=float
|func_desc=returns the current time dilation as a float between 0 and 1
|func_desc
|return_text
|return_text=that is the current time dilation, the value range is {{Interval|gte=0.0|lte=1.0|center=time dilation}}, 0.0 (full dilation) and 1.0 (no dilation).{{Interval/Footnote}}
|spec
|func_footnote=It is used as the ratio between the change of script time to that of real world time.
|caveats
|spec=Time dilation is a method the server uses to cope with simulator lag. Physics and script generated lag can result in time dilation. Time dilation slows script time & execution. When time dilation is zero script execution halts.
|examples
 
=====Affects=====
*[[llGetTime]] & [[llGetAndResetTime]]
*Intervals of [[timer]] & [[sensor]] events queued as a result of [[llSetTimerEvent]] & [[llSensorRepeat]].
|caveats=*[http://community.secondlife.com/t5/Second-Life-Server/Region-Idling-FAQ/m-p/1535497 Region idling] lowers a region's framerate when no avatars are currently on or looking into the region. Scripts measuring time dilation with llGetRegionTimeDilation may report significant time dilation if the region is [[llGetEnv|idle]].
|constants
|examples=<source lang="lsl2">
// The beginnings of a region-info script.
string region;
string sim;
 
default
{
    state_entry()
    {
        llSetTimerEvent(1.0);
    }
    timer()
    {
        string here = llGetRegionName();
        if(region != here)
        {
            sim = llGetSimulatorHostname();
            region = here;
        }
        llSetText(
                "  REGION NAME : " + region +
              "\n  SIM HOSTNAME : " + sim +
              "\n TIME DILATION : " + (string)llGetRegionTimeDilation() +
              "\n    REGION FPS : " + (string)llGetRegionFPS(),
            <0,1,0>, 1.0);
    }
}
</source>
|helpers
|helpers
|related
|also_functions=
|also
{{LSL DefineRow||[[llGetRegionFPS]]|}}
{{LSL DefineRow||[[llGetTime]]|}}
{{LSL DefineRow||[[llGetAndResetTime]]|}}
|also_events
|also_tests
|also_articles
|notes
|notes
|cat1=Time
|cat2=Region
|cat3
|cat4
}}
}}
[[Category:LSL_Functions]][[Category:LSL_Stub]]

Latest revision as of 02:48, 22 January 2015

Summary

Function: float llGetRegionTimeDilation( );

Returns a float that is the current time dilation, the value range is [0.0, 1.0], 0.0 (full dilation) and 1.0 (no dilation).[1]

It is used as the ratio between the change of script time to that of real world time.

Specification

Time dilation is a method the server uses to cope with simulator lag. Physics and script generated lag can result in time dilation. Time dilation slows script time & execution. When time dilation is zero script execution halts.

Affects

Caveats

  • Region idling lowers a region's framerate when no avatars are currently on or looking into the region. Scripts measuring time dilation with llGetRegionTimeDilation may report significant time dilation if the region is idle.
All Issues ~ Search JIRA for related Bugs

Examples

// The beginnings of a region-info script.
string region;
string sim;

default
{
    state_entry()
    {
        llSetTimerEvent(1.0);
    }
    timer()
    {
        string here = llGetRegionName();
        if(region != here)
        {
            sim = llGetSimulatorHostname();
            region = here;
        }
        llSetText(
                "   REGION NAME : " + region + 
              "\n  SIM HOSTNAME : " + sim + 
              "\n TIME DILATION : " + (string)llGetRegionTimeDilation() +
              "\n    REGION FPS : " + (string)llGetRegionFPS(),
            <0,1,0>, 1.0);
    }
}

See Also

Functions

•  llGetRegionFPS
•  llGetTime
•  llGetAndResetTime

Deep Notes

Search JIRA for related Issues

Footnotes

  1. ^ The ranges in this article are written in Interval Notation.

Signature

function float llGetRegionTimeDilation();