diff options
Diffstat (limited to 'scripts')
-rwxr-xr-x | scripts/messages/message_template.msg | 55 | ||||
-rwxr-xr-x | scripts/messages/message_template.msg.sha1 | 2 | ||||
-rwxr-xr-x | scripts/packages-formatter.py | 2 | ||||
-rwxr-xr-x | scripts/perf/frame_profile | 43 | ||||
-rw-r--r-- | scripts/perf/profile_cmp.py | 5 |
5 files changed, 94 insertions, 13 deletions
diff --git a/scripts/messages/message_template.msg b/scripts/messages/message_template.msg index 1450c111c2..f167df8636 100755 --- a/scripts/messages/message_template.msg +++ b/scripts/messages/message_template.msg @@ -8,7 +8,7 @@ version 2.0 // for each type is listed below: // Low: 430 // Medium: 18 -// High: 30 +// High: 32 // PLEASE UPDATE THIS WHEN YOU ADD A NEW MESSAGE! @@ -4370,14 +4370,18 @@ version 2.0 // ScriptTeleportRequest // reliable { - ScriptTeleportRequest Low 195 Trusted Unencoded - { - Data Single - { ObjectName Variable 1 } - { SimName Variable 1 } - { SimPosition LLVector3 } - { LookAt LLVector3 } - } + ScriptTeleportRequest Low 195 Trusted Unencoded + { + Data Single + { ObjectName Variable 1 } + { SimName Variable 1 } + { SimPosition LLVector3 } + { LookAt LLVector3 } + } + { + Options Variable + { Flags U32 } + } } @@ -9133,3 +9137,36 @@ version 2.0 } } +// viewer->sim +// GameControlInput - input from game controller +// This message is split into two Variable chunks: +// +// AxisData = list of {Index:Value} pairs. Value is an S16 that maps to range [-1, 1]. +// ButtonData = list of indices of pressed buttons +// +// Any Axis ommitted from the message is assumed by the receiving Simulator to be unchanged +// from its last message. +// +// Any Button ommitted from the message is assumed by the receiving Simulator to be unpressed. +// +// Since GameControlInput messages are sent unreliably: whenenver the changes stop the last +// message will be resent a few times in the hopes the server finally receives it. +// +{ + GameControlInput High 32 NotTrusted Zerocoded + { + AgentData Single + { AgentID LLUUID } + { SessionID LLUUID } + } + { + AxisData Variable + { Index U8 } + { Value S16 } + } + { + ButtonData Variable + { Data Variable 1 } + } +} + diff --git a/scripts/messages/message_template.msg.sha1 b/scripts/messages/message_template.msg.sha1 index efa5f3cf48..eb436d0627 100755 --- a/scripts/messages/message_template.msg.sha1 +++ b/scripts/messages/message_template.msg.sha1 @@ -1 +1 @@ -d7915d67467e59287857630bd89bf9529d065199
\ No newline at end of file +b98fc0af5fa88601f5afa4f3c83f08188316e9a8
\ No newline at end of file diff --git a/scripts/packages-formatter.py b/scripts/packages-formatter.py index 4449111e46..5d31702e76 100755 --- a/scripts/packages-formatter.py +++ b/scripts/packages-formatter.py @@ -42,7 +42,7 @@ _autobuild_env=os.environ.copy() # Coerce stdout encoding to utf-8 as cygwin's will be detected as cp1252 otherwise. _autobuild_env["PYTHONIOENCODING"] = "utf-8" -pkg_line=re.compile('^([\w-]+):\s+(.*)$') +pkg_line=re.compile(r'^([\w-]+):\s+(.*)$') def autobuild(*args): """ diff --git a/scripts/perf/frame_profile b/scripts/perf/frame_profile new file mode 100755 index 0000000000..84eb1166d5 --- /dev/null +++ b/scripts/perf/frame_profile @@ -0,0 +1,43 @@ +#!/usr/bin/env bash + +exe="$1" + +if [[ -z "$exe" ]] +then + # this script lives in scripts/perf + base="$(dirname "$0")/../.." + case $OSTYPE in + darwin*) + # Don't assume a build type (e.g. RelWithDebInfo). Collect all of + # both, and pick the most recent build. + exe="$(ls -t "$base"/build-darwin-x86_64/newview/*/"Second Life"*.app/Contents/MacOS/"Second Life"* | head -1)" + ;; + + cygwin) + exe="$(ls -t "$base"/build-*/newview/*/secondlife-bin.exe | head -1)" + ;; + + linux-gnu) + exe="$(ls -t "$base"/build-linux-*/newview/packaged/secondlife | head -1)" + ;; + + *) + stderr "Unknown platform $OSTYPE" + exit 1 + ;; + esac +fi + +if [ -z "$exe" ] +then stderr "No viewer package build found" + exit 1 +fi + +# If a Mac user specified the .app bundle itself, dig in for the executable. +if [[ "$OSTYPE" == darwin* && -d "$exe" && "$exe" == *.app ]] +then + exe="$(ls "$exe/Contents/MacOS/Second Life "*)" +fi + +"$exe" --autologin --luafile 'frame_profile_quit.lua 228 232 26' \ + http://maps.secondlife.com/secondlife/Bug%20Island/220/224/27 diff --git a/scripts/perf/profile_cmp.py b/scripts/perf/profile_cmp.py index 9dbfa3145b..34281b8d01 100644 --- a/scripts/perf/profile_cmp.py +++ b/scripts/perf/profile_cmp.py @@ -60,8 +60,9 @@ def compare(baseline, test, epsilon=DEFAULT_EPSILON): if abs(delta) > epsilon: deltas.append((delta, shader, bthruput, tthruput)) - # descending order of performance gain - deltas.sort(reverse=True) + # ascending order of performance gain: put the most egregious performance + # hits at the top of the list + deltas.sort() print(f'{len(deltas)} shaders showed nontrivial performance differences ' '(millon samples/sec):') namelen = max(len(s[1]) for s in deltas) if deltas else 0 |