Age | Commit message (Collapse) | Author |
|
|
|
Trim redundant output from test_setdtor.lua.
|
|
Clear unused metrics
|
|
`setdtor('description', object, function)` returns a proxy userdata object
referencing object and function. When the proxy is garbage-collected, or at
the end of the script, its destructor calls `function(object)`.
The original object may be retrieved as `proxy._target`, e.g. to pass it to
the `table` library. The proxy also has a metatable with metamethods
supporting arithmetic operations, string concatenation, length and table
indexing. For other operations, retrieve `proxy._target`. (But don't assign to
`proxy._target`. It will appear to work, in that subsequent references to
`proxy._target` will retrieve the replacement object -- however, the
destructor will still call `function(original object)`.)
Fix bugs in `lua_setfieldv()`, `lua_rawgetfield()` and `lua_rawsetfield()`.
Add C++ functions `lua_destroyuserdata()` to explicitly destroy a
`lua_emplace<T>()` userdata object, plus `lua_destroybounduserdata()`. The
latter can bind such a userdata object as an upvalue to pass to `LL.atexit()`.
Make `LL.help()` and `LL.leaphelp()` help text include the `LL.` prefix.
|
|
After instrumenting nametags some more, really UI rendering performance improvements should just focus on LLFontGL::render
|
|
|
|
|
|
Allow UI to have lazily-loaded submodules.
|
|
|
|
|
|
Also attempt to fix some occasional bad texture memory tracking.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
following promotion of secondlife/viewer #1829: 2024.06 Atlasaurus
|
|
|
|
|
|
|
|
Adds gather4 support under GLSL 4.0+
|
|
|
|
In particular, where the raw leap.request().response call would return
{OK_okcancelbuttons=true}, just return the string 'OK' or 'Cancel'.
Update existing consumer scripts.
|
|
|
|
This way encourages "UI = require 'UI'; UI.Floater"
instead of just "Floater = require 'Floater'".
Moreover, now we don't need UI to maintain a list of allowed submodules;
that's effected by membership in the subdirectory.
|
|
- Hold onto unreferenced textures for 30 seconds.
- Don't downres unless memory is low
- Downres when viewer is backgrounded.
|
|
Equip UI with an __index metamethod. When someone references an unknown
key/field in UI, require() that module and cache it for future reference.
Add util.setmetamethods() as a way to find or create a metatable on a
specified table containing specified metamethods.
Exercise the new functionality by referencing UI.popup in test_popup.lua.
|
|
probe generation passes (#2405)
* Add dedicated sun probe shader and remove SSAO and shadow smoothing from probe generation passes (#2398)
* Fix usage of removed sunLightNoFragCoordV in shader manager
|
|
viewer#2363 Region Day Offset error with Time of Day
|
|
|
|
release/2024.08-DeltaFPS
|
|
|
|
displayed consistently
|
|
* secondlife/viewer#2349: Blinn-Phong avatar/animesh rendering optimization/correctness pass
* secondlife/viewer#2349: General avatar/animesh rendering optimization/correctness pass
|
|
release/2024.08-DeltaFPS
# Conflicts:
# indra/newview/featuretable_mac.txt
|
|
(#2369)
|
|
|
|
calling another agent back too soon
|
|
|
|
|
|
also fixed mac High entry for RenderMirrors that got missed
|
|
|
|
|
|
|
|
* Fix alloc_tex_image to account for more missing texture memory
Change alloc_tex_image calls to pass internal format to properly account for used image type
* Fix scaleDown passing primary format in place of internal format to glTexImage2D
* Make texture debug view and texture bias calculation consistent and remove double accounting for render target textures
|
|
|
|
Specifically, defend against a callback that runs so long it suspends at a
point after the next timer tick.
|
|
Use a static unordered_map to allow a function receiving (lua_State* L) to
look up the LuaState instance managing that lua_State. We've thought about
this from time to time already. LuaState's constructor creates the map entry;
its destructor removes it; the new static getParent(lua_State* L) method
performs the lookup.
Migrate lluau::set_interrupts_counter() and check_interrupts_counter() into
LuaState member functions. Add a new mInterrupts counter for them.
Importantly, LuaState::check_interrupts_counter(), which is indirectly called
by a lua_callbacks().interrupt function, no longer performs any Lua stack
operations. Empirically, it seems the Lua engine is capable of interrupting
itself at a moment when re-entry confuses it.
Change previous lluau::set_interrupts_counter(L, 0) calls to
LuaState::getParent(L).set_interrupts_counter(0).
Also add LuaStackDelta class, and a lua_checkdelta() helper macro, to verify
that the Lua data stack depth on exit from a block differs from the depth on
entry by exactly the expected amount. Sprinkle lua_checkdelta() macros in
likely places.
|