summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--doc/contributions.txt1730
-rw-r--r--indra/llmath/llvolume.cpp2
-rw-r--r--indra/llui/CMakeLists.txt4
-rwxr-xr-xindra/newview/app_settings/settings.xml14
-rw-r--r--indra/newview/app_settings/shaders/class1/deferred/alphaF.glsl3
-rw-r--r--indra/newview/app_settings/shaders/class1/deferred/blurLightF.glsl35
-rw-r--r--indra/newview/app_settings/shaders/class1/deferred/impostorF.glsl2
-rw-r--r--indra/newview/app_settings/shaders/class1/deferred/sunLightSSAOF.glsl74
-rw-r--r--indra/newview/app_settings/shaders/class2/deferred/alphaF.glsl3
-rw-r--r--indra/newview/app_settings/shaders/class2/deferred/blurLightF.glsl83
-rw-r--r--indra/newview/app_settings/shaders/class2/deferred/blurLightV.glsl19
-rw-r--r--indra/newview/app_settings/shaders/class2/deferred/sunLightSSAOF.glsl76
-rw-r--r--indra/newview/llfloatersearch.cpp14
-rw-r--r--indra/newview/llfloatersearch.h2
14 files changed, 971 insertions, 1090 deletions
diff --git a/doc/contributions.txt b/doc/contributions.txt
index 7231bf4da0..a7b1d2196b 100644
--- a/doc/contributions.txt
+++ b/doc/contributions.txt
@@ -1,864 +1,866 @@
-Linden Lab would like to acknowledge source code contributions from the
-following residents. The Second Life resident name is given below,
-along with the issue identifier corresponding to the patches we've
-received from them. To see more about these contributions, visit the
-browsable version: http://wiki.secondlife.com/wiki/Source_contributions
-
-Able Whitman
- VWR-650
- VWR-1460
- VWR-1691
- VWR-1735
- VWR-1813
-Adam Marker
- VWR-2755
-Agathos Frascati
- CT-246
- CT-317
- CT-352
-Aimee Trescothick
- SNOW-227
- SNOW-570
- SNOW-572
- SNOW-575
- VWR-3321
- VWR-3336
- VWR-3903
- VWR-4083
- VWR-4106
- VWR-5308
- VWR-6348
- VWR-6358
- VWR-6360
- VWR-6432
- VWR-6550
- VWR-6583
- VWR-6482
- VWR-6918
- VWR-7109
- VWR-7383
- VWR-7800
- VWR-8008
- VWR-8341
- VWR-8430
- VWR-8482
- VWR-9255
- VWR-10717
- VWR-10990
- VWR-11100
- VWR-11111
- VWR-11844
- VWR-12631
- VWR-12696
- VWR-12748
- VWR-13221
- VWR-14087
- VWR-14267
- VWR-14278
- VWR-14711
- VWR-14712
- VWR-15454
-Alejandro Rosenthal
- VWR-1184
-Aleric Inglewood
- SNOW-240
- SNOW-522
- SNOW-626
- SNOW-756
- SNOW-764
- SNOW-800
- VWR-10001
- VWR-10579
- VWR-10759
- VWR-10837
- VWR-12691
- VWR-12984
- VWR-13040
- VWR-13996
- VWR-14426
- VWR-24247
- VWR-24251
- VWR-24252
- VWR-24254
- VWR-24261
- VWR-24315
- VWR-24317
- VWR-24320
- VWR-24321
- VWR-24354
- VWR-24366
- VWR-24519
- SNOW-84
- SNOW-477
- SNOW-744
- SNOW-766
- STORM-163
- STORM-955
- STORM-960
-Ales Beaumont
- VWR-9352
- SNOW-240
-Alexandrea Fride
- STORM-255
- STORM-960
-Alissa Sabre
- VWR-81
- VWR-83
- VWR-109
- VWR-157
- VWR-171
- VWR-177
- VWR-213
- VWR-250
- VWR-251
- VWR-286
- VWR-414
- VWR-415
- VWR-459
- VWR-606
- VWR-652
- VWR-738
- VWR-1109
- VWR-1351
- VWR-1353
- VWR-1410
- VWR-1843
- VWR-2116
- VWR-2826
- VWR-3290
- VWR-3410
- VWR-3857
- VWR-4010
- VWR-5575
- VWR-5717
- VWR-5929
- VWR-6384
- VWR-6385
- VWR-6386
- VWR-6430
- VWR-6858
- VWR-6668
- VWR-7086
- VWR-7087
- VWR-7153
- VWR-7168
- VWR-9190
- VWR-10728
- VWR-11172
- VWR-12569
- VWR-12617
- VWR-12620
- VWR-12789
- SNOW-322
-Angus Boyd
- VWR-592
-Ann Congrejo
- CT-193
-Ardy Lay
- VWR-19499
- VWR-24917
-Argent Stonecutter
- VWR-68
-Armin Weatherwax
- VWR-8436
-Asuka Neely
- VWR-3434
- VWR-8179
-Balp Allen
- VWR-4157
-Be Holder
- SNOW-322
- SNOW-397
-Benja Kepler
- VWR-746
-Biancaluce Robbiani
- CT-225
- CT-226
- CT-227
- CT-228
- CT-229
- CT-230
- CT-231
- CT-321
- CT-352
-Blakar Ogre
- VWR-418
- VWR-881
- VWR-983
- VWR-1612
- VWR-1613
- VWR-2164
-blino Nakamura
- VWR-17
-Boroondas Gupte
- OPEN-29
- CTS-323
- SNOW-278
- SNOW-503
- SNOW-510
- SNOW-527
- SNOW-610
- SNOW-624
- SNOW-737
- STORM-318
- VWR-233
- VWR-20583
- VWR-20891
- VWR-23455
- WEB-262
-Bulli Schumann
- CT-218
- CT-219
- CT-220
- CT-221
- CT-222
- CT-223
- CT-224
- CT-319
- CT-350
- CT-352
-bushing Spatula
- VWR-119
- VWR-424
-Carjay McGinnis
- VWR-3737
- VWR-4070
- VWR-4212
- VWR-6154
- VWR-9400
- VWR-9620
-Catherine Pfeffer
- VWR-1282
- VWR-8624
- VWR-10854
-Celierra Darling
- VWR-1274
- VWR-6975
-Coaldust Numbers
- VWR-1095
-Cron Stardust
- VWR-10579
-Cypren Christenson
- STORM-417
-Dale Glass
- VWR-120
- VWR-560
- VWR-2502
- VWR-1358
- VWR-2041
-Drew Dri
- VWR-19683
-Drewan Keats
- VWR-28
- VWR-248
- VWR-412
- VWR-638
- VWR-660
-Dylan Haskell
- VWR-72
-Dzonatas Sol
- VWR-187
- VWR-198
- VWR-777
- VWR-878
- VWR-962
- VWR-975
- VWR-1061
- VWR-1062
- VWR-1704
- VWR-1705
- VWR-1729
- VWR-1812
-Eddi Decosta
- SNOW-586
-Eddy Stryker
- VWR-15
- VWR-23
- VWR-1468
- VWR-1475
-EponymousDylan Ra
- VWR-1289
- VWR-1465
-Eva Nowicka
- CT-324
- CT-352
-Farallon Greyskin
- VWR-2036
-Feep Larsson
- VWR-447
- VWR-1314
- VWR-4444
-Flemming Congrejo
- CT-193
- CT-318
-Fluf Fredriksson
- VWR-3450
-Fremont Cunningham
- VWR-1147
-Geneko Nemeth
- CT-117
- VWR-11069
-Gigs Taggart
- SVC-493
- VWR-6
- VWR-38
- VWR-71
- VWR-101
- VWR-166
- VWR-234
- VWR-315
- VWR-326
- VWR-442
- VWR-493
- VWR-1203
- VWR-1217
- VWR-1434
- VWR-1987
- VWR-2065
- VWR-2491
- VWR-2502
- VWR-2331
- VWR-5308
- VWR-8781
- VWR-8783
-Ginko Bayliss
- VWR-4
-Grazer Kline
- VWR-1092
- VWR-2113
-Gudmund Shepherd
- VWR-1594
- VWR-1873
-Hamncheese Omlet
- VWR-333
-HappySmurf Papp
- CT-193
-Henri Beauchamp
- VWR-1320
- VWR-1406
- VWR-4157
-Hikkoshi Sakai
- VWR-429
-Hiro Sommambulist
- VWR-66
- VWR-67
- VWR-97
- VWR-100
- VWR-105
- VWR-118
- VWR-132
- VWR-136
- VWR-143
-Hoze Menges
- VWR-255
-Ian Kas
- VWR-8780 (Russian localization)
- [NO JIRA] (Ukranian localization)
- CT-322
- CT-325
-Irene Muni
- CT-324
- CT-352
-Iskar Ariantho
- VWR-1223
- VWR-11759
-Jacek Antonelli
- SNOW-388
- VWR-165
- VWR-188
- VWR-427
- VWR-597
- VWR-2054
- VWR-2448
- VWR-2896
- VWR-2947
- VWR-2948
- VWR-3605
- VWR-8617
-JB Kraft
- VWR-5283
- VWR-7802
-Joghert LeSabre
- VWR-64
-Jonathan Yap
- STORM-435
- STORM-523
- STORM-596
- STORM-615
- STORM-616
- STORM-643
- STORM-679
- STORM-723
- STORM-726
- STORM-737
- STORM-785
- STORM-812
- STORM-829
- STORM-844
- STORM-953
- STORM-954
- STORM-960
- STORM-869
- STORM-974
- STORM-975
- STORM-977
- STORM-979
- STORM-980
- STORM-1040
- VWR-17801
- VWR-24347
- STORM-990
-Kage Pixel
- VWR-11
-Ken March
- CT-245
-Kerutsen Sellery
- VWR-1350
-Khyota Wulluf
- VWR-2085
- VWR-8885
- VWR-9256
- VWR-9966
-Kitty Barnett
- VWR-19699
- STORM-288
- STORM-799
- STORM-800
- VWR-24217
-Kunnis Basiat
- VWR-82
- VWR-102
-Latif Khalifa
- VWR-5370
-Lisa Lowe
- CT-218
- CT-219
- CT-220
- CT-221
- CT-222
- CT-223
- CT-224
- CT-319
-Lockhart Cordoso
- VWR-108
-maciek marksman
- CT-86
-Magnus Balczo
- CT-138
-Malwina Dollinger
- CT-138
-march Korda
- SVC-1020
-Marine Kelley
- STORM-281
-Matthew Dowd
- VWR-1344
- VWR-1651
- VWR-1736
- VWR-1737
- VWR-1761
- VWR-2681
-McCabe Maxsted
- SNOW-387
- VWR-1318
- VWR-4065
- VWR-4826
- VWR-6518
- VWR-7827
- VWR-7877
- VWR-7893
- VWR-8080
- VWR-8454
- VWR-8689
- VWR-9007
-Michelle2 Zenovka
- STORM-477
- VWR-2652
- VWR-2662
- VWR-2834
- VWR-3749
- VWR-4022
- VWR-4331
- VWR-4506
- VWR-4981
- VWR-5082
- VWR-5659
- VWR-7831
- VWR-8885
- VWR-8889
- VWR-8310
- VWR-9499
-Mm Alder
- SNOW-376
- VWR-197
- VWR-3777
- VWR-4232
- VWR-4794
- VWR-13578
-Mr Greggan
- VWR-445
-Nicholaz Beresford
- VWR-132
- VWR-176
- VWR-193
- VWR-349
- VWR-353
- VWR-364
- VWR-374
- VWR-546
- VWR-691
- VWR-727
- VWR-793
- VWR-794
- VWR-802
- VWR-803
- VWR-804
- VWR-805
- VWR-807
- VWR-808
- VWR-809
- VWR-810
- VWR-823
- VWR-849
- VWR-856
- VWR-865
- VWR-869
- VWR-870
- VWR-871
- VWR-873
- VWR-908
- VWR-966
- VWR-1105
- VWR-1221
- VWR-1230
- VWR-1270
- VWR-1294
- VWR-1296
- VWR-1354
- VWR-1410
- VWR-1418
- VWR-1436
- VWR-1453
- VWR-1455
- VWR-1470
- VWR-1471
- VWR-1566
- VWR-1578
- VWR-1626
- VWR-1646
- VWR-1655
- VWR-1698
- VWR-1706
- VWR-1721
- VWR-1723
- VWR-1732
- VWR-1754
- VWR-1769
- VWR-1808
- VWR-1826
- VWR-1861
- VWR-1872
- VWR-1968
- VWR-2046
- VWR-2142
- VWR-2152
- VWR-2614
- VWR-2411
- VWR-2412
- VWR-2682
- VWR-2684
-Nounouch Hapmouche
- VWR-238
-Patric Mills
- VWR-2645
-Paul Churchill
- VWR-20
- VWR-493
- VWR-749
- VWR-1567
- VWR-1647
- VWR-1880
- VWR-2072
-Paula Innis
- VWR-30
- VWR-293
- VWR-1049
- VWR-1562
-Peekay Semyorka
- VWR-7
- VWR-19
- VWR-49
- VWR-79
-Peter Lameth
- VWR-7331
-Pf Shan
- CT-225
- CT-226
- CT-227
- CT-228
- CT-229
- CT-230
- CT-231
- CT-321
- SNOW-422
-princess niven
- VWR-5733
- CT-85
- CT-320
- CT-352
-Renault Clio
- VWR-1976
-resu Ampan
- SNOW-93
-Ringo Tuxing
- CT-225
- CT-226
- CT-227
- CT-228
- CT-229
- CT-230
- CT-231
- CT-321
-Robin Cornelius
- SNOW-108
- SNOW-204
- SNOW-287
- SNOW-484
- SNOW-504
- SNOW-506
- SNOW-507
- SNOW-511
- SNOW-512
- SNOW-514
- SNOW-520
- SNOW-585
- SNOW-599
- SNOW-747
- STORM-422
- STORM-960
- VWR-2488
- VWR-9557
- VWR-10579
- VWR-11128
- VWR-12533
- VWR-12587
- VWR-12758
- VWR-12763
- VWR-12995
- VWR-20911
-Ryozu Kojima
- VWR-53
- VWR-287
-Salahzar Stenvaag
- CT-225
- CT-226
- CT-227
- CT-228
- CT-229
- CT-230
- CT-231
- CT-321
-Sammy Frederix
- VWR-6186
-Satomi Ahn
- STORM-501
- STORM-229
-Scrippy Scofield
- VWR-3748
-Seg Baphomet
- VWR-1475
- VWR-1525
- VWR-1585
- VWR-1586
- VWR-2662
- VWR-3206
- VWR-2488
-Sergen Davies
- CT-225
- CT-226
- CT-227
- CT-228
- CT-229
- CT-230
- CT-231
- CT-321
-Shawn Kaufmat
- SNOW-240
-Siana Gearz
- STORM-960
-SignpostMarv Martin
- VWR-153
- VWR-154
- VWR-155
- VWR-218
- VWR-373
- VWR-8357
-Simon Nolan
- VWR-409
-SpacedOut Frye
- VWR-34
- VWR-45
- VWR-57
- VWR-94
- VWR-113
- VWR-121
- VWR-123
- VWR-130
- VWR-1823
-Sporked Friis
- VWR-4903
-Stevex Janus
- VWR-1182
-Still Defiant
- VWR-207
- VWR-227
- VWR-446
-Strife Onizuka
- SVC-9
- VWR-14
- VWR-74
- VWR-85
- VWR-148
- WEB-164
- VWR-183
- VWR-2265
- VWR-4111
- SNOW-691
-Tayra Dagostino
- SNOW-517
- SNOW-543
- VWR-13947
-TBBle Kurosawa
- VWR-938
- VWR-941
- VWR-942
- VWR-944
- VWR-945
- SNOW-543
- VWR-1891
- VWR-1892
-Teardrops Fall
- VWR-5366
-Techwolf Lupindo
- SNOW-92
- SNOW-592
- SNOW-649
- SNOW-650
- SNOW-651
- SNOW-654
- SNOW-687
- SNOW-680
- SNOW-681
- SNOW-685
- SNOW-690
- SNOW-746
- VWR-12385
- VWR-20893
-tenebrous pau
- VWR-247
-Tharax Ferraris
- VWR-605
-Thickbrick Sleaford
- SNOW-207
- SNOW-390
- SNOW-421
- SNOW-462
- SNOW-586
- SNOW-592
- SNOW-635
- SNOW-743
- VWR-7109
- VWR-9287
- VWR-13483
- VWR-13947
- VWR-24420
-Thraxis Epsilon
- SVC-371
- VWR-383
-tiamat bingyi
- CT-246
-Tofu Buzzard
- STORM-546
-TraductoresAnonimos Alter
- CT-324
-Tue Torok
- CT-68
- CT-69
- CT-70
- CT-72
- CT-73
- CT-74
-Twisted Laws
- SNOW-352
- STORM-466
- STORM-467
- STORM-844
- STORM-643
- STORM-954
-Vadim Bigbear
- VWR-2681
-Vector Hastings
- VWR-8726
-Vixen Heron
- VWR-2710
- CT-88
-Whoops Babii
- VWR-631
- VWR-1640
- VWR-3340
- SNOW-667
- VWR-4800
- VWR-4802
- VWR-4804
- VWR-4805
- VWR-4806
- VWR-4808
- VWR-4809
- VWR-4811
- VWR-4815
- VWR-4816
- VWR-4818
- VWR-5659
- VWR-8291
- VWR-8292
- VWR-8293
- VWR-8294
- VWR-8295
- VWR-8296
- VWR-8297
- VWR-8298
-Wilton Lundquist
- VWR-7682
-WolfPup Lowenhar
- SNOW-622
- SNOW-772
- STORM-102
- STORM-103
- STORM-143
- STORM-236
- STORM-255
- STORM-256
- STORM-288
- STORM-535
- STORM-544
- STORM-654
- STORM-674
- STORM-776
- STORM-825
- VWR-20741
- VWR-20933
-Zai Lynch
- VWR-19505
-Zarkonnen Decosta
- VWR-253
-Zi Ree
- VWR-423
- VWR-671
- VWR-682
- VWR-684
- VWR-9127
- VWR-1140
-Zipherius Turas
- VWR-76
- VWR-77
-
+Linden Lab would like to acknowledge source code contributions from the
+following residents. The Second Life resident name is given below,
+along with the issue identifier corresponding to the patches we've
+received from them. To see more about these contributions, visit the
+browsable version: http://wiki.secondlife.com/wiki/Source_contributions
+
+Able Whitman
+ VWR-650
+ VWR-1460
+ VWR-1691
+ VWR-1735
+ VWR-1813
+Adam Marker
+ VWR-2755
+Agathos Frascati
+ CT-246
+ CT-317
+ CT-352
+Aimee Trescothick
+ SNOW-227
+ SNOW-570
+ SNOW-572
+ SNOW-575
+ VWR-3321
+ VWR-3336
+ VWR-3903
+ VWR-4083
+ VWR-4106
+ VWR-5308
+ VWR-6348
+ VWR-6358
+ VWR-6360
+ VWR-6432
+ VWR-6550
+ VWR-6583
+ VWR-6482
+ VWR-6918
+ VWR-7109
+ VWR-7383
+ VWR-7800
+ VWR-8008
+ VWR-8341
+ VWR-8430
+ VWR-8482
+ VWR-9255
+ VWR-10717
+ VWR-10990
+ VWR-11100
+ VWR-11111
+ VWR-11844
+ VWR-12631
+ VWR-12696
+ VWR-12748
+ VWR-13221
+ VWR-14087
+ VWR-14267
+ VWR-14278
+ VWR-14711
+ VWR-14712
+ VWR-15454
+Alejandro Rosenthal
+ VWR-1184
+Aleric Inglewood
+ SNOW-240
+ SNOW-522
+ SNOW-626
+ SNOW-756
+ SNOW-764
+ SNOW-800
+ VWR-10001
+ VWR-10579
+ VWR-10759
+ VWR-10837
+ VWR-12691
+ VWR-12984
+ VWR-13040
+ VWR-13996
+ VWR-14426
+ VWR-24247
+ VWR-24251
+ VWR-24252
+ VWR-24254
+ VWR-24261
+ VWR-24315
+ VWR-24317
+ VWR-24320
+ VWR-24321
+ VWR-24354
+ VWR-24366
+ VWR-24519
+ SNOW-84
+ SNOW-477
+ SNOW-744
+ SNOW-766
+ STORM-163
+ STORM-955
+ STORM-960
+Ales Beaumont
+ VWR-9352
+ SNOW-240
+Alexandrea Fride
+ STORM-255
+ STORM-960
+Alissa Sabre
+ VWR-81
+ VWR-83
+ VWR-109
+ VWR-157
+ VWR-171
+ VWR-177
+ VWR-213
+ VWR-250
+ VWR-251
+ VWR-286
+ VWR-414
+ VWR-415
+ VWR-459
+ VWR-606
+ VWR-652
+ VWR-738
+ VWR-1109
+ VWR-1351
+ VWR-1353
+ VWR-1410
+ VWR-1843
+ VWR-2116
+ VWR-2826
+ VWR-3290
+ VWR-3410
+ VWR-3857
+ VWR-4010
+ VWR-5575
+ VWR-5717
+ VWR-5929
+ VWR-6384
+ VWR-6385
+ VWR-6386
+ VWR-6430
+ VWR-6858
+ VWR-6668
+ VWR-7086
+ VWR-7087
+ VWR-7153
+ VWR-7168
+ VWR-9190
+ VWR-10728
+ VWR-11172
+ VWR-12569
+ VWR-12617
+ VWR-12620
+ VWR-12789
+ SNOW-322
+Angus Boyd
+ VWR-592
+Ann Congrejo
+ CT-193
+Ardy Lay
+ VWR-19499
+ VWR-24917
+Argent Stonecutter
+ VWR-68
+Armin Weatherwax
+ VWR-8436
+Asuka Neely
+ VWR-3434
+ VWR-8179
+Balp Allen
+ VWR-4157
+Be Holder
+ SNOW-322
+ SNOW-397
+Benja Kepler
+ VWR-746
+Biancaluce Robbiani
+ CT-225
+ CT-226
+ CT-227
+ CT-228
+ CT-229
+ CT-230
+ CT-231
+ CT-321
+ CT-352
+Blakar Ogre
+ VWR-418
+ VWR-881
+ VWR-983
+ VWR-1612
+ VWR-1613
+ VWR-2164
+blino Nakamura
+ VWR-17
+Boroondas Gupte
+ OPEN-29
+ CTS-323
+ SNOW-278
+ SNOW-503
+ SNOW-510
+ SNOW-527
+ SNOW-610
+ SNOW-624
+ SNOW-737
+ STORM-318
+ VWR-233
+ VWR-20583
+ VWR-20891
+ VWR-23455
+ WEB-262
+Bulli Schumann
+ CT-218
+ CT-219
+ CT-220
+ CT-221
+ CT-222
+ CT-223
+ CT-224
+ CT-319
+ CT-350
+ CT-352
+bushing Spatula
+ VWR-119
+ VWR-424
+Carjay McGinnis
+ VWR-3737
+ VWR-4070
+ VWR-4212
+ VWR-6154
+ VWR-9400
+ VWR-9620
+Catherine Pfeffer
+ VWR-1282
+ VWR-8624
+ VWR-10854
+Celierra Darling
+ VWR-1274
+ VWR-6975
+Coaldust Numbers
+ VWR-1095
+Cron Stardust
+ VWR-10579
+Cypren Christenson
+ STORM-417
+Dale Glass
+ VWR-120
+ VWR-560
+ VWR-2502
+ VWR-1358
+ VWR-2041
+Drew Dri
+ VWR-19683
+Drewan Keats
+ VWR-28
+ VWR-248
+ VWR-412
+ VWR-638
+ VWR-660
+Dylan Haskell
+ VWR-72
+Dzonatas Sol
+ VWR-187
+ VWR-198
+ VWR-777
+ VWR-878
+ VWR-962
+ VWR-975
+ VWR-1061
+ VWR-1062
+ VWR-1704
+ VWR-1705
+ VWR-1729
+ VWR-1812
+Eddi Decosta
+ SNOW-586
+Eddy Stryker
+ VWR-15
+ VWR-23
+ VWR-1468
+ VWR-1475
+EponymousDylan Ra
+ VWR-1289
+ VWR-1465
+Eva Nowicka
+ CT-324
+ CT-352
+Farallon Greyskin
+ VWR-2036
+Feep Larsson
+ VWR-447
+ VWR-1314
+ VWR-4444
+Flemming Congrejo
+ CT-193
+ CT-318
+Fluf Fredriksson
+ VWR-3450
+Fremont Cunningham
+ VWR-1147
+Geneko Nemeth
+ CT-117
+ VWR-11069
+Gigs Taggart
+ SVC-493
+ VWR-6
+ VWR-38
+ VWR-71
+ VWR-101
+ VWR-166
+ VWR-234
+ VWR-315
+ VWR-326
+ VWR-442
+ VWR-493
+ VWR-1203
+ VWR-1217
+ VWR-1434
+ VWR-1987
+ VWR-2065
+ VWR-2491
+ VWR-2502
+ VWR-2331
+ VWR-5308
+ VWR-8781
+ VWR-8783
+Ginko Bayliss
+ VWR-4
+Grazer Kline
+ VWR-1092
+ VWR-2113
+Gudmund Shepherd
+ VWR-1594
+ VWR-1873
+Hamncheese Omlet
+ VWR-333
+HappySmurf Papp
+ CT-193
+Henri Beauchamp
+ VWR-1320
+ VWR-1406
+ VWR-4157
+Hikkoshi Sakai
+ VWR-429
+Hiro Sommambulist
+ VWR-66
+ VWR-67
+ VWR-97
+ VWR-100
+ VWR-105
+ VWR-118
+ VWR-132
+ VWR-136
+ VWR-143
+Hoze Menges
+ VWR-255
+Ian Kas
+ VWR-8780 (Russian localization)
+ [NO JIRA] (Ukranian localization)
+ CT-322
+ CT-325
+Irene Muni
+ CT-324
+ CT-352
+Iskar Ariantho
+ VWR-1223
+ VWR-11759
+Jacek Antonelli
+ SNOW-388
+ VWR-165
+ VWR-188
+ VWR-427
+ VWR-597
+ VWR-2054
+ VWR-2448
+ VWR-2896
+ VWR-2947
+ VWR-2948
+ VWR-3605
+ VWR-8617
+JB Kraft
+ VWR-5283
+ VWR-7802
+Joghert LeSabre
+ VWR-64
+Jonathan Yap
+ STORM-435
+ STORM-523
+ STORM-596
+ STORM-615
+ STORM-616
+ STORM-643
+ STORM-679
+ STORM-723
+ STORM-726
+ STORM-737
+ STORM-785
+ STORM-812
+ STORM-829
+ STORM-844
+ STORM-953
+ STORM-954
+ STORM-960
+ STORM-869
+ STORM-974
+ STORM-975
+ STORM-977
+ STORM-979
+ STORM-980
+ STORM-1040
+ VWR-17801
+ VWR-24347
+ STORM-990
+Kage Pixel
+ VWR-11
+Ken March
+ CT-245
+Kerutsen Sellery
+ VWR-1350
+Khyota Wulluf
+ VWR-2085
+ VWR-8885
+ VWR-9256
+ VWR-9966
+Kitty Barnett
+ VWR-19699
+ STORM-288
+ STORM-799
+ STORM-800
+ VWR-24217
+Kunnis Basiat
+ VWR-82
+ VWR-102
+Latif Khalifa
+ VWR-5370
+Lisa Lowe
+ CT-218
+ CT-219
+ CT-220
+ CT-221
+ CT-222
+ CT-223
+ CT-224
+ CT-319
+Lockhart Cordoso
+ VWR-108
+maciek marksman
+ CT-86
+Magnus Balczo
+ CT-138
+Malwina Dollinger
+ CT-138
+march Korda
+ SVC-1020
+Marine Kelley
+ STORM-281
+Matthew Dowd
+ VWR-1344
+ VWR-1651
+ VWR-1736
+ VWR-1737
+ VWR-1761
+ VWR-2681
+McCabe Maxsted
+ SNOW-387
+ VWR-1318
+ VWR-4065
+ VWR-4826
+ VWR-6518
+ VWR-7827
+ VWR-7877
+ VWR-7893
+ VWR-8080
+ VWR-8454
+ VWR-8689
+ VWR-9007
+Michelle2 Zenovka
+ STORM-477
+ VWR-2652
+ VWR-2662
+ VWR-2834
+ VWR-3749
+ VWR-4022
+ VWR-4331
+ VWR-4506
+ VWR-4981
+ VWR-5082
+ VWR-5659
+ VWR-7831
+ VWR-8885
+ VWR-8889
+ VWR-8310
+ VWR-9499
+Mm Alder
+ SNOW-376
+ VWR-197
+ VWR-3777
+ VWR-4232
+ VWR-4794
+ VWR-13578
+Mr Greggan
+ VWR-445
+Nicholaz Beresford
+ VWR-132
+ VWR-176
+ VWR-193
+ VWR-349
+ VWR-353
+ VWR-364
+ VWR-374
+ VWR-546
+ VWR-691
+ VWR-727
+ VWR-793
+ VWR-794
+ VWR-802
+ VWR-803
+ VWR-804
+ VWR-805
+ VWR-807
+ VWR-808
+ VWR-809
+ VWR-810
+ VWR-823
+ VWR-849
+ VWR-856
+ VWR-865
+ VWR-869
+ VWR-870
+ VWR-871
+ VWR-873
+ VWR-908
+ VWR-966
+ VWR-1105
+ VWR-1221
+ VWR-1230
+ VWR-1270
+ VWR-1294
+ VWR-1296
+ VWR-1354
+ VWR-1410
+ VWR-1418
+ VWR-1436
+ VWR-1453
+ VWR-1455
+ VWR-1470
+ VWR-1471
+ VWR-1566
+ VWR-1578
+ VWR-1626
+ VWR-1646
+ VWR-1655
+ VWR-1698
+ VWR-1706
+ VWR-1721
+ VWR-1723
+ VWR-1732
+ VWR-1754
+ VWR-1769
+ VWR-1808
+ VWR-1826
+ VWR-1861
+ VWR-1872
+ VWR-1968
+ VWR-2046
+ VWR-2142
+ VWR-2152
+ VWR-2614
+ VWR-2411
+ VWR-2412
+ VWR-2682
+ VWR-2684
+Nounouch Hapmouche
+ VWR-238
+Patric Mills
+ VWR-2645
+Paul Churchill
+ VWR-20
+ VWR-493
+ VWR-749
+ VWR-1567
+ VWR-1647
+ VWR-1880
+ VWR-2072
+Paula Innis
+ VWR-30
+ VWR-293
+ VWR-1049
+ VWR-1562
+Peekay Semyorka
+ VWR-7
+ VWR-19
+ VWR-49
+ VWR-79
+Peter Lameth
+ VWR-7331
+Pf Shan
+ CT-225
+ CT-226
+ CT-227
+ CT-228
+ CT-229
+ CT-230
+ CT-231
+ CT-321
+ SNOW-422
+princess niven
+ VWR-5733
+ CT-85
+ CT-320
+ CT-352
+Renault Clio
+ VWR-1976
+resu Ampan
+ SNOW-93
+Ringo Tuxing
+ CT-225
+ CT-226
+ CT-227
+ CT-228
+ CT-229
+ CT-230
+ CT-231
+ CT-321
+Robin Cornelius
+ SNOW-108
+ SNOW-204
+ SNOW-287
+ SNOW-484
+ SNOW-504
+ SNOW-506
+ SNOW-507
+ SNOW-511
+ SNOW-512
+ SNOW-514
+ SNOW-520
+ SNOW-585
+ SNOW-599
+ SNOW-747
+ STORM-422
+ STORM-960
+ VWR-2488
+ VWR-9557
+ VWR-10579
+ VWR-11128
+ VWR-12533
+ VWR-12587
+ VWR-12758
+ VWR-12763
+ VWR-12995
+ VWR-20911
+Ryozu Kojima
+ VWR-53
+ VWR-287
+Salahzar Stenvaag
+ CT-225
+ CT-226
+ CT-227
+ CT-228
+ CT-229
+ CT-230
+ CT-231
+ CT-321
+Sammy Frederix
+ VWR-6186
+Satomi Ahn
+ STORM-501
+ STORM-229
+Scrippy Scofield
+ VWR-3748
+Seg Baphomet
+ VWR-1475
+ VWR-1525
+ VWR-1585
+ VWR-1586
+ VWR-2662
+ VWR-3206
+ VWR-2488
+Sergen Davies
+ CT-225
+ CT-226
+ CT-227
+ CT-228
+ CT-229
+ CT-230
+ CT-231
+ CT-321
+Shawn Kaufmat
+ SNOW-240
+Siana Gearz
+ STORM-960
+SignpostMarv Martin
+ VWR-153
+ VWR-154
+ VWR-155
+ VWR-218
+ VWR-373
+ VWR-8357
+Simon Nolan
+ VWR-409
+SpacedOut Frye
+ VWR-34
+ VWR-45
+ VWR-57
+ VWR-94
+ VWR-113
+ VWR-121
+ VWR-123
+ VWR-130
+ VWR-1823
+Sporked Friis
+ VWR-4903
+Stevex Janus
+ VWR-1182
+Still Defiant
+ VWR-207
+ VWR-227
+ VWR-446
+Strife Onizuka
+ SVC-9
+ VWR-14
+ VWR-74
+ VWR-85
+ VWR-148
+ WEB-164
+ VWR-183
+ VWR-2265
+ VWR-4111
+ SNOW-691
+Tayra Dagostino
+ SNOW-517
+ SNOW-543
+ VWR-13947
+TBBle Kurosawa
+ VWR-938
+ VWR-941
+ VWR-942
+ VWR-944
+ VWR-945
+ SNOW-543
+ VWR-1891
+ VWR-1892
+Teardrops Fall
+ VWR-5366
+Techwolf Lupindo
+ SNOW-92
+ SNOW-592
+ SNOW-649
+ SNOW-650
+ SNOW-651
+ SNOW-654
+ SNOW-687
+ SNOW-680
+ SNOW-681
+ SNOW-685
+ SNOW-690
+ SNOW-746
+ VWR-12385
+ VWR-20893
+tenebrous pau
+ VWR-247
+Tharax Ferraris
+ VWR-605
+Thickbrick Sleaford
+ SNOW-207
+ SNOW-390
+ SNOW-421
+ SNOW-462
+ SNOW-586
+ SNOW-592
+ SNOW-635
+ SNOW-743
+ VWR-7109
+ VWR-9287
+ VWR-13483
+ VWR-13947
+ VWR-24420
+Thraxis Epsilon
+ SVC-371
+ VWR-383
+tiamat bingyi
+ CT-246
+Tofu Buzzard
+ CTS-411
+ STORM-546
+ VWR-24509
+TraductoresAnonimos Alter
+ CT-324
+Tue Torok
+ CT-68
+ CT-69
+ CT-70
+ CT-72
+ CT-73
+ CT-74
+Twisted Laws
+ SNOW-352
+ STORM-466
+ STORM-467
+ STORM-844
+ STORM-643
+ STORM-954
+Vadim Bigbear
+ VWR-2681
+Vector Hastings
+ VWR-8726
+Vixen Heron
+ VWR-2710
+ CT-88
+Whoops Babii
+ VWR-631
+ VWR-1640
+ VWR-3340
+ SNOW-667
+ VWR-4800
+ VWR-4802
+ VWR-4804
+ VWR-4805
+ VWR-4806
+ VWR-4808
+ VWR-4809
+ VWR-4811
+ VWR-4815
+ VWR-4816
+ VWR-4818
+ VWR-5659
+ VWR-8291
+ VWR-8292
+ VWR-8293
+ VWR-8294
+ VWR-8295
+ VWR-8296
+ VWR-8297
+ VWR-8298
+Wilton Lundquist
+ VWR-7682
+WolfPup Lowenhar
+ SNOW-622
+ SNOW-772
+ STORM-102
+ STORM-103
+ STORM-143
+ STORM-236
+ STORM-255
+ STORM-256
+ STORM-288
+ STORM-535
+ STORM-544
+ STORM-654
+ STORM-674
+ STORM-776
+ STORM-825
+ VWR-20741
+ VWR-20933
+Zai Lynch
+ VWR-19505
+Zarkonnen Decosta
+ VWR-253
+Zi Ree
+ VWR-423
+ VWR-671
+ VWR-682
+ VWR-684
+ VWR-9127
+ VWR-1140
+Zipherius Turas
+ VWR-76
+ VWR-77
+
diff --git a/indra/llmath/llvolume.cpp b/indra/llmath/llvolume.cpp
index c4be176353..dabec6390d 100644
--- a/indra/llmath/llvolume.cpp
+++ b/indra/llmath/llvolume.cpp
@@ -1898,7 +1898,7 @@ BOOL LLVolume::generate()
// Split is a parameter to LLProfile::generate that tesselates edges on the profile
// to prevent lighting and texture interpolation errors on triangles that are
// stretched due to twisting or scaling on the path.
- S32 split = (S32) ((mDetail)*0.66f);
+ S32 split = 0;//(S32) ((mDetail)*0.66f);
if (mParams.getPathParams().getCurveType() == LL_PCODE_PATH_LINE &&
(mParams.getPathParams().getScale().mV[0] != 1.0f ||
diff --git a/indra/llui/CMakeLists.txt b/indra/llui/CMakeLists.txt
index 684e393cba..3e94a4738b 100644
--- a/indra/llui/CMakeLists.txt
+++ b/indra/llui/CMakeLists.txt
@@ -245,11 +245,11 @@ target_link_libraries(llui
)
# Add tests
-if (LL_TESTS)
+if (0 AND LL_TESTS)
include(LLAddBuildTest)
SET(llui_TEST_SOURCE_FILES
llurlmatch.cpp
llurlentry.cpp
)
LL_ADD_PROJECT_UNIT_TESTS(llui "${llui_TEST_SOURCE_FILES}")
-endif (LL_TESTS) \ No newline at end of file
+endif (0 AND LL_TESTS)
diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml
index d0c62817e5..9878729884 100755
--- a/indra/newview/app_settings/settings.xml
+++ b/indra/newview/app_settings/settings.xml
@@ -7252,7 +7252,7 @@
<string>Vector3</string>
<key>Value</key>
<array>
- <real>0.40</real>
+ <real>0.70</real>
<real>1.00</real>
<real>0.00</real>
</array>
@@ -8009,7 +8009,7 @@
<key>Type</key>
<string>F32</string>
<key>Value</key>
- <real>0.1</real>
+ <real>0</real>
</map>
<key>RenderGIAmbiance</key>
@@ -8229,9 +8229,9 @@
<string>Vector3</string>
<key>Value</key>
<array>
- <real>0.299</real>
- <real>0.587</real>
- <real>0.114</real>
+ <real>1</real>
+ <real>0</real>
+ <real>0</real>
</array>
</map>
<key>RenderGlowMaxExtractAlpha</key>
@@ -8243,7 +8243,7 @@
<key>Type</key>
<string>F32</string>
<key>Value</key>
- <real>0.065</real>
+ <real>0.25</real>
</map>
<key>RenderGlowMinLuminance</key>
<map>
@@ -8254,7 +8254,7 @@
<key>Type</key>
<string>F32</string>
<key>Value</key>
- <real>2.5</real>
+ <real>0.81</real>
</map>
<key>RenderGlowResolutionPow</key>
<map>
diff --git a/indra/newview/app_settings/shaders/class1/deferred/alphaF.glsl b/indra/newview/app_settings/shaders/class1/deferred/alphaF.glsl
index b08c5dd295..28a38d4390 100644
--- a/indra/newview/app_settings/shaders/class1/deferred/alphaF.glsl
+++ b/indra/newview/app_settings/shaders/class1/deferred/alphaF.glsl
@@ -10,7 +10,6 @@
#extension GL_ARB_texture_rectangle : enable
uniform sampler2D diffuseMap;
-uniform sampler2D noiseMap;
uniform sampler2DRect depthMap;
uniform mat4 shadow_matrix[6];
@@ -45,8 +44,6 @@ void main()
vec2 frag = vary_fragcoord.xy/vary_fragcoord.z*0.5+0.5;
frag *= screen_res;
- vec3 samp_pos = getPosition(frag).xyz;
-
vec4 pos = vec4(vary_position, 1.0);
vec4 col = vec4(vary_ambient + vary_directional.rgb, gl_Color.a);
diff --git a/indra/newview/app_settings/shaders/class1/deferred/blurLightF.glsl b/indra/newview/app_settings/shaders/class1/deferred/blurLightF.glsl
index ea2df4b51a..d9f021b114 100644
--- a/indra/newview/app_settings/shaders/class1/deferred/blurLightF.glsl
+++ b/indra/newview/app_settings/shaders/class1/deferred/blurLightF.glsl
@@ -39,44 +39,49 @@ vec4 getPosition(vec2 pos_screen)
void main()
{
- vec3 norm = texture2DRect(normalMap, vary_fragcoord.xy).xyz;
+ vec2 tc = vary_fragcoord.xy;
+ vec3 norm = texture2DRect(normalMap, tc).xyz;
norm = vec3((norm.xy-0.5)*2.0,norm.z); // unpack norm
- vec3 pos = getPosition(vary_fragcoord.xy).xyz;
- vec4 ccol = texture2DRect(lightMap, vary_fragcoord.xy).rgba;
+ vec3 pos = getPosition(tc).xyz;
+ vec4 ccol = texture2DRect(lightMap, tc).rgba;
vec2 dlt = kern_scale * delta / (1.0+norm.xy*norm.xy);
-
dlt /= max(-pos.z*dist_factor, 1.0);
vec2 defined_weight = kern[0].xy; // special case the first (centre) sample's weight in the blur; we have to sample it anyway so we get it for 'free'
vec4 col = defined_weight.xyxx * ccol;
-
+
+ // relax tolerance according to distance to avoid speckling artifacts, as angles and distances are a lot more abrupt within a small screen area at larger distances
+ float pointplanedist_tolerance_pow2 = pos.z*pos.z*0.00005;
+
+ // perturb sampling origin slightly in screen-space to hide edge-ghosting artifacts where smoothing radius is quite large
+ tc += ( (mod(tc.x+tc.y,2) - 0.5) * kern[1].z * dlt * 0.5 );
+
for (int i = 1; i < 4; i++)
{
- vec2 tc = vary_fragcoord.xy + kern[i].z*dlt;
- vec3 samppos = getPosition(tc).xyz;
+ vec2 samptc = tc + kern[i].z*dlt;
+ vec3 samppos = getPosition(samptc).xyz;
float d = dot(norm.xyz, samppos.xyz-pos.xyz);// dist from plane
- if (d*d <= 0.003)
+ if (d*d <= pointplanedist_tolerance_pow2)
{
- col += texture2DRect(lightMap, tc)*kern[i].xyxx;
+ col += texture2DRect(lightMap, samptc)*kern[i].xyxx;
defined_weight += kern[i].xy;
}
}
for (int i = 1; i < 4; i++)
{
- vec2 tc = vary_fragcoord.xy - kern[i].z*dlt;
- vec3 samppos = getPosition(tc).xyz;
+ vec2 samptc = tc - kern[i].z*dlt;
+ vec3 samppos = getPosition(samptc).xyz;
float d = dot(norm.xyz, samppos.xyz-pos.xyz);// dist from plane
- if (d*d <= 0.003)
+ if (d*d <= pointplanedist_tolerance_pow2)
{
- col += texture2DRect(lightMap, tc)*kern[i].xyxx;
+ col += texture2DRect(lightMap, samptc)*kern[i].xyxx;
defined_weight += kern[i].xy;
}
}
-
-
col /= defined_weight.xyxx;
+ col.y *= col.y;
gl_FragColor = col;
}
diff --git a/indra/newview/app_settings/shaders/class1/deferred/impostorF.glsl b/indra/newview/app_settings/shaders/class1/deferred/impostorF.glsl
index e3c15a2ab2..f4f6ee95d0 100644
--- a/indra/newview/app_settings/shaders/class1/deferred/impostorF.glsl
+++ b/indra/newview/app_settings/shaders/class1/deferred/impostorF.glsl
@@ -16,5 +16,5 @@ void main()
vec4 col = texture2D(diffuseMap, gl_TexCoord[0].xy);
gl_FragData[0] = vec4(col.rgb, col.a * 0.005);
gl_FragData[1] = texture2D(specularMap, gl_TexCoord[0].xy);
- gl_FragData[2] = vec4(texture2D(normalMap, gl_TexCoord[0].xy).xyz, 0.0);
+ gl_FragData[2] = texture2D(normalMap, gl_TexCoord[0].xy);
}
diff --git a/indra/newview/app_settings/shaders/class1/deferred/sunLightSSAOF.glsl b/indra/newview/app_settings/shaders/class1/deferred/sunLightSSAOF.glsl
index 1e0693d19f..25ff958107 100644
--- a/indra/newview/app_settings/shaders/class1/deferred/sunLightSSAOF.glsl
+++ b/indra/newview/app_settings/shaders/class1/deferred/sunLightSSAOF.glsl
@@ -53,57 +53,49 @@ float calcAmbientOcclusion(vec4 pos, vec3 norm)
{
float ret = 1.0;
- float dist = dot(pos.xyz,pos.xyz);
-
- if (dist < 64.0*64.0)
- {
- vec2 kern[8];
- // exponentially (^2) distant occlusion samples spread around origin
- kern[0] = vec2(-1.0, 0.0) * 0.125*0.125;
- kern[1] = vec2(1.0, 0.0) * 0.250*0.250;
- kern[2] = vec2(0.0, 1.0) * 0.375*0.375;
- kern[3] = vec2(0.0, -1.0) * 0.500*0.500;
- kern[4] = vec2(0.7071, 0.7071) * 0.625*0.625;
- kern[5] = vec2(-0.7071, -0.7071) * 0.750*0.750;
- kern[6] = vec2(-0.7071, 0.7071) * 0.875*0.875;
- kern[7] = vec2(0.7071, -0.7071) * 1.000*1.000;
+ vec2 kern[8];
+ // exponentially (^2) distant occlusion samples spread around origin
+ kern[0] = vec2(-1.0, 0.0) * 0.125*0.125;
+ kern[1] = vec2(1.0, 0.0) * 0.250*0.250;
+ kern[2] = vec2(0.0, 1.0) * 0.375*0.375;
+ kern[3] = vec2(0.0, -1.0) * 0.500*0.500;
+ kern[4] = vec2(0.7071, 0.7071) * 0.625*0.625;
+ kern[5] = vec2(-0.7071, -0.7071) * 0.750*0.750;
+ kern[6] = vec2(-0.7071, 0.7071) * 0.875*0.875;
+ kern[7] = vec2(0.7071, -0.7071) * 1.000*1.000;
- vec2 pos_screen = vary_fragcoord.xy;
- vec3 pos_world = pos.xyz;
- vec2 noise_reflect = texture2D(noiseMap, vary_fragcoord.xy/128.0).xy;
+ vec2 pos_screen = vary_fragcoord.xy;
+ vec3 pos_world = pos.xyz;
+ vec2 noise_reflect = texture2D(noiseMap, vary_fragcoord.xy/128.0).xy;
- float angle_hidden = 0.0;
- int points = 0;
+ float angle_hidden = 0.0;
+ int points = 0;
- float scale = min(ssao_radius / -pos_world.z, ssao_max_radius);
+ float scale = min(ssao_radius / -pos_world.z, ssao_max_radius);
- // it was found that keeping # of samples a constant was the fastest, probably due to compiler optimizations (unrolling?)
- for (int i = 0; i < 8; i++)
- {
- vec2 samppos_screen = pos_screen + scale * reflect(kern[i], noise_reflect);
- vec3 samppos_world = getPosition(samppos_screen).xyz;
+ // it was found that keeping # of samples a constant was the fastest, probably due to compiler optimizations unrolling?)
+ for (int i = 0; i < 8; i++)
+ {
+ vec2 samppos_screen = pos_screen + scale * reflect(kern[i], noise_reflect);
+ vec3 samppos_world = getPosition(samppos_screen).xyz;
- vec3 diff = pos_world - samppos_world;
- float dist2 = dot(diff, diff);
+ vec3 diff = pos_world - samppos_world;
+ float dist2 = dot(diff, diff);
- // assume each sample corresponds to an occluding sphere with constant radius, constant x-sectional area
- // --> solid angle shrinking by the square of distance
- //radius is somewhat arbitrary, can approx with just some constant k * 1 / dist^2
- //(k should vary inversely with # of samples, but this is taken care of later)
+ // assume each sample corresponds to an occluding sphere with constant radius, constant x-sectional area
+ // --> solid angle shrinking by the square of distance
+ //radius is somewhat arbitrary, can approx with just some constant k * 1 / dist^2
+ //(k should vary inversely with # of samples, but this is taken care of later)
- //if (dot((samppos_world - 0.05*norm - pos_world), norm) > 0.0) // -0.05*norm to shift sample point back slightly for flat surfaces
- // angle_hidden += min(1.0/dist2, ssao_factor_inv); // dist != 0 follows from conditional. max of 1.0 (= ssao_factor_inv * ssao_factor)
- angle_hidden = angle_hidden + float(dot((samppos_world - 0.05*norm - pos_world), norm) > 0.0) * min(1.0/dist2, ssao_factor_inv);
+ angle_hidden = angle_hidden + float(dot((samppos_world - 0.05*norm - pos_world), norm) > 0.0) * min(1.0/dist2, ssao_factor_inv);
- // 'blocked' samples (significantly closer to camera relative to pos_world) are "no data", not "no occlusion"
- points = points + int(diff.z > -1.0);
- }
+ // 'blocked' samples (significantly closer to camera relative to pos_world) are "no data", not "no occlusion"
+ points = points + int(diff.z > -1.0);
+ }
- angle_hidden = min(ssao_factor*angle_hidden/float(points), 1.0);
+ angle_hidden = min(ssao_factor*angle_hidden/float(points), 1.0);
- ret = (1.0 - (float(points != 0) * angle_hidden));
- ret += max((dist-32.0*32.0)/(32.0*32.0), 0.0);
- }
+ ret = (1.0 - (float(points != 0) * angle_hidden));
return min(ret, 1.0);
}
diff --git a/indra/newview/app_settings/shaders/class2/deferred/alphaF.glsl b/indra/newview/app_settings/shaders/class2/deferred/alphaF.glsl
index 32aab152a3..1dd29bfc70 100644
--- a/indra/newview/app_settings/shaders/class2/deferred/alphaF.glsl
+++ b/indra/newview/app_settings/shaders/class2/deferred/alphaF.glsl
@@ -14,7 +14,6 @@ uniform sampler2DRectShadow shadowMap0;
uniform sampler2DRectShadow shadowMap1;
uniform sampler2DRectShadow shadowMap2;
uniform sampler2DRectShadow shadowMap3;
-uniform sampler2D noiseMap;
uniform sampler2DRect depthMap;
uniform mat4 shadow_matrix[6];
@@ -70,8 +69,6 @@ void main()
vec2 frag = vary_fragcoord.xy/vary_fragcoord.z*0.5+0.5;
frag *= screen_res;
- vec3 samp_pos = getPosition(frag).xyz;
-
float shadow = 1.0;
vec4 pos = vec4(vary_position, 1.0);
diff --git a/indra/newview/app_settings/shaders/class2/deferred/blurLightF.glsl b/indra/newview/app_settings/shaders/class2/deferred/blurLightF.glsl
deleted file mode 100644
index ea2df4b51a..0000000000
--- a/indra/newview/app_settings/shaders/class2/deferred/blurLightF.glsl
+++ /dev/null
@@ -1,83 +0,0 @@
-/**
- * @file blurLightF.glsl
- *
- * $LicenseInfo:firstyear=2007&license=viewerlgpl$
- * $/LicenseInfo$
- */
-
-#version 120
-
-#extension GL_ARB_texture_rectangle : enable
-
-uniform sampler2DRect depthMap;
-uniform sampler2DRect normalMap;
-uniform sampler2DRect lightMap;
-
-uniform float dist_factor;
-uniform float blur_size;
-uniform vec2 delta;
-uniform vec3 kern[4];
-uniform float kern_scale;
-
-varying vec2 vary_fragcoord;
-
-uniform mat4 inv_proj;
-uniform vec2 screen_res;
-
-vec4 getPosition(vec2 pos_screen)
-{
- float depth = texture2DRect(depthMap, pos_screen.xy).a;
- vec2 sc = pos_screen.xy*2.0;
- sc /= screen_res;
- sc -= vec2(1.0,1.0);
- vec4 ndc = vec4(sc.x, sc.y, 2.0*depth-1.0, 1.0);
- vec4 pos = inv_proj * ndc;
- pos /= pos.w;
- pos.w = 1.0;
- return pos;
-}
-
-void main()
-{
- vec3 norm = texture2DRect(normalMap, vary_fragcoord.xy).xyz;
- norm = vec3((norm.xy-0.5)*2.0,norm.z); // unpack norm
- vec3 pos = getPosition(vary_fragcoord.xy).xyz;
- vec4 ccol = texture2DRect(lightMap, vary_fragcoord.xy).rgba;
-
- vec2 dlt = kern_scale * delta / (1.0+norm.xy*norm.xy);
-
- dlt /= max(-pos.z*dist_factor, 1.0);
-
- vec2 defined_weight = kern[0].xy; // special case the first (centre) sample's weight in the blur; we have to sample it anyway so we get it for 'free'
- vec4 col = defined_weight.xyxx * ccol;
-
- for (int i = 1; i < 4; i++)
- {
- vec2 tc = vary_fragcoord.xy + kern[i].z*dlt;
- vec3 samppos = getPosition(tc).xyz;
- float d = dot(norm.xyz, samppos.xyz-pos.xyz);// dist from plane
- if (d*d <= 0.003)
- {
- col += texture2DRect(lightMap, tc)*kern[i].xyxx;
- defined_weight += kern[i].xy;
- }
- }
- for (int i = 1; i < 4; i++)
- {
- vec2 tc = vary_fragcoord.xy - kern[i].z*dlt;
- vec3 samppos = getPosition(tc).xyz;
- float d = dot(norm.xyz, samppos.xyz-pos.xyz);// dist from plane
- if (d*d <= 0.003)
- {
- col += texture2DRect(lightMap, tc)*kern[i].xyxx;
- defined_weight += kern[i].xy;
- }
- }
-
-
-
- col /= defined_weight.xyxx;
-
- gl_FragColor = col;
-}
-
diff --git a/indra/newview/app_settings/shaders/class2/deferred/blurLightV.glsl b/indra/newview/app_settings/shaders/class2/deferred/blurLightV.glsl
deleted file mode 100644
index c2d05c601a..0000000000
--- a/indra/newview/app_settings/shaders/class2/deferred/blurLightV.glsl
+++ /dev/null
@@ -1,19 +0,0 @@
-/**
- * @file blurLightF.glsl
- *
- * $LicenseInfo:firstyear=2007&license=viewerlgpl$
- * $/LicenseInfo$
- */
-
-#version 120
-
-varying vec2 vary_fragcoord;
-uniform vec2 screen_res;
-
-void main()
-{
- //transform vertex
- gl_Position = ftransform();
- vec4 pos = gl_ModelViewProjectionMatrix * gl_Vertex;
- vary_fragcoord = (pos.xy*0.5+0.5)*screen_res;
-}
diff --git a/indra/newview/app_settings/shaders/class2/deferred/sunLightSSAOF.glsl b/indra/newview/app_settings/shaders/class2/deferred/sunLightSSAOF.glsl
index cc921f23d7..08b16d787f 100644
--- a/indra/newview/app_settings/shaders/class2/deferred/sunLightSSAOF.glsl
+++ b/indra/newview/app_settings/shaders/class2/deferred/sunLightSSAOF.glsl
@@ -62,58 +62,50 @@ vec4 getPosition(vec2 pos_screen)
float calcAmbientOcclusion(vec4 pos, vec3 norm)
{
float ret = 1.0;
-
- float dist = dot(pos.xyz,pos.xyz);
-
- if (dist < 64.0*64.0)
- {
- vec2 kern[8];
- // exponentially (^2) distant occlusion samples spread around origin
- kern[0] = vec2(-1.0, 0.0) * 0.125*0.125;
- kern[1] = vec2(1.0, 0.0) * 0.250*0.250;
- kern[2] = vec2(0.0, 1.0) * 0.375*0.375;
- kern[3] = vec2(0.0, -1.0) * 0.500*0.500;
- kern[4] = vec2(0.7071, 0.7071) * 0.625*0.625;
- kern[5] = vec2(-0.7071, -0.7071) * 0.750*0.750;
- kern[6] = vec2(-0.7071, 0.7071) * 0.875*0.875;
- kern[7] = vec2(0.7071, -0.7071) * 1.000*1.000;
- vec2 pos_screen = vary_fragcoord.xy;
- vec3 pos_world = pos.xyz;
- vec2 noise_reflect = texture2D(noiseMap, vary_fragcoord.xy/128.0).xy;
+ vec2 kern[8];
+ // exponentially (^2) distant occlusion samples spread around origin
+ kern[0] = vec2(-1.0, 0.0) * 0.125*0.125;
+ kern[1] = vec2(1.0, 0.0) * 0.250*0.250;
+ kern[2] = vec2(0.0, 1.0) * 0.375*0.375;
+ kern[3] = vec2(0.0, -1.0) * 0.500*0.500;
+ kern[4] = vec2(0.7071, 0.7071) * 0.625*0.625;
+ kern[5] = vec2(-0.7071, -0.7071) * 0.750*0.750;
+ kern[6] = vec2(-0.7071, 0.7071) * 0.875*0.875;
+ kern[7] = vec2(0.7071, -0.7071) * 1.000*1.000;
+
+ vec2 pos_screen = vary_fragcoord.xy;
+ vec3 pos_world = pos.xyz;
+ vec2 noise_reflect = texture2D(noiseMap, vary_fragcoord.xy/128.0).xy;
- float angle_hidden = 0.0;
- int points = 0;
+ float angle_hidden = 0.0;
+ int points = 0;
- float scale = min(ssao_radius / -pos_world.z, ssao_max_radius);
+ float scale = min(ssao_radius / -pos_world.z, ssao_max_radius);
- // it was found that keeping # of samples a constant was the fastest, probably due to compiler optimizations (unrolling?)
- for (int i = 0; i < 8; i++)
- {
- vec2 samppos_screen = pos_screen + scale * reflect(kern[i], noise_reflect);
- vec3 samppos_world = getPosition(samppos_screen).xyz;
+ // it was found that keeping # of samples a constant was the fastest, probably due to compiler optimizations (unrolling?)
+ for (int i = 0; i < 8; i++)
+ {
+ vec2 samppos_screen = pos_screen + scale * reflect(kern[i], noise_reflect);
+ vec3 samppos_world = getPosition(samppos_screen).xyz;
- vec3 diff = pos_world - samppos_world;
- float dist2 = dot(diff, diff);
+ vec3 diff = pos_world - samppos_world;
+ float dist2 = dot(diff, diff);
- // assume each sample corresponds to an occluding sphere with constant radius, constant x-sectional area
- // --> solid angle shrinking by the square of distance
- //radius is somewhat arbitrary, can approx with just some constant k * 1 / dist^2
- //(k should vary inversely with # of samples, but this is taken care of later)
+ // assume each sample corresponds to an occluding sphere with constant radius, constant x-sectional area
+ // --> solid angle shrinking by the square of distance
+ //radius is somewhat arbitrary, can approx with just some constant k * 1 / dist^2
+ //(k should vary inversely with # of samples, but this is taken care of later)
- //if (dot((samppos_world - 0.05*norm - pos_world), norm) > 0.0) // -0.05*norm to shift sample point back slightly for flat surfaces
- // angle_hidden += min(1.0/dist2, ssao_factor_inv); // dist != 0 follows from conditional. max of 1.0 (= ssao_factor_inv * ssao_factor)
- angle_hidden = angle_hidden + float(dot((samppos_world - 0.05*norm - pos_world), norm) > 0.0) * min(1.0/dist2, ssao_factor_inv);
+ angle_hidden = angle_hidden + float(dot((samppos_world - 0.05*norm - pos_world), norm) > 0.0) * min(1.0/dist2, ssao_factor_inv);
- // 'blocked' samples (significantly closer to camera relative to pos_world) are "no data", not "no occlusion"
- points = points + int(diff.z > -1.0);
- }
+ // 'blocked' samples (significantly closer to camera relative to pos_world) are "no data", not "no occlusion"
+ points = points + int(diff.z > -1.0);
+ }
- angle_hidden = min(ssao_factor*angle_hidden/float(points), 1.0);
+ angle_hidden = min(ssao_factor*angle_hidden/float(points), 1.0);
- ret = (1.0 - (float(points != 0) * angle_hidden));
- ret += max((dist-32.0*32.0)/(32.0*32.0), 0.0);
- }
+ ret = (1.0 - (float(points != 0) * angle_hidden));
return min(ret, 1.0);
}
diff --git a/indra/newview/llfloatersearch.cpp b/indra/newview/llfloatersearch.cpp
index 2041fac8d8..1e321674a7 100644
--- a/indra/newview/llfloatersearch.cpp
+++ b/indra/newview/llfloatersearch.cpp
@@ -103,14 +103,14 @@ BOOL LLFloaterSearch::postBuild()
void LLFloaterSearch::onOpen(const LLSD& key)
{
- search(key);
-}
+ if ( (key.has("category")) || ((mBrowser) && (mBrowser->getCurrentNavUrl().empty())) )
+ {
+ // new search triggered - blank the page while loading, instead of
+ // temporarily showing stale results
+ mBrowser->navigateTo("about:blank");
-void LLFloaterSearch::onClose(bool app_quitting)
-{
- // tear down the web view so we don't show the previous search
- // result when the floater is opened next time
- destroy();
+ search(key);
+ }
}
void LLFloaterSearch::handleMediaEvent(LLPluginClassMedia *self, EMediaEvent event)
diff --git a/indra/newview/llfloatersearch.h b/indra/newview/llfloatersearch.h
index ba4dc4c0fa..615c099d0d 100644
--- a/indra/newview/llfloatersearch.h
+++ b/indra/newview/llfloatersearch.h
@@ -53,8 +53,6 @@ public:
/// see search() for details on the key parameter.
/*virtual*/ void onOpen(const LLSD& key);
- /*virtual*/ void onClose(bool app_quitting);
-
/// perform a search with the specific search term.
/// The key should be a map that can contain the following keys:
/// - "id": specifies the text phrase to search for