# Conflicts:
#	indra/llwindow/llwindowwin32.cpp
#	indra/newview/lltextureview.cpp
master
Ansariel 2024-05-13 21:08:10 +02:00
commit cdeeadf51e
20 changed files with 344 additions and 187 deletions

View File

@ -821,18 +821,6 @@
</map>
<key>emoji_shortcodes</key>
<map>
<key>canonical_repo</key>
<string>https://github.com/secondlife/3p-emoji-shortcodes</string>
<key>copyright</key>
<string>Copyright 2017-2019 Miles Johnson.</string>
<key>description</key>
<string>Emoji shortcodes</string>
<key>license</key>
<string>MIT</string>
<key>license_file</key>
<string>LICENSES/emojibase-license.txt</string>
<key>name</key>
<string>emoji_shortcodes</string>
<key>platforms</key>
<map>
<key>darwin64</key>
@ -874,8 +862,20 @@
<string>windows64</string>
</map>
</map>
<key>license</key>
<string>MIT</string>
<key>license_file</key>
<string>LICENSES/emojibase-license.txt</string>
<key>copyright</key>
<string>Copyright 2017-2019 Miles Johnson.</string>
<key>version</key>
<string>6.1.0.579438</string>
<key>name</key>
<string>emoji_shortcodes</string>
<key>canonical_repo</key>
<string>https://github.com/secondlife/3p-emoji-shortcodes</string>
<key>description</key>
<string>Emoji shortcodes</string>
</map>
<key>expat</key>
<map>
@ -999,16 +999,6 @@
</map>
<key>freetype</key>
<map>
<key>copyright</key>
<string>Copyright 2006, 2007, 2008, 2009, 2010 by David Turner, Robert Wilhelm, and Werner Lemberg.</string>
<key>description</key>
<string>Font rendering library</string>
<key>license</key>
<string>FreeType</string>
<key>license_file</key>
<string>LICENSES/freetype.txt</string>
<key>name</key>
<string>freetype</string>
<key>platforms</key>
<map>
<key>darwin64</key>
@ -1054,8 +1044,18 @@
<string>windows64</string>
</map>
</map>
<key>license</key>
<string>FreeType</string>
<key>license_file</key>
<string>LICENSES/freetype.txt</string>
<key>copyright</key>
<string>Copyright 2006, 2007, 2008, 2009, 2010 by David Turner, Robert Wilhelm, and Werner Lemberg.</string>
<key>version</key>
<string>2.12.1.557becd</string>
<key>name</key>
<string>freetype</string>
<key>description</key>
<string>Font rendering library</string>
</map>
<key>glext</key>
<map>
@ -1185,18 +1185,6 @@
</map>
<key>icu4c</key>
<map>
<key>canonical_repo</key>
<string>https://bitbucket.org/lindenlab/3p-icu4c</string>
<key>copyright</key>
<string>Copyright (c) 1995-2011 International Business Machines Corporation and others &lt;http://source.icu-project.org&gt;</string>
<key>description</key>
<string>ICU is a mature, widely used set of C/C++ and Java libraries providing Unicode and Globalization support for software applications. ICU is widely portable and gives applications the same results on all platforms and between C/C++ and Java software.</string>
<key>license</key>
<string>ICU, permissive non-copyleft free software license</string>
<key>license_file</key>
<string>LICENSES/icu.txt</string>
<key>name</key>
<string>icu4c</string>
<key>platforms</key>
<map>
<key>darwin64</key>
@ -1242,8 +1230,20 @@
<string>windows64</string>
</map>
</map>
<key>license</key>
<string>ICU, permissive non-copyleft free software license</string>
<key>license_file</key>
<string>LICENSES/icu.txt</string>
<key>copyright</key>
<string>Copyright (c) 1995-2011 International Business Machines Corporation and others &lt;http://source.icu-project.org&gt;</string>
<key>version</key>
<string>4.8.1-7d08d82</string>
<key>name</key>
<string>icu4c</string>
<key>canonical_repo</key>
<string>https://bitbucket.org/lindenlab/3p-icu4c</string>
<key>description</key>
<string>ICU is a mature, widely used set of C/C++ and Java libraries providing Unicode and Globalization support for software applications. ICU is widely portable and gives applications the same results on all platforms and between C/C++ and Java software.</string>
</map>
<key>jpegencoderbasic</key>
<map>
@ -1705,15 +1705,6 @@
</map>
<key>llca</key>
<map>
<key>copyright</key>
<string>Copyright (c) 2016, Linden Research, Inc.; data provided by the Mozilla NSS Project.
</string>
<key>license</key>
<string>mit</string>
<key>license_file</key>
<string>LICENSES/ca-license.txt</string>
<key>name</key>
<string>llca</string>
<key>platforms</key>
<map>
<key>common</key>
@ -1731,8 +1722,17 @@
<string>common</string>
</map>
</map>
<key>license</key>
<string>mit</string>
<key>license_file</key>
<string>LICENSES/ca-license.txt</string>
<key>copyright</key>
<string>Copyright (c) 2016, Linden Research, Inc.; data provided by the Mozilla NSS Project.
</string>
<key>version</key>
<string>202402012004.0</string>
<key>name</key>
<string>llca</string>
</map>
<key>llphysicsextensions_source</key>
<map>
@ -2116,18 +2116,6 @@
</map>
<key>nanosvg</key>
<map>
<key>canonical_repo</key>
<string>https://bitbucket.org/lindenlab/3p-nanosvg</string>
<key>copyright</key>
<string>Copyright (c) 2013-14 Mikko Mononen</string>
<key>description</key>
<string>NanoSVG is a simple single-header-file SVG parser and rasterizer</string>
<key>license</key>
<string>Zlib</string>
<key>license_file</key>
<string>LICENSES/nanosvg.txt</string>
<key>name</key>
<string>nanosvg</string>
<key>platforms</key>
<map>
<key>darwin64</key>
@ -2167,8 +2155,20 @@
<string>windows64</string>
</map>
</map>
<key>license</key>
<string>Zlib</string>
<key>license_file</key>
<string>LICENSES/nanosvg.txt</string>
<key>copyright</key>
<string>Copyright (c) 2013-14 Mikko Mononen</string>
<key>version</key>
<string>2022.09.27</string>
<key>name</key>
<string>nanosvg</string>
<key>canonical_repo</key>
<string>https://bitbucket.org/lindenlab/3p-nanosvg</string>
<key>description</key>
<string>NanoSVG is a simple single-header-file SVG parser and rasterizer</string>
</map>
<key>nghttp2</key>
<map>
@ -2608,9 +2608,11 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors</string>
<key>archive</key>
<map>
<key>hash</key>
<string>b583668b28fde0490e6953f10e93e4ab</string>
<string>1e70b06fe6eb9796097010871b32d8e95167e373</string>
<key>hash_algorithm</key>
<string>sha1</string>
<key>url</key>
<string>https://automated-builds-secondlife-com.s3.amazonaws.com/ct2/98681/871545/slvoice-4.10.0000.32327.5fc3fe7c.571099-darwin64-571099.tar.bz2</string>
<string>https://automated-builds-secondlife-com.s3.amazonaws.com/gh/secondlife/3p-slvoice/slvoice-4.10.0000.32327.5fc3fe7c.5942f08-darwin64-5942f08.tar.zst</string>
</map>
<key>name</key>
<string>darwin64</string>
@ -2632,9 +2634,11 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors</string>
<key>archive</key>
<map>
<key>hash</key>
<string>c39735851fd05c194d0be09b8f9e8cb7</string>
<string>ddfb7c30d9756915e8b26f44e2ee3a69ee87fb9a</string>
<key>hash_algorithm</key>
<string>sha1</string>
<key>url</key>
<string>https://automated-builds-secondlife-com.s3.amazonaws.com/ct2/98682/871552/slvoice-4.10.0000.32327.5fc3fe7c.571099-windows64-571099.tar.bz2</string>
<string>https://automated-builds-secondlife-com.s3.amazonaws.com/gh/secondlife/3p-slvoice/slvoice-4.10.0000.32327.5fc3fe7c.5942f08-windows64-5942f08.tar.zst</string>
</map>
<key>name</key>
<string>windows64</string>
@ -2647,7 +2651,7 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors</string>
<key>copyright</key>
<string>2010 Vivox, including audio coding using Polycom¨ Siren14TM (ITU-T Rec. G.722.1 Annex C)</string>
<key>version</key>
<string>4.10.0000.32327.5fc3fe7c.571099</string>
<string>4.10.0000.32327.5fc3fe7c.5942f08</string>
<key>name</key>
<string>slvoice</string>
<key>description</key>
@ -2895,16 +2899,6 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors</string>
</map>
<key>viewer-fonts</key>
<map>
<key>copyright</key>
<string>Copyright 2016-2022 Brad Erickson CC-BY-4.0/MIT, Copyright 2016-2022 Twitter, Inc. CC-BY-4.0, Copyright 2013 Joe Loughry and Terence Eden MIT</string>
<key>description</key>
<string>Viewer fonts</string>
<key>license</key>
<string>Various open source</string>
<key>license_file</key>
<string>LICENSES/fonts.txt</string>
<key>name</key>
<string>viewer-fonts</string>
<key>platforms</key>
<map>
<key>darwin64</key>
@ -2944,8 +2938,18 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors</string>
<string>windows64</string>
</map>
</map>
<key>license</key>
<string>Various open source</string>
<key>license_file</key>
<string>LICENSES/fonts.txt</string>
<key>copyright</key>
<string>Copyright 2016-2022 Brad Erickson CC-BY-4.0/MIT, Copyright 2016-2022 Twitter, Inc. CC-BY-4.0, Copyright 2013 Joe Loughry and Terence Eden MIT</string>
<key>version</key>
<string>1.579464</string>
<key>name</key>
<string>viewer-fonts</string>
<key>description</key>
<string>Viewer fonts</string>
</map>
<key>viewer-manager</key>
<map>

View File

@ -123,7 +123,7 @@ LLCoros::LLCoros():
// Previously we used
// boost::context::guarded_stack_allocator::default_stacksize();
// empirically this is insufficient.
mStackSize(900*1024),
mStackSize(1024*1024),
// mCurrent does NOT own the current CoroData instance -- it simply
// points to it. So initialize it with a no-op deleter.
mCurrent{ [](CoroData*){} }

View File

@ -1182,8 +1182,10 @@ bool LLGLManager::initGL()
// This is called here because it depends on the setting of mIsGF2or4MX, and sets up mHasMultitexture.
initExtensions();
S32 old_vram = mVRAM;
mVRAM = 0;
// <FS:Beq> stop doing this and trust the hardware detection
// if hardware detection has all failed the this will correct for that
// S32 old_vram = mVRAM;
// mVRAM = 0;
#if LL_WINDOWS
if (mHasAMDAssociations)
@ -1216,22 +1218,26 @@ bool LLGLManager::initGL()
}
#endif
#if LL_WINDOWS
if (mVRAM < 256)
{
// Something likely went wrong using the above extensions
// try WMI first and fall back to old method (from dxdiag) if all else fails
// Function will check all GPUs WMI knows of and will pick up the one with most
// memory. We need to check all GPUs because system can switch active GPU to
// weaker one, to preserve power when not under load.
S32 mem = LLDXHardware::getMBVideoMemoryViaWMI();
if (mem != 0)
{
mVRAM = mem;
LL_WARNS("RenderInit") << "VRAM Detected (WMI):" << mVRAM<< LL_ENDL;
}
}
#endif
// <FS:Beq> remove this so that we can attempt to use driver specifics
// if it fails we will pick up the `old_vram` value , which is either WMI or the combined dxdiag number
// both of which are rather useless, but it does at least respect the disable_wmi setting.
// #if LL_WINDOWS
// if (mVRAM < 256)
// {
// // Something likely went wrong using the above extensions
// // try WMI first and fall back to old method (from dxdiag) if all else fails
// // Function will check all GPUs WMI knows of and will pick up the one with most
// // memory. We need to check all GPUs because system can switch active GPU to
// // weaker one, to preserve power when not under load.
// S32 mem = LLDXHardware::getMBVideoMemoryViaWMI();
// if (mem != 0)
// {
// mVRAM = mem;
// LL_WARNS("RenderInit") << "VRAM Detected (WMI):" << mVRAM<< LL_ENDL;
// }
// }
// #endif
// </FS:Beq>
// Ultimate fallbacks for linux and mesa
if (mHasNVXMemInfo && mVRAM == 0)
@ -1250,18 +1256,18 @@ bool LLGLManager::initGL()
mVRAM = meminfo[0] / 1024;
LL_INFOS("RenderInit") << "VRAM Detected (ATIMemInfo):" << mVRAM << LL_ENDL;
}
// <FS:Beq> stop doing this and trust the hardware detection
// if (mVRAM < 256 && old_vram > 0)
// {
// // fall back to old method
// // Note: on Windows value will be from LLDXHardware.
// // Either received via dxdiag or via WMI by id from dxdiag.
// mVRAM = old_vram;
if (mVRAM < 256 && old_vram > 0)
{
// fall back to old method
// Note: on Windows value will be from LLDXHardware.
// Either received via dxdiag or via WMI by id from dxdiag.
mVRAM = old_vram;
// <FS:Ansariel> VRAM detection logging
LL_WARNS("RenderInit") << "VRAM detected via MemInfo OpenGL extension most likely broken. Reverting to " << mVRAM << " MB" << LL_ENDL;
}
// // <FS:Ansariel> VRAM detection logging
// LL_WARNS("RenderInit") << "VRAM detected via MemInfo OpenGL extension most likely broken. Reverting to " << mVRAM << " MB" << LL_ENDL;
// }
// </FS:Beq>
glGetIntegerv(GL_MAX_TEXTURE_IMAGE_UNITS, &mNumTextureImageUnits);
glGetIntegerv(GL_MAX_COLOR_TEXTURE_SAMPLES, &mMaxColorTextureSamples);
glGetIntegerv(GL_MAX_DEPTH_TEXTURE_SAMPLES, &mMaxDepthTextureSamples);

View File

@ -40,6 +40,7 @@
#include <boost/tokenizer.hpp>
#include "lldxhardware.h"
#include <dxgi.h>
#include "llerror.h"
@ -61,6 +62,42 @@ typedef BOOL ( WINAPI* PfnCoSetProxyBlanket )( IUnknown* pProxy, DWORD dwAuthnSv
OLECHAR* pServerPrincName, DWORD dwAuthnLevel, DWORD dwImpLevel,
RPC_AUTH_IDENTITY_HANDLE pAuthInfo, DWORD dwCapabilities );
// <FS:Beq> Deprecate WMI support
uint64_t GetVideoMemoryViaDXGI()
{
HRESULT hr;
IDXGIFactory* pFactory = nullptr;
IDXGIAdapter* pAdapter = nullptr;
// Create a DXGI Factory
hr = CreateDXGIFactory(__uuidof(IDXGIFactory), (void**)&pFactory);
if (FAILED(hr)) {
std::cerr << "Failed to create DXGI factory." << std::endl;
return 0;
}
// Enumerate adapters
UINT i = 0;
uint64_t vram_bytes = 0;
while (pFactory->EnumAdapters(i, &pAdapter) != DXGI_ERROR_NOT_FOUND)
{
if(pAdapter)
{
DXGI_ADAPTER_DESC desc;
pAdapter->GetDesc(&desc);
vram_bytes = desc.DedicatedVideoMemory;
break;
}
SAFE_RELEASE(pAdapter);
++i;
}
SAFE_RELEASE(pAdapter)
SAFE_RELEASE(pFactory)
return vram_bytes;
}
// </FS:Beq>
HRESULT GetVideoMemoryViaWMI(WCHAR* strInputDeviceID, DWORD* pdwAdapterRam)
{
HRESULT hr;
@ -803,6 +840,10 @@ bool LLDXHardware::getInfo(bool vram_only, bool disable_wmi)
LL_INFOS("AppInit") << "VRAM Detected via WMI: " << mVRAM << LL_ENDL;
}
}
// <FS:Beq> Deprecate WMI use DXGI in preference.
mVRAM = GetVideoMemoryViaDXGI()/1024/1024;
LL_INFOS("AppInit") << "VRAM Detected via DXGI: " << mVRAM << "MB" << LL_ENDL;
// </FS:Beq>
if (mVRAM == 0)
{ // Get the English VRAM string

View File

@ -24578,12 +24578,23 @@ Change of this parameter will affect the layout of buttons in notification toast
<key>Value</key>
<integer>1</integer>
</map>
<key>FSOverrideVRAMDetection</key>
<map>
<key>Comment</key>
<string>Allow user to override the vRAM detection, use the FSForcedVideoMemory setting instead- use with extreme caution.</string>
<key>Persist</key>
<integer>1</integer>
<key>Type</key>
<string>Boolean</string>
<key>Value</key>
<integer>0</integer>
</map>
<key>FSForcedVideoMemory</key>
<map>
<key>Comment</key>
<string>Overrides the video memory detection on Windows if a value greater 0 is passed (in case DirectX memory detection fails or is wrong)</string>
<key>Persist</key>
<integer>0</integer>
<integer>1</integer>
<key>HideFromEditor</key>
<integer>1</integer>
<key>Type</key>

View File

@ -1028,15 +1028,18 @@ bool LLAppViewerWin32::initHardwareTest()
if (gGLManager.mVRAM == 0)
{
// <FS:Ansariel> FIRE-12671: Force VRAM if DirectX detection is broken
S32 forced_video_memory;
if ((forced_video_memory = gSavedSettings.getS32("FSForcedVideoMemory")) > 0)
// <FS:Beq> Allow the user to override the VRAM detection
if ( gSavedSettings.getBOOL("FSOverrideVRAMDetection") )
{
LL_INFOS("AppInit") << "Forcing VRAM to " << forced_video_memory << " MB" << LL_ENDL;
gGLManager.mVRAM = forced_video_memory;
S32 forced_video_memory = gSavedSettings.getS32("FSForcedVideoMemory");
if ( forced_video_memory > 0 )
{
LL_INFOS("AppInit") << "Forcing VRAM to " << forced_video_memory*1024 << " MB" << LL_ENDL;
gGLManager.mVRAM = forced_video_memory*1024;
}
}
else
// </FS:Ansariel>
// </FS:Beq>
gGLManager.mVRAM = gDXHardware.getVRAM();
}

View File

@ -554,8 +554,8 @@ void LLGLTexMemBar::draw()
U32 texFetchLatMed = U32(recording.getMean(LLTextureFetch::sTexFetchLatency).value() * 1000.0f);
U32 texFetchLatMax = U32(recording.getMax(LLTextureFetch::sTexFetchLatency).value() * 1000.0f);
text = llformat("Est. Free: %d MB Sys Free: %d MB GL Tex: %d MB FBO: %d MB Bias: %.2f (%d MB) Cache: %.1f/%.1f MB",
(S32)LLViewerTexture::sFreeVRAMMegabytes,
text = llformat("est. VRAM Free: %d MB Sys Free: %d MB GL Tex: %d MB FBO: %d MB Bias: %.2f Cache: %.1f/%.1f MB",
gViewerWindow->getWindow()->getAvailableVRAMMegabytes(),
LLMemory::getAvailableMemKB()/1024,
LLImageGL::getTextureBytesAllocated() / 1024 / 1024,
LLRenderTarget::sBytesAllocated/(1024*1024),

View File

@ -357,6 +357,16 @@ static bool handleVolumeLODChanged(const LLSD& newvalue)
return true;
}
// <FS:Beq> Override VRAM detection support
static bool handleOverrideVRAMDetectionChanged(const LLSD& newvalue)
{
if (newvalue.asBoolean())
{
LLNotificationsUtil::add("OverrideVRAMWarning");
}
return true;
}
// </FS:Beq>
static bool handleAvatarLODChanged(const LLSD& newvalue)
{
@ -1175,6 +1185,7 @@ void settings_setup_listeners()
setting_setup_signal_listener(gSavedSettings, "RenderGlowHDR", handleReleaseGLBufferChanged);
setting_setup_signal_listener(gSavedSettings, "RenderGlowNoise", handleSetShaderChanged);
setting_setup_signal_listener(gSavedSettings, "RenderGammaFull", handleSetShaderChanged);
setting_setup_signal_listener(gSavedSettings, "FSOverrideVRAMDetection", handleOverrideVRAMDetectionChanged); // <FS:Beq/> Override VRAM detection support
setting_setup_signal_listener(gSavedSettings, "RenderVolumeLODFactor", handleVolumeLODChanged);
setting_setup_signal_listener(gSavedSettings, "RenderAvatarComplexityMode", handleUserImpostorByDistEnabledChanged);
setting_setup_signal_listener(gSavedSettings, "RenderAvatarLODFactor", handleAvatarLODChanged);

View File

@ -2099,32 +2099,6 @@ LLViewerWindow::LLViewerWindow(const Params& p)
gSavedSettings.setU32("RenderQualityPerformance", 0);
}
// <FS:Ansariel> Texture memory management
// On 64bit builds, allow up to 1GB texture memory on cards with 2GB video
// memory and up to 2GB texture memory on cards with 4GB video memory. Check
// is performed against a lower limit as not exactly 2 or 4GB might not be
// returned.
#if ADDRESS_SIZE == 64
LL_INFOS() << "GLManager detected " << gGLManager.mVRAM << " MB VRAM" << LL_ENDL;
if (gGLManager.mVRAM > 3584)
{
gMaxVideoRam = S32Megabytes(2048);
LL_INFOS() << "At least 4 GB video memory detected - increasing max video ram for textures to 2048 MB" << LL_ENDL;
}
else if (gGLManager.mVRAM > 1536)
{
gMaxVideoRam = S32Megabytes(1024);
LL_INFOS() << "At least 2 GB video memory detected - increasing max video ram for textures to 1024 MB" << LL_ENDL;
}
else if (gGLManager.mVRAM > 768)
{
gMaxVideoRam = S32Megabytes(768);
LL_INFOS() << "At least 1 GB video memory detected - increasing max video ram for textures to 768 MB" << LL_ENDL;
}
#endif
// </FS:Ansariel>
// <FS:Ansariel> Max texture resolution
#if ADDRESS_SIZE == 64
if (gSavedSettings.getBOOL("FSRestrictMaxTextureSize"))

View File

@ -5699,6 +5699,14 @@ LOD-Faktor >4: Nur in Ausnahmefällen verwenden. Wird beim Neustart zurückgeset
LOD-Faktor >8: Hat keinen echten Effekt. Kann Fehler verursachen.
<usetemplate name="okbutton" yestext="OK"/>
</notification>
<notification name="OverrideVRAMWarning">
WARNUNG: Das Übersteuern der VRAM-Erkennung kann Instabilitäten verursachen.
Die meisten Benutzer sollten diese Einstellung deaktiviert und dem Viewer sowie Betriebssystem den korrekten Wert ermitteln lassen.
Diese Einstellung ist für den Fall gedacht, wenn die VRAM-Erkennung inkorrekte Ergebnisse liefert. Bitte mit Vorsicht verwenden und im Zweifel Hilfe beim Support erfragen.
<usetemplate name="okbutton" yestext="OK"/>
</notification>
<notification name="CurrencyURIOverrideReceived">
Diese Region hat sich dazu entschieden, das Währungsportal eines Drittanbieters zu nutzen.
Bitte beachten Sie, dass es sich bei Käufen von Währung innerhalb des Firestorm Viewers um Transaktionen zwischen Ihnen (dem Nutzer) und den Anbietern oder Verkäufern der Währung handelt.

View File

@ -138,7 +138,11 @@
<combo_box.item label="8x" name="8x"/>
<combo_box.item label="16x" name="16x"/>
</combo_box>
<text name="advanced_settings">
Erweiterte Einstellungen (Neustart erforderlich):
</text>
<check_box label="VRAM-Erkennung übersteuern" name="FSOverrideVRAMDetection" tool_tip="Erlaubt die Übersteuerung der VRAM-Erkennung (mit extreme Vorsicht verwenden)" />
<slider label="Dedizierter GPU-VRAM(GB):" name="FSForcedVideoMemory" tool_tip="Wichtig: Mit extremer Vorsicht verwenden. Übersteuert den erkannten VRAM der GPU. Dieser Wert darf nicht den geteilten VRAM enthalten, der Teil des Systemspeichers ist. Falls Sie den Unterschied nicht kennen, verändern Sie diese Einstellung bitte nicht!" />
</panel>
<panel label="Darstellung" name="Rendering">

View File

@ -13883,6 +13883,19 @@ LOD Factor >8: Has no real effect. May cause errors.
name="okbutton"
yestext="OK"/>
</notification>
<notification
icon="alert.tga"
name="OverrideVRAMWarning"
type="alert">
WARNING: Overriding the VRAM detection may cause instability.
Most users should leave this setting disabled and let the viewer and operating system determine the correct value.
This setting is intended for cases where VRAM detection is reporting incorrect values. Use with caution, seek support advice in case of doubt.
<usetemplate
name="okbutton"
yestext="OK"/>
</notification>
<notification
icon="alertmodal.tga"
name="CurrencyURIOverrideReceived"

View File

@ -926,6 +926,53 @@
name="16x"
value="16" />
</combo_box>
<text
type="string"
length="1"
follows="left|top"
height="12"
layout="topleft"
left="10"
name="advanced_settings"
top_pad="10"
width="308">
Advanced Settings (restart required):
</text>
<check_box
control_name="FSOverrideVRAMDetection"
height="16"
label="Override VRAM detection"
layout="topleft"
left="10"
top_pad="10"
name="FSOverrideVRAMDetection"
tool_tip="Enable the user to override VRAM detection (use with extreme caution)"
width="315"
/>
<slider
control_name="FSForcedVideoMemory"
enabled_control="FSOverrideVRAMDetection"
decimal_digits="0"
follows="left|top"
height="20"
increment="1"
initial_value="2"
label="GPU Dedicated VRAM (GB):"
label_width="275"
layout="topleft"
left="10"
min_val="0"
max_val="32"
name="FSForcedVideoMemory"
tool_tip="Important: Use with extreme caution.
Override the detected VRAM on your GPU.
This must not include 'shared' VRAM which is part of the system RAM.
If you do not understand the distinction then leave this control alone."
top_pad="5"
width="475"
/>
</panel>
<!--Rendering-->

View File

@ -5329,6 +5329,14 @@ Facteur LOD >4: A utiliser dans des circonstances particulières. Se réinitiali
Facteur LOD >8: N'a pas d'effet réel. Peut provoquer des erreurs.
<usetemplate name="okbutton" yestext="OK"/>
</notification>
<notification name="OverrideVRAMWarning">
AVERTISSEMENT : Le fait de passer outre la détection de la VRAM peut entraîner de l'instabilité.
La plupart des utilisateurs devraient laisser ce paramètre désactivé et laisser la visionneuse et le système d'exploitation déterminer la valeur correcte.
Ce paramètre est destiné aux cas où la détection de la VRAM indique des valeurs incorrectes. À utiliser avec précaution. En cas de doute, demandez l'aide de l'assistance technique.
<usetemplate name="okbutton" yestext="OK"/>
</notification>
<notification name="CurrencyURIOverrideReceived">
Cette région a choisi de spécifier un portail monétaire tiers.
Veuillez noter que les achats de devises effectués par le biais de Firestorm Viewer sont des transactions entre vous (l'utilisateur) et le(s) fournisseur(s) ou vendeur(s) de la devise.

View File

@ -228,7 +228,7 @@
<combo_box.item label="Masquage alpha" name="Alpha masking"/>
<combo_box.item label="Masque émissif" name="Emissive mask"/>
</combo_box>
<spinner label="Découpe du masque" name="maskcutoff"/>
<spinner label="Coupe masque" name="maskcutoff"/>
<text name="label bumpiness">
Relief
</text>

View File

@ -2,7 +2,10 @@
<panel label="Affichage" name="Display panel">
<tab_container label="Paramètres d'affichage" name="tabs">
<panel label="Général" name="General">
<text name="preset_label">Preset utilisé : </text>
<text name="preset_label">Préréglage utilisé : </text>
<text name="preset_text">
(Aucun)
</text>
<text name="QualitySpeed">Qualité et performance :</text>
<text name="FasterText">Performance</text>
<text name="BetterText">Qualité</text>
@ -13,25 +16,34 @@
<check_box label="Mode plein écran" name="Fullscreen Mode" tool_tip="Exécuter Firestorm en mode plein écran. Un redémarrage est nécessaire pour changer de mode."/>
<text name="ShadersText">Shaders :</text>
<check_box label="Transparence de l'eau" name="TransparentWater"/>
<check_box label="Relief &amp; Brillance" name="BumpShiny"/>
<check_box label="Shaders atmosphériques" name="WindLightUseAtmosShaders"/>
<check_box label="Éclairage avancé" tool_tip="Permet un rendu de lumière avancé" name="UseLightShaders"/>
<check_box label="Occlusion ambiante" name="UseSSAO"/>
<check_box label="Reflets affichés à l'écran (SSR)" name="ScreenSpaceReflections"/>
<text name="shadows_label">Ombres :</text>
<combo_box name="ShadowDetail">
<combo_box.item label="Aucunes" name="0"/>
<combo_box.item label="Soleil/Lune" name="1"/>
<combo_box.item label="Soleil/Lune/Projecteurs" name="2"/>
</combo_box>
<text name="ReflectionDetailText">
Détails des reflets :
</text>
<combo_box name="ReflectionDetail">
<combo_box.item label="Statiques" name="0"/>
<combo_box.item label="Statiques&amp;dynamiques" name="1"/>
<combo_box.item label="Temps réel" name="2"/>
</combo_box>
<text name="ReflectionProbeText">
Couverture des reflets :
</text>
<combo_box name="ReflectionLevel">
<combo_box.item label="Aucune" name="0"/>
<combo_box.item label="Soleil / Lune" name="1"/>
<combo_box.item label="Soleil / Lune &amp; Projecteurs" name="2"/>
<combo_box.item label="Manuels seulement" name="1"/>
<combo_box.item label="Manuels &amp; terrain" name="2"/>
<combo_box.item label="Scène complète" name="3"/>
</combo_box>
<text name="reflection_label">Reflets aquatiques :</text>
<combo_box name="Reflections">
<combo_box.item label="Minimaux" name="0"/>
<combo_box.item label="Terrain et arbres" name="1"/>
<combo_box.item label="Tous les objets statiques" name="2"/>
<combo_box.item label="Avatars et objets" name="3"/>
<combo_box.item label="Tout" name="4"/>
</combo_box>
<text name="local lights_label" tool_tip="Affecte le nombre de sources de lumière lorsque l'éclairage avancé est désactivé. Un redémarrage est requis pour changer de mode.">Sources de lumière</text>
<text width="185" name="local lights_label" tool_tip="Affecte le nombre de sources de lumière lorsque l'éclairage avancé est désactivé. Un redémarrage est requis pour changer de mode.">
Éclairage ponctuel (redémarrage) :
</text>
<combo_box name="LocalLightsDetail">
<combo_box.item label="Toutes (par défaut)" name="3"/>
<combo_box.item label="Réduites" name="2"/>
@ -45,6 +57,7 @@
<slider label="Qualité post-traitement" name="RenderPostProcess"/>
<text name="PostProcessText">Basse</text>
<slider label="Propriétés physiques des avatars" name="AvatarPhysicsDetail"/>
<slider label="Exposition" name="RenderExposure"/>
<text name="MeshDetailText">Facteurs de détails liés à la distance :</text>
<slider label=" Objets et Sculpts" name="ObjectMeshDetail"/>
<slider label=" Prims flexibles" name="FlexibleMeshDetail"/>
@ -52,25 +65,23 @@
<slider label=" Avatars" name="AvatarMeshDetail"/>
<slider label=" Terrain" name="TerrainMeshDetail"/>
<slider label=" Ciel" name="SkyMeshDetail"/>
<text name="Presets_Label">
Préréglages
</text>
<button left="270" label="Enregistrer" name="PrefSaveButton"/>
<button left_pad="5" label="Charger" name="PrefLoadButton"/>
<button left_pad="5" label="Supprimer" name="PrefDeleteButton"/>
<text name="AvatarRenderingText">Rendu des avatars :</text>
<check_box label="Avatars 2D" name="AvatarImpostors"/>
<check_box label="Flexibilité des vêtements" name="AvatarCloth"/>
<text name="TerrainDetailText">Détails du terrain :</text>
<radio_group name="TerrainDetailRadio">
<radio_item label="Bas" name="0"/>
<radio_item label="Haut" name="2"/>
</radio_group>
<button tool_tip="Rétablit les valeurs par défaut." name="Defaults"/>
<button label="Enregistrer" name="PrefSaveButton"/>
<button label="Charger" name="PrefLoadButton"/>
<button label="Supprimer" name="PrefDeleteButton"/>
</panel>
<panel label="Paramètres matériels" name="Hardware Settings">
<check_box label="Filtrage Anisotrope (plus lent lorsqu'il est activé)" name="ani"/>
<check_box label="Activer VSync" name="vsync" tool_tip="Synchronise la fréquence d'images avec la fréquence de rafraîchissement du moniteur, ce qui peut entraîner une augmentation du lag et des images saccadées."/>
<check_box label="Activer la compression de textures sans pertes (Redémarrage requis)" name="texture compression" tool_tip="Activer la compression des textures dans la mémoire graphique permet de charger des textures de résolution supérieure et une prise en charge d'un nombre de textures plus élevé pour le même cout mémoire."/>
<check_box label="Active la prise en charge des écrans HiDPI (Mac OSX seulement; Redémarrage requis)" name="use HiDPI" tool_tip="Active OpenGL pour l'affichage haute résolution."/>
<text name="Antialiasing:">Anticrénelage :</text>
<text width="235" name="Antialiasing:" tool_tip="La modification de ce paramètre peut nécessiter un redémarrage de certains ordinateurs.">
Anticrénelage (redémarrage recommandé) :
</text>
<combo_box label="Anticrénelage" name="fsaa">
<combo_box.item label="Désactivé" name="FSAADisabled"/>
<combo_box.item label="2x" name="2x"/>
@ -78,31 +89,31 @@
<combo_box.item label="8x" name="8x"/>
<combo_box.item label="16x" name="16x"/>
</combo_box>
<spinner label="Gamma :" name="gamma"/>
<text name="brightness text">Baisser la valeur pour augmenter la brillance</text>
<slider label="Mémoire vidéo utilisée par le viewer (Mo) :" label_width="235" width="450" name="GraphicsCardTextureMemory" tool_tip="Quantité de mémoire à allouer pour les textures. Par défaut, la mémoire de la carte vidéo jusqu'à 512Mo. Réduire ce paramètre peut améliorer les performances, mais peut également rendre les textures plus floues. Augmenter cette valeur au-delà de 512Mo n'est pas recommandé. Même si votre carte graphique le supporte, l'impact sur la mémoire sera conséquent et se traduira par des ralentissements."/>
<check_box label="Activer la mémoire de texture dynamique" name="FSDynamicTextureMemory" tool_tip="Permet le calcul de la mémoire de texture dynamique (uniquement disponible sur les systèmes 64 bits et les GPU AMD/NVIDIA avec au moins 512 Mo de mémoire vidéo)" width="315" />
<slider label="Mémoire tampon de texture minimale (Mo):" name="FSDynamicTextureMemoryMinTextureMemory" tool_tip="La quantité minimale de mémoire à allouer pour les textures. Cela permettra de s'assurer que la quantité spécifiée sera toujours utilisée pour les textures, même si elle dépasse la quantité de mémoire vidéo disponible. Si la quantité spécifiée plus les réserves dépassent la quantité de mémoire vidéo physique, elle sera plafonnée en conséquence."/>
<slider label="Réserve supplémentaire de mémoire tampon (%):" name="FSDynamicTextureMemoryCacheReserve" tool_tip="Le pourcentage de mémoire vidéo physique réservé aux textures chargées en cache qui ne sont actuellement pas affichées."/>
<slider label="Réserve de mémoire vidéo physique (%):" name="FSDynamicTextureMemoryGPUReserve" tool_tip="Le pourcentage de mémoire vidéo physique réservé à un autre usage."/>
<spinner label="Ratio de distance du brouillard :" name="fog"/>
<text name="advanced_settings">
Paramètres avancés (redémarrage requis) :
</text>
<check_box label="Ignorer la détection de la VRAM" name="FSOverrideVRAMDetection" tool_tip="Permet à l'utilisateur d'ignorer la détection de VRAM (à utiliser avec une extrême prudence)"/>
<slider label="VRAM dédiée du GPU (Go) :" name="FSForcedVideoMemory" tool_tip="Important : à utiliser avec une extrême prudence.
Ignorer la VRAM détectée sur votre GPU.
Cela ne doit pas inclure la VRAM 'partagée' qui fait partie de la RAM du système.
Si vous ne comprenez pas la distinction, ne vous souciez pas de ce contrôle."/>
</panel>
<panel label="Rendu" name="Rendering">
<text name="World Updating">Actualisation de l'univers :</text>
<check_box label="Figer les mises à jour de l'univers (Met tout en pause)" tool_tip="Cochez cette option pour figer toutes les mises à jour provenant de l'univers - Ceci interrompra toutes les actions visuelles mais n'affectera pas les conversations écrites ou vocales" name="WorldPause"/>
<text name="Texture Rendering">Rendu des textures :</text>
<check_box label="Limiter le résolution maximale des textures à 512px (64bit seulement; redémarrage requis)" tool_tip="Activée, cette option limite la résomution maximale d'affichage des textures dans Second Life à 512px. Cela permet d'afficher plus de textures avant de dépasser la limite de mémoire disponible et évite de voir des textures floues." name="FSRestrictMaxTextureSize"/>
<check_box label="Utiliser HTTP pour récupérer les textures" tool_tip="Cochez cette option pour charger les textures en utilisant le protocole HTTP - désactivez cette option si vous avez des problèmes d'affichage et souhaitez utiliser le protocole UDP à la place." name="TexturesHTTP"/>
<text name="TextureDetailLabel">Qualité max. des textures :</text>
<combo_box name="TextureDetail">
<text name="TextureDetailLabel">
Qualité max. des textures :
</text>
<combo_box name="TextureDetail" tool_tip="Qualité de chargement des textures, affecte le paramètre TextureDiscardLevel">
<combo_box.item label="Normale" name="0"/>
<combo_box.item label="Moyenne" name="3"/>
<combo_box.item label="Basse" name="4"/>
<combo_box.item label="Pas de textures" name="5"/>
</combo_box>
<text name="Alpha Mask Rendering">Rendu des masques alphas :</text>
<check_box label="Activer les masques alpha lorsque 'Éclairage avancé' n'est pas activé" tool_tip="Lorsqu'activé, les masques alpha seront pris en compte lorsque l'éclairage avancé est désactivé" name="RenderAutoMaskAlphaNonDeferred"/>
<check_box label="Activer les masques alpha lorsque 'Éclairage avancé' est activé" tool_tip="Lorsqu'activé, les masques alpha seront pris en compte lorsque l'éclairage avancé est activé" name="RenderAutoMaskAlphaDeferred"/>
<check_box label="Activer les masques alpha" tool_tip="Si cette option est cochée, le rendu des masques Alpha (bits transparents) est correct." name="RenderAutoMaskAlphaDeferred"/>
<text name="Miscellaneous Rendering">Divers :</text>
<check_box label="Éclat lumineux" tool_tip="Activer l'éclat lumineux. Noter que la force doit être définie sur 0 pour désactiver l'éclat lumineux lorsque les ombres sont activées." name="RenderGlow"/>
<slider label="Force :" tool_tip="Force de l'éclat lumineux. Une valeur plus élevée le rends plus diffus et plus doux (2 par défaut)" name="glow_strength"/>
@ -120,11 +131,10 @@
<panel label="Profondeur de champ" name="DOF panel">
<check_box label="Activer la profondeur de champ (Floutera la vue sauf au point de focalisation de la caméra)" name="UseDoF"/>
<check_box label="Activer pendant la modification d'objets ou de terrain" name="RenderDepthOfFieldInEditMode"/>
<check_box label="La mise au point de la profondeur de champ suit le pointeur" name="FSFocusPointFollowsPointer" tool_tip="La mise au point de la profondeur de champ (PdC) suivra votre curseur, ce comportement correspond à celui observé lors de l'utilisation de flycam. Utilisation en conjonction avec le verrouillage de la mise au point PdC"/>
<check_box label="La mise au point de la profondeur de champ suit le curseur" name="FSFocusPointFollowsPointer" tool_tip="La mise au point de la profondeur de champ (PdC) suivra votre curseur, ce comportement correspond à celui observé lors de l'utilisation de flycam. Utilisation en conjonction avec le verrouillage de la mise au point PdC"/>
<slider label="Indice d'ouverture :" name="CameraFNum" tool_tip="Indice d'ouverture de la caméra pour les effets de profondeur"/>
<slider label="Distance focale :" name="CameraFocal" tool_tip="Distance focale de la caméra pour les effets de profondeur (en millimètres)"/>
<slider label="Angle de champ :" name="Camera FOV" tool_tip="Angle de champ vertical de la caméra pour les effets de profondeur (en degrés)"/>
<slider label="Format d'image :" name="CameraAspectRatio" tool_tip="Rapport de format de l'écran pour les effets de profondeur"/>
<slider label="Dynamisme des transitions :" name="CameraFocusTrans" tool_tip="Temps nécessaire pour modifier l'effet de profondeur lors d'un mouvement de caméra"/>
<slider label="Qualité du rendu du floutage :" name="CameraDoFResScale" tool_tip="Définit la qualité du floutage et les performances de rendu. (Le plus élevé la meilleure qualité, le plus bas les meilleures performances)"/>
</panel>

View File

@ -5177,6 +5177,13 @@ Rozważ wymianę obiektów, które wyglądają na zdeformowane z taką wartości
Mnożnik LOD >3: Zwiększa lag. Zalecane tylko dla fotografii.
Mnożnik LOD >4: Używaj tylko w specjalnych przypadkach. Resetuje się po restarcie.
Mnożnik LOD >8: Brak widocznych efektów. Może powodować błędy.
</notification>
<notification name="OverrideVRAMWarning">
UWAGA: Wyłączenie automatycznego wykrywania VRAM może zdestabilizować Twój komputer.
Większość użytkowników powinna pozostawić wykrywanie włączone i pozwolić przeglądarce oraz systemowi operacyjnemu określać poprawną wartość.
To ustawienie jest przeznaczone dla przypadków, gdy wykrywanie VRAM zgłasza nieprawidłowe wartości. Używaj ostrożnie, w razie wątpliwości zasięgnij porady Wsparcia.
</notification>
<notification name="CurrencyURIOverrideReceived">
W tym regionie wybrano portal walutowy strony trzeciej.

View File

@ -104,6 +104,11 @@
<combo_box label="Antyaliasing" name="fsaa">
<combo_box.item label="Wyłączony" name="FSAADisabled"/>
</combo_box>
<text name="advanced_settings">
Zaawansowane (wymagany restart):
</text>
<check_box label="Wyłącz autodetekcję VRAM" name="FSOverrideVRAMDetection" tool_tip="Zezwól na wyłączenie automatycznego wykrywania VRAM (używaj z zachowaniem szczególnej ostrożności)" />
<slider label="Dedykowana VRAM dla GPU (GB):" name="FSForcedVideoMemory" tool_tip="Ważne: używaj ze szczególną ostrożnością. || Zastąp wykrytą pamięć VRAM dla karty graficznej. || Nie może zawierać 'współdzielonej' pamięci VRAM, która jest częścią systemowej pamięci RAM. || Jeśli nie rozumiesz różnicy, zostaw tę opcję w spokoju." />
</panel>
<panel name="Rendering">
<text name="World Updating">

View File

@ -5297,6 +5297,16 @@ https://wiki.firestormviewer.org/fs_voice
Уровень LOD > 4: использовать в особых случаях. Возврат после relog.
Уровень LOD > 8: не имеет реального эффекта. Может вызвать ошибки.
</notification>
<notification name="OverrideVRAMWarning">
ПРЕДУПРЕЖДЕНИЕ: Переопределение функции обнаружения видеопамяти может привести к нестабильности.
Большинству пользователей рекомендуется отключить эту настройку и позволить
программе просмотра и операционной системе определить правильное значение.
Эта настройка предназначена для случаев, когда функция обнаружения видеопамяти выдает неверные значения.
Используйте с осторожностью, в случае сомнений обратитесь за консультацией в службу поддержки.
<usetemplate name="okbutton" yestext="OK"/>
</notification>
<notification name="CurrencyURIOverrideReceived">
Этот регион решил указать сторонний валютный портал.
Обратите внимание, что покупки валюты, сделанные через Firestorm Viewer, являются транзакциями между вами (пользователем) и поставщиком (ами) или продавцом (ами) валюты.

View File

@ -128,16 +128,11 @@
<combo_box label="Сглаживание" name="fsaa">
<combo_box.item label="Отключено" name="FSAADisabled"/>
</combo_box>
<spinner label="Гамма:" name="gamma"/>
<text name="brightness text">
(0/1.0 = яркость по уполчанию, ниже = ярче)
<text name="advanced_settings">
Расширенные настройки (требуется перезагрузка):
</text>
<slider label="Буфер текстурной памяти (МБ):" name="GraphicsCardTextureMemory" tool_tip="Объем памяти, выделяемой для текстур. По умолчанию память видеокарты составляет до 512МБ в 32-битных системах и до 2048МБ в 64-битных системах, в зависимости от доступной выделенной видеопамяти видеокарты. Уменьшение этого параметра может улучшить производительность, но также может сделать текстуры размытыми."/>
<check_box label="Включить динамическую память текстур" name="FSDynamicTextureMemory" tool_tip="Включает вычисление динамической памяти текстур (доступно только в 64-битных программах просмотра и графических процессорах AMD/NVIDIA с не менее 512МБ видеопамяти)"/>
<slider label="Минимальный буфер памяти текстур (МБ):" name="FSDynamicTextureMemoryMinTextureMemory" tool_tip="Минимальный объем памяти, выделяемой для текстур. Это гарантирует, что указанный объем всегда будет использоваться для текстур, даже если он превышает объем доступной видеопамяти. Если указанная сумма плюс резервы превышают объем физической видеопамяти, она будет соответственно ограничена."/>
<slider label="Дополнительный резерв памяти текстур (%):" name="FSDynamicTextureMemoryCacheReserve" tool_tip="Процент физической видеопамяти, зарезервированной для кэширования загруженных текстур, которые в данный момент не отображаются."/>
<slider label="Резерв физической видеопамяти (%):" name="FSDynamicTextureMemoryGPUReserve" tool_tip="Процент физической видеопамяти, зарезервированной для другого использования."/>
<spinner label="Коэффициент дистанции тумана:" name="fog"/>
<check_box label="Переопределение обнаружения видеопамяти" name="FSOverrideVRAMDetection" tool_tip="Разрешить пользователю переопределять обнаружение видеопамяти (использовать с особой осторожностью)"/>
<slider label="Выделенная видеопамять GPU (ГБ):" name="FSForcedVideoMemory" tool_tip="Важно: используйте с особой осторожностью. Переопределите обнаруженную видеопамять в вашем графическом процессоре. Это не должно включать 'общую' видеопамять, которая является частью системной оперативной памяти. Если вы не понимаете разницы, оставьте этот элемент управления в покое."/>
</panel>
<panel label="Прорисовка" name="Rendering">
<text name="World Updating">