Commit Graph

314 Commits (08b933a0c67463f06f124420f16c8a3f7dc83f1f)

Author SHA1 Message Date
Dave Parks 08b933a0c6
#1870 Tune up for better experience on integrated intel with low memory (#1872)
* More deterministic vsize calculation.   Add control for choosing downscale method.
* Quick hack to make GLTF preview work again
2024-07-03 17:42:24 -05:00
Beq Janus 475d0df4c1
Experimental fix for blurry textures (#1875)
This change removes the distance based bias (which is a large contributor to premature blurring) but adds a check using the importance factor to give some balance.
importance should be between 0 and 1 and is higher when the texture is facing the camera, lower when it is side on,
The unimportance setting defines the cutoff vaklue below which we'll consider the textures worth "down scaling" by the bias factor. The setting is inplace to allow us to play with this, 0.25 is current default.

Note this change moves the calcPixelArea() call to the top BEFORE we user getPixelArea(). Either that call is entirely redundant (i.e. if calc was called earlier in the frame)  or we were using the stale pixelArea (one frame behind). If the former is true then it might be faster to just do an AABB frustum check.
2024-07-02 12:57:39 -05:00
Dave Parks ab87978cbc
1836 dont store texture in system memory unless absolutely necessary (#1843)
* #1836 Texture memory usage overhaul.  Much decrufting
- don't keep a copy of textures in system memory
- use GPU to downrez textures instead of reloading from cache
- use GPU to generate brightness/darkness bumpmaps
2024-06-27 13:12:43 -05:00
Brad Linden 7c42711ca3 Merge remote-tracking branch 'origin/DRTVWR-600-maint-A' into project/gltf_development 2024-06-10 16:22:12 -07:00
Ansariel c0fad3028f Re-enable compiler warnings C4018, C4100, C4231 and C4506 2024-06-10 16:42:43 +02:00
Ansariel b42f9d836b Re-enable a lot of compiler warnings for MSVC and address the C4267 "possible loss of precision" warnings 2024-06-01 15:49:26 +02:00
Dave Parks d1a8a9d0c3
#1596 Fix for GLTF uploads failing after loading from .glb file (#1602) 2024-05-30 16:28:56 -05:00
Dave Parks 2f41200384
Remove tinygltf dependency from LL::GLTF (#1541)
* #1535 Image loading/saving support in boost::json driven GLTF parser
* #1536 GLB Support in boost::json drvien GLTF parser
2024-05-28 09:45:40 -05:00
Ansariel e2e37cced8 Fix line endlings 2024-05-22 22:40:26 +03:00
Ansariel 1b67dd855c Merge remote-tracking branch 'origin/main' into DRTVWR-600-maint-A
# Conflicts:
#	autobuild.xml
#	indra/cmake/CMakeLists.txt
#	indra/cmake/GoogleMock.cmake
#	indra/llaudio/llaudioengine_fmodstudio.cpp
#	indra/llaudio/llaudioengine_fmodstudio.h
#	indra/llaudio/lllistener_fmodstudio.cpp
#	indra/llaudio/lllistener_fmodstudio.h
#	indra/llaudio/llstreamingaudio_fmodstudio.cpp
#	indra/llaudio/llstreamingaudio_fmodstudio.h
#	indra/llcharacter/llmultigesture.cpp
#	indra/llcharacter/llmultigesture.h
#	indra/llimage/llimage.cpp
#	indra/llimage/llimagepng.cpp
#	indra/llimage/llimageworker.cpp
#	indra/llimage/tests/llimageworker_test.cpp
#	indra/llmessage/tests/llmockhttpclient.h
#	indra/llprimitive/llgltfmaterial.h
#	indra/llrender/llfontfreetype.cpp
#	indra/llui/llcombobox.cpp
#	indra/llui/llfolderview.cpp
#	indra/llui/llfolderviewmodel.h
#	indra/llui/lllineeditor.cpp
#	indra/llui/lllineeditor.h
#	indra/llui/lltextbase.cpp
#	indra/llui/lltextbase.h
#	indra/llui/lltexteditor.cpp
#	indra/llui/lltextvalidate.cpp
#	indra/llui/lltextvalidate.h
#	indra/llui/lluictrl.h
#	indra/llui/llview.cpp
#	indra/llwindow/llwindowmacosx.cpp
#	indra/newview/app_settings/settings.xml
#	indra/newview/llappearancemgr.cpp
#	indra/newview/llappearancemgr.h
#	indra/newview/llavatarpropertiesprocessor.cpp
#	indra/newview/llavatarpropertiesprocessor.h
#	indra/newview/llbreadcrumbview.cpp
#	indra/newview/llbreadcrumbview.h
#	indra/newview/llbreastmotion.cpp
#	indra/newview/llbreastmotion.h
#	indra/newview/llconversationmodel.h
#	indra/newview/lldensityctrl.cpp
#	indra/newview/lldensityctrl.h
#	indra/newview/llface.inl
#	indra/newview/llfloatereditsky.cpp
#	indra/newview/llfloatereditwater.cpp
#	indra/newview/llfloateremojipicker.h
#	indra/newview/llfloaterimsessiontab.cpp
#	indra/newview/llfloaterprofiletexture.cpp
#	indra/newview/llfloaterprofiletexture.h
#	indra/newview/llgesturemgr.cpp
#	indra/newview/llgesturemgr.h
#	indra/newview/llimpanel.cpp
#	indra/newview/llimpanel.h
#	indra/newview/llinventorybridge.cpp
#	indra/newview/llinventorybridge.h
#	indra/newview/llinventoryclipboard.cpp
#	indra/newview/llinventoryclipboard.h
#	indra/newview/llinventoryfunctions.cpp
#	indra/newview/llinventoryfunctions.h
#	indra/newview/llinventorygallery.cpp
#	indra/newview/lllistbrowser.cpp
#	indra/newview/lllistbrowser.h
#	indra/newview/llpanelobjectinventory.cpp
#	indra/newview/llpanelprofile.cpp
#	indra/newview/llpanelprofile.h
#	indra/newview/llpreviewgesture.cpp
#	indra/newview/llsavedsettingsglue.cpp
#	indra/newview/llsavedsettingsglue.h
#	indra/newview/lltooldraganddrop.cpp
#	indra/newview/llurllineeditorctrl.cpp
#	indra/newview/llvectorperfoptions.cpp
#	indra/newview/llvectorperfoptions.h
#	indra/newview/llviewerparceloverlay.cpp
#	indra/newview/llviewertexlayer.cpp
#	indra/newview/llviewertexturelist.cpp
#	indra/newview/macmain.h
#	indra/test/test.cpp
2024-05-22 19:04:52 +02:00
Andrey Kleshchev 2008f87f10 Revert "viewer#819 Avoid reading the same XML file multiple times"
This reverts commit a865d42397.

Reason for revert: viewer#1420, reverting to not hold maint-A (is deepCopy not full?)
2024-05-13 21:25:58 +03:00
Alexander Gavriliuk f9473e8afc secondlife/viewer#1333 BOOL to bool conversion leftovers: ternaries 2024-05-07 10:18:51 +02:00
Andrey Lihatskiy 38c2a5bde9 Merge branch 'marchcat/w-whitespace' into marchcat/x-ws-merge 2024-05-01 08:16:58 +03:00
Andrey Lihatskiy 1b68f71348 #824 Process source files in bulk: replace tabs with spaces, convert CRLF to LF, and trim trailing whitespaces as needed 2024-04-29 07:56:09 +03:00
Andrey Lihatskiy 9bc190c8d3
Merge pull request #1211 from secondlife/marchcat/x-merge
Release (Maint W) -> Maint X merge
2024-04-12 17:05:23 +03:00
Andrey Kleshchev f5a7fba76a viewer-private#226 Unhandled PngError throws application into a loop
png_read_info triggered a PngError, LLAppViewer::frame() handled it
instead of LLPngWrapper::readPng, and since status didn't
change viewer tried to decode image again and again and again.
2024-04-12 16:03:07 +03:00
Andrey Lihatskiy eab5beb54c Merge branch 'main' into marchcat/x-merge
# Conflicts:
#	indra/llimage/llimageworker.cpp
#	indra/llimage/llimageworker.h
#	indra/newview/llcontrolavatar.cpp
#	indra/newview/llfloaterprofiletexture.cpp
#	indra/newview/lloutfitslist.cpp
#	indra/newview/lloutfitslist.h
#	indra/newview/lltexturefetch.cpp
2024-04-12 15:43:34 +03:00
Ansariel d0102af56d Merge branch 'main' of https://github.com/secondlife/viewer into DRTVWR-600-maint-A
# Conflicts:
#	indra/llcommon/llapp.cpp
#	indra/llcommon/llapp.h
#	indra/llimage/llimageworker.cpp
#	indra/llui/llcontainerview.cpp
#	indra/llui/llcontainerview.h
#	indra/llui/llkeywords.cpp
#	indra/llui/lltabcontainer.cpp
#	indra/llui/lltextbase.cpp
#	indra/newview/llappviewer.cpp
#	indra/newview/llfavoritesbar.cpp
#	indra/newview/llfavoritesbar.h
#	indra/newview/llfloaterimnearbychathandler.cpp
#	indra/newview/llfloaterpreference.cpp
#	indra/newview/llhudnametag.h
#	indra/newview/llinventorypanel.cpp
#	indra/newview/llinventorypanel.h
#	indra/newview/llmeshrepository.cpp
#	indra/newview/lloutfitgallery.cpp
#	indra/newview/lloutfitslist.cpp
#	indra/newview/llpaneleditwearable.cpp
#	indra/newview/llpanelprofilepicks.cpp
#	indra/newview/llpanelvoicedevicesettings.h
#	indra/newview/llpreviewscript.cpp
#	indra/newview/llpreviewscript.h
#	indra/newview/llselectmgr.cpp
#	indra/newview/lltranslate.cpp
#	indra/newview/llviewerassetupload.cpp
#	indra/newview/llviewermessage.cpp
2024-04-11 21:59:38 +02:00
Andrey Lihatskiy 71ed19839e Merge branch 'main' into DRTVWR-600-maint-A
# Conflicts:
#	indra/newview/llappviewer.cpp
#	indra/newview/llfloaterchangeitemthumbnail.cpp
#	indra/newview/llpanelprofile.cpp
#	indra/newview/llselectmgr.cpp
#	indra/newview/lltexturectrl.cpp
#	indra/newview/lltexturectrl.h
#	indra/newview/lltooldraganddrop.cpp
#	indra/newview/llviewerdisplay.cpp
#	indra/newview/llvovolume.cpp
2024-03-27 00:45:06 +02:00
Andrey Lihatskiy 1ae6f5dd6f Merge branch 'main' into DRTVWR-591-maint-X
# Conflicts:
#	indra/llui/lltransutil.cpp
#	indra/newview/app_settings/settings.xml
#	indra/newview/llfloaterenvironmentadjust.cpp
#	indra/newview/llpaneleditwater.cpp
#	indra/newview/llpanelface.cpp
#	indra/newview/lltexturectrl.cpp
#	indra/newview/lltexturectrl.h
2024-03-27 00:33:40 +02:00
Andrey Lihatskiy 78174fc865 Merge remote-tracking branch 'origin/main' into DRTVWR-588-maint-W
# Conflicts:
#	.github/workflows/build.yaml
2024-03-27 00:14:56 +02:00
Andrey Kleshchev 3ba9e1c5e5 viewer#888 Washed out letters in a running string 2024-03-22 17:29:25 +02:00
Andrey Kleshchev ee7011c968 viewer#1000 Textures on large prims lose resolution
Value was selected experimentally. I suspect it needs to be even
smaller or needs to take face's size (extents) into account, but lack
test cases. Will ask QA to experiment around with scaling.
2024-03-19 23:16:44 +02:00
Alexander Gavriliuk a865d42397 viewer#819 Avoid reading the same XML file multiple times 2024-03-05 19:54:31 +01:00
Beq c8d5974f99 BUG-234595/Jira-public-Issue#11494 Mac texture loading/unloading
This removes the "special case" for Mac which was resulting in values a few orders of magnitude smaller than on windows.
2024-02-27 22:50:28 +02:00
Ansariel 60d3dd98a4 Convert remaining BOOL to bool 2024-02-21 23:14:31 +02:00
Andrey Kleshchev ea4dc1f35d SL-20669 Force blank normal id into a local blank normal texture
Dataserver's version has compression artifacts
2024-01-24 17:40:01 +02:00
Andrey Lihatskiy e2de27c84e Merge branch 'main' into DRTVWR-600-maint-A
# Conflicts:
#	indra/newview/llmaterialeditor.cpp
2024-01-08 23:38:28 +02:00
Andrey Lihatskiy fe796dac71 Merge branch 'main' into DRTVWR-588-maint-W 2024-01-08 23:15:00 +02:00
Andrey Kleshchev afe91b7eb6 Merge main (DRTVWR-596 GLTF Materials Maint) into DRTVWR-591-maint-X
# Conflicts:
#	indra/newview/VIEWER_VERSION.txt
2024-01-08 21:33:06 +02:00
Alexander Gavriliuk 74c8b028d4 SL-20743 Use LLMutex in LLImageBase for internal data thread-safety 2023-12-21 19:12:52 +01:00
Andrey Lihatskiy 4b98ae6e8a Merge branch 'DRTVWR-587-maint-V' into DRTVWR-588-maint-W
# Conflicts:
#	indra/newview/llspatialpartition.cpp
2023-12-14 02:47:44 +02:00
RunitaiLinden 2c2d60bbc3 SL-20674 Fix for textures ignoring texture scale when determining what resolution to be. 2023-12-08 12:36:55 -06:00
Andrey Lihatskiy 27dae1d967 Merge branch 'DRTVWR-591-maint-X' into marchcat/591-x-pbr-merge
# Conflicts:
#	indra/llrender/llgl.cpp
#	indra/llrender/llvertexbuffer.cpp
#	indra/llui/llflatlistview.cpp
#	indra/newview/app_settings/settings.xml
#	indra/newview/lldrawpoolground.cpp
#	indra/newview/llinventorybridge.cpp
#	indra/newview/llinventorygallery.cpp
#	indra/newview/llspatialpartition.cpp
#	indra/newview/llviewercontrol.cpp
#	indra/newview/llviewertexture.cpp
#	indra/newview/llvosky.cpp
#	indra/newview/skins/default/xui/en/menu_inventory.xml
2023-11-30 13:30:27 +02:00
Andrey Lihatskiy 0465c761a4 Merge branch 'DRTVWR-588-maint-W' into marchcat/588-w-pbr-merge
# Conflicts:
#	indra/llrender/llgl.cpp
#	indra/llrender/llvertexbuffer.cpp
#	indra/llui/llflatlistview.cpp
#	indra/newview/lldrawpoolground.cpp
#	indra/newview/llspatialpartition.cpp
#	indra/newview/lltexturefetch.cpp
#	indra/newview/llviewergenericmessage.cpp
#	indra/newview/llviewertexture.cpp
#	indra/newview/llvosky.cpp
#	indra/newview/skins/default/xui/en/floater_preferences_graphics_advanced.xml
#	indra/newview/skins/default/xui/en/floater_stats.xml
#	indra/newview/skins/default/xui/en/floater_texture_fetch_debugger.xml
#	indra/newview/skins/default/xui/en/notifications.xml
#	indra/newview/skins/default/xui/en/panel_performance_preferences.xml
2023-11-30 12:28:26 +02:00
Andrey Kleshchev 7706c1771d SL-20411 Thumbnail textures should have less of an impact on performance #1
scale thumbnail textures down to 256 when needed. As we do to chat icons.

# Conflicts:
#	indra/newview/llviewertexture.cpp
2023-11-21 22:11:30 +02:00
Andrey Kleshchev c1c5275f20 SL-20411 Thumbnail textures should have less of an impact on performance #1
scale thumbnail textures down to 256 when needed. As we do to chat icons.
2023-10-09 19:45:09 +03:00
Andrey Lihatskiy 878fb36a0b Merge branch 'main' into DRTVWR-591-maint-X
# Conflicts:
#	indra/newview/app_settings/settings.xml
#	indra/newview/llinventorybridge.cpp
#	indra/newview/lltexturectrl.h
#	indra/newview/llvovolume.cpp
2023-10-03 19:55:49 +03:00
Andrey Kleshchev 7d50a51434 Merge branch 'main' (DRTVWR-567) into DRTVWR-559
# Conflicts:
#	indra/newview/CMakeLists.txt
#	indra/newview/VIEWER_VERSION.txt
#	indra/newview/llagent.cpp
#	indra/newview/llfloaternewfeaturenotification.cpp
#	indra/newview/llinventorybridge.cpp
#	indra/newview/llinventorymodel.cpp
#	indra/newview/lloutfitgallery.cpp
#	indra/newview/llpanelmaininventory.cpp
#	indra/newview/llpanelmaininventory.h
#	indra/newview/llsidepaneltaskinfo.cpp
#	indra/newview/llsidepaneltaskinfo.h
#	indra/newview/lltexturectrl.cpp
#	indra/newview/lltexturectrl.h
#	indra/newview/llviewerinventory.cpp
#	indra/newview/llviewerobject.cpp
#	indra/newview/llviewertexturelist.cpp
#	indra/newview/llviewertexturelist.h
#	indra/newview/skins/default/xui/en/floater_new_feature_notification.xml
#	indra/newview/skins/default/xui/en/menu_inventory.xml
2023-10-03 19:00:33 +03:00
Andrey Kleshchev d0d05ddddf SL-15039 Prune unused preferences #4 2023-09-27 13:11:12 +03:00
Andrey Kleshchev cfb69846f1 SL-20261 Allow and resize existing textures as necessary for thumbnails 2023-09-10 21:49:00 +03:00
Andrey Kleshchev 4800e3e416 SL-20099 Thumbnail upload scale textures to be square
thumbnail copy&paste only allows square textures and wasn't allowing
none square ones despite those already being used as thumbnails
2023-08-18 14:12:49 +03:00
Brad Linden f975cfd736 Merge remote-tracking branch 'origin/main' into DRTVWR-559 2023-07-17 13:37:03 -07:00
Andrey Kleshchev acf82867b6 Merge branch 'main' (DRTVWR-580) into DRTVWR-567
# Conflicts:
#	indra/llui/llfolderviewitem.cpp
#	indra/newview/llinventorymodel.cpp
#	indra/newview/llinventorymodelbackgroundfetch.cpp
2023-07-17 23:34:59 +03:00
RunitaiLinden 0c7205e5f1 SL-19560 Better fix for blurry BoM textures. 2023-05-23 10:55:50 -05:00
Andrey Lihatskiy ade8c96e5c Merge branch 'main' into DRTVWR-567
# Conflicts:
#	indra/newview/llappviewer.cpp
2023-05-02 17:57:11 +03:00
Andrey Lihatskiy 504ef7e9e3 Merge branch 'main' into DRTVWR-580-maint-T 2023-05-02 17:39:29 +03:00
RunitaiLinden d32bca67f1 DRTVWR-559 Add paranoia checks around typecasts of LLGLTFMaterial to LLFetchedGLTFMaterial 2023-04-14 07:36:13 -05:00
cosmic-linden d6d634d29f
SL-19331: Move media updates off-thread on select hardware (#153)
* SL-19331: Have media updates on the LLImageGL thread even when texture updates are on the main thread. Add config.

Off-thread media updates seem work best performance-wise when using glTexImage2D, not sub_image_lines. Otherwise, there are lots of main thread stalls.

* SL-19331: Bump featuretable

* SL-19331: Cleanup, annotate comment
2023-04-05 11:55:33 -05:00
Maxim Nikolenko 198cd4df09 Merge branch 'main' into DRTVWR-567
# Conflicts:
#	indra/newview/llinventoryfunctions.cpp
#	indra/newview/llpanelmaininventory.h
#	indra/newview/skins/default/xui/en/floater_inventory_item_properties.xml
#	indra/newview/skins/default/xui/en/sidepanel_item_info.xml
2023-03-30 14:09:50 +03:00