summaryrefslogtreecommitdiff
path: root/indra/newview
AgeCommit message (Collapse)Author
2024-02-08Add required helptext parameter to lua_function() macro.Nat Goodspeed
Extend the LuaFunction::Registry map to store helptext as well as the function pointer. Add help text to every existing lua_function() invocation.
2024-02-08Make the UI conditional.Jonathan "Geenz" Goodman
2024-02-08SL-20363 Add Advanced option 'Debug Unicode'Alexander Gavriliuk
2024-02-07Fix tests broken by switching from Lua 5.4 to Luau.Nat Goodspeed
Add a new test<1>() that tests returning values from a Lua chunk using LLLUAmanager::waitScriptLine(). This exercises lua_tollsd() without yet involving LLEventPump machinery. For that purpose, extract from test<2>() the sequence of (description, expression, LLSD expected) triples into a static C array. The new test<1>() returns each such expression as a result; test<2>() posts each such expression to a test LLEventPump. test<2>() now uses waitScriptLine() instead of pumping the coroutine scheduler a few times and hoping. The pump-and-hope tactic worked before, but no longer does. waitScriptLine() is more robust anyway. Move the former test<1>() to test<3>() because it exercises still more machinery, specifically listen_events() and await_event(). Because this test involves a handshake with C++ code, use startScriptLine() to launch the Lua coroutine while providing a definite way to wait for completion later. Again, startScriptLine() followed by get() on the returned future is more robust than the previous pump-and-hope code. Similarly, the former test<3>(), now renamed test<4>(), uses startScriptLine() and Future::get() instead of pump-and-hope.
2024-02-07Add LLLUAmanager::startScriptFile(), startScriptLine() functions.Nat Goodspeed
Break out for LLLUAmanager consumers the promise/future semantics of waitScriptFile() and waitScriptLine(). startScriptMumble() uses runScriptMumble() to launch a coroutine to run the specified Lua script or chunk, providing an internal adapter callback to set a promise on completion. It then returns to its caller the future obtained from that promise. This allows a caller to call startScriptMumble(), run in parallel with the Lua coroutine for a while and then call get() on the returned future to wait for results. waitScriptMumble() is then trivially implemented using startScriptMumble(). Fix runScriptLine()'s logic to abbreviate the passed Lua chunk for use as the description. We were erroneously assigning back through a string_view of the parameter, which overwrote a temporary string in the argument list. With Lua 5.4, listen_events() tried to discover the main "thread" (Lua coroutine) associated with the current lua_State so we could call async callbacks on that thread. Luau doesn't seem to provide that feature, so run callbacks on whichever thread calls listen_events(). Reinstate original multi-argument lua_print_msg(), tweaked to avoid the Lua 5.4 lua_rotate() function, which is missing from Luau.
2024-02-07Merge pull request #755 from sldevel/pbr-hdr-auto-adjust-fixRunitaiLinden
Confusion between light diffuse and light color in HDR auto-adjust mode
2024-02-07Confusion between light diffuse and light color in HDR auto-adjust modeHenri Beauchamp
While the SUNLIGHT_COLOR uniform is initialized with getSunlightColor() when not auto-adjusting for HDR, it is overwritten with getSunDiffuse()*auto_adjust_factor when auto-adjusting, causing very bad lighting discrepancies in the latter mode (especially when not at midday or midnight). Let's use getSunlightColor() everywhere, shall we ?...
2024-02-07secondlife/viewer#711: Bump featuretableCosmic Linden
2024-02-07secondlife/viewer#711: Reduce PBR terrain textures at low graphics settingsCosmic Linden
2024-02-07secondlife/viewer#711: Add more options to drop textures from terrain, not ↵Cosmic Linden
yet used
2024-02-07secondlife/viewer#711: More thoroughly clamp terrain PBR detailCosmic Linden
2024-02-07Issue #56 Redirect Help>Report Bug to Canny instead of JiraAndrey Kleshchev
2024-02-07Add machinery to capture result of running a Lua script or snippet.Nat Goodspeed
Add LuaState::expr() that evaluates a Lua snippet and reports back any result (or error) left on the stack. Add LLLUAmanager::runScriptFile() and runScriptLine() overloads that accept a callback with an (int count, LLSD result) signature. The count disambiguates (error, no result, one result, array of results). Also add overloads that accept an existing LuaState instance. Also add waitScriptFile() and waitScriptLine() methods that pause the calling coroutine until the Lua script completes, and return its results. Instead of giving LuaState a description to use for all subsequent checkLua() calls, remove description from its constructor and data members. Move to expr() and checkLua() parameters: we want a description specific to each operation, rather than for the LuaState as a whole. This prepares for persistent LuaState instances. For now, the existing script_finished_fn semantics remain: the callback will be called only when the LuaState is destroyed. This may need to change as we migrate towards longer-lasting LuaState instances. Make lua_function(name) macro append suffixes to the name for both the LuaFunction subclass declaration and the instance declaration. This allows publishing a lua_function() name such as sleep(), which already has a different C++ declaration. Move the Lua sleep() entry point to a standalone lua_function(sleep), instead of a lambda in the body of runScriptFile().
2024-02-07Merge branch 'materials_featurette/mirrors' of ↵RunitaiLinden
https://github.com/secondlife/viewer into materials_featurette/mirrors
2024-02-07Merge branch 'release/materials_featurette' into materials_featurette/mirrorsRunitaiLinden
2024-02-07Merge pull request #751 from secondlife/davep/655cosmic-linden
#665 Make viewer respect MaxTextureResolution from SimulatorFeatures
2024-02-07secondlife/viewer#67: (debug) Add temporary setting to force-load PBR terrainCosmic Linden
2024-02-07#665 Make viewer respect MaxTextureResolution from SimulatorFeaturesRunitaiLinden
2024-02-07Merge branch 'materials_featurette/mirrors' into geenz/mirror-maskingJonathan "Geenz" Goodman
2024-02-06Break out lua_function.h,.cpp and lualistener.h,.cpp.Nat Goodspeed
The intention is to decentralize Luau entry points into our C++ code, permitting a given entry point to be added to the .cpp file that already deals with that class or functional area. Continuing to add every such entry point to llluamanager.cpp doesn't scale well. Extract LuaListener class from llluamanager.cpp to its own header and .cpp file. Extract from llluamanager into lua_function.h (and .cpp) declarations useful for adding a lua_function Luau entry point, e.g.: lua_register() lua_rawlen() lua_tostdstring() lua_pushstdstring() lua_tollsd() lua_pushllsd() LuaPopper lua_function() and LuaFunction class LuaState lua_what lua_stack DebugExit
2024-02-06#677 Fix for mac buildRunitaiLinden
2024-02-06#740 Make sure we evaluate if the probe is a mirror probe or not.Jonathan "Geenz" Goodman
#682 Re-enable gaussian filtering, and reduce the mirror resolution back to 1024. Also just generally clean up the code a bit.
2024-02-06#679 Add mirror update params to the volume floater.Jonathan "Geenz" Goodman
#740 Add support for FLAG_MIRROR in the viewer for mirror probes.
2024-02-05#677 Add hero probes to blinn-phong surfacesRunitaiLinden
2024-02-05#677 Add mirror clipping to rigged shadersRunitaiLinden
2024-02-05Merge branch 'DRTVWR-599-maint-Z' into release/maint-yzAndrey Lihatskiy
# Conflicts: # indra/newview/llchiclet.h
2024-02-05#677 Add clipping to trees and alpha masked blinn-phongRunitaiLinden
2024-02-02Issue #26 Support texture drop onto PBR materialsAndrey Kleshchev
2024-02-02#677 Move PBR mirror radiance mixing to reflectionProbeF so transparent PBR ↵RunitaiLinden
surfaces can be mirrors
2024-02-02#677 Fix terrain clipping and tweak hero probe mixing with radianceRunitaiLinden
2024-02-02#677 Fix clip plane glitching out at certain anglesRunitaiLinden
2024-02-01#677 Clip underwater.Jonathan "Geenz" Goodman
2024-02-01#677 More clipping fixes.Jonathan "Geenz" Goodman
2024-02-01Merge branch 'materials_featurette/mirrors' into geenz/mirror-depixelationJonathan "Geenz" Goodman
2024-02-01#684 Fix pixellation on mirrors regardless of mirror resolution.Jonathan "Geenz" Goodman
2024-02-01#677 WIP -- fix PBR and avatar mirror clipping.RunitaiLinden
2024-02-01#677 WIP -- Add clipping to alpha and pbr (not working on PBR for some reason)RunitaiLinden
2024-02-01Merge branch 'materials_featurette/mirrors' of ↵RunitaiLinden
https://github.com/secondlife/viewer into materials_featurette/mirrors
2024-02-01#677 WIP -- add mirror clipping to more shadersRunitaiLinden
2024-02-01#689 Fix for mirror stuttering.Jonathan "Geenz" Goodman
2024-02-01Merge pull request #710 from secondlife/vi-43cosmic-linden
Add PBR terrain normal gen feature flag
2024-02-01#677 Set mirror pass flag in llsettingsvoRunitaiLinden
2024-01-31#677 Some clipping WIPJonathan "Geenz" Goodman
2024-01-31secondlife/viewer-issues#43: Proof-of-concept PBR terrain normal gen feature ↵Cosmic Linden
flag. Final implementation would likely be very different.
2024-01-31secondlife/viewer-issues#43: Fix debug normals not rendering for terrainCosmic Linden
2024-01-31strip lua testing functionsMnikolenko Productengine
2024-01-31Issue #24 GLTF material disappears from object playing mediaAndrey Kleshchev
Check texture type, if media is stopped, it won't be a MEDIA_TEXTURE
2024-01-30Merge pull request #703 from secondlife/release/gltf-maint2RunitaiLinden
Release/gltf maint2
2024-01-30Issue #696 RenderResolutionDivisor no longer worksAndrey Kleshchev
resizeScreenTexture works if gResizeScreenTexture is true or render target was resized
2024-01-30BugSplat Crash #1409959 onTopLostAndrey Kleshchev
onTopLost crashed 1. It contradicts callstack, but clearPopups() definetely has an issue due to not checking the pointer prior to calling onTopLost 2. According to callstack, crash happened around ~LLFolderViewFolder and while it does call removePopup for itself, it isn't a popup, the only one in the list would be the renamer, which calls back to parent, so made sure to secure it. 3. mFlashTimer was never deleted 4. Some explicit cleanup for TopLost