Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

2024.09 ExtraFPS #2617

Draft
wants to merge 201 commits into
base: main
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
201 commits
Select commit Hold shift + click to select a range
552d1d4
viewer#2363 Region Day Offset error with Time of Day
akleshchev Aug 20, 2024
db84bf9
Improve accuracy of texture memory tracking (#2371)
RyeMutt Aug 21, 2024
40e93e9
Fix formatting and add some more constexpr
Ansariel Aug 21, 2024
4bda687
More changes to Clang-Format to match the current coding standard (#2…
Ansariel Aug 21, 2024
0e59ed2
Fix crash on Intel GPUs (or anywhere OpenGL compatibility profile is …
RunitaiLinden Aug 21, 2024
8fef55b
Remove or suppress left over debug messages in hot paths (#2392)
RyeMutt Aug 22, 2024
f7bb097
#2325 WebRTC: p2p voice calling option sometimes becomes disabled aft…
LLGuru Aug 21, 2024
28331b2
Do deprecated texture swizzle on GPU using GL texture swizzling funct…
RyeMutt Aug 22, 2024
1743fe9
secondlife/viewer#2391: Remove avatar rigging "callstack" logging
cosmic-linden Aug 22, 2024
1cc1872
#2393 BugSplat Crash #1504586: LLRenderTarget::getTexture(483)
LLGuru Aug 22, 2024
31d0d66
Merge pull request #2396 from secondlife/v-2391
cosmic-linden Aug 22, 2024
9b0010b
Incremented viewer version after release/2024.08-DeltaFPS branch crea…
brad-linden Aug 22, 2024
2c4fe4f
secondlife/viewer#2349: Avatar/animesh rendering correctness pass (#2…
cosmic-linden Aug 22, 2024
421ee51
Merge remote-tracking branch 'origin/release/2024.08-DeltaFPS' into d…
brad-linden Aug 22, 2024
8a22c31
Merge remote-tracking branch 'origin/release/2024.08-DeltaFPS' into d…
brad-linden Aug 22, 2024
efe8783
Merge pull request #2368 from secondlife/andreyk/viewer_2363
vir-linden Aug 23, 2024
45b2d69
Add dedicated sun probe shader and remove SSAO and shadow smoothing f…
RyeMutt Aug 23, 2024
17f515c
Update LLImageJ2C::calcDataSizeJ2C for better 2k image support (#2406)
TommyTheTerrible Aug 24, 2024
cbca178
Add Contrast Adaptive Sharpening post process effect(#2399)
RyeMutt Aug 24, 2024
2ca193c
Improve FXAA quality and performance when GL version is greater then 4
RyeMutt Aug 24, 2024
436e986
Fix mac crash on startup due to missing types from enum
RyeMutt Aug 24, 2024
779e195
Merge branch 'develop' into add-cas
RunitaiLinden Aug 26, 2024
ca11567
Replaced refreshCachedSetting for sharpening with cached control
RyeMutt Aug 26, 2024
39c7f14
Merge pull request #2415 from RyeMutt/add-cas
RyeMutt Aug 26, 2024
124f071
Merge remote-tracking branch 'origin/release/2024.08-DeltaFPS' into d…
brad-linden Aug 27, 2024
5c16ae1
viewer#2413 Remove obsolete alert about expiring voice morphs
akleshchev Aug 27, 2024
feecf09
#2431 Fix for redundant searching for pixeismall.j2c causing frame st…
RunitaiLinden Aug 27, 2024
00acf4f
#2432 Make nametags default to "show briefly"
RunitaiLinden Aug 27, 2024
9d689c6
Merge pull request #2435 from secondlife/2432-default-nametags-to-onl…
RunitaiLinden Aug 28, 2024
b281020
Clear unused metrics
maxim-productengine Aug 28, 2024
1f58884
#2438 Address frame stalls in updateImageDecodePriority
RunitaiLinden Aug 28, 2024
6a4d7b2
Merge pull request #2441 from secondlife/2438-eliminate-execution-tim…
cosmic-linden Aug 28, 2024
f8d48f6
#2432 Restore default nametag behavior. (#2444)
RunitaiLinden Aug 28, 2024
e92a06d
Merge pull request #2440 from secondlife/develop-clear-metrics
maxim-productengine Aug 28, 2024
f23f28c
secondlife/viewer#2421: Do not calculate and store silhouette edges f…
cosmic-linden Aug 28, 2024
e26261c
#2360 Incorrect Day Cycle name in Edit Day Cycle floater after clicki…
LLGuru Aug 28, 2024
0b062be
Merge pull request #2449 from secondlife/v-2421
cosmic-linden Aug 29, 2024
e280975
Make LLPipeline::renderDebug() a bit cheaper
akleshchev Aug 22, 2024
8759edd
Fix SSR clamping hdr brightness ranges
RyeMutt Aug 29, 2024
3a73748
Remove dead texunit colorspace conversion code
RyeMutt Aug 29, 2024
ecf3002
Merge remote-tracking branch 'origin/release/2024.08-DeltaFPS' into d…
brad-linden Aug 29, 2024
958afaa
Integrate SMAA and rework post process chain for better visual quality
RyeMutt Aug 28, 2024
9c6988c
Fix startup crash from removed setting
RyeMutt Aug 29, 2024
17fed39
#2360 Incorrect Day Cycle name in Edit Day Cycle floater (remove unus…
LLGuru Aug 29, 2024
7e58f08
Merge pull request #2466 from RyeMutt/smaa
RyeMutt Aug 29, 2024
400c212
#2454 Scrolling by the mouse wheel does not scroll up on the unopened…
LLGuru Aug 29, 2024
60142c1
update OpenJPEG 2.5.2 (#2452)
AiraYumi Aug 30, 2024
89a45ef
Fix background folder fetch pushing requests to wrong queue (#2436)
Ansariel Aug 30, 2024
9004cf6
secondlife/viewer#2448: Fix crash rendering rigged PBR prims
cosmic-linden Aug 30, 2024
7ab6144
Merge pull request #2472 from secondlife/v-2448
cosmic-linden Aug 30, 2024
5b83229
Introduce Khronos Neutral tonemapper as new default along with debug …
RyeMutt Aug 30, 2024
12d60b3
More styling fixes and other minor inconsistency fixes in inventorymo…
Hecklezz Sep 2, 2024
470f35b
#2471 The Destinations ComboBox on Login Screen changes the selected …
LLGuru Sep 2, 2024
ee9f7ec
#2403 Reset Skeleton issues
LLGuru Sep 2, 2024
fc46e61
viewer#2310 Fix snapshot's size string dropping color during upload
akleshchev Sep 3, 2024
821a731
viewer#2311 Message about oversized snapshots wasn't shown in some cases
akleshchev Sep 3, 2024
e42e95d
secondlife/viewer#2483: Fix label typo in PBR terrain texture transfo…
cosmic-linden Sep 3, 2024
ceed015
Merge pull request #2484 from secondlife/v-2483
cosmic-linden Sep 3, 2024
dfae0d9
Fix visualizing luminance buffer and small cleanup
RyeMutt Sep 3, 2024
36423bd
Merge pull request #2489 from RyeMutt/fix-buffervis
RyeMutt Sep 3, 2024
0f166a1
secondlife/viewer#2490: Fix PBR terrain texture transform feature fla…
cosmic-linden Sep 4, 2024
4ae1de1
viewer#2411 LLFontGL::render optimizations
akleshchev Aug 28, 2024
2bae8df
Remove usused LLButton::mBorderEnabled
akleshchev Aug 29, 2024
a638d96
viewer#2411 LLFontGL::render optimizations #2
akleshchev Aug 29, 2024
5c64e5e
viewer#2411 LLFontGL::render optimizations #3
akleshchev Aug 30, 2024
57ab1a4
viewer#2411 A bit more coverage for font buffer
akleshchev Sep 2, 2024
4cc0edb
viewer#2411 Cleanup
akleshchev Sep 2, 2024
2fc8d5f
viewer#2411 Cleanup #2
akleshchev Sep 3, 2024
f1e0fc6
#2471 The Destinations ComboBox on Login Screen... (quick fix)
LLGuru Sep 4, 2024
bd266a4
Merge pull request #2492 from secondlife/v-2490
cosmic-linden Sep 4, 2024
c272453
Fixed missing comma in list. Fixed loop with too small loop variable.…
Hecklezz Sep 4, 2024
49abe2c
Merge remote-tracking branch 'origin/release/2024.08-DeltaFPS' into d…
brad-linden Sep 4, 2024
d9f0a58
Fix some race conditions on connection shutdown.
roxanneskelly Sep 4, 2024
8c65a61
Introduce OpenXR SDK prebuilt package and cmake setup (#2503)
RyeMutt Sep 5, 2024
238a2a6
viewer#2411 Use font buffer in text segments
akleshchev Sep 4, 2024
442ee97
viewer#2411 Use font buffer in line editor
akleshchev Sep 4, 2024
494ac09
viewer#2411 Confine font vertex buffers to static text segments
akleshchev Sep 4, 2024
61627f6
#2461 changing the color of my dot on the minimap
LLGuru Sep 4, 2024
bacf9cf
Fixed md5 buffer not being correctly zero-initialized and refactored …
Hecklezz Sep 5, 2024
c963bae
Merge pull request #2510 from RyeMutt/openxr
RyeMutt Sep 5, 2024
a617dc8
Merge pull request #2506 from secondlife/roxie/webrtc-1392
roxanneskelly Sep 5, 2024
fe9596b
Fix race condition that was preventing "Voice Call" menu from reliabl…
roxanneskelly Sep 5, 2024
33fbcd8
Merge pull request #2514 from secondlife/roxie/webrtc-race
roxanneskelly Sep 5, 2024
3c471b8
Follow-up fix for 238a2a64b31e6a0b431309e363067a7fe57125ae: Item coun…
Ansariel Sep 6, 2024
322b13c
Merge pull request #2516 from Ansariel/develop-inventory_item_count
akleshchev Sep 6, 2024
256ac6e
Fix login progress always showing incorrect attempt number (#2517)
Ansariel Sep 6, 2024
6af4714
Add toggles to avatar dropdown for hear sound or voice from avatar. (…
Hecklezz Sep 6, 2024
3017b1b
Don't enable vivox spatial when teleporting while in a webrtc confere…
roxanneskelly Sep 6, 2024
9ce23cc
Merge pull request #2522 from secondlife/roxie/webrtc-281
roxanneskelly Sep 6, 2024
4a00280
viewer#2411 Use font buffer for inventory
akleshchev Sep 6, 2024
2e886b7
Merge pull request #2521 from secondlife/andreyk/viewer_2411
akleshchev Sep 7, 2024
2b7b81f
#459 Filters on object inventory
LLGuru Sep 3, 2024
2f692fb
Update calcDataSizeJ2C to stop undersized blocks (#2525)
TommyTheTerrible Sep 9, 2024
d91d39f
Changes towards C++20 compatibility (#2520)
Ansariel Sep 9, 2024
71c46bc
Fix spelling error in variable name (#2526)
FelixWolf Sep 9, 2024
782face
Reduce 'World map' floater draw time
maxim-productengine Sep 9, 2024
f3f3f99
Merge pull request #2527 from secondlife/maxim/viewer_2473
maxim-productengine Sep 9, 2024
33116ea
Merge pull request #2530 from secondlife/release/2024.08-DeltaFPS
brad-linden Sep 9, 2024
9d83760
Callback button for groups was not being reenabled after hanging up o…
roxanneskelly Sep 9, 2024
b7c82a8
Merge pull request #2533 from secondlife/roxie/webrtc-283
roxanneskelly Sep 9, 2024
5f99c47
Voice bars of self and as seen by others do not appear the same.
roxanneskelly Sep 9, 2024
100fab2
Merge pull request #2535 from secondlife/roxie/webrtc-1091
roxanneskelly Sep 9, 2024
761a4fa
Clean up llviewermenu
Ansariel Sep 10, 2024
9ffbca2
Allow the in world voice indicator to be toggled in preferences
maxim-productengine Sep 10, 2024
5967606
Merge pull request #2539 from secondlife/maxim/viewer_2443
maxim-productengine Sep 10, 2024
d5328ef
Merge pull request #2536 from Ansariel/develop-viewermenu-cleanup
nat-goodspeed Sep 10, 2024
1c1522f
#2460 Max-Non-Impostors uses a bad shape
LLGuru Sep 10, 2024
ce23e4a
#2460 Max-Non-Impostors uses a bad shape (code formatting)
LLGuru Sep 10, 2024
44e1be6
mute icons were not showing during group call when user was muted
roxanneskelly Sep 10, 2024
13e74a3
Merge remote-tracking branch 'origin/release/2024.08-DeltaFPS' into d…
brad-linden Sep 10, 2024
cde5d29
Profile guided optimizations
RunitaiLinden Sep 10, 2024
f90712b
Merge pull request #2544 from secondlife/davep-profile-session-9/10
cosmic-linden Sep 11, 2024
d6eafa1
Make updateKeyboardFocus a bit more efficient
akleshchev Sep 10, 2024
047eb16
viewer#2529 Optimize updateGLVariablesForSettings
akleshchev Sep 10, 2024
0a110ff
viewer#2529 Track interpolateSDMap's performance
akleshchev Sep 11, 2024
dfff269
viewer#2529 Optimize LLSettingsSky::blend
akleshchev Sep 11, 2024
f78b43b
Fix issue with improper reporting as to whether voice is working.
roxanneskelly Sep 11, 2024
5f622a0
Fix incorrect operator warning and possible dereferencing of null poi…
Ansariel Sep 12, 2024
1a65e29
Fix names in group chat sometimes showing as "Loading..." and never r…
Ansariel Sep 12, 2024
0c7cb66
Merge pull request #2551 from secondlife/roxie/webrtc-1436
roxanneskelly Sep 12, 2024
33c8fd2
#2542 Buoyant Nametags
LLGuru Sep 12, 2024
1f64232
Don't allow LLAttachmentsMgr to iterate COF items when there is no qu…
maxim-productengine Sep 12, 2024
e71215d
viewer#2529 Optimize LLSettingsWater::blend
akleshchev Sep 12, 2024
264c578
Fix warning spam from missing call to unmapBuffer introduced in #2544…
RyeMutt Sep 12, 2024
14a3c75
Mac compatibility pass.
RunitaiLinden Sep 12, 2024
61990bf
Fix for tracy not working on mac
RunitaiLinden Sep 12, 2024
3c5e8de
Merge branch 'develop' into davep-fix-mac-vb
RunitaiLinden Sep 12, 2024
b713f56
Replace glh_linear usage with GLM (#2554)
RyeMutt Sep 12, 2024
1894136
Merge pull request #2543 from secondlife/roxie/webrtc-285
roxanneskelly Sep 12, 2024
ccbd69b
#2166 Avatar does not move its lips when the corresponding checkbox i…
LLGuru Sep 12, 2024
bb9a2dd
Fix for mac build with tracy enabled.
brad-linden Sep 12, 2024
f4c5351
Attempted fix for mac crash when showing About Second Life.
brad-linden Sep 12, 2024
7dd04de
Merge pull request #2557 from secondlife/davep-fix-mac-vb
brad-linden Sep 12, 2024
a3f6f98
Merge pull request #2561 from secondlife/brad/2553-about-sl-crash-loc…
brad-linden Sep 12, 2024
f568fe6
Fix macOS locale not being set due to missing locale strings
RyeMutt Sep 13, 2024
1e1010b
Merge pull request #2545 for viewer#2529 Improve environment's perfor…
akleshchev Sep 13, 2024
c892ce9
Merge pull request #2563 from RyeMutt/fix-macos-locale
RyeMutt Sep 13, 2024
7420560
Clean up Windows build (#2562)
Ansariel Sep 13, 2024
da87e8b
send AgentUpdate ASAP when control bits change
AndrewMeadows Sep 13, 2024
2f38f06
Merge pull request #2569 from secondlife/leviathan/send_agent_update
AndrewMeadows Sep 13, 2024
85a7020
Raise resolution of local baked texture preview from 512 to 2048
RyeMutt Sep 13, 2024
e3c3cc6
Fix for crash in LLPluginProcessParent during early shutdown.
brad-linden Sep 16, 2024
7594e3b
Merge pull request #2578 from secondlife/brad/2550-plugin-shutdown-crash
brad-linden Sep 16, 2024
eac0c74
Fix noise post effect due to missing uniform (#2581)
RyeMutt Sep 16, 2024
42975df
Merge pull request #2580 from RyeMutt/2kbom
RyeMutt Sep 16, 2024
486613e
Profile guided optimization pass (#2582)
RunitaiLinden Sep 16, 2024
f378d2f
Fix Visual Studio complaints in LLTrans (#2575)
Ansariel Sep 17, 2024
870ffbd
Suppress mapBuffer warnings. (#2584)
RunitaiLinden Sep 17, 2024
fd843d5
Mac pass (#2587)
RunitaiLinden Sep 17, 2024
0a61790
#2590 Fix for horrible FPS on Intel Mac (#2591)
RunitaiLinden Sep 17, 2024
55f2103
viewer#2565 Optimize LLFolderViewItem::draw()
akleshchev Sep 13, 2024
3327ae7
Convert image drawing logic from quads to triangles
akleshchev Sep 17, 2024
689d9e6
More quad to triangle coverage
akleshchev Sep 17, 2024
83cf25a
Tiny argument names correction (tittle -> title) (#2594)
PanteraPolnocy Sep 18, 2024
d9da5bb
Remove quads rendering mode entirely (#2593)
Ansariel Sep 18, 2024
27b8e6d
#2408 The long covenant with emojis significantly slows down some ope…
LLGuru Sep 18, 2024
f037cde
Make Develop->Render Tests->Frame Profile dump JSON to a file too.
nat-goodspeed Sep 11, 2024
a3d6544
Give `LLGLSLShader::finishProfile()` a static default string param.
nat-goodspeed Sep 12, 2024
277ee68
Add a JSON frame profile stats file pretty-printer script.
nat-goodspeed Sep 12, 2024
ee1b006
Add script to convert frame profile JSON file to CSV.
nat-goodspeed Sep 12, 2024
e6d0138
Add LLFloaterAbout info (esp. GPU info) to Frame Profile stats dump
nat-goodspeed Sep 16, 2024
d6e10ba
viewer#1016 Incorrect behavior of Physics Shapes rendering
akleshchev Mar 25, 2024
5370a6d
fix whitespace
brad-linden Sep 18, 2024
9890b5b
added .git-blame-ignore for last commit
brad-linden Sep 18, 2024
52091a6
Mute other / set volume level for other is not working.
roxanneskelly Sep 18, 2024
4640f32
Merge remote-tracking branch 'origin/main' into develop
brad-linden Sep 18, 2024
b31fd16
Fix for particles not loading textures (#2598)
RunitaiLinden Sep 18, 2024
1dcbae8
Merge pull request #2600 from secondlife/brad/1016-cherry-pick
brad-linden Sep 18, 2024
e829828
Introduce fsyspath subclass of std::filesystem::path.
nat-goodspeed Apr 3, 2024
837a6e0
Give our fsyspath an operator std::string() conversion method.
nat-goodspeed Jun 28, 2024
725e1b7
Ditch trailing space.
nat-goodspeed Sep 18, 2024
705ec15
Add script to compare a Frame Profile JSON stats file vs. baseline.
nat-goodspeed Sep 13, 2024
743a1a6
fix trailing whitespace
roxanneskelly Sep 18, 2024
f0300cf
Add hexdump.h with iostream manipulators to dump a byte range as hex
nat-goodspeed Sep 18, 2024
9fa95dd
Fix crash in LLImProcessing when message comes in before region is fu…
brad-linden Sep 18, 2024
2fd18ee
Fix copy&paste error in llfloaterimagepreview.cpp (#2596)
Ansariel Sep 18, 2024
ee3645a
Fix possible dereferencing of nullptr in llglsandbox.cpp (#2597)
Ansariel Sep 18, 2024
c5a2235
Turn off sLogInSignal to avoid crashing. (#2607)
brad-linden Sep 19, 2024
ecfd66f
Avoid LL_ERRS when wgl_ARB_pixel_format is not supported (#2606)
brad-linden Sep 19, 2024
a36cf18
Merge pull request #2602 from secondlife/roxie/webrtc-2601
roxanneskelly Sep 19, 2024
b0597e9
add some more whitespace commits to .git-blame-ignore-revs
brad-linden Sep 19, 2024
6d842ac
Expose LLVector4a in LLRender
akleshchev Sep 18, 2024
8c40e6f
Reapply commit f4b6563 -- cherry-picking lost parts of it?!
nat-goodspeed Sep 19, 2024
8342d68
Merge branch 'develop' into frame-profile-json
nat-goodspeed Sep 19, 2024
be40936
trailing spaces from other branches
nat-goodspeed Sep 19, 2024
7e4cdc3
Don't keep updating snapshot preview when the floater is closed
maxim-productengine Sep 19, 2024
25969b3
viewer#2608 Crash at LLSnapshotLivePreview::getFormattedImage
akleshchev Sep 19, 2024
a7d5d4c
Merge pull request #2610 from secondlife/frame-profile-json
nat-goodspeed Sep 19, 2024
b589d39
remove dead code in build.sh
brad-linden Sep 19, 2024
22675c9
viewer#2627 instead of checking map for being empty got empty map
akleshchev Sep 23, 2024
5eab135
Fix sky settings with reflection probe ambiance of 0 still receiving …
brad-linden Sep 23, 2024
86446c7
viewer#2648 Fix issues with day offset value
akleshchev Sep 24, 2024
a2e9a0c
viewer-private#291 Object floating text does not update without movin…
akleshchev Sep 24, 2024
cd8b0a4
Revert "viewer#2413 Remove obsolete alert about expiring voice morphs"
akleshchev Sep 24, 2024
d73395a
viewer#2413 Add 'ignore' checkbox to expiring voice morphs
akleshchev Sep 24, 2024
37f539b
viewer#2413 Partially remove obsolete alert about expiring voice morphs
akleshchev Sep 25, 2024
49a2c13
viewer#2646 Fix viewer ignoring Physics Shape Type changes
akleshchev Sep 25, 2024
440c7b2
#2411 Allow disabling and enabling LLFontVertexBuffer
akleshchev Sep 26, 2024
3927caa
#2411 Disable LLFontVertexBuffer for HUD
akleshchev Sep 26, 2024
e74b48e
viewer#2709 Fix loose triangle
akleshchev Sep 26, 2024
64c055f
viewer#2653 fix texture readback not being called and not setting val…
akleshchev Sep 26, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
18 changes: 9 additions & 9 deletions .clang-format
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
# clang-format version 10.0.0+
Language: Cpp
# BasedOnStyle: Microsoft
AccessModifierOffset: -2
AccessModifierOffset: -4
AlignAfterOpenBracket: Align
AlignConsecutiveMacros: true
AlignConsecutiveAssignments: true
Expand All @@ -15,14 +15,14 @@ AllowAllConstructorInitializersOnNextLine: false
AllowAllParametersOfDeclarationOnNextLine: false
AllowShortBlocksOnASingleLine: Always
AllowShortCaseLabelsOnASingleLine: false
AllowShortFunctionsOnASingleLine: All
AllowShortLambdasOnASingleLine: All
AllowShortFunctionsOnASingleLine: InlineOnly
AllowShortLambdasOnASingleLine: Inline
AllowShortIfStatementsOnASingleLine: Never
AllowShortLoopsOnASingleLine: false
AlwaysBreakAfterDefinitionReturnType: None
AlwaysBreakAfterReturnType: None
AlwaysBreakBeforeMultilineStrings: false
AlwaysBreakTemplateDeclarations: MultiLine
AlwaysBreakTemplateDeclarations: Yes
BinPackArguments: true
BinPackParameters: true
BreakBeforeBinaryOperators: None
Expand Down Expand Up @@ -67,7 +67,7 @@ IndentCaseLabels: true
IndentGotoLabels: true
IndentPPDirectives: None
IndentWidth: 4
IndentWrappedFunctionNames: false
IndentWrappedFunctionNames: true
JavaScriptQuotes: Leave
JavaScriptWrapImports: true
KeepEmptyLinesAtTheStartOfBlocks: false
Expand All @@ -91,9 +91,9 @@ PointerAlignment: Left
ReflowComments: true
SortIncludes: false
SortUsingDeclarations: true
SpaceAfterCStyleCast: true
SpaceAfterCStyleCast: false
SpaceAfterLogicalNot: false
SpaceAfterTemplateKeyword: true
SpaceAfterTemplateKeyword: false
SpaceBeforeAssignmentOperators: true
SpaceBeforeCpp11BracedList: false
SpaceBeforeCtorInitializerColon: true
Expand All @@ -102,8 +102,8 @@ SpaceBeforeParens: ControlStatements
SpaceBeforeRangeBasedForLoopColon: true
SpaceInEmptyBlock: false
SpaceInEmptyParentheses: false
SpacesBeforeTrailingComments: 2
SpacesInAngles: false
SpacesBeforeTrailingComments: 1
SpacesInAngles: Never
SpacesInContainerLiterals: false
SpacesInCStyleCastParentheses: false
SpacesInParentheses: false
Expand Down
4 changes: 4 additions & 0 deletions .git-blame-ignore-revs
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,11 @@
a0b3021bdcf76859054fda8e30abb3ed47749e83
8444cd9562a6a7b755fcb075864e205122354192
863c541ce0b2e3e1e566cc88423d3e87aaedb6ca
743a1a6d8eabf069d95777c96e5b657cb8702593
4a00da1ada89af6f313cee30f5177634b0b180a9
# Wrong line endings
1b67dd855c41f5a0cda7ec2a68d98071986ca703
6cc7dd09d5e69cf57e6de7fb568a0ad2693f9c9a
e2e37cced861b98de8c1a7c9c0d3a50d2d90e433
# multiple problems
5370a6d323e14d7b4e32a3f41ef78f7744e361c5
74 changes: 68 additions & 6 deletions autobuild.xml
Original file line number Diff line number Diff line change
Expand Up @@ -2099,11 +2099,11 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors</string>
<key>archive</key>
<map>
<key>hash</key>
<string>c16deaf773cb2a5d001732122ee3ec74db1dceeb</string>
<string>76444e37be0cfccdbb5921370ba150ded2bf3c59</string>
<key>hash_algorithm</key>
<string>sha1</string>
<key>url</key>
<string>https://github.com/secondlife/3p-openjpeg/releases/download/v2.5.0.ea12248/openjpeg-2.5.0.ea12248-darwin64-ea12248.tar.zst</string>
<string>https://github.com/secondlife/3p-openjpeg/releases/download/v2.5.2-r1/openjpeg-2.5.2.10604495243-darwin64-10604495243.tar.zst</string>
</map>
<key>name</key>
<string>darwin64</string>
Expand All @@ -2113,11 +2113,11 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors</string>
<key>archive</key>
<map>
<key>hash</key>
<string>8c277dde6076fb682cb07264dd70f6f2298b633f</string>
<string>6bd289a9c4564b80369ce40ecbb24a213c2732ff</string>
<key>hash_algorithm</key>
<string>sha1</string>
<key>url</key>
<string>https://github.com/secondlife/3p-openjpeg/releases/download/v2.5.0.ea12248/openjpeg-2.5.0.ea12248-linux64-ea12248.tar.zst</string>
<string>https://github.com/secondlife/3p-openjpeg/releases/download/v2.5.2-r1/openjpeg-2.5.2.10604495243-linux64-10604495243.tar.zst</string>
</map>
<key>name</key>
<string>linux64</string>
Expand All @@ -2127,11 +2127,11 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors</string>
<key>archive</key>
<map>
<key>hash</key>
<string>2abf9535adf21ebdf2295f8a680300432abe6280</string>
<string>5e6e0180adc01e07438cb98daec96543b5d85019</string>
<key>hash_algorithm</key>
<string>sha1</string>
<key>url</key>
<string>https://github.com/secondlife/3p-openjpeg/releases/download/v2.5.0.ea12248/openjpeg-2.5.0.ea12248-windows64-ea12248.tar.zst</string>
<string>https://github.com/secondlife/3p-openjpeg/releases/download/v2.5.2-r1/openjpeg-2.5.2.10604495243-windows64-10604495243.tar.zst</string>
</map>
<key>name</key>
<string>windows64</string>
Expand Down Expand Up @@ -2210,6 +2210,68 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors</string>
<key>description</key>
<string>Secure Sockets Layer (SSL v2/v3) and Transport Layer Security (TLS v1) Library</string>
</map>
<key>openxr</key>
<map>
<key>platforms</key>
<map>
<key>windows64</key>
<map>
<key>archive</key>
<map>
<key>hash</key>
<string>3cccc3e3f3137066c286270b35abc00ee0c0bb0c</string>
<key>hash_algorithm</key>
<string>sha1</string>
<key>url</key>
<string>https://github.com/secondlife/3p-openxr/releases/download/v1.1.40-r1/openxr-1.1.40-r1-windows64-10710818432.tar.zst</string>
</map>
<key>name</key>
<string>windows64</string>
</map>
<key>linux64</key>
<map>
<key>archive</key>
<map>
<key>hash</key>
<string>f0ad0418a98fb8cb6e158fca3902c15ac1de9d2a</string>
<key>hash_algorithm</key>
<string>sha1</string>
<key>url</key>
<string>https://github.com/secondlife/3p-openxr/releases/download/v1.1.40-r1/openxr-1.1.40-r1-linux64-10710818432.tar.zst</string>
</map>
<key>name</key>
<string>linux64</string>
</map>
<key>darwin64</key>
<map>
<key>archive</key>
<map>
<key>hash</key>
<string>a9bfabec63a987bd34bcfdc295b928bd0696e1d7</string>
<key>hash_algorithm</key>
<string>sha1</string>
<key>url</key>
<string>https://github.com/secondlife/3p-openxr/releases/download/v1.1.40-r1/openxr-1.1.40-r1-darwin64-10710818432.tar.zst</string>
</map>
<key>name</key>
<string>darwin64</string>
</map>
</map>
<key>license</key>
<string>Apache 2.0</string>
<key>license_file</key>
<string>LICENSES/openxr.txt</string>
<key>copyright</key>
<string>Copyright 2017-2024, The Khronos Group Inc.</string>
<key>version</key>
<string>1.1.40-r1</string>
<key>name</key>
<string>openxr</string>
<key>canonical_repo</key>
<string>https://github.com/secondlife/3p-openxr</string>
<key>description</key>
<string>Generated headers and sources for OpenXR loader.</string>
</map>
<key>slvoice</key>
<map>
<key>platforms</key>
Expand Down
9 changes: 0 additions & 9 deletions build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -517,15 +517,6 @@ then
fi
fi

# Some of the uploads takes a long time to finish in the codeticket backend,
# causing the next codeticket upload attempt to fail.
# Inserting this after each potentially large upload may prevent those errors.
# JJ is making changes to Codeticket that we hope will eliminate this failure, then this can be removed
wait_for_codeticket()
{
sleep $(( 60 * 6 ))
}

# check status and upload results to S3
if $succeeded
then
Expand Down
1 change: 1 addition & 0 deletions doc/contributions.txt
Original file line number Diff line number Diff line change
Expand Up @@ -1210,6 +1210,7 @@ PanteraPolnocy
SL-18937
SL-19207
SL-19681
secondlife/viewer#2483
Parvati Silverweb
Patric Mills
VWR-2645
Expand Down
12 changes: 6 additions & 6 deletions indra/cmake/00-Common.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -68,9 +68,12 @@ if (WINDOWS)
/NODEFAULTLIB:LIBCMT
/IGNORE:4099)

add_definitions(
-DNOMINMAX
# /DDOM_DYNAMIC # For shared library colladadom
add_compile_definitions(
WIN32_LEAN_AND_MEAN
NOMINMAX
# DOM_DYNAMIC # For shared library colladadom
_CRT_SECURE_NO_WARNINGS # Allow use of sprintf etc
_WINSOCK_DEPRECATED_NO_WARNINGS # Disable deprecated WinSock API warnings
)
add_compile_options(
/Zo
Expand Down Expand Up @@ -106,9 +109,6 @@ if (WINDOWS)
string(REPLACE "/Zi" "/Z7" CMAKE_C_FLAGS_RELWITHDEBINFO "${CMAKE_C_FLAGS_RELWITHDEBINFO}")
string(REPLACE "/Zi" "/Z7" CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO}")
endif()

# Allow use of sprintf etc
add_compile_definitions(_CRT_SECURE_NO_WARNINGS)
endif (WINDOWS)


Expand Down
1 change: 1 addition & 0 deletions indra/cmake/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@ set(cmake_SOURCE_FILES
FreeType.cmake
GLEXT.cmake
GLH.cmake
GLM.cmake
Havok.cmake
Hunspell.cmake
LLAddBuildTest.cmake
Expand Down
22 changes: 22 additions & 0 deletions indra/cmake/OpenXR.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
# -*- cmake -*-

include(Prebuilt)

include_guard()
add_library( ll::openxr INTERFACE IMPORTED )

if(USE_CONAN )
target_link_libraries( ll::openxr INTERFACE CONAN_PKG::openxr )
return()
endif()

use_prebuilt_binary(openxr)
if (WINDOWS)
target_link_libraries( ll::openxr INTERFACE ${ARCH_PREBUILT_DIRS_RELEASE}/openxr_loader.lib )
else()
target_link_libraries( ll::openxr INTERFACE ${ARCH_PREBUILT_DIRS_RELEASE}/libopenxr_loader.a )
endif (WINDOWS)

if( NOT LINUX )
target_include_directories( ll::openxr SYSTEM INTERFACE ${LIBS_PREBUILT_DIR}/include)
endif()
7 changes: 6 additions & 1 deletion indra/cmake/Tracy.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ add_library( ll::tracy INTERFACE IMPORTED )

# default Tracy profiling on for test builds, but off for all others
string(TOLOWER ${VIEWER_CHANNEL} channel_lower)
if(WINDOWS AND channel_lower MATCHES "^second life test")
if(channel_lower MATCHES "^second life test")
option(USE_TRACY "Use Tracy profiler." ON)
else()
option(USE_TRACY "Use Tracy profiler." OFF)
Expand All @@ -31,6 +31,11 @@ if (USE_TRACY)
target_compile_definitions(ll::tracy INTERFACE -DTRACY_NO_BROADCAST=1 -DTRACY_ONLY_LOCALHOST=1)
endif ()

# GHA runners don't always provide invariant TSC support, but always build with LL_TESTS enabled
if (DARWIN AND LL_TESTS)
target_compile_definitions(ll::tracy INTERFACE -DTRACY_TIMER_FALLBACK=1)
endif ()

# See: indra/llcommon/llprofiler.h
add_compile_definitions(LL_PROFILER_CONFIGURATION=3)
endif (USE_TRACY)
Expand Down
4 changes: 2 additions & 2 deletions indra/llappearance/llavatarappearancedefines.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -28,8 +28,8 @@
#include "llavatarappearancedefines.h"
#include "indra_constants.h"

const S32 LLAvatarAppearanceDefines::SCRATCH_TEX_WIDTH = 1024;
const S32 LLAvatarAppearanceDefines::SCRATCH_TEX_HEIGHT = 1024;
const S32 LLAvatarAppearanceDefines::SCRATCH_TEX_WIDTH = 2048;
const S32 LLAvatarAppearanceDefines::SCRATCH_TEX_HEIGHT = 2048;

using namespace LLAvatarAppearanceDefines;

Expand Down
2 changes: 1 addition & 1 deletion indra/llcommon/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -119,6 +119,7 @@ set(llcommon_HEADER_FILES
commoncontrol.h
ctype_workaround.h
fix_macros.h
fsyspath.h
function_types.h
indra_constants.h
lazyeventapi.h
Expand Down Expand Up @@ -240,7 +241,6 @@ set(llcommon_HEADER_FILES
lluriparser.h
lluuid.h
llwin32headers.h
llwin32headerslean.h
llworkerthread.h
hbxxh.h
lockstatic.h
Expand Down
79 changes: 79 additions & 0 deletions indra/llcommon/fsyspath.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
/**
* @file fsyspath.h
* @author Nat Goodspeed
* @date 2024-04-03
* @brief Adapt our UTF-8 std::strings for std::filesystem::path
*
* $LicenseInfo:firstyear=2024&license=viewerlgpl$
* Copyright (c) 2024, Linden Research, Inc.
* $/LicenseInfo$
*/

#if ! defined(LL_FSYSPATH_H)
#define LL_FSYSPATH_H

#include <filesystem>

// While std::filesystem::path can be directly constructed from std::string on
// both Posix and Windows, that's not what we want on Windows. Per
// https://en.cppreference.com/w/cpp/filesystem/path/path:

// ... the method of conversion to the native character set depends on the
// character type used by source.
//
// * If the source character type is char, the encoding of the source is
// assumed to be the native narrow encoding (so no conversion takes place on
// POSIX systems).
// * If the source character type is char8_t, conversion from UTF-8 to native
// filesystem encoding is used. (since C++20)
// * If the source character type is wchar_t, the input is assumed to be the
// native wide encoding (so no conversion takes places on Windows).

// The trouble is that on Windows, from std::string ("source character type is
// char"), the "native narrow encoding" isn't UTF-8, so file paths containing
// non-ASCII characters get mangled.
//
// Once we're building with C++20, we could pass a UTF-8 std::string through a
// vector<char8_t> to engage std::filesystem::path's own UTF-8 conversion. But
// sigh, as of 2024-04-03 we're not yet there.
//
// Anyway, encapsulating the important UTF-8 conversions in our own subclass
// allows us to migrate forward to C++20 conventions without changing
// referencing code.

class fsyspath: public std::filesystem::path
{
using super = std::filesystem::path;

public:
// default
fsyspath() {}
// construct from UTF-8 encoded std::string
fsyspath(const std::string& path): super(std::filesystem::u8path(path)) {}
// construct from UTF-8 encoded const char*
fsyspath(const char* path): super(std::filesystem::u8path(path)) {}
// construct from existing path
fsyspath(const super& path): super(path) {}

fsyspath& operator=(const super& p) { super::operator=(p); return *this; }
fsyspath& operator=(const std::string& p)
{
super::operator=(std::filesystem::u8path(p));
return *this;
}
fsyspath& operator=(const char* p)
{
super::operator=(std::filesystem::u8path(p));
return *this;
}

// shadow base-class string() method with UTF-8 aware method
std::string string() const { return super::u8string(); }
// On Posix systems, where value_type is already char, this operator
// std::string() method shadows the base class operator string_type()
// method. But on Windows, where value_type is wchar_t, the base class
// doesn't have operator std::string(). Provide it.
operator std::string() const { return string(); }
};

#endif /* ! defined(LL_FSYSPATH_H) */
Loading
Loading