From 21170e1e18976b9e6b0f4c65e48078e20e467e61 Mon Sep 17 00:00:00 2001 From: Siana Gearz Date: Mon, 12 Mar 2012 00:35:47 +0100 Subject: [PATCH 01/22] Fix build on Windows --- indra/cmake/CARes.cmake | 1 + indra/llmessage/llbuffer.cpp | 1 + indra/llmessage/lldispatcher.cpp | 1 + indra/llmessage/llhttpclient.h | 1 - indra/llmessage/llurlrequest.h | 4 +++- 5 files changed, 6 insertions(+), 2 deletions(-) diff --git a/indra/cmake/CARes.cmake b/indra/cmake/CARes.cmake index 37e258194..d18e1ef1e 100644 --- a/indra/cmake/CARes.cmake +++ b/indra/cmake/CARes.cmake @@ -10,6 +10,7 @@ if (STANDALONE) else (STANDALONE) use_prebuilt_binary(ares) if (WINDOWS) + add_definitions("-DCARES_STATICLIB") set(CARES_LIBRARIES areslib) elseif (DARWIN) set(CARES_LIBRARIES diff --git a/indra/llmessage/llbuffer.cpp b/indra/llmessage/llbuffer.cpp index 58208dbe1..b604e40ca 100644 --- a/indra/llmessage/llbuffer.cpp +++ b/indra/llmessage/llbuffer.cpp @@ -28,6 +28,7 @@ #include "linden_common.h" #include "llbuffer.h" +#include #include "llmath.h" #include "llmemtype.h" diff --git a/indra/llmessage/lldispatcher.cpp b/indra/llmessage/lldispatcher.cpp index b2dc414a6..7ac3651a7 100644 --- a/indra/llmessage/lldispatcher.cpp +++ b/indra/llmessage/lldispatcher.cpp @@ -29,6 +29,7 @@ #include "lldispatcher.h" #include +#include #include "llstl.h" #include "message.h" diff --git a/indra/llmessage/llhttpclient.h b/indra/llmessage/llhttpclient.h index b8ee9389a..dda7d550f 100644 --- a/indra/llmessage/llhttpclient.h +++ b/indra/llmessage/llhttpclient.h @@ -34,7 +34,6 @@ #include #include -#include #include "llurlrequest.h" #include "llassettype.h" #include "llcurl.h" diff --git a/indra/llmessage/llurlrequest.h b/indra/llmessage/llurlrequest.h index 44d358d90..1ba51a5ac 100644 --- a/indra/llmessage/llurlrequest.h +++ b/indra/llmessage/llurlrequest.h @@ -38,7 +38,6 @@ #include "lliopipe.h" #include "llchainio.h" #include "llerror.h" -#include #include "llcurl.h" @@ -51,6 +50,9 @@ class LLURLRequestDetail; class LLURLRequestComplete; +struct x509_store_ctx_st; +typedef struct x509_store_ctx_st X509_STORE_CTX; + /** * @class LLURLRequest * @brief Class to handle url based requests. From 5d6b9258238d4f32ef65ef9b4e27d90eb8fe1ce2 Mon Sep 17 00:00:00 2001 From: Siana Gearz Date: Mon, 12 Mar 2012 19:54:44 +0100 Subject: [PATCH 02/22] We have persistent console and multi-instance settings and don't need them forced on debug builds --- indra/newview/llappviewer.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/indra/newview/llappviewer.cpp b/indra/newview/llappviewer.cpp index dc6747594..231b0a60c 100644 --- a/indra/newview/llappviewer.cpp +++ b/indra/newview/llappviewer.cpp @@ -2047,7 +2047,7 @@ bool LLAppViewer::initConfiguration() gSavedSettings.setString("VersionChannelName", gVersionChannel); -#ifndef LL_RELEASE_FOR_DOWNLOAD +#if 0 //#ifndef LL_RELEASE_FOR_DOWNLOAD // provide developer build only overrides for these control variables that are not // persisted to settings.xml LLControlVariable* c = gSavedSettings.getControl("ShowConsoleWindow"); From 8b8fe82c8eb3034acdc555d6ac384a79935390c6 Mon Sep 17 00:00:00 2001 From: Siana Gearz Date: Tue, 20 Mar 2012 02:13:13 +0100 Subject: [PATCH 03/22] Correct facepalm in llmessage port --- indra/newview/app_settings/settings.xml | 24 +++++++++++++++++++++++- indra/newview/llappviewer.cpp | 4 +++- 2 files changed, 26 insertions(+), 2 deletions(-) diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml index 8fc7cec29..fb9299e56 100644 --- a/indra/newview/app_settings/settings.xml +++ b/indra/newview/app_settings/settings.xml @@ -3941,7 +3941,29 @@ Value 0 - CurlUseMultipleThreads + CurlMaximumNumberOfHandles + + Comment + Maximum number of handles curl can use (requires restart) + Persist + 1 + Type + S32 + Value + 256 + + CurlRequestTimeOut + + Comment + Max idle time of a curl request before killed (requires restart) + Persist + 1 + Type + F32 + Value + 120.0 + + CurlUseMultipleThreads Comment Use background threads for executing curl_multi_perform (requires restart) diff --git a/indra/newview/llappviewer.cpp b/indra/newview/llappviewer.cpp index 231b0a60c..371c9e807 100644 --- a/indra/newview/llappviewer.cpp +++ b/indra/newview/llappviewer.cpp @@ -633,7 +633,9 @@ bool LLAppViewer::init() mAlloc.setProfilingEnabled(gSavedSettings.getBOOL("MemProfiling")); // *NOTE:Mani - LLCurl::initClass is not thread safe. // Called before threads are created. - LLCurl::initClass(gSavedSettings.getBOOL("CurlUseMultipleThreads")); + LLCurl::initClass(gSavedSettings.getF32("CurlRequestTimeOut"), + gSavedSettings.getS32("CurlMaximumNumberOfHandles"), + gSavedSettings.getBOOL("CurlUseMultipleThreads")); LL_INFOS("InitInfo") << "LLCurl initialized." << LL_ENDL ; initThreads(); From cc459cb58206be53e9091ea14bcf578387a74ba3 Mon Sep 17 00:00:00 2001 From: Siana Gearz Date: Tue, 20 Mar 2012 04:02:49 +0100 Subject: [PATCH 04/22] Alison Alena's new avatar mesh weights --- indra/newview/character/avatar_hair.llm | Bin 690581 -> 690581 bytes indra/newview/character/avatar_hair_1.llm | Bin 5031 -> 4961 bytes indra/newview/character/avatar_hair_2.llm | Bin 3261 -> 3191 bytes indra/newview/character/avatar_hair_3.llm | Bin 1845 -> 1775 bytes indra/newview/character/avatar_hair_4.llm | Bin 927 -> 857 bytes indra/newview/character/avatar_hair_5.llm | Bin 927 -> 857 bytes indra/newview/character/avatar_head.llm | Bin 1665493 -> 1665493 bytes indra/newview/character/avatar_head_1.llm | Bin 7875 -> 7805 bytes indra/newview/character/avatar_head_2.llm | Bin 3675 -> 3605 bytes indra/newview/character/avatar_head_3.llm | Bin 1797 -> 1727 bytes indra/newview/character/avatar_head_4.llm | Bin 1239 -> 1169 bytes indra/newview/character/avatar_lad.xml | 0 indra/newview/character/avatar_lower_body.llm | Bin 337125 -> 337125 bytes .../newview/character/avatar_lower_body_1.llm | Bin 7083 -> 7013 bytes .../newview/character/avatar_lower_body_2.llm | Bin 4107 -> 4037 bytes .../newview/character/avatar_lower_body_3.llm | Bin 2115 -> 2045 bytes .../newview/character/avatar_lower_body_4.llm | Bin 1629 -> 1559 bytes indra/newview/character/avatar_skirt.llm | Bin 72497 -> 72497 bytes indra/newview/character/avatar_skirt_1.llm | Bin 1899 -> 1829 bytes indra/newview/character/avatar_skirt_2.llm | Bin 1551 -> 1481 bytes indra/newview/character/avatar_skirt_3.llm | Bin 1191 -> 1121 bytes indra/newview/character/avatar_skirt_4.llm | Bin 843 -> 773 bytes indra/newview/character/avatar_upper_body.llm | Bin 929297 -> 929297 bytes .../newview/character/avatar_upper_body_1.llm | Bin 15627 -> 15557 bytes .../newview/character/avatar_upper_body_2.llm | Bin 8991 -> 8921 bytes .../newview/character/avatar_upper_body_3.llm | Bin 4557 -> 4487 bytes .../newview/character/avatar_upper_body_4.llm | Bin 3453 -> 3383 bytes 27 files changed, 0 insertions(+), 0 deletions(-) mode change 100755 => 100644 indra/newview/character/avatar_lad.xml diff --git a/indra/newview/character/avatar_hair.llm b/indra/newview/character/avatar_hair.llm index df99de8db7b5515b06dc0ce19a92c3a5f125b1b0..0ef53828d53947ff31641342c79f11689c8c20e5 100644 GIT binary patch delta 94820 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 Y3wZpAM;{&^(Iyu5B#%`*p5XES0pG&wAOHXW delta 94456 zcmZ784}4bh|Nrs#`z-6PVrBiKSlZH`Ei3E)#$u(kSX%!VD@#SOC_~|&i*L)?a}HZFPYymzaW)I8@d-|gXRcdU2(_v%M`(yp7h zWPR*)G#|J$MaW1sIYdAG?!)f&G0t z)@AA!CEv!g(mk59(m%AkwB)hYtn~VeS?QYbm)04W@<&-^t9~0U&tFp(J`~@m#3!=W zx5wS(8!otQ>;|p%uC5hjDH-t_PA*7DyZWCG!?y8_>r7;}W3Bq7wbg9T#CI=QpUf(L z*Me2Nxn=+G-IfDHvwjhou7FS(@igVh@K z{xNF9**}J+HLIS}W8BX{+KN2`)6#}zmX%y{^~+HuFLY%!@!NY| zdg=DGVH+NftCp5r+U(sIhb=B!asHiY&9_ufjhUAF_KC9vX$#_C>RNJ3Up8h(+FicU zb+dY}J;3O*ukY>pS&#NUHQ)k~-eE=kkuKYX?{_2u%dsd;$^Q>$ffOD(x!RNJWVxnX}MXf6&( z+LW>-sY%~lnl`x0o2l7#&y9HFfge&YdA&IG2}=w|=Ui6uK;D9=aNh7g!+9gxho6pU z)bN3{w^EB1RZEj^epH!yyyDZ;i-uM!X)x~Ipay-VEqvy$w316EcJ*QX+osjgnEx3V z+gf91*ZZF_vO|XxCFf0Cq7SBOyVIO|?|)_qf1S{{r18XUkq^Up6B;$rho64(No4q+ zrKrd7l8Jv7{2jI3UF|+|>2ACG$ZzM}NB$%KncIOoTu*mX@R9H7Mg%tnJzWN^5y3U6 zI3l>(U+qUQ{%WSEU_yVuV z>iQ3{u200e{z~^D@2+&8;-_wFBwmH_ev8vIb@3v<(0}1CVz@eZ-wk&={QK@JKb)aM zBz}o~f)4&m;+KAy>k|xfsrZFYWuE6EaUm8w$AVh&TFAm$GUTx6o1Eggc&;Dm6hFn0 z?ov-Am4eVH2?d_rqzaI^cw-|W8T(@*@@t`6^q2G6miOZ^D3H9>3l4%4<~xF)z0uVL(+ zyifKGFqv)|@a{P`0!O&TjBDT(7yCc_GM2NRCHD)KvD{_u7Qe_Bj1ELGBSr_sbX@Fu zd#%O^-<#OmSFmGu5I4H_U4`F6YopsktGmB~mST7Rp5K7)`R;B5F+bSAyG)k5%rVZN z6Py!t*BrEZ1@F=B#p|3P&1VMt3j8hp1%`dZMfjpy#Jd+=F}~=2V|9v&z5Q=~aAakA zV+F%EEUNe7@c9@;5PVfuHAw2e%ctdG0o+&gK!#U&q3W8Lsoi{x-agPZZ~| z0^^Cd5r+r!+>6BVtnl#QMdFLTAF&_X+s{V_ikG?Qpr3yUFLN*XjzP!ZC0~R^{%KxC zzONtSH~SZT!5G4LUd4=Hf%vl@?NWnVgP*la z%W#=r;+7C^4wkrrn}db!<{+1t8$9C`Uvkf|D&uI4qw8nr>KVFT>Ju5il+F@eqRXbE zMEAUZ);&wS5pVQKE{S+ukmRll+PTBN9Uk^=TsybNwV}O-;h@h!#i4jzaAN^$dR>qn zyy9NrRAE%kDznz3hIXwV&Z9UORcWpLjd3o&ICu$9{$T*#F{J z6u5D2h5N;iMa5tICCt3u4`Gs>{(OHG!%jcZT}Au}clvSePUg6k1>8xz9dGq_I4zpU zYd`O9cLyR}9$*D-b)S9iBWm$&7*;Vf@vD6EV3lt|Y~oM5)9z2#JowW!3;yH( zbpK)OpRQ?eKJomZscXu3+HMLSWSHU(x^J;r@U5%mn+3J}e|#W^6bC^w4uE%96Dd3{Ug zp5b1$xRcLgnBWxO!nat)1b3hR*-dsoyL$`#W4wLLPiFX$QIp+|ZYHgnz77*jc6Hnj zsP{j(^NHuX7-qZAE5^7B++(PCua@HCf_r^j@R+~XH)pwV!MUz^ByPgT+_`+d$$jP4 z`ArPX{W|}&D`?J}r|JALVtZz7AN`SlkYfns8C8L!0PNmekQeCU0>9KX_GgHH6aV(HzBy5!(b$_$Pdu z;C^?64%@IIdUu8uIl}T9`>sI^=9%kj_|SFWeKPZeE;(ou#89U64Dy45?ye_qy0a3E zsakrmPQ8Mz)F)}o+?Dt@<;2;@iv5kT4ACqwmUx+)8;Lboy~|uj7GHw|n;gucn~rp$ zcWoHj1^KRB&^Bln%yo)${9HHJ%^?lX@f{0-r)fUzTe$hCcn#>+r+b-9 zyOSK-izK|$DL&;3cDg9o=%ZNhQ$8WMJcuIR=PnNtf`8n7?jJf+jK*k}PrS?LvmKWN z(Tu%>Y0mQc$0Y=3878vh+pvxK9ENs${f;n4GzTP~FX9>A-N7<0Vcz<@yCk^V)h}S? zyBT%XHNc06XNhOsME?-O1YQ$aooi7sft6cEK39xlr3VF9`Wu5m!Hq#w(3i3^Kd6q1 z&%3^id)`$KPWk6u6fuga7PwPPf2CjG6noPyNPsJSg1^$Q;dLd8T*Gj=znrN52Clo!C3r!t7h9{Xg|vxDWV*F=e!e5_<2Zs|TMk#P}FuK9g;5*+DkbO(0GP2J-60n0I_OzT>;O zMqIq2xfVR_miTC{YfETn1xtAM6)Jv%S;04MKrn#V4ZFE^zMU`V=Crsgf_8o&i@t)_ zgkYQB<|okIHah;y*PyNV8LLx+mFme^U!9XO&duZWtnTM=!p`#-6EEg8R;$IB2c|1kaONUTo}A+3M>8*Y_LA=dV*7~XINzx&$$ zci)QPcqHZo$9-F$6a3DHZ5jK9J4X8$rVvwnH~%_g6ubG=?nj1h{zsqX^u8%p`d@u} zUcWNM>+V*!x&&=$PL_SE(_y4T!g#M=HcHm8;Ui=`g%_52Z*TaV!o%c;k* zzh~S^_r1T0u?=~DRZ!57iR$^fOx}>$j_}U0c6C`(=Po2(NWOBktGnM^b^MLtcZP=k zclU?;4`cse_}vXa#ot{+|0*grq=O>&s#Clw_}+i#i|Bl%`;HaqNNc6*SU~6;yygb7 zJstf(cLUzQ1m6*h+)3_Q|Mc0YxDMC3Y&Xc&M8#6Z)%1g1sT;yD*uBMGXyxB>tvHx( zx#NDQ8%oRxhPs?!2-D;Qr5w~!T*vfnSxP}$j*S-ktFJ`8ucXtL-5>a}yED-HA>2UU z84U5QDNI|_TJQUD>;0~~C0OgaxITVZ(8Uc4y1K5!Jj@H;<K5V}T;tw$ zYfzC=C#NTq&?6N@&kQ>Q*7xH+@-E1<1S^0 zXXxk@7rBnE1H&TXBDd9Ffr?xG^}M$FEMk^VahZNp&@I@8V}i{-(-&-Wn;E6io4Et* z7K{oM$8aC$nNYEqo6N&bwFr8~$_m zs_zoK;a}ta_a^R#M+UDEU*n$RRUBQwJ;G;{uN&3Y|}P3CMajx6?FUt)2(2N6?oKNgRc;e62}JD z5XS^#gMzWa7`A>aLwj~gx1hai@45vZeNdB^5Au9XhSk0Yt<`K@58~&p2V1*>ai6;t z{tm`nLtMe)#|C%s8q555Fx2FeJD6{i-|TJ+dN6EuoBV&>X4l94mv?;%2wyVvb&9tK zeO*`LCg0U>^0x&^sM(St@dKaad${Y|2mS+po$H7FT$)Qo#g8N7KX$G8v^7&E5xe?t z{or7}yWGupgM)AVe7D@Sa^HHzv3&NeFBt1H8IkFR1UJ)E)P#G9H~Y((X)kfF-%Z@@ z`!ihc6#t9K?!Syrru81fut?mCd;QJC>x2G*q*qt z2d)76GT8dd1h#jhd{oc2U!IK?7Q`D>Z!S{ADKIScMj9Oj0(&v~l% zh5ww-zhJnUPyg~)Gh7sj=i*-^>~o1*B8mGi-;;MeeZc~^!1eT}c=cq)YlEIla+j;? z_PM(lCb?LKeQv6+;i8C9?jHXHD&FI#`MT~2r#Q{;b3ZZNG#^X+iMf7q1;he3jaPx& zPu%b7@!IbW5f8ZscpY-n3;Y9ay4RkX?jOJh{5`xY@D~J!T!EkN54i_v?I#{$*6-9J z?q`uR{C9LRgZ59ZVKBr0MCT2IhQTyeu3>PGuM^ZEM!7mcl$%4G<7yLYyVxL>SQBfy zbGiOASuC@~vWOWzHaHj04Zfq3bAv*?F~uxCFZ8qA zulTF09n=nfb;t3ztHo4AcTsR&aJN4%XygtVfups|DCV!Swb*eOo& z54$P;5vSN7c*HdbPCCVw*fOZ)6leKb>cY)pPt~GT;A;gJ1k-6fz<#_SIN&Z|>;YGw zce8wb-nR@MLdBLrgWzHR5X*kp7c`)|$Nj@zaf-h<_{BXQi5Ihe7tvCz$2Q!z;HP7K3*;=XVx@w>2sxIYZS zB!3`GCVn605)XxQi9dxKiHF1E#9zX=r<45AFpGFBoKE~TEG8Zg_Y+TqG4qmqWtdJp z8RpN^y>Pf}ULrS0;ZB(3!>IX*?9i|SO!46;xQA7NsXp8U_xtb!JmA9?mdNQ64uAq5 z&H#S#DuIW5cmSsJ8_I%2PKdB4JnX|s@Cf}uA^pKD`gks27AS7AEpd3I{;_Ae;dWg0KWG2*Lvp8-(>2C2}%`J>jAtoCFsK;WB6$ggb#d z*r;a{xdkri@a%LQp3=oSJO_!7gt1F>cru7H!^y;1VG;3(a2Ih-82!8sPYUs=Fpsz| zoKO5NEGO;{D~Sif_!o3wvWbVnLgG(hDe;%^An|AzyHtlHgZOJWnRq-bBAy6$5i7&! zWjZ7&%aU{u#w?2*1OpDjX5b*41P(&Ni;;sc2sj8cfrGFHI0%P;gV6A$$U*1@9E2&r zL0AqPgx$bFs9qE~2%Ug~Fa|gX1{{RVz(F_(9E61Bk%KS@I0!R=gRllT2#0`!(D3ER zLFfe>geky5SPmS7-M~Sp{z~K^bb2Mk7 z;TB@=@D%adu=UC$-!~je%nWC(ObQmcaNWwpV6h92zUy!_Wtig zw!Pq;$hH@+)wb^^CWkTWwAJavv@oC8J6uYJy~*z;QGSJ^-c1aayD)@x zF5Coc_6gYR!WQczTR#B)>%tkpAum~<=r0WSuh(YBlxefmiAiBTv1_=LI54ar4hw?~ z+Pq}q*f5uPdpMW4INV5F8y+Wa3gh0>re?ht*}NI=MK-SlIJ5`gTP}0&CkFeu%)Ot; zMSz*O?FpAL?j%<^_|um}ZDa>@3R5;E`JQ3krljCa7uu#o?rFl!@U{z2!e=f__#iRZ z;le>s;li08B>Jnv(hrh+pYR~@qmtMUM`=M*%e9~t<&gz_RUTPT?ah$|bpsYO9$3&K zU_o0qYeAl57O!sa^@gWFx$A11o6U}vJgLtO-Sx^N$j{IKrlN&cQNl{ht=K)gR( zOne~RMtm?lLwq<){6gs=hd3*oO?*5oBhC(w66c1^b}3h9?n>f!#js#kqQ0@K!RP`w zU+e8owIOsJADPJGn3ocGBOTM88}6Nhip5#&Lq2W!#>~p877#`AP|F zHt|4MM*KcJO8g;g_O;SjCh>4Mjd&znMLZhrB_0dwexo#&N<1D;Af5;p6HkWQh<}G? zh-bpYy-7Uw4@d4z%rB41@KB0g-k zUtiozVq!Rrm=vxewhyQ6jC_d?M83qtuHghCUt%I(Vj^E+VtSbPy}q(J#D3vyVrE!I z>>nN_-ViqXL6^=<;(%}(abUQLI4Imp91_+&m=p~4;lyo;x|$wL^25W$#1Y{(VorF5 zI5Ny+Rc;D%4(Vbvo0uDx5l4l48GlRI?8hWOCd?$>8W}$}T*dqG;a=ixVcnl}*-HH> ziQg&0i9aRsb4IuX@_o1+_+y~6FxiJmha=U*NT6_-15^wffQsQ5P_{Kc5~&#a1EoR% zP%5kj>a~3^(}(qbPUN?jFbyaiCIW@S5_p3CU^e~19Qyl3zjA~l;VJrqx%3Ai{lU}p zcQi4W$Ki+h^mjDTF9=s1P4WxFy~O9jy2o@eP9?q=P9VM%E+!U*+lViRXNa$aiN7ZK z*TNiPX*m1Wq~LAV__IW=-bWerZrJR%B)>k)B)%U`BW?;;5kCm`5NQ26%&&Uo-{z&wHYWuj?4$tz@-}F|Q82m$TaE9LCEWK4G`fB0P z$|N5hHanT*YlN96lT@n}oQ%|JtAR>+A5fOn`!iCOr2)0^L}(O*OQ1;*Zil8pcorzj zlKx8M2d!`t%C3v@H0{KQ~LcZ>%Pg)sw6!eJ&Zdh*D;7z%U$nQF8qmqo zMQ6(wU2Uo8W)-5l1vMevl0{F;6<6C_kzpIf4OLTSSzIkz11wA2Xw$_&D~8}^X9sHe z#30vM{n|d!kBY2RFxuH9HE*e!HLq&r#za;%xYb#QI(#@jvaTc@3uy)uoNdzRd^=u; z4klULxp0?diMwsOm~6#jN>%F~i>XWNUP~8KEnnPcOU37vkz#Z22T9<`YB;W0}Wvn*dcZcD{~szyFx{9-|>vt%*H za>bK2S3G4K#aufsLW`>pPg@p{32jDwc7i!8kH;ic-^!KFM#)#%x$-r3u3Y8pgnYwUi&%Wq*#NnQ{^i^BFW1t)e3$+k;s*Mc z{N2+e^qV4IhTwyL7yIGAt5;6Jpx>tJ})5-00FF&LE#<+v-Wd+^Kopdk1 zpnLh%zpMXE)n@s9mfwV(_N^@y-&uv&Z~T}+GPY##z2%A@Y_2$Har|`c57}|Gezdp? z;U~)yhi$qzV#VTT+b@2xn2X@3rHf;hFMhS9;y26E!j4mQ4`7|vL_IBWSp4PeVIX7jzboigwibqPj!>maLn z8zs;27RqREn`CuwCu9w8E#f#zwJa-+rPj9T5Y+KDgLBo_v;7)-p2f6)7)uxREnmdi zQqj;VAZX;RL~}H@U9EOjEIQhLafQXi zLyDz~PL?ma*izBmDnt+ChfK-{OBPpKuDHhLie9!+Tx-WgAB$@ReJx8|XVXPLD;Aly zU-Y+_%V2<|i@}yJ@@%OXV-;eY1+8JcC5ziE7lH}w)z<9AiR@K*2YXfC$zE-P`Q8S| zN$gK~7kf$G?d^b^?5%!VoZ_vgyvN%lc`rv*PUWb|`#7rY@P3Y}e1M}Wr_sMGpnv%w z{mX~wKM|+Xznnq;@?rXykI=s?q<<0uwTJbTkJ7(e|!87{mUolU(Tj~ zIfwq`lk_j2qW{ZrF8#}p{^is3FXz#}oKOGBd~3|oli91!*hXE?pS7iGEwKu*)PfGM z%#y{6mMdPexuVE6isg1(ylinD;T6jgD{Q)0X~kld?H8*p<_ajbbWvh44d6{%s@7Xp zA>J{5)J*d0ELps3xuVSGiVe0=yl2P7MvLnN<(4Hj+jQ}f6^m`QUwmdUo#As!hhP`G zw=W-?Mw=A$G6)k=-kguzTgt?B1?;l-(;&vwP*=>|Xf~ zyH}oJ_jbdx9A5O!^1HD%-j<5MDnvC4y2Ck^ETSz}RJXaJhHVrz?Kn^pS&JSlu6AGp zWSzif$a4cLk#z$*AnOHIKNZgltfxFbut_o|uw}A-U^``lz@pOdg1|b+*uX}~hJl5$ zQDB>7p(Z9Tm{$*?W?}=^bU$$lYWjp$pt3`Sju2p_gbEqYV*Z?Rxa+hO7Vcj4}ocxEefnqJZPojp{n_& zTkKF;GpcylCad*`6^TOIC1zUmFnH8b#AB8xX4!o4xRs0lRE>PX;)m0kZP{Xu6^bXV zR6Jz|#axRW0ik7xr)@H*#9BUr14fCpTT)_G&p}G8PLdL9jHI+ONoloNQd*sqlvW8N zkN~=SX(yHN2NNLqeQd&)slvc};Qc6crrBq}wlv0t^pp+VOGm}wD zMOKGWYO~suP$wlNR6;INLJg9XP%|YZ)EY_Y6j?n=C#^Q6Q^qJZ{#%Z-K*>Esj{B_}NOuFLqEIwb(p3W*OpFn=F2_ z`0L@g?NaN6MUR2sEk*ocMVU}(^VK?O<>F7P6n|O#t#Hb+#px>kwooP0X$=JqrsnyP+Z-F?r1~95CDKV!iHwm{ zA||OsHcKjzlafj#;ZCFy86>GhW=blNHIho?kfai6n2%H$6iFqrTvCbbmQ*6u zCn1$cCrKqTMpB8Gq!QUIsYFgnDv^Y{kV<5bq!O7asYKRDDv?8yN~Gc4NF~xsQh`j7 zR2<8ZQsZDYd+%9`o(xMYMJ%&CvE1g1RaP!aY?m$tZ(95mc+0ZIIx7?#tyFwu2SMq( z;XU+0`tBu3-%})Md$}Y{@0R4z>h~gfw38%{j*;Y1ljPCOl014+l1CG!B6)O>B#+LN z|RKXk>ZhQB#{dx>=G(PfGG= z!UISi9VE%4GbMR+jUHqt##i=_>^1g`{eV^R!Xk#UrBDEYZoH_(x#g%b~awV z?`)CemUpY<9`>~40^4RLe(r3T`Y3A^V=F|g z?GcTw)?;w7bro!~xWX2S&bCE#w^O2rwVnlOHdI_=vqXli6}|1S=xa?LhwH45=x0+! zrmYbDZI2jWwf+Nxt*gkhabk=u6yt1*7;mSRXZ$JTa%~Y4eKL{ZK`eMEJeDr(pYQPcK-&cfOY zSR7|zH_2HzUUC*LlAMKGC8xn@$ywOu8RRS+COHcqmz;&`B-QK@Nj2Map`TmLx3*P_ z>28?q6~nFW5_(J?D&n9jf1DY>DJl+AcYj&dPV3B|VSposE>7T65$sXB*I; zYe%1FsST{z3viKTie#H6I@l_4h3yrct?p7twN%m5CWs7MEPC5Eaf6)^Lo9I_47VIH z!e)ycD-$=_Q8C(@y$H8hrpU8t!fcgTV0*gC!O-uB5az14de`QoKXzIYSmK5t9p z58k#*zG!D9U$mrG@Goy8C11EX=-ryKSA0}8E}R=*qqo*}T(q~iRnXnC#4wvKhFdY{ zGJ0SYOW-nEe>HO9>?yf$PLdq$Ws;-4Q*t4VdL6ldc90zXQIew{N{;>}$Lnk@QR zuE?~xqQ7kvH`sA8z~a`xV9OFiY`S0%ixIY8++;Ct!)Qwvw^+X5!Ia>^l;FYCJHUe} z!GkGbHdidLjbfo47mF-zEj(vg;su*7UbJHIlI<5o7PAgswsi4|<%<=zRJ>{x;x!B2 zh1HfU-mqLzY;#4aZ4~d?ak1Xw)@fZWQ>Q|*_}p?qr$V?vUjUwrNKS_8Kx>=>@Zt=UIhh>XYD->x~Dz3DH z;wp>X4LrUOJiZV-z7W^gE|Fo;|Ak(bB6?e%xYp*2K2|RJTBW$o;=hD`mMt=^5bE@2 zGwLs@*S&`St7Lv|VatTl7~j$WoxrU>0=Vls~#H zKT`8u?I6z9`TBUMm5X6kDTZ78*DxY7Yn`0`JI~0fiEoO`s;4gvzu~LHwX_%V6h;S4 zzlSYX^OmZ0%d0wgVS0eoOcHmhml{GRY>3yR1muZM(!|i~bI#RJHE0Jhkq%`C_V- zi~Fon+;8#w;Q`AQ)2vVwSgCl>4vL4W=9_LA2WZWx;$bUN>k-=}3N8A3m}x2EQOgsL z*?cj}%EjYWDgIM6@(IiSf!1s*6mzUpJZT5TQx>_d)i~d>*VE zLeg0$Nje)Nc@AWf=Rlj~A|9|vo(CoTh@`tgaxr^Z@_cBGB>f$dFR*ieLegL_NgA9Y zNrTHJ&yRLXo*z{|jLYd?zD)n}75bMe=wIsjl6;l^kNCveuW>ZX3cu|-seMzsem8$j ztOree5UgfJkW?~dA%3%U`uCU?GOI%`tyV}Em#`+C6N|JWEl;17VzG{GJw_}^z}iof`9O<@U?ITmCR$W9Z zE&4A$K4~f9Ps9)=TpE zZHnY(dAa0fdAH5t zPjQz^p5pG7lQ~DuN1oz#l03y7Bk$#gKu+aps=SXcpuC@_sWJEfPg5mNac9Z``j#d?R?yvc+O66icjBJZ}fZ3l`fLmRg2bW|PH> zRwQ1sU82aMo4|5Q5ieVwc*W+66;>`*TBUf^;+w*2mMvCUp;&FD;&nSH-musUq1ZA+ ziIpE>t>3gFwcfH_qST@3$G{_ir5AF=1_)-^*W#POddn7NRwy=D zsd�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 diff --git a/indra/newview/character/avatar_hair_1.llm b/indra/newview/character/avatar_hair_1.llm index 6de31fdc23a3c8dc996deceae24e0ad82b0e53ee..f362031632a395e561a9a870190b78c8e11eab0e 100644 GIT binary patch literal 4961 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 E4}*kWW&i*H literal 5031 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 SW7C$EEiYQ})?Jy)k-33(jEAucd7%{ z;gdcI>&Tl(Ct#$$NQ*Vp!_+cqva(Oj_?R)yJxY z?`SWp)=~Qy-_fEPm|avz3CE~}k2|H~cuH~n5{i@BbP09AIBZi4h7{9w^`e+c^Qlx9 z@r#VwHJ49aaE`i^zk5zssI|UV6!R2&Ug7E#T!3?Mj{6r-vzvX9KFw~|WvX2@R6D&Z z@lvXnB*f{X7{9Dwj3=w2;@U>V`5l|x;?R9TOH|l(L}m0S(awz=%gkrV zWuzJ<9ai?^HTnbg!yQg?UP+Q^Kg@5LICGjrilg#$G z3njU;2Nj?PD)1{k(18EZt2_t%QZMw9JV5ss8u8zZN8FA_aD-jU@rXC79Hn6zuk;Ka zcmi+ru&=8f4=l%9^XrE3w0pUlM!kN`-iIyT!)i4g8ma;)oTrtR^h6yv#O9Qg{)Z8PkPr+&_Vb_2YHew zeA$Qa!|)LNf%!xJSuLE}m~;3Tr<>!A$*C-V!V7qrtLRom*CiE_GgR0k!^-dk6L?Nd zq*~PECc4z36~-&P5#fFKODkxZ)5zoHC4S=$rB*R)+ITp%tY# z&lQDK;8DMa3iw}yWGK3glI*waSPNIFx18(?ZRUwKbJB0%8&2yw9vEgHX%8Kb;72{} zBR-0z{ZNnfP}6>lj(I13%s--OrxmH0iZo6|8q^LHsQ{1EiAUP44a}9`;c7{qJ$MhJ z3U%WZs)gMuhqY9Kv=t?|r$oi1uzCWPYYZ>fdN>9P@gZf^fHH7E^{|0G26&!9(m2Xc zO{5l>Q7fKdeQQ2vwTsHCk;-Zdm8Ih_KBP@};E?L{y$<+3daC>SO;1VR;eiJ{>jVB( zvwnwfX4a?hS^uI_u%B;xoi_4)uR|O8t8rKTzNdR|xBEQ^cf(z12=0P+xc03EJ??9o zr>?2q^}b5FO1h<6@TP9UyL7Af7JQ4pAzj0tY25SrJiq!2J<~R3s=dwC_}A1kJxBBK IIs9G!0;xwN^Z)<= literal 1845 zcmbW1`&*M`9L8@7X2ro7VC9uHK_o0=UTI<1$}}@m(MZgS6sM3wWs^~qX}Uz|U>b8E zDtTDAQp~fh5a$AmAkds7g_VCxpXa3?`Z>PW{kiYw^nG4$vl(fbOZ6s1`yO*wcD zqdJAGv>Aq|J=W=va;cHNx!iXR<+6GW7Qhe;alQbBsT}%*Q4>|CY^sjl_u^?(fFu-v z0iGcfPoZq2O!y9E1c^gF@J(OOFD~3VN`DP9DD;t z^*U}C)oWUYqEsiTQ?FV)hWm7ku}{^wk55!JioqCOqaobzH@r<9n#`^?i`96WwXXw@ z=^U#ubWU$__f?hiIUKUiuGMk!EqIGh(Qz~d7NRNaFsTABHjxpGU zo7_eJE|tL!R0hj?+);7xla5p(DNvvowDm;%C6m%T|4vvvg;1q zuJ>@eKGi+UrQ&8a)#6rsE2Gicf{)f%xJ4OoELBT-8`W|qRdG_XK=$l4Wk9{XTCGT`U4-3oIS$M_46QGRZ(k&K&qZ{6MCLn4ly+Fk-G4 zKm}hQBp@Mxs}lz1)L#2^_v!AFTYY!F^kA-3yfa_A|L95a-rVDd#hce}NT$&*xP6}d zZ%=PYBR$hQEow!9C2Wx_XD(YJi^GJ)8KsGYjS~s;S@+L9Mi#Szd=#}PG)3reiZMF@qiSeLujFxZ12(kGUeA_U^W0gCqEz|zQYm{&t!F7}Q`F?iR+Qw-9Ovh> zuW@u?$Tr?q24?Us?2>nthIy3cujhwM%VW2o$DIXtugb8@O-(fNJb8{A50$mL>aeL3 z+_9;M{m`L)Qqg23u$(z&sSeOz;)tw|j?~vNeyk1*tiyNdp^ifJnCsztXaVlQE=mvk zUZAfUT7dLKO~z`BLdI=KI@l$lYPP+*Z3w=O6s!4>Os=`%Ng;l-Rj@~f)0)I{HXctxBF8re}+SCSLb_4&4Z|WbG!@{EY+@Eb7tC-+SK~>F5ZOO_GdwA>91aET(k1!;^S(D zDMLC_hPE?wPPzI?x$@}uZoEdS$$*A_PzIY0AVXE<8MlStoGXpuFoD~;AjR=CZ}^d!JNP!Uc3^^5i%K)< zg7aC>#!um)D#+&aL7GHIobU**=sU@V6`eqvDv(a#F=b4&vQt zkZL2fhtK!$Zp|sDcT_ICr8<b0xXcNu}T%O2L%gXiYC^oxo?PHLas0T!$O_pd}Ug ZvPFCuU*eW5dyZN1ubS@l?f=gI<$veOX@UR% diff --git a/indra/newview/character/avatar_hair_5.llm b/indra/newview/character/avatar_hair_5.llm index 1b9a12a0cac620df8bda2fd1188f0d907eb1914b..c9bf9e8f260a5db745fefa0573c7bf2ecbf8ecb9 100644 GIT binary patch literal 857 zcmYk4%TiN86h-$Txgqa+lOQT0h99u>3oIS$M_46QGRZ(k&K&qZ{6MCLn4ly+Fk-G4 zKm}hQBp@Mxs}lz1)L#2^_v!AFTYY!F^kA-3yfa_A|L95a-rVDd#hce}NT$&*xP6}d zZ%=PYBR$hQEow!9C2Wx_XD(YJi^GJ)8KsGYjS~s;S@+L9Mi#Szd=#}PG)3reiZMF@qiSeLujFxZ12(kGUeA_U^W0gCqEz|zQYm{&t!F7}Q`F?iR+Qw-9Ovh> zuW@u?$Tr?q24?Us?2>nthIy3cujhwM%VW2o$DIXtugb8@O-(fNJb8{A50$mL>aeL3 z+_9;M{m`L)Qqg23u$(z&sSeOz;)tw|j?~vNeyk1*tiyNdp^ifJnCsztXaVlQE=mvk zUZAfUT7dLKO~z`BLdI=KI@l$lYPP+*Z3w=O6s!4>Os=`%Ng;l-Rj@~f)0)I{HXctxBF8re}+SCSLb_4&4Z|WbG!@{EY+@Eb7tC-+SK~>F5ZOO_GdwA>91aET(k1!;^S(D zDMLC_hPE?wPPzI?x$@}uZoEdS$$*A_PzIY0AVXE<8MlStoGXpuFoD~;AjR=CZ}^d!JNP!Uc3^^5i%K)< zg7aC>#!um)D#+&aL7GHIobU**=sU@V6`eqvDv(a#F=b4&vQt zkZL2fhtK!$Zp|sDcT_ICr8<b0xXcNu}T%O2L%gXiYC^oxo?PHLas0T!$O_pd}Ug ZvPFCuU*eW5dyZN1ubS@l?f=gI<$veOX@UR% diff --git a/indra/newview/character/avatar_head.llm b/indra/newview/character/avatar_head.llm index 8d8b5e0442bb98c795c4b9ab6c64c13ff9eee79d..f3a04b0584d75ff1f6c0453d3705c9c139b0923d 100644 GIT binary patch delta 233344 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

)|{S%)T<3~1Y>C_ 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�v8le0ybZDNhpFDsnP5|_{f-%5q(|QNf)>* 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%0Dr1u95tLIl^@3- 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 z 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ℜy7t_Yu{(us~r$V1?q%qslaosmK(n+N@NI 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 b|D1^azD_}ZOQzvP%;09sCZC0;F#Z1n7OBlQ diff --git a/indra/newview/character/avatar_head_1.llm b/indra/newview/character/avatar_head_1.llm index 26291e6584b57080c6257de7884a32c55ec5e862..f0c98f6ad560b1f587dc934fb2b70bba5c8771e2 100644 GIT binary patch literal 7805 zcmYkBb(~h!^T%iAEWNSR{;d#E#mpGGC6`5liom+I;y&kK)q1CH9Rj1xsv+Ew-f~9(g=nY;pBB z5UaQCH(O-4?G9LE%g{x(RF}bvY$0x`F0=)>Qo6u4$^vwwl+yW<-pxms(5aM`Vvp~! zgnbLCx0tiP;cn68w*5+#1+YJ#NcZUh+ow0}fZarI(e)<#ZlW{jJ>#RUmOIR{T9(;l zT`iNDC#_5CmQm@Ergff|>aX?)tR#M=@;qG$Z+Hws4HwayI0skU5zf}{I9qK?h$;2&I#NVvKw}p>;`cS zcg-#ZxS?FKhEff#CQsl5ZnaIaE_CygbVPZ^R

  1. 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±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 delta 164985 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�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 diff --git a/indra/newview/character/avatar_upper_body_1.llm b/indra/newview/character/avatar_upper_body_1.llm index 31e104cc20b5c7bd6f7c2aae1880778eade1870e..69aedce3af636f5d1e4106b4685a81bbe9b08103 100644 GIT binary patch literal 15557 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⪼YQ}I;o1-*0uch4}(OAkv7U|>Q&&j8 z!D2lQFV<)9V!jtS17C)r_)54E|5jf>#jse%P{n$tZj6exkDGiLZPW3hwK0RwiDuw& qFo{pelK3de@>T<^ymybdmHcS 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 Z3I2olfxm8)$TC^t{SD+e>9{P1{{uq#9ryqM literal 4557 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 diff --git a/indra/newview/character/avatar_upper_body_4.llm b/indra/newview/character/avatar_upper_body_4.llm index ec836d1dc3aebe9e570d6b33b421e87b4e9fda12..4c16803a15b35d9ecaef087ea71ebf8daf7864a3 100644 GIT binary patch literal 3383 zcmYk8X;_w38pn_4Ip?`?K>;x)ZQNJ{1OcHGsa#`GQ4~mV%>@&*S1o2-YNjN&8co9~ z$4o)c!EBn+X0#cV6cEweaA&4*t*_R^e4Uuz^T3DkzW%@e|32qF=Xo!#%lCaImjo6U z2L_HS2`qSZ?ZDjP*Om@U8J4V67uE4EWNc^ne|u}RQXPuZJ0(kAlgYAEo<);onyi<% zr5tX+*UNi&7F;i5V3w@LJ!Ubz8Vy0y;1HMx^JEG&)L;1>6K`>TD|!#ElmPbxWE;#v z+o;i`XJnZaNIYI3iFg6$;z@}-%X?m;guyTgN6oIsGj6kc7IpYB@;Uby{V})E4UxaO z!_XO+D8rZy!_TmD&`qG4NeONo9wpH-P@-fLz7B1Y>78jh&x<8{9K&;C(Gyg-^hPJ$ z-Y8t^+&b9IO);c6*zBgjI4XgZh!Wg1Kc%_%ZHjx#-nVJ)1A7ZzrN3{Jm``z&P`rD} zeq!6~Db!@+-KI`IW6#iCuoqy8dmc}5TkLtCDcn*jFUnG?SW2Y?FQAsPR)7-GJUG(0 z#-SFPk<>!-f{8avO)@OO2f%pK7Y;D}@d2nmbN!8iinAk)g^DsHgZ~2cH)$rvtS}Q% zj(<}Lo@27PGlM(En;)E?oGRxB)R(@>X~Wx`5@y?+NE2xiNQ3b+KfqmZm(v6Ga5gZr-`PQx`_q-UX1AQZU8EpfJE1U$I;um_ zmoU`%Qh!Z-O0GknYKOHttvTsUmOCz0?u0nOsGQnC3WnXOo}{aKgZ`L0sIO|5?jTi3 zI)o~95T_66PjHV%@fP(+t<;ZHi>g<5)dlq(bwQnj=hRNyfX=B_KQ-bFsFB%5bs4t6 zdXH}yQJdUq~Cv^^I8ri+g{yMdvw9~e#d-k5aZFwfT z4Y%Pt;dkn!{*yjU{Y4+)bPIQ%r1L(*Y2Au0^2sjZN2pr5Z|Q1DhxNDWuwDVHpx1rR zPM%KElTn`by6@@p^b}5AR8zRE73Si(dJ;92)Wq6UouivzlgiO&(R6r~owMq$y~*dk zi(1ts+`Hk1y=0r9mzvZ!_A2V|i}oVj4to~gVMm+iOg}RkWtxHJmu5QZ=QADeXVO{E zgi$cc2nvM)d$2mrWTABPJe6*qHp5XmOgB$)&r^82^Rp9b!kPcsiRJV#l;|@ZPd87( zL^u|Wf}`;NI*FuNW*Kv@pea6+@FcoK^Rme$<@)^;e46QPo-i6k_GZ?@5NHus5*u(!Z3L*uOwE73r-%!=6R2RW4 z^g0YvAu0xs!Lv{(cV)qF+{@w0fsTJ`1|F(zc*a(HnL2DMsKd4n)xrwf%x9{w@8fl_!q&q&+X(CJR@>m8YOq(R z2HR@as7zJGH$^4i6KhZ_-8<;IyvnpqEa#r_fjMD>p(;xoHw1UP_Z>{-(*DK2qx4<4hcP zL)lG29iAqqIoW_BqydkRKAcLIjp$XlQAW~_#D7a|lr1tCZIl6i8bCKlx|?1m%*;o9 ze4lM*n<7#e?2htbcR0bkWJ2geOix$@^G#RO(-in=l38xzNRxcV@h*~&CZN8YoxuCZ zvnT^*m>Dn?W|$P1YKC%VIUIt=nLN(q;giu4ILFLmYMz-3XTWEvx#mS`1S!~bF)^ka z9%F*=7%E_9qN(t)Q|R|GrjT06Y5*3aQn(0}!o~Op&LHz2rv`oi_u_-hUgu-y_h>Kt z5dYBm5&q~rhL4%>7{y!+zc!DZ7=C@C_%xyP?fe>bfnCf3ZrRQG?P#}iz)!~MLT`CR z+|HVXz2I(VAHLh^2KPA%c7qmg*Va$%+Bm|gcD>Je+v&RoMv+D_H3w$E40)bPA;rqOyvx5UYhg5ul>Y(!|KGa+ literal 3453 zcmb7{dwkFJAH`qiJBH*Mxy)rq7}hjw8pb5TuyVh~%w=g~2)QPg2)X4hTiDEUmssY` zl7?K9`z2d0xkN5Ae$UT$`=ft<&f`4Kd0#(Ydp!2_(P}_cpNJ^$kO5J>Vn%w0Mhxli zUCY+vq_*F*iQNANNEP;xz1GJL4bFj+TA zhso@|i5KJjT8#E99%e>GHn^?*Iplu^^1Y@|kvnxp>gYDPw@4e2nN zTQ2C3&Y|CF=gCxbj=5AEi+_X9>}NZG-k?2$d34)+^uTUgb@}KDylv;<6}wDc!I#;0 z+4jP{oPB1ga4$MYJ4pV4FWbMCU$yiq&M)Vt>STVsLd)Wg+}dtCY?E!r=g}rhfhjzv zx>D><^f&!FnS#>oy8Q&dN9nc&r@$0TbaNBA5pS{|87HE(v^6jhCfZ`S*jBJ-v#mmL z?%f;7S**sfmPngV&a&ljJ{nIOZ=b{Ea4H%}`x1||+3q%rlg`dKn}_1;TU&zT&??#z zxCkw!eP#XZ6Eu`I4-Z9Av`=vqH#luL>2N$5Xl*P42U=BYVYRF+s%5^=*8)`y`&tus z^C7EYANKlK9T*6!T3K8NRwk>$Hr4=FhR(eWtT#CX_lA?m2soMjb-1O0HDhG7z@q#Ah}QO|WtFKyI1L$oUM@_)OExANrHy&@kG2co-T%8)1E5 zG;~H`taP^ztTXQJ9)*$Jtt<2XunFpFU0@gMgu2mc;BMA|?1np7b=(sMFsg2y^dXi;^gVpn%}g@W&cVCT zL+9){d`{oRjEBmortaBWxUd}FC+~Ceu2oYZS|K^(!t~d4%6_-~_^g}f$g|v&X)c|G zPsmJbZoyW?LU6c!XdSHw3@6`lkHg7U)|cMO212I|v`9422H0pukrrcvnIFtdUmIm# z*dRE_da*hRhLa9^Su>sz4!udId-KdHusmu`Yfct~1>OG`<)h`Jx$Iqbzm1x4hd1=X zZ^GB@H7iaQC%tenR=r?J(&;751A4e`El(D+63peY+?E&RwlXLm&3R54SjOJ4+V+vP zvjEkG?W{em9&S(TX!TG>^Ftl^dxVnVs0u9<1}GS3XG?3zPqn!~82@Z%C^~uW$LSu$6+P z$mh{Dy;x4!rUv&m9wH`MOcnslA^RiWJSBA zGdiUV{ivn-i(IM%(&01mBuqeQv@A zcn4hM?mv*vx#zU5!{@rE2fB+MaOYi|4%79wu43o&qj7eI)52M;ryzC5ecfzJwq>?23R7==gu`H%dg5@{ z6ZXQN!qL!aqcs+fgd;T@CP1epXazsh6*-xtFEoPr5&8;#hqE(5pL1p+o((6$uQ~O- zp5Q;>6D2WDBJZOo%G5XbiRQT597gk$X201-m^+M*+3V~%Yz5@2TZ{|1d5gD@;=GS|;`7i`=j{b83uaj=!Zv`Kh%0 zR0M9b5^}~FWC^{^tRJj`Yrx9527HrDuxqx{et-#ZJ$VhTvv|B7t|nJoGEBB@a2x9m zZ;%;q8$3bogBkpLbb_`ASJHY*;`~aSWLw>Bj(yE|uFZi-BZE2G3yqJ6ix3u&2LGw~x_ui-oZ^hV?NyIhJ!{89O=Arr? Date: Tue, 20 Mar 2012 06:41:10 +0100 Subject: [PATCH 05/22] This might be needed for OS X, Drake says --- indra/cmake/00-Common.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/indra/cmake/00-Common.cmake b/indra/cmake/00-Common.cmake index 87f8da720..6fed90939 100644 --- a/indra/cmake/00-Common.cmake +++ b/indra/cmake/00-Common.cmake @@ -226,7 +226,7 @@ endif (LINUX) if (DARWIN) - add_definitions(-DLL_DARWIN=1) + add_definitions(-DLL_DARWIN=1 -D_XOPEN_SOURCE) set(CMAKE_CXX_LINK_FLAGS "-Wl,-headerpad_max_install_names,-search_paths_first") set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_CXX_LINK_FLAGS}") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -mlong-branch") From b4bdb7ca36a7f8a00a2c1e9d1008dd4f98ac57f2 Mon Sep 17 00:00:00 2001 From: Siana Gearz Date: Wed, 21 Mar 2012 19:03:23 +0100 Subject: [PATCH 06/22] HTTP texture fetch endless append fix, by Laika Tungsten Please don't consider this ready yet. --- indra/newview/lltexturefetch.cpp | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/indra/newview/lltexturefetch.cpp b/indra/newview/lltexturefetch.cpp index 846e35342..4862c7db7 100644 --- a/indra/newview/lltexturefetch.cpp +++ b/indra/newview/lltexturefetch.cpp @@ -1316,6 +1316,7 @@ bool LLTextureFetchWorker::doWork(S32 param) LLImageBase::TYPE_AVATAR_BAKE == mType); #endif + if(cur_size > 0) offset--; // Will call callbackHttpGet when curl request completes std::vector headers; headers.push_back("Accept: image/x-j2c"); @@ -1460,11 +1461,14 @@ bool LLTextureFetchWorker::doWork(S32 param) } U8* buffer = (U8*)ALLOCATE_MEM(LLImageBase::getPrivatePool(), mBufferSize); - if (cur_size > 0) - { + if (cur_size > 0) { memcpy(buffer, mFormattedImage->getData(), cur_size); + mBufferSize--; + if(mRequestedSize == 1) mRequestedDiscard = 0; + else memcpy(buffer + cur_size, mBuffer+1, mRequestedSize-1); // append } - memcpy(buffer + cur_size, mBuffer, mRequestedSize); // append + else memcpy(buffer + cur_size, mBuffer, mRequestedSize); // append + // NOTE: setData releases current data and owns new data (buffer) mFormattedImage->setData(buffer, mBufferSize); // delete temp data @@ -1820,7 +1824,11 @@ S32 LLTextureFetchWorker::callbackHttpGet(const LLChannelDescriptors& channels, mBuffer = (U8*)ALLOCATE_MEM(LLImageBase::getPrivatePool(), data_size); buffer->readAfter(channels.in(), NULL, mBuffer, data_size); mBufferSize += data_size; - if (data_size < mRequestedSize && mRequestedDiscard == 0) + if(mFormattedImage.notNull() && mFormattedImage->getDataSize() > 0 && data_size == 1) + { + mHaveAllData = TRUE; + } + else if (data_size < mRequestedSize && mRequestedDiscard == 0) { mHaveAllData = TRUE; } From a57ad256b52c5647ee32bbd08a01c881800c26c0 Mon Sep 17 00:00:00 2001 From: Siana Gearz Date: Wed, 21 Mar 2012 19:50:21 +0100 Subject: [PATCH 07/22] Fix RLVa not to give viewer channel and version to anyone --- indra/newview/rlvcommon.cpp | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/indra/newview/rlvcommon.cpp b/indra/newview/rlvcommon.cpp index 1fe03bb54..78f5e05e3 100644 --- a/indra/newview/rlvcommon.cpp +++ b/indra/newview/rlvcommon.cpp @@ -301,13 +301,12 @@ const char* RlvStrings::getStringFromReturnCode(ERlvCmdRet eRet) return NULL; } -// Checked: 2010-03-27 (RLVa-1.2.0b) | Modified: RLVa-1.2.0b +// Checked: 2012-02-25 (RLVa-1.4.5) | Modified: RLVa-1.4.5 std::string RlvStrings::getVersion(bool fLegacy /*=false*/) { - return llformat("%s viewer v%d.%d.%d (%s %d.%d.%d.%d - RLVa %d.%d.%d)", + return llformat("%s viewer v%d.%d.%d (RLVa %d.%d.%d)", ( (!fLegacy) ? "RestrainedLove" : "RestrainedLife" ), RLV_VERSION_MAJOR, RLV_VERSION_MINOR, RLV_VERSION_PATCH, - LLAppViewer::instance()->getSecondLifeTitle().c_str(), gVersionMajor, gVersionMinor, gVersionPatch, gVersionBuild, RLVa_VERSION_MAJOR, RLVa_VERSION_MINOR, RLVa_VERSION_PATCH); } From 1e9e7d701d887e25b7750d516f0cfc87bd2960dc Mon Sep 17 00:00:00 2001 From: Siana Gearz Date: Wed, 21 Mar 2012 21:31:31 +0100 Subject: [PATCH 08/22] fix for SH-2941: crash at LLCurl::Easy::~Easy() (Bao Linden) --- indra/llmessage/llcurl.cpp | 9 +++++++-- indra/llmessage/llcurl.h | 2 +- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/indra/llmessage/llcurl.cpp b/indra/llmessage/llcurl.cpp index aaa19c4b5..e9ba67c29 100644 --- a/indra/llmessage/llcurl.cpp +++ b/indra/llmessage/llcurl.cpp @@ -583,10 +583,10 @@ LLCurl::Multi::Multi(F32 idle_time_out) LLCurl::Multi::~Multi() { - cleanup() ; + cleanup(true); } -void LLCurl::Multi::cleanup() +void LLCurl::Multi::cleanup(bool deleted) { if(!mCurlMultiHandle) { @@ -599,6 +599,11 @@ void LLCurl::Multi::cleanup() { Easy* easy = *iter; check_curl_multi_code(curl_multi_remove_handle(mCurlMultiHandle, easy->getCurlHandle())); + + if(deleted) + { + easy->mResponder = NULL ; //avoid triggering mResponder. + } delete easy; } mEasyActiveList.clear(); diff --git a/indra/llmessage/llcurl.h b/indra/llmessage/llcurl.h index fd664c0fa..fb6f5c6a8 100644 --- a/indra/llmessage/llcurl.h +++ b/indra/llmessage/llcurl.h @@ -318,7 +318,7 @@ public: private: void easyFree(LLCurl::Easy*); - void cleanup() ; + void cleanup(bool deleted = false); CURLM* mCurlMultiHandle; From 80e53ebb2b51da054e39bb0641e8809c22fe762d Mon Sep 17 00:00:00 2001 From: Siana Gearz Date: Thu, 22 Mar 2012 05:37:38 +0100 Subject: [PATCH 09/22] Viewer tags kill adjustments --- indra/newview/app_settings/settings_ascent.xml | 2 +- indra/newview/llfloateravatarlist.cpp | 18 ++++++++++++------ 2 files changed, 13 insertions(+), 7 deletions(-) diff --git a/indra/newview/app_settings/settings_ascent.xml b/indra/newview/app_settings/settings_ascent.xml index cab03f74f..949c66a93 100644 --- a/indra/newview/app_settings/settings_ascent.xml +++ b/indra/newview/app_settings/settings_ascent.xml @@ -145,7 +145,7 @@ Type Boolean Value - 1 + 0 AscentShowSelfTagColor diff --git a/indra/newview/llfloateravatarlist.cpp b/indra/newview/llfloateravatarlist.cpp index 790ba6cec..60a6df143 100644 --- a/indra/newview/llfloateravatarlist.cpp +++ b/indra/newview/llfloateravatarlist.cpp @@ -54,16 +54,12 @@ #include "llworld.h" - #include "llsdutil.h" - #include "llaudioengine.h" - #include "llstartup.h" - -// #include "llviewermenu.h" -// + +#include "hippogridmanager.h" // [RLVa:KB] #include "rlvhandler.h" @@ -264,6 +260,16 @@ void LLFloaterAvatarList::createInstance(bool visible) sInstance->setVisible(FALSE); gSavedSettings.setBOOL("ShowRadar", FALSE); } + if(gHippoGridManager->getConnectedGrid()->isSecondLife()){ + LLScrollListCtrl* list = sInstance->getChild("avatar_list"); + list->getColumn(1)->setWidth(0); + list->getColumn(6)->setWidth(0); + list->getColumn(6)->mDynamicWidth = FALSE; + list->getColumn(6)->mRelWidth = 0; + list->getColumn(1)->mDynamicWidth = TRUE; + list->getColumn(1)->mRelWidth = -1; + list->updateLayout(); + } } //static void LLFloaterAvatarList::toggle(void*) From 833427783803641cfdce2b0dca34d43e298f866d Mon Sep 17 00:00:00 2001 From: Siana Gearz Date: Thu, 22 Mar 2012 06:02:39 +0100 Subject: [PATCH 10/22] Want ridiculously small viewer window? Here you go. --- indra/llwindow/llwindow.h | 3 +++ indra/llwindow/llwindowmacosx.cpp | 11 ++++------- indra/llwindow/llwindowsdl.cpp | 2 -- indra/llwindow/llwindowwin32.cpp | 4 ++-- 4 files changed, 9 insertions(+), 11 deletions(-) diff --git a/indra/llwindow/llwindow.h b/indra/llwindow/llwindow.h index a15332e2f..21afee3fb 100644 --- a/indra/llwindow/llwindow.h +++ b/indra/llwindow/llwindow.h @@ -47,6 +47,9 @@ class LLPreeditor; class LLWindowCallbacks; +static const S32 MIN_WINDOW_WIDTH = 864; +static const S32 MIN_WINDOW_HEIGHT = 472; + // Refer to llwindow_test in test/common/llwindow for usage example class LLWindow diff --git a/indra/llwindow/llwindowmacosx.cpp b/indra/llwindow/llwindowmacosx.cpp index 34f52701a..ecc5efd4e 100644 --- a/indra/llwindow/llwindowmacosx.cpp +++ b/indra/llwindow/llwindowmacosx.cpp @@ -2548,9 +2548,6 @@ OSStatus LLWindowMacOSX::eventHandler (EventHandlerCallRef myHandler, EventRef e { // This is where we would constrain move/resize to a particular screen - const S32 MIN_WIDTH = 1024; - const S32 MIN_HEIGHT = 768; - Rect currentBounds; Rect previousBounds; @@ -2575,14 +2572,14 @@ OSStatus LLWindowMacOSX::eventHandler (EventHandlerCallRef myHandler, EventRef e mPreviousWindowRect = previousBounds; } - if ((currentBounds.right - currentBounds.left) < MIN_WIDTH) + if ((currentBounds.right - currentBounds.left) < MIN_WINDOW_WIDTH) { - currentBounds.right = currentBounds.left + MIN_WIDTH; + currentBounds.right = currentBounds.left + MIN_WINDOW_WIDTH; } - if ((currentBounds.bottom - currentBounds.top) < MIN_HEIGHT) + if ((currentBounds.bottom - currentBounds.top) < MIN_WINDOW_HEIGHT) { - currentBounds.bottom = currentBounds.top + MIN_HEIGHT; + currentBounds.bottom = currentBounds.top + MIN_WINDOW_HEIGHT; } SetEventParameter(event, kEventParamCurrentBounds, typeQDRectangle, sizeof(Rect), ¤tBounds); diff --git a/indra/llwindow/llwindowsdl.cpp b/indra/llwindow/llwindowsdl.cpp index abaf4e826..e7e6fe6b9 100644 --- a/indra/llwindow/llwindowsdl.cpp +++ b/indra/llwindow/llwindowsdl.cpp @@ -71,8 +71,6 @@ extern BOOL gDebugWindowProc; const S32 MAX_NUM_RESOLUTIONS = 200; -const S32 MIN_WINDOW_WIDTH = 1024; -const S32 MIN_WINDOW_HEIGHT = 768; // static variable for ATI mouse cursor crash work-around: static bool ATIbug = false; diff --git a/indra/llwindow/llwindowwin32.cpp b/indra/llwindow/llwindowwin32.cpp index d73fb3a0a..b047c123d 100644 --- a/indra/llwindow/llwindowwin32.cpp +++ b/indra/llwindow/llwindowwin32.cpp @@ -2414,8 +2414,8 @@ LRESULT CALLBACK LLWindowWin32::mainWindowProc(HWND h_wnd, UINT u_msg, WPARAM w_ case WM_GETMINMAXINFO: { LPMINMAXINFO min_max = (LPMINMAXINFO)l_param; - min_max->ptMinTrackSize.x = 1024; - min_max->ptMinTrackSize.y = 768; + min_max->ptMinTrackSize.x = MIN_WINDOW_WIDTH; + min_max->ptMinTrackSize.y = MIN_WINDOW_HEIGHT; return 0; } From cd7331453a9793138129f1fb9e078785d8c26194 Mon Sep 17 00:00:00 2001 From: Siana Gearz Date: Fri, 23 Mar 2012 15:10:46 +0100 Subject: [PATCH 11/22] Another avatar .llm update --- indra/newview/character/avatar_upper_body.llm | Bin 929297 -> 929297 bytes .../newview/character/avatar_upper_body_1.llm | Bin 15557 -> 15557 bytes .../newview/character/avatar_upper_body_2.llm | Bin 8921 -> 8921 bytes .../newview/character/avatar_upper_body_3.llm | Bin 4487 -> 4487 bytes .../newview/character/avatar_upper_body_4.llm | Bin 3383 -> 3383 bytes 5 files changed, 0 insertions(+), 0 deletions(-) diff --git a/indra/newview/character/avatar_upper_body.llm b/indra/newview/character/avatar_upper_body.llm index 2499a6e2920b242b702ed6f987a3b3a809d5f90c..80c560fb5d9ddcfec7e548afa1a3a863756c3639 100644 GIT binary patch delta 15131 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 EA3FHeQ~&?~ delta 15122 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 DShd#F diff --git a/indra/newview/character/avatar_upper_body_2.llm b/indra/newview/character/avatar_upper_body_2.llm index 993c37bbbf0c08090f025f0b3fd5e4ab4f800ed2..e21ab966ee825e95445d07da1cf4ffc20b5158a1 100644 GIT binary patch delta 1266 zcmXAoO-z(m6o#F9xMwI8a0aO`fWt6<%nu+I25|}&WEck_wrRTSswUmF%ch%_1dTOz z)8t#w71Z+Z?=gwvxmL8UV z9}7%%OI5mLQ#NE7RY}Wo!0%P@E=o~1sR^oFgiZ1Tya=n(?R^!9o;$!-ZAh6v!o5P3 z!$>7B0o*Y!Pt9SxRc@F~Q!{zlG&j%&=`U)-{QV|*yMfqnl6}kKn3O0|QdDyOM#Xay zV`GdRdAZNNn0LZN7n8Ci3F)KnCZZBY+a^aRhxbtr-~$umn;3qL^ERrJ>bRTlmAZ+- zxHLfbc9PTpTiD%#zwM`kctYNigD@dIq@@qA1V7;tehL3xexsK7xJ6Qa?;8oRv_V$= z2kYjhS*7Zxm+lqP6;g;4k}b1kLba599$1{$`!=k@I%Gw zFb>DjRs9j2@$(rS!^iX_x8raEcX>ibd0}3+ZJyI8Tk}3gxtY-ICjV+eQ=0O+ZBHh~ zM`Id=F|JRNdU3}oJVi}uA3jz4)UE~wD*CJ5){36R&*DjxA-zkz@mc@Ian>6QjbDeHl!DRM5M27nQYu%G?f6WmxfZ!rxrc1f8<>>vMYuUboM!V?VvJKC;*C zBR1^X0X?k=?`iPJ$0gmeC4FM|;Fi6IJHEj0K$q^=yQrWq$ORqZ^#!<~(>_P=5lzE1 zejELxY44N9-1$k;E%b{{QdyW~YEs{aS@<444Tq=_+_OXY9A1GxlRCq` z8GIVL*Jd5h;T(}~QAE~cMXt#o)C!X;asgh39q57t zVNg1~FCsld?b0qU&3~p5y4>vVZI?8Pa1!W}uyaks`!kYkb8|b!P3)MAWVlOv&m!>; z!xHASW5UvpXW+isH(7roBU$FMvMAq~d**+0h}*DOG0YhH`{ossF1<2GcCV%mh2ESj`6n&1+j`Rcsu2x4$@)h$z^z0zJr%xRXTz%BAttduiiu+^KWzS zK~Ih&Pka&F(U+&@IDS-an=Ml_zHFJ>Xp?k{+BAQ@O2J+vIgn-Fia2H^i9AwLis42N zFG`AyDR%hskbSA3WIC6!vMd?tq385*)bd3}v#bn!Tn^-L)pGKAz^r1bbr*uJ2P^aKLKCgbr4SYlYhCWPF z*I^otpzHcQIveJ*I*bqN8E!}581C|z4)MZ*?pUAG5L^9_L)?t%PE&X_roGx5wAuDt zijRgh2~%93A$8-9lXx#RsXh2)?Sfs46f63(-qnhp!_VPalqbDIz4E#6#&It28;7HF zx~A*8$m}4h1fMr%KPu^cyNAkJLS=6IsWPmDITLQKXogN%`}DbOhBxhV>)1!HtWWGs z`-Ba9wqK_;6FhBf{diWl?X3Q5_u;mEfIGgx??IRD+54!ZFUTbw;Ppkgs8b;a@j=bO z9DW!5rMcj|m%lhpx`TewajF0dOpWXNumIn~r{DlJ3-|2+zRxSJQ`FOFmULQU__)rn zZw8-&?zI`s)&B8Dj+Ubmm#AEoCK!itNx+1>#kozsMs2b#t8znrqgI(*l}qp{jH63( z2p*C|@L9aQzg1f0HTlmpL6@W9-d4$>Hcl40WZAhcHuycBj=8yA<0f`ZUh>@Kf@ks6 zhb_{=Y1gz!AD)K?=D-xfiM$k;E69?3V;-3Q%`t9Uq){4}X`p{#BG9FXbjg=^mlSHB tBqkdYC-hyN;9oGIqiCKqs#SbL=Yu<)7o(%xoTPVBf22QJ8|?bQyaYAU?4bYv diff --git a/indra/newview/character/avatar_upper_body_3.llm b/indra/newview/character/avatar_upper_body_3.llm index 67c87520f683d395cb7a97b092874a69b9e6c15e..d52a407f2fbb90c9a52711117556623c64faa606 100644 GIT binary patch delta 843 zcmXYvy-(9o6o%Hg(ixTz@SM(iVBv9t!)@U zny?TcB!&nk23i>09CZa8i$1@GoV?Hbo^x*QUGA&ctJvlff3`>S`doXELDLr023wf- z=%xO}FVROWqCC4iyQOAY(h{DBMSYJ-%-eKU!_cU@gf*z0-0er5OuXdR5NTd!Wm%T9 zQj~cK(H5x!sfG$-9I8nL_gKfbU`4j1iq~P7XR5MKt&{iAx}4vnbMbLwNKd53on@** z3ad}M^s5zZ(1t7p(-uk)5=5^}*f$%@J#}|AVd?4{_fvvtD=|#LbnaOoo{f|4+XyPb z5}Oe;V3R0id-lcl(H@%uUZUcpxJ|$b{DJMdio0~X=+F(=;f)`-1G-7-m~`wW?Z_R$ zl%3)pQ+DD`!q_i2j#4(xa>(nd!>x}bJ8U~PY~Rt2#jF=iS+tolFv>h;8B5|BJA_G? zv{5)}pGX-SvwJWK`|y6$XC+s57pUJn*6^D1c6C^DW1OkGE4-e&2>$7a@y3>|!d089 z{%$|@MO0s_sx;XUQAcj%eso5&qW@%?ZkpYiu4u1+4K3;-ywYyHtqpl83o=J7NVm?R z4Qa^6jc-asH|ZOq8lhA>DAmupAg7#J(YIQrTWPY)?gJ`opqU~`EI?gz%^A9u00-`% mTTQ;ey(hNiOtvLbeb-g+g<7?pA05;gZRIb|XfXFU^zc7sqP)ET delta 843 zcmXYvOHY$g5Qbr@Yrym0rm&ywYL?w16TR$!Qb$;?ZCJl#WjWW%Tc z3v7l_zfGcq9oSbpLYvR*8w~mU8+Dp)n%#!3YRtERmUIc;Xs6!Qn!J%knWq+| zQ|Hl^)MV?{wway~DHB{8*dWsHV%~S)QUT{?d qc}?%3raE8a-V?iWA-fVSe`w1!h638kA05;g4e&3|XfX3E^yELJ?Yme2 diff --git a/indra/newview/character/avatar_upper_body_4.llm b/indra/newview/character/avatar_upper_body_4.llm index 4c16803a15b35d9ecaef087ea71ebf8daf7864a3..394a1e873df80e25b851cede967f74d1982590bc 100644 GIT binary patch delta 623 zcmXYv!A=ul6ouP+xwqPaW#fho$P|iII?$!>piB2|eTgO`ChSVW0-KmNCPGSBP&$bi zNoz<?xzH{#U_n*vSP8UuW+F?3Z@{)h|Z?L%gEd9J%@SYdF zz_Sn*QHk~hm%MV@Dn7Q*M>e*K|F97pFpq7W{m|F(ns@Ecep?s!ZO!|4d2Z)Smv#w5 zzaT>&+QltH-ts#0GIr5)HLLG5t6SRC54wXQ+8&NHMMj+M(VR?a9y;ns9>*}Rv3x~G z^d3HvG|zgH;%2fL=?seWf#z_8c4#?xAI)lRLkF@Y@6o;tWQJ)UHEAu}6z6(N4#|Wa z@%Xbo^lI5RypKQnPuuhxd~G*YhMQjYr(_?N+4(}A;r|)X0!|OCWxw#MC%huB>>93e zw(Lv3OfKO?9QYy%{1NWJGv_mc_(k?lx+?ltYN{$)(>htxIat>QS=W28p;MWoO+}d| zFliGJHEvC$p>H(9R)(FoGL&sJlzH98$1;)QyKKu;+RRCQk}jUg%Dg}J6aIx2c*5UQ J*d5Kj`UkV5j)(vN delta 623 zcmXYvF;7!r6o%_Sr6w+HAT1QDy;nNjOvIEhPn%7yzjZ+`R??cE}ky7%8B`sm;8r+hsE8OiC5KvcfIHZ zzJ;)eO0;LVjL4n{q%-*p^g$ zrjNZE_zUmhFaFCm{0`sRods~i1Ak8TV8G5fd4d0Do|fnIt2OO6Uh@fW$Q!$bYn-k4 zvagWKcnRly3FZ9>Zo><2i|6Cl>A#6;QWLtZrb$>MxAh^cX`QTT8rF3NrlFBzv1uDi zQfIj}mb$*zIkx85`5*(?LIZiETlh%Ea&(_9nb8*WBu}IxC* Date: Sat, 24 Mar 2012 16:18:51 +0100 Subject: [PATCH 12/22] Fix proxy setting initialization --- indra/newview/llstartup.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/indra/newview/llstartup.cpp b/indra/newview/llstartup.cpp index b27e2bafd..1029b2709 100644 --- a/indra/newview/llstartup.cpp +++ b/indra/newview/llstartup.cpp @@ -4299,7 +4299,7 @@ bool LLStartUp::startLLProxy() LL_WARNS("Proxy") << "Invalid other HTTP proxy configuration."<< LL_ENDL; // Set the missing or wrong configuration back to something valid. - gSavedSettings.setString("HttpProxyType", "None"); + gSavedSettings.setString("Socks5HttpProxyType", "None"); LLProxy::getInstance()->disableHTTPProxy(); // Leave proxy_ok alone, since this isn't necessarily fatal. From 459751f20634126b54f4bf91f184990a7507e792 Mon Sep 17 00:00:00 2001 From: Siana Gearz Date: Sun, 25 Mar 2012 04:36:17 +0200 Subject: [PATCH 13/22] Catching up with Lindies part 1 --- indra/llrender/llrender.cpp | 2 -- indra/llrender/llvertexbuffer.h | 4 +-- indra/newview/llfloatermodelpreview.cpp | 2 +- indra/newview/llfloaterwindlight.cpp | 4 +-- indra/newview/llviewermessage.cpp | 18 +++++++------ indra/newview/llviewershadermgr.cpp | 2 +- indra/newview/llwlparammanager.cpp | 1 - indra/newview/llwlparamset.cpp | 34 +------------------------ indra/newview/llwlparamset.h | 2 +- 9 files changed, 17 insertions(+), 52 deletions(-) diff --git a/indra/llrender/llrender.cpp b/indra/llrender/llrender.cpp index 39ce7d3b4..5c0c8f6a7 100644 --- a/indra/llrender/llrender.cpp +++ b/indra/llrender/llrender.cpp @@ -1440,8 +1440,6 @@ void LLRender::loadIdentity() flush(); { - llassert_always(mMatrixMode < NUM_MATRIX_MODES) ; - mMatrix[mMatrixMode][mMatIdx[mMatrixMode]].make_identity(); mMatHash[mMatrixMode]++; } diff --git a/indra/llrender/llvertexbuffer.h b/indra/llrender/llvertexbuffer.h index 910ffbd1b..50d6b691d 100644 --- a/indra/llrender/llvertexbuffer.h +++ b/indra/llrender/llvertexbuffer.h @@ -62,7 +62,7 @@ public: {} const U32 mUsage; - U32 mType; + const U32 mType; //size MUST be a power of 2 volatile U8* allocate(U32& name, U32 size); @@ -269,8 +269,6 @@ public: //for debugging, validate data in given range is valid void validateRange(U32 start, U32 end, U32 count, U32 offset) const; - - protected: S32 mNumVerts; // Number of vertices allocated S32 mNumIndices; // Number of indices allocated diff --git a/indra/newview/llfloatermodelpreview.cpp b/indra/newview/llfloatermodelpreview.cpp index 53f30735e..004d11646 100644 --- a/indra/newview/llfloatermodelpreview.cpp +++ b/indra/newview/llfloatermodelpreview.cpp @@ -3951,7 +3951,7 @@ void LLModelPreview::genLODs(S32 which_lod, U32 decimation, bool enforce_tri_lim U32 num_indices = mVertexBuffer[5][mdl][i]->getNumIndices(); if (num_indices > 2) { - glodInsertElements(mObject[mdl], i, GL_TRIANGLES, num_indices, GL_UNSIGNED_SHORT, mVertexBuffer[5][mdl][i]->getIndicesPointer(), 0, 0.f); + glodInsertElements(mObject[mdl], i, GL_TRIANGLES, num_indices, GL_UNSIGNED_SHORT, (U8*) mVertexBuffer[5][mdl][i]->getIndicesPointer(), 0, 0.f); } tri_count += num_indices/3; stop_gloderror(); diff --git a/indra/newview/llfloaterwindlight.cpp b/indra/newview/llfloaterwindlight.cpp index e2c96db76..942763ad8 100644 --- a/indra/newview/llfloaterwindlight.cpp +++ b/indra/newview/llfloaterwindlight.cpp @@ -147,8 +147,8 @@ void LLFloaterWindLight::initCallbacks(void) { childSetCommitCallback("WLBlueHorizonI", onColorControlIMoved, ¶m_mgr->mBlueHorizon); // haze density, horizon, mult, and altitude - childSetCommitCallback("WLHazeDensity", onColorControlRMoved, ¶m_mgr->mHazeDensity); - childSetCommitCallback("WLHazeHorizon", onColorControlRMoved, ¶m_mgr->mHazeHorizon); + childSetCommitCallback("WLHazeDensity", onFloatControlMoved, ¶m_mgr->mHazeDensity); + childSetCommitCallback("WLHazeHorizon", onFloatControlMoved, ¶m_mgr->mHazeHorizon); childSetCommitCallback("WLDensityMult", onFloatControlMoved, ¶m_mgr->mDensityMult); childSetCommitCallback("WLMaxAltitude", onFloatControlMoved, ¶m_mgr->mMaxAlt); diff --git a/indra/newview/llviewermessage.cpp b/indra/newview/llviewermessage.cpp index e0ebcf7c4..7ab1d9bcc 100644 --- a/indra/newview/llviewermessage.cpp +++ b/indra/newview/llviewermessage.cpp @@ -5785,6 +5785,16 @@ bool script_question_cb(const LLSD& notification, const LLSD& response) S32 orig = notification["payload"]["questions"].asInteger(); S32 new_questions = orig; + if (response["Details"]) + { + // respawn notification... + LLNotificationsUtil::add(notification["name"], notification["substitutions"], notification["payload"]); + + // ...with description on top + LLNotificationsUtil::add("DebitPermissionDetails"); + return false; + } + // check whether permissions were granted or denied BOOL allowed = TRUE; // the "yes/accept" button is the first button in the template, making it button 0 @@ -5841,14 +5851,6 @@ bool script_question_cb(const LLSD& notification, const LLSD& response) gNotifyBoxView->purgeMessagesMatching(OfferMatcher(item_id)); } - if (response["Details"]) - { - // respawn notification... - LLNotifications::instance().add(notification["name"], notification["substitutions"], notification["payload"]); - - // ...with description on top - LLNotificationsUtil::add("DebitPermissionDetails"); - } return false; } static LLNotificationFunctorRegistration script_question_cb_reg_1("ScriptQuestion", script_question_cb); diff --git a/indra/newview/llviewershadermgr.cpp b/indra/newview/llviewershadermgr.cpp index 3e8466d8e..aa2ab0aa1 100644 --- a/indra/newview/llviewershadermgr.cpp +++ b/indra/newview/llviewershadermgr.cpp @@ -588,7 +588,7 @@ BOOL LLViewerShaderMgr::loadBasicShaders() vector< pair > shaders; shaders.push_back( make_pair( "windlight/atmosphericsVarsV.glsl", mVertexShaderLevel[SHADER_WINDLIGHT] ) ); - shaders.push_back( make_pair( "windlight/atmosphericsVarsWaterV.glsl", mVertexShaderLevel[SHADER_WINDLIGHT] ) ); + shaders.push_back( make_pair( "windlight/atmosphericsVarsWaterV.glsl", mVertexShaderLevel[SHADER_WINDLIGHT] ) ); shaders.push_back( make_pair( "windlight/atmosphericsHelpersV.glsl", mVertexShaderLevel[SHADER_WINDLIGHT] ) ); shaders.push_back( make_pair( "lighting/lightFuncV.glsl", mVertexShaderLevel[SHADER_LIGHTING] ) ); shaders.push_back( make_pair( "lighting/sumLightsV.glsl", sum_lights_class ) ); diff --git a/indra/newview/llwlparammanager.cpp b/indra/newview/llwlparammanager.cpp index 50990f248..7845165b3 100644 --- a/indra/newview/llwlparammanager.cpp +++ b/indra/newview/llwlparammanager.cpp @@ -83,7 +83,6 @@ LLWLParamManager::LLWLParamManager() : //set the defaults for the controls - // index is from sWLUniforms in pipeline.cpp line 979 /// Sun Delta Terrain tweak variables. mSunDeltaYaw(180.0f), diff --git a/indra/newview/llwlparamset.cpp b/indra/newview/llwlparamset.cpp index 7c9cb8407..8691a245c 100644 --- a/indra/newview/llwlparamset.cpp +++ b/indra/newview/llwlparamset.cpp @@ -47,33 +47,7 @@ LLWLParamSet::LLWLParamSet(void) : mName("Unnamed Preset"), mCloudScrollXOffset(0.f), mCloudScrollYOffset(0.f) -{ -/* REMOVE or init the LLSD - const std::map::value_type hardcodedPreset[] = { - std::make_pair("lightnorm", LLVector4(0.f, 0.707f, -0.707f, 0.f)), - std::make_pair("sunlight_color", LLVector4(0.6f, 0.6f, 2.83f, 2.27f)), - std::make_pair("ambient", LLVector4(0.27f, 0.33f, 0.44f, 1.19f)), - std::make_pair("blue_horizon", LLVector4(0.3f, 0.4f, 0.9f, 1.f)), - std::make_pair("blue_density", LLVector4(0.3f, 0.4f, 0.8f, 1.f)), - std::make_pair("haze_horizon", LLVector4(0.6f, 0.6f, 0.6f, 1.f)), - std::make_pair("haze_density", LLVector4(0.3f, 0.3f, 0.3f, 1.f)), - std::make_pair("cloud_shadow", LLVector4(0.f, 0.f, 0.f, 0.f)), - std::make_pair("density_multiplier", LLVector4(0.001f, 0.001f, 0.001f, 0.001f)), - std::make_pair("distance_multiplier", LLVector4(1.f, 1.f, 1.f, 1.f)), - std::make_pair("max_y", LLVector4(600.f, 600.f, 600.f, 0.f)), - std::make_pair("glow", LLVector4(15.f, 0.001f, -0.03125f, 0.f)), - std::make_pair("cloud_color", LLVector4(0.0f, 0.0f, 0.0f, 0.0f)), - std::make_pair("cloud_pos_density1", LLVector4(0.f, 0.f, 0.f, 1.f)), - std::make_pair("cloud_pos_density2", LLVector4(0.f, 0.f, 0.f, 1.f)), - std::make_pair("cloud_scale", LLVector4(0.42f, 0.f, 0.f, 1.f)), - std::make_pair("gamma", LLVector4(2.0f, 2.0f, 2.0f, 0.0f)), - }; - std::map::value_type const * endHardcodedPreset = - hardcodedPreset + LL_ARRAY_SIZE(hardcodedPreset); - - mParamValues.insert(hardcodedPreset, endHardcodedPreset); -*/ -} +{} static LLFastTimer::DeclareTimer FTM_WL_PARAM_UPDATE("WL Param Update"); @@ -224,7 +198,6 @@ void LLWLParamSet::set(const std::string& paramName, const LLColor4 & val) LLVector4 LLWLParamSet::getVector(const std::string& paramName, bool& error) { - // test to see if right type LLSD cur_val = mParamValues.get(paramName); if (!cur_val.isArray()) @@ -245,7 +218,6 @@ LLVector4 LLWLParamSet::getVector(const std::string& paramName, bool& error) F32 LLWLParamSet::getFloat(const std::string& paramName, bool& error) { - // test to see if right type LLSD cur_val = mParamValues.get(paramName); if (cur_val.isArray() && cur_val.size() != 0) @@ -264,8 +236,6 @@ F32 LLWLParamSet::getFloat(const std::string& paramName, bool& error) return 0; } - - void LLWLParamSet::setSunAngle(float val) { // keep range 0 - 2pi @@ -293,7 +263,6 @@ void LLWLParamSet::setEastAngle(float val) mParamValues["east_angle"] = val; } - void LLWLParamSet::mix(LLWLParamSet& src, LLWLParamSet& dest, F32 weight) { // set up the iterators @@ -312,7 +281,6 @@ void LLWLParamSet::mix(LLWLParamSet& src, LLWLParamSet& dest, F32 weight) // Iterate through values for(LLSD::map_iterator iter = mParamValues.beginMap(); iter != mParamValues.endMap(); ++iter) { - // If param exists in both src and dest, set the holder variables, otherwise skip if(src.mParamValues.has(iter->first) && dest.mParamValues.has(iter->first)) { diff --git a/indra/newview/llwlparamset.h b/indra/newview/llwlparamset.h index ab7903240..6e04ac110 100644 --- a/indra/newview/llwlparamset.h +++ b/indra/newview/llwlparamset.h @@ -117,7 +117,7 @@ public: /// \param error A flag to set if it's not the proper return type LLVector4 getVector(const std::string& paramName, bool& error); - /// Get an integer parameter + /// Get a float parameter /// \param paramName The name of the parameter to set. /// \param error A flag to set if it's not the proper return type F32 getFloat(const std::string& paramName, bool& error); From 196e9d6c78410596ad27816c0e1de722292e7527 Mon Sep 17 00:00:00 2001 From: Siana Gearz Date: Sun, 25 Mar 2012 09:29:55 +0200 Subject: [PATCH 14/22] Unbreaking Ctrl+W the right way --- indra/llui/llfloater.cpp | 34 ++++------------------------------ indra/llui/llfloater.h | 1 - indra/llui/llmultifloater.cpp | 16 ++++++++++++++++ indra/llui/llmultifloater.h | 1 + indra/newview/llimpanel.cpp | 4 +++- 5 files changed, 24 insertions(+), 32 deletions(-) diff --git a/indra/llui/llfloater.cpp b/indra/llui/llfloater.cpp index 3145c3cf1..08924ac11 100644 --- a/indra/llui/llfloater.cpp +++ b/indra/llui/llfloater.cpp @@ -1202,6 +1202,7 @@ BOOL LLFloater::handleMiddleMouseDown(S32 x, S32 y, MASK mask) return LLPanel::handleMiddleMouseDown( x, y, mask ); } + // virtual BOOL LLFloater::handleDoubleClick(S32 x, S32 y, MASK mask) { @@ -1210,22 +1211,6 @@ BOOL LLFloater::handleDoubleClick(S32 x, S32 y, MASK mask) return was_minimized || LLPanel::handleDoubleClick(x, y, mask); } -// virtual -BOOL LLFloater::handleKeyHere(KEY key, MASK mask) -{ - if (key == 'W' && mask == MASK_CONTROL) - { - if (canClose() && isCloseable()) - { - close(); - } - return TRUE; - } - - return LLPanel::handleKeyHere(key, mask); -} - - void LLFloater::bringToFront( S32 x, S32 y ) { if (getVisible() && pointInView(x, y)) @@ -1352,21 +1337,10 @@ void LLFloater::onClickEdit(void *userdata) // static LLFloater* LLFloater::getClosableFloaterFromFocus() { - LLFloater* focused_floater = NULL; + LLFloater* focused_floater = gFloaterView->getFocusedFloater(); - handle_map_iter_t iter; - for(iter = sFloaterMap.begin(); iter != sFloaterMap.end(); ++iter) + if (!focused_floater) { - focused_floater = iter->second; - if (focused_floater->hasFocus()) - { - break; - } - } - - if (iter == sFloaterMap.end()) - { - // nothing found, return return NULL; } @@ -1374,7 +1348,7 @@ LLFloater* LLFloater::getClosableFloaterFromFocus() // Find and close a parental floater that is closeable, if any. LLFloater* previous_floater = NULL; // Guard against endless loop, because getParentFloater(x) can return x! for(LLFloater* floater_to_close = focused_floater; - NULL != floater_to_close && floater_to_close != gFloaterView->getParentFloater(floater_to_close); + NULL != floater_to_close; floater_to_close = gFloaterView->getParentFloater(floater_to_close)) { if(floater_to_close == previous_floater) diff --git a/indra/llui/llfloater.h b/indra/llui/llfloater.h index 40d8c7ecd..939071b0f 100644 --- a/indra/llui/llfloater.h +++ b/indra/llui/llfloater.h @@ -197,7 +197,6 @@ public: virtual BOOL handleRightMouseDown(S32 x, S32 y, MASK mask); virtual BOOL handleDoubleClick(S32 x, S32 y, MASK mask); virtual BOOL handleMiddleMouseDown(S32 x, S32 y, MASK mask); - /*virtual*/ BOOL handleKeyHere(KEY key, MASK mask); virtual void draw(); virtual void onOpen() {} diff --git a/indra/llui/llmultifloater.cpp b/indra/llui/llmultifloater.cpp index 92823fd33..29ea32816 100644 --- a/indra/llui/llmultifloater.cpp +++ b/indra/llui/llmultifloater.cpp @@ -406,6 +406,22 @@ void LLMultiFloater::setVisible(BOOL visible) } } +BOOL LLMultiFloater::handleKeyHere(KEY key, MASK mask) +{ + if (key == 'W' && mask == MASK_CONTROL) + { + LLFloater* floater = getActiveFloater(); + // is user closeable and is system closeable + if (floater && floater->canClose() && floater->isCloseable()) + { + floater->close(); + } + return TRUE; + } + + return LLFloater::handleKeyHere(key, mask); +} + LLFloater* LLMultiFloater::getActiveFloater() { return (LLFloater*)mTabContainer->getCurrentPanel(); diff --git a/indra/llui/llmultifloater.h b/indra/llui/llmultifloater.h index ccf5f462f..29c03b3c4 100644 --- a/indra/llui/llmultifloater.h +++ b/indra/llui/llmultifloater.h @@ -51,6 +51,7 @@ public: /*virtual*/ void onClose(bool app_quitting); /*virtual*/ void draw(); /*virtual*/ void setVisible(BOOL visible); + /*virtual*/ BOOL handleKeyHere(KEY key, MASK mask); virtual void setCanResize(BOOL can_resize); virtual void growToFit(S32 content_width, S32 content_height); diff --git a/indra/newview/llimpanel.cpp b/indra/newview/llimpanel.cpp index 56375829a..e1c3ab443 100644 --- a/indra/newview/llimpanel.cpp +++ b/indra/newview/llimpanel.cpp @@ -1788,7 +1788,9 @@ BOOL LLFloaterIMPanel::handleKeyHere( KEY key, MASK mask ) } } - return handled || LLFloater::handleKeyHere(key, mask); + // May need to call base class LLPanel::handleKeyHere if not handled + // in order to tab between buttons. JNC 1.2.2002 + return handled; } BOOL LLFloaterIMPanel::handleDragAndDrop(S32 x, S32 y, MASK mask, BOOL drop, From 3f0f955a7680fbc756ba2522d0b2dc6aeda9704c Mon Sep 17 00:00:00 2001 From: Siana Gearz Date: Sun, 25 Mar 2012 09:38:36 +0200 Subject: [PATCH 15/22] Catching up with Lindies part 2 --- indra/llcharacter/llbvhloader.cpp | 2 +- indra/llrender/llgl.cpp | 70 +++++- indra/llrender/llgl.h | 2 + indra/llrender/llglheaders.h | 3 + indra/llrender/llglslshader.cpp | 11 +- indra/llrender/llshadermgr.cpp | 89 ++++---- indra/llrender/llvertexbuffer.cpp | 50 ++++- indra/newview/CMakeLists.txt | 3 +- .../shaders/class1/avatar/pickAvatarF.glsl | 6 +- .../shaders/class1/deferred/alphaF.glsl | 6 +- .../class1/deferred/alphaNonIndexedF.glsl | 10 +- .../deferred/alphaNonIndexedNoColorF.glsl | 6 +- .../class1/deferred/attachmentShadowF.glsl | 8 +- .../shaders/class1/deferred/avatarF.glsl | 10 +- .../class1/deferred/avatarShadowF.glsl | 6 +- .../shaders/class1/deferred/blurLightF.glsl | 6 +- .../shaders/class1/deferred/bumpF.glsl | 12 +- .../shaders/class1/deferred/bumpSkinnedV.glsl | 4 +- .../shaders/class1/deferred/cloudsF.glsl | 10 +- .../shaders/class1/deferred/cofF.glsl | 8 +- .../class1/deferred/diffuseAlphaMaskF.glsl | 10 +- .../deferred/diffuseAlphaMaskIndexedF.glsl | 10 +- .../deferred/diffuseAlphaMaskNoColorF.glsl | 10 +- .../shaders/class1/deferred/diffuseF.glsl | 12 +- .../class1/deferred/diffuseIndexedF.glsl | 12 +- .../shaders/class1/deferred/dofCombineF.glsl | 6 +- .../shaders/class1/deferred/emissiveF.glsl | 6 +- .../shaders/class1/deferred/fullbrightF.glsl | 6 +- .../shaders/class1/deferred/fxaaF.glsl | 27 ++- .../shaders/class1/deferred/giF.glsl | 6 +- .../shaders/class1/deferred/giV.glsl | 48 ---- .../shaders/class1/deferred/impostorF.glsl | 10 +- .../shaders/class1/deferred/luminanceF.glsl | 6 +- .../class1/deferred/multiPointLightF.glsl | 8 +- .../class1/deferred/multiSpotLightF.glsl | 8 +- .../shaders/class1/deferred/normgenF.glsl | 6 +- .../shaders/class1/deferred/pointLightF.glsl | 8 +- .../class1/deferred/postDeferredF.glsl | 6 +- .../class1/deferred/postDeferredNoDoFF.glsl | 6 +- .../shaders/class1/deferred/postgiF.glsl | 8 +- .../shaders/class1/deferred/postgiV.glsl | 40 ---- .../class1/deferred/shadowAlphaMaskF.glsl | 6 +- .../shaders/class1/deferred/shadowF.glsl | 6 +- .../shaders/class1/deferred/skyF.glsl | 10 +- .../shaders/class1/deferred/softenLightF.glsl | 8 +- .../shaders/class1/deferred/spotLightF.glsl | 8 +- .../shaders/class1/deferred/starsF.glsl | 10 +- .../shaders/class1/deferred/sunLightF.glsl | 6 +- .../class1/deferred/sunLightSSAOF.glsl | 12 +- .../shaders/class1/deferred/terrainF.glsl | 10 +- .../shaders/class1/deferred/treeF.glsl | 10 +- .../shaders/class1/deferred/treeShadowF.glsl | 6 +- .../shaders/class1/deferred/waterF.glsl | 10 +- .../shaders/class1/effects/glowExtractF.glsl | 8 +- .../shaders/class1/effects/glowF.glsl | 6 +- .../shaders/class1/environment/terrainF.glsl | 6 +- .../class1/environment/terrainWaterF.glsl | 6 +- .../class1/environment/underWaterF.glsl | 6 +- .../shaders/class1/environment/waterF.glsl | 6 +- .../shaders/class1/interface/alphamaskF.glsl | 6 +- .../class1/interface/customalphaF.glsl | 6 +- .../shaders/class1/interface/debugF.glsl | 6 +- .../class1/interface/glowcombineF.glsl | 6 +- .../class1/interface/glowcombineFXAAF.glsl | 6 +- .../shaders/class1/interface/highlightF.glsl | 6 +- .../shaders/class1/interface/occlusionF.glsl | 6 +- .../class1/interface/onetexturenocolorF.glsl | 6 +- .../shaders/class1/interface/solidcolorF.glsl | 6 +- .../class1/interface/splattexturerectF.glsl | 6 +- .../class1/interface/twotextureaddF.glsl | 6 +- .../shaders/class1/interface/uiF.glsl | 6 +- .../class1/lighting/lightAlphaMaskF.glsl | 6 +- .../lighting/lightAlphaMaskNonIndexedF.glsl | 6 +- .../shaders/class1/lighting/lightF.glsl | 6 +- .../lighting/lightFullbrightAlphaMaskF.glsl | 6 +- .../class1/lighting/lightFullbrightF.glsl | 6 +- .../lightFullbrightNonIndexedAlphaMaskF.glsl | 6 +- .../lighting/lightFullbrightNonIndexedF.glsl | 6 +- .../lighting/lightFullbrightShinyF.glsl | 6 +- .../lightFullbrightShinyNonIndexedF.glsl | 6 +- .../lighting/lightFullbrightShinyWaterF.glsl | 6 +- .../lightFullbrightShinyWaterNonIndexedF.glsl | 6 +- .../lightFullbrightWaterAlphaMaskF.glsl | 6 +- .../lighting/lightFullbrightWaterF.glsl | 6 +- ...htFullbrightWaterNonIndexedAlphaMaskF.glsl | 6 +- .../lightFullbrightWaterNonIndexedF.glsl | 6 +- .../class1/lighting/lightNonIndexedF.glsl | 6 +- .../shaders/class1/lighting/lightShinyF.glsl | 6 +- .../lighting/lightShinyNonIndexedF.glsl | 6 +- .../class1/lighting/lightShinyWaterF.glsl | 6 +- .../lighting/lightShinyWaterNonIndexedF.glsl | 6 +- .../class1/lighting/lightWaterAlphaMaskF.glsl | 6 +- .../lightWaterAlphaMaskNonIndexedF.glsl | 6 +- .../shaders/class1/lighting/lightWaterF.glsl | 8 +- .../lighting/lightWaterNonIndexedF.glsl | 6 +- .../shaders/class1/objects/bumpF.glsl | 6 +- .../shaders/class1/objects/impostorF.glsl | 6 +- .../class1/objects/indexedTextureV.glsl | 4 +- .../shaders/class2/deferred/alphaF.glsl | 6 +- .../class2/deferred/alphaNonIndexedF.glsl | 6 +- .../deferred/alphaNonIndexedNoColorF.glsl | 6 +- .../class2/deferred/multiSpotLightF.glsl | 8 +- .../shaders/class2/deferred/softenLightF.glsl | 8 +- .../shaders/class2/deferred/spotLightF.glsl | 8 +- .../shaders/class2/deferred/sunLightF.glsl | 18 +- .../class2/deferred/sunLightSSAOF.glsl | 18 +- .../shaders/class2/windlight/cloudsF.glsl | 8 +- .../shaders/class2/windlight/skyF.glsl | 8 +- indra/newview/lldynamictexture.cpp | 28 ++- indra/newview/llface.cpp | 12 +- indra/newview/llmeshrepository.cpp | 205 ++++++++++-------- indra/newview/llviewershadermgr.cpp | 14 +- indra/newview/pipeline.cpp | 9 +- 113 files changed, 801 insertions(+), 516 deletions(-) delete mode 100644 indra/newview/app_settings/shaders/class1/deferred/giV.glsl delete mode 100644 indra/newview/app_settings/shaders/class1/deferred/postgiV.glsl diff --git a/indra/llcharacter/llbvhloader.cpp b/indra/llcharacter/llbvhloader.cpp index 9f74e877a..b4dedad11 100644 --- a/indra/llcharacter/llbvhloader.cpp +++ b/indra/llcharacter/llbvhloader.cpp @@ -1575,7 +1575,7 @@ BOOL LLBVHLoader::serialize(LLDataPacker& dp) constraint_it++) { U8 byte = constraint_it->mChainLength; - dp.packU8(byte, "chain_lenght"); + dp.packU8(byte, "chain_length"); byte = constraint_it->mConstraintType; dp.packU8(byte, "constraint_type"); diff --git a/indra/llrender/llgl.cpp b/indra/llrender/llgl.cpp index e92657bc0..76f81f789 100644 --- a/indra/llrender/llgl.cpp +++ b/indra/llrender/llgl.cpp @@ -111,6 +111,8 @@ void APIENTRY gl_debug_callback(GLenum source, } #endif +void parse_glsl_version(S32& major, S32& minor); + void ll_init_fail_log(std::string filename) { gFailLog.open(filename.c_str()); @@ -309,6 +311,7 @@ PFNGLGETACTIVEUNIFORMARBPROC glGetActiveUniformARB = NULL; PFNGLGETUNIFORMFVARBPROC glGetUniformfvARB = NULL; PFNGLGETUNIFORMIVARBPROC glGetUniformivARB = NULL; PFNGLGETSHADERSOURCEARBPROC glGetShaderSourceARB = NULL; +PFNGLVERTEXATTRIBIPOINTERPROC glVertexAttribIPointer = NULL; #if LL_WINDOWS PFNWGLCREATECONTEXTATTRIBSARBPROC wglCreateContextAttribsARB = NULL; @@ -458,7 +461,8 @@ LLGLManager::LLGLManager() : mDriverVersionMinor(0), mDriverVersionRelease(0), mGLVersion(1.0f), - + mGLSLVersionMajor(0), + mGLSLVersionMinor(0), mVRAM(0), mGLMaxVertexRange(0), mGLMaxIndexRange(0) @@ -569,6 +573,20 @@ bool LLGLManager::initGL() mGLVersion = mDriverVersionMajor + mDriverVersionMinor * .1f; + if (mGLVersion >= 2.f) + { + parse_glsl_version(mGLSLVersionMajor, mGLSLVersionMinor); + +#if LL_DARWIN + //never use GLSL greater than 1.20 on OSX + if (mGLSLVersionMajor > 1 || mGLSLVersionMinor >= 30) + { + mGLSLVersionMajor = 1; + mGLSLVersionMinor = 20; + } +#endif + } + // Trailing space necessary to keep "nVidia Corpor_ati_on" cards // from being recognized as ATI. if (mGLVendor.substr(0,4) == "ATI ") @@ -1292,6 +1310,7 @@ void LLGLManager::initExtensions() glVertexAttrib4uivARB = (PFNGLVERTEXATTRIB4UIVARBPROC) GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib4uivARB"); glVertexAttrib4usvARB = (PFNGLVERTEXATTRIB4USVARBPROC) GLH_EXT_GET_PROC_ADDRESS("glVertexAttrib4usvARB"); glVertexAttribPointerARB = (PFNGLVERTEXATTRIBPOINTERARBPROC) GLH_EXT_GET_PROC_ADDRESS("glVertexAttribPointerARB"); + glVertexAttribIPointer = (PFNGLVERTEXATTRIBIPOINTERPROC) GLH_EXT_GET_PROC_ADDRESS("glVertexAttribIPointer"); glEnableVertexAttribArrayARB = (PFNGLENABLEVERTEXATTRIBARRAYARBPROC) GLH_EXT_GET_PROC_ADDRESS("glEnableVertexAttribArrayARB"); glDisableVertexAttribArrayARB = (PFNGLDISABLEVERTEXATTRIBARRAYARBPROC) GLH_EXT_GET_PROC_ADDRESS("glDisableVertexAttribArrayARB"); glProgramStringARB = (PFNGLPROGRAMSTRINGARBPROC) GLH_EXT_GET_PROC_ADDRESS("glProgramStringARB"); @@ -2082,6 +2101,55 @@ void parse_gl_version( S32* major, S32* minor, S32* release, std::string* vendor } } + +void parse_glsl_version(S32& major, S32& minor) +{ + // GL_SHADING_LANGUAGE_VERSION returns a null-terminated string with the format: + // .[.] [] + + const char* version = (const char*) glGetString(GL_SHADING_LANGUAGE_VERSION); + major = 0; + minor = 0; + + if( !version ) + { + return; + } + + std::string ver_copy( version ); + S32 len = (S32)strlen( version ); /* Flawfinder: ignore */ + S32 i = 0; + S32 start; + // Find the major version + start = i; + for( ; i < len; i++ ) + { + if( '.' == version[i] ) + { + break; + } + } + std::string major_str = ver_copy.substr(start,i-start); + LLStringUtil::convertToS32(major_str, major); + + if( '.' == version[i] ) + { + i++; + } + + // Find the minor version + start = i; + for( ; i < len; i++ ) + { + if( ('.' == version[i]) || isspace(version[i]) ) + { + break; + } + } + std::string minor_str = ver_copy.substr(start,i-start); + LLStringUtil::convertToS32(minor_str, minor); +} + LLGLUserClipPlane::LLGLUserClipPlane(const LLPlane& p, const glh::matrix4f& modelview, const glh::matrix4f& projection, bool apply) { mApply = apply; diff --git a/indra/llrender/llgl.h b/indra/llrender/llgl.h index 528946f1f..6817ec0f0 100644 --- a/indra/llrender/llgl.h +++ b/indra/llrender/llgl.h @@ -145,6 +145,8 @@ public: S32 mDriverVersionMinor; S32 mDriverVersionRelease; F32 mGLVersion; // e.g = 1.4 + S32 mGLSLVersionMajor; + S32 mGLSLVersionMinor; std::string mDriverVersionVendorString; S32 mVRAM; // VRAM in MB diff --git a/indra/llrender/llglheaders.h b/indra/llrender/llglheaders.h index d01f90d7c..7ccc0d819 100644 --- a/indra/llrender/llglheaders.h +++ b/indra/llrender/llglheaders.h @@ -207,6 +207,7 @@ extern PFNGLVERTEXATTRIB4UBVARBPROC glVertexAttrib4ubvARB; extern PFNGLVERTEXATTRIB4UIVARBPROC glVertexAttrib4uivARB; extern PFNGLVERTEXATTRIB4USVARBPROC glVertexAttrib4usvARB; extern PFNGLVERTEXATTRIBPOINTERARBPROC glVertexAttribPointerARB; +extern PFNGLVERTEXATTRIBIPOINTERPROC glVertexAttribIPointer; extern PFNGLENABLEVERTEXATTRIBARRAYARBPROC glEnableVertexAttribArrayARB; extern PFNGLDISABLEVERTEXATTRIBARRAYARBPROC glDisableVertexAttribArrayARB; extern PFNGLPROGRAMSTRINGARBPROC glProgramStringARB; @@ -466,6 +467,7 @@ extern PFNGLVERTEXATTRIB4UBVARBPROC glVertexAttrib4ubvARB; extern PFNGLVERTEXATTRIB4UIVARBPROC glVertexAttrib4uivARB; extern PFNGLVERTEXATTRIB4USVARBPROC glVertexAttrib4usvARB; extern PFNGLVERTEXATTRIBPOINTERARBPROC glVertexAttribPointerARB; +extern PFNGLVERTEXATTRIBIPOINTERPROC glVertexAttribIPointer; extern PFNGLENABLEVERTEXATTRIBARRAYARBPROC glEnableVertexAttribArrayARB; extern PFNGLDISABLEVERTEXATTRIBARRAYARBPROC glDisableVertexAttribArrayARB; extern PFNGLPROGRAMSTRINGARBPROC glProgramStringARB; @@ -699,6 +701,7 @@ extern PFNGLVERTEXATTRIB4UBVARBPROC glVertexAttrib4ubvARB; extern PFNGLVERTEXATTRIB4UIVARBPROC glVertexAttrib4uivARB; extern PFNGLVERTEXATTRIB4USVARBPROC glVertexAttrib4usvARB; extern PFNGLVERTEXATTRIBPOINTERARBPROC glVertexAttribPointerARB; +extern PFNGLVERTEXATTRIBIPOINTERPROC glVertexAttribIPointer; extern PFNGLENABLEVERTEXATTRIBARRAYARBPROC glEnableVertexAttribArrayARB; extern PFNGLDISABLEVERTEXATTRIBARRAYARBPROC glDisableVertexAttribArrayARB; extern PFNGLPROGRAMSTRINGARBPROC glProgramStringARB; diff --git a/indra/llrender/llglslshader.cpp b/indra/llrender/llglslshader.cpp index c7cc041ca..1dfbde0b8 100644 --- a/indra/llrender/llglslshader.cpp +++ b/indra/llrender/llglslshader.cpp @@ -149,12 +149,6 @@ BOOL LLGLSLShader::createShader(vector * attributes, glDeleteObjectARB(mProgramObject); // Create program mProgramObject = glCreateProgramObjectARB(); - - static const LLCachedControl no_texture_indexing("ShyotlUseLegacyTextureBatching",false); - if (gGLManager.mGLVersion < 3.1f || no_texture_indexing) - { //force indexed texture channels to 1 if GL version is old (performance improvement for drivers with poor branching shader model support) - mFeatures.mIndexedTextureChannels = llmin(mFeatures.mIndexedTextureChannels, 1); - } //compile new source vector< pair >::iterator fileIter = mShaderFiles.begin(); @@ -181,8 +175,9 @@ BOOL LLGLSLShader::createShader(vector * attributes, return FALSE; } - if (gGLManager.mGLVersion < 3.1f || no_texture_indexing) - { //attachShaderFeatures may have set the number of indexed texture channels, so set to 1 again + static const LLCachedControl no_texture_indexing("ShyotlUseLegacyTextureBatching",false); + if (gGLManager.mGLVersion < 3.1f || no_texture_indexing) + { //attachShaderFeatures may have set the number of indexed texture channels, so set to 1 again mFeatures.mIndexedTextureChannels = llmin(mFeatures.mIndexedTextureChannels, 1); } diff --git a/indra/llrender/llshadermgr.cpp b/indra/llrender/llshadermgr.cpp index e17fd6998..9a6c6e9e1 100644 --- a/indra/llrender/llshadermgr.cpp +++ b/indra/llrender/llshadermgr.cpp @@ -578,34 +578,45 @@ GLhandleARB LLShaderMgr::loadShaderFile(const std::string& filename, S32 & shade GLcharARB* text[4096]; GLuint count = 0; - F32 version = gGLManager.mGLVersion; - -//hack to never use GLSL > 1.20 on OSX -#if LL_DARWIN - version = llmin(version, 2.9f); -#endif - - if (version < 2.1f) + S32 major_version = gGLManager.mGLSLVersionMajor; + S32 minor_version = gGLManager.mGLSLVersionMinor; + + if (major_version == 1 && minor_version < 30) { - text[count++] = strdup("#version 110\n"); - text[count++] = strdup("#define ATTRIBUTE attribute\n"); - text[count++] = strdup("#define VARYING varying\n"); - } - else if (version < 3.3f) - { - //set version to 1.20 - text[count++] = strdup("#version 120\n"); - text[count++] = strdup("#define FXAA_GLSL_120 1\n"); - text[count++] = strdup("#define FXAA_FAST_PIXEL_OFFSET 0\n"); - text[count++] = strdup("#define ATTRIBUTE attribute\n"); - text[count++] = strdup("#define VARYING varying\n"); + if (minor_version < 10) + { + //should NEVER get here -- if major version is 1 and minor version is less than 10, + // viewer should never attempt to use shaders, continuing will result in undefined behavior + llerrs << "Unsupported GLSL Version." << llendl; + } + + if (minor_version <= 19) + { + text[count++] = strdup("#version 110\n"); + text[count++] = strdup("#define ATTRIBUTE attribute\n"); + text[count++] = strdup("#define VARYING varying\n"); + text[count++] = strdup("#define VARYING_FLAT varying\n"); + } + else if (minor_version <= 29) + { + //set version to 1.20 + text[count++] = strdup("#version 120\n"); + text[count++] = strdup("#define FXAA_GLSL_120 1\n"); + text[count++] = strdup("#define FXAA_FAST_PIXEL_OFFSET 0\n"); + text[count++] = strdup("#define ATTRIBUTE attribute\n"); + text[count++] = strdup("#define VARYING varying\n"); + text[count++] = strdup("#define VARYING_FLAT varying\n"); + } } else { - if (version < 4.f) + if (major_version < 4) { //set version to 1.30 text[count++] = strdup("#version 130\n"); + + //some implementations of GLSL 1.30 require integer precision be explicitly declared + text[count++] = strdup("precision mediump int;\n"); } else { //set version to 400 @@ -621,13 +632,17 @@ GLhandleARB LLShaderMgr::loadShaderFile(const std::string& filename, S32 & shade { //"varying" state is "out" in a vertex program, "in" in a fragment program // ("varying" is deprecated after version 1.20) text[count++] = strdup("#define VARYING out\n"); + text[count++] = strdup("#define VARYING_FLAT flat out\n"); } else { text[count++] = strdup("#define VARYING in\n"); + text[count++] = strdup("#define VARYING_FLAT flat in\n"); } //backwards compatibility with legacy texture lookup syntax + text[count++] = strdup("#define texture2D texture\n"); + text[count++] = strdup("#define texture2DRect texture\n"); text[count++] = strdup("#define textureCube texture\n"); text[count++] = strdup("#define texture2DLod textureLod\n"); text[count++] = strdup("#define shadow2D(a,b) vec2(texture(a,b))\n"); //Shadow lookups only return a single float. @@ -659,11 +674,11 @@ GLhandleARB LLShaderMgr::loadShaderFile(const std::string& filename, S32 & shade . uniform sampler2D texN; - varying float vary_texture_index; + VARYING_FLAT ivec4 vary_texture_index; vec4 diffuseLookup(vec2 texcoord) { - switch (int(vary_texture_index+0.25)) + switch (vary_texture_index.r)) { case 0: return texture2D(tex0, texcoord); case 1: return texture2D(tex1, texcoord); @@ -687,7 +702,7 @@ GLhandleARB LLShaderMgr::loadShaderFile(const std::string& filename, S32 & shade if (texture_index_channels > 1) { - text[count++] = strdup("VARYING float vary_texture_index;\n"); + text[count++] = strdup("VARYING_FLAT ivec4 vary_texture_index;\n"); } text[count++] = strdup("vec4 diffuseLookup(vec2 texcoord)\n"); @@ -716,28 +731,10 @@ GLhandleARB LLShaderMgr::loadShaderFile(const std::string& filename, S32 & shade text[count++] = strdup("}\n"); } else - { - //switches aren't supported, make block that looks like: - /* - int ti = int(vary_texture_index+0.25); - if (ti == 0) return texture2D(tex0, texcoord); - if (ti == 1) return texture2D(tex1, texcoord); - . - . - . - if (ti == N) return texture2D(texN, texcoord); - */ - - text[count++] = strdup("int ti = int(vary_texture_index+0.25);\n"); - for (S32 i = 0; i < texture_index_channels; ++i) - { - std::string if_str = llformat("if (ti == %d) return texture2D(tex%d, texcoord);\n", i, i); - text[count++] = strdup(if_str.c_str()); - } - - text[count++] = strdup("\treturn vec4(1,0,1,1);\n"); - text[count++] = strdup("}\n"); - } + { //should never get here. Indexed texture rendering requires GLSL 1.30 or later + // (for passing integers between vertex and fragment shaders) + llerrs << "Indexed texture rendering requires GLSL 1.30 or later." << llendl; + } } //copy file into memory diff --git a/indra/llrender/llvertexbuffer.cpp b/indra/llrender/llvertexbuffer.cpp index 794d5c794..4324d312c 100644 --- a/indra/llrender/llvertexbuffer.cpp +++ b/indra/llrender/llvertexbuffer.cpp @@ -285,6 +285,12 @@ void LLVertexBuffer::setupClientArrays(U32 data_mask) { bool error = false; + if (gGLManager.mGLSLVersionMajor < 2 && gGLManager.mGLSLVersionMinor < 30) + { + //make sure texture index is disabled + data_mask = data_mask & ~MAP_TEXTURE_INDEX; + } + if (LLGLSLShader::sNoFixedFunction) { for (U32 i = 0; i < TYPE_MAX; ++i) @@ -1178,7 +1184,7 @@ void LLVertexBuffer::setupVertexArray() 1, //TYPE_WEIGHT, 4, //TYPE_WEIGHT4, 4, //TYPE_CLOTHWEIGHT, - 1, //TYPE_TEXTURE_INDEX + 4, //TYPE_TEXTURE_INDEX }; U32 attrib_type[] = @@ -1195,7 +1201,24 @@ void LLVertexBuffer::setupVertexArray() GL_FLOAT, //TYPE_WEIGHT, GL_FLOAT, //TYPE_WEIGHT4, GL_FLOAT, //TYPE_CLOTHWEIGHT, - GL_FLOAT, //TYPE_TEXTURE_INDEX + GL_UNSIGNED_BYTE, //TYPE_TEXTURE_INDEX + }; + + bool attrib_integer[] = + { + false, //TYPE_VERTEX, + false, //TYPE_NORMAL, + false, //TYPE_TEXCOORD0, + false, //TYPE_TEXCOORD1, + false, //TYPE_TEXCOORD2, + false, //TYPE_TEXCOORD3, + false, //TYPE_COLOR, + false, //TYPE_EMISSIVE, + false, //TYPE_BINORMAL, + false, //TYPE_WEIGHT, + false, //TYPE_WEIGHT4, + false, //TYPE_CLOTHWEIGHT, + true, //TYPE_TEXTURE_INDEX }; U32 attrib_normalized[] = @@ -1223,7 +1246,21 @@ void LLVertexBuffer::setupVertexArray() if (mTypeMask & (1 << i)) { glEnableVertexAttribArrayARB(i); - glVertexAttribPointerARB(i, attrib_size[i], attrib_type[i], attrib_normalized[i], sTypeSize[i], (void*) mOffsets[i]); + + if (attrib_integer) + { +#if !LL_DARWIN + //glVertexattribIPointer requires GLSL 1.30 or later + if (gGLManager.mGLSLVersionMajor > 1 || gGLManager.mGLSLVersionMinor >= 30) + { + glVertexAttribIPointer(i, attrib_size[i], attrib_type[i], sTypeSize[i], (void*) mOffsets[i]); + } +#endif + } + else + { + glVertexAttribPointerARB(i, attrib_size[i], attrib_type[i], attrib_normalized[i], sTypeSize[i], (void*) mOffsets[i]); + } } else { @@ -2204,11 +2241,14 @@ void LLVertexBuffer::setupVertexBuffer(U32 data_mask) void* ptr = (void*)(base + mOffsets[TYPE_CLOTHWEIGHT]); glVertexAttribPointerARB(loc, 4, GL_FLOAT, GL_TRUE, LLVertexBuffer::sTypeSize[TYPE_CLOTHWEIGHT], ptr); } - if (data_mask & MAP_TEXTURE_INDEX) + if (data_mask & MAP_TEXTURE_INDEX && + (gGLManager.mGLSLVersionMajor >= 2 || gGLManager.mGLSLVersionMinor >= 30)) //indexed texture rendering requires GLSL 1.30 or later { +#if !LL_DARWIN S32 loc = TYPE_TEXTURE_INDEX; void *ptr = (void*) (base + mOffsets[TYPE_VERTEX] + 12); - glVertexAttribPointerARB(loc, 1, GL_FLOAT, GL_FALSE, LLVertexBuffer::sTypeSize[TYPE_VERTEX], ptr); + glVertexAttribIPointer(loc, 4, GL_UNSIGNED_BYTE, LLVertexBuffer::sTypeSize[TYPE_VERTEX], ptr); +#endif } if (data_mask & MAP_VERTEX) { diff --git a/indra/newview/CMakeLists.txt b/indra/newview/CMakeLists.txt index 85d6f9ecd..e28151f62 100644 --- a/indra/newview/CMakeLists.txt +++ b/indra/newview/CMakeLists.txt @@ -1207,7 +1207,9 @@ if (WINDOWS) DXGUID_LIBRARY ) +# see EXP-1765 - theory is opengl32.lib needs to be included before gdi32.lib (windows libs) set(viewer_LIBRARIES + opengl32 advapi32 comdlg32 ${DINPUT_LIBRARY} @@ -1218,7 +1220,6 @@ if (WINDOWS) odbccp32 ole32 oleaut32 - opengl32 shell32 user32 Vfw32 diff --git a/indra/newview/app_settings/shaders/class1/avatar/pickAvatarF.glsl b/indra/newview/app_settings/shaders/class1/avatar/pickAvatarF.glsl index 3e4d438ed..7a3590528 100644 --- a/indra/newview/app_settings/shaders/class1/avatar/pickAvatarF.glsl +++ b/indra/newview/app_settings/shaders/class1/avatar/pickAvatarF.glsl @@ -24,7 +24,9 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif VARYING vec4 vertex_color; @@ -34,5 +36,5 @@ uniform sampler2D diffuseMap; void main() { - gl_FragColor = vec4(vertex_color.rgb, texture2D(diffuseMap, vary_texcoord0.xy).a); + frag_color = vec4(vertex_color.rgb, texture2D(diffuseMap, vary_texcoord0.xy).a); } diff --git a/indra/newview/app_settings/shaders/class1/deferred/alphaF.glsl b/indra/newview/app_settings/shaders/class1/deferred/alphaF.glsl index c012efa05..73f05a5dd 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/alphaF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/alphaF.glsl @@ -26,7 +26,9 @@ #extension GL_ARB_texture_rectangle : enable #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif uniform sampler2DRect depthMap; @@ -69,6 +71,6 @@ void main() color.rgb += diff.rgb * vary_pointlight_col.rgb; - gl_FragColor = color; + frag_color = color; } diff --git a/indra/newview/app_settings/shaders/class1/deferred/alphaNonIndexedF.glsl b/indra/newview/app_settings/shaders/class1/deferred/alphaNonIndexedF.glsl index 864182777..bfbd30a45 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/alphaNonIndexedF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/alphaNonIndexedF.glsl @@ -26,7 +26,9 @@ #extension GL_ARB_texture_rectangle : enable #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif uniform sampler2DRect depthMap; @@ -81,9 +83,9 @@ void main() color.rgb += diff.rgb * vary_pointlight_col.rgb; - gl_FragColor = color; - //gl_FragColor = vec4(1,0,1,1); - //gl_FragColor = vec4(1,0,1,1)*shadow; + frag_color = color; + //frag_color = vec4(1,0,1,1); + //frag_color = vec4(1,0,1,1)*shadow; } diff --git a/indra/newview/app_settings/shaders/class1/deferred/alphaNonIndexedNoColorF.glsl b/indra/newview/app_settings/shaders/class1/deferred/alphaNonIndexedNoColorF.glsl index c13ea702d..dae1131bb 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/alphaNonIndexedNoColorF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/alphaNonIndexedNoColorF.glsl @@ -26,7 +26,9 @@ #extension GL_ARB_texture_rectangle : enable #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif uniform sampler2DRect depthMap; @@ -79,6 +81,6 @@ void main() color.rgb += diff.rgb * vary_pointlight_col.rgb; - gl_FragColor = color; + frag_color = color; } diff --git a/indra/newview/app_settings/shaders/class1/deferred/attachmentShadowF.glsl b/indra/newview/app_settings/shaders/class1/deferred/attachmentShadowF.glsl index 402f68163..92e3f7f38 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/attachmentShadowF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/attachmentShadowF.glsl @@ -23,7 +23,9 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif uniform sampler2D diffuseMap; @@ -33,7 +35,7 @@ VARYING vec2 vary_texcoord0; void main() { - //gl_FragColor = vec4(1,1,1,vertex_color.a * texture2D(diffuseMap, vary_texcoord0.xy).a); - gl_FragColor = vec4(1,1,1,1); + //frag_color = vec4(1,1,1,vertex_color.a * texture2D(diffuseMap, vary_texcoord0.xy).a); + frag_color = vec4(1,1,1,1); } diff --git a/indra/newview/app_settings/shaders/class1/deferred/avatarF.glsl b/indra/newview/app_settings/shaders/class1/deferred/avatarF.glsl index 9a3b2e3e8..46d2aa487 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/avatarF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/avatarF.glsl @@ -24,7 +24,9 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragData[3]; +out vec4 frag_data[3]; +#else +#define frag_data gl_FragData #endif uniform sampler2D diffuseMap; @@ -41,9 +43,9 @@ void main() discard; } - gl_FragData[0] = vec4(diff.rgb, 0.0); - gl_FragData[1] = vec4(0,0,0,0); + frag_data[0] = vec4(diff.rgb, 0.0); + frag_data[1] = vec4(0,0,0,0); vec3 nvn = normalize(vary_normal); - gl_FragData[2] = vec4(nvn.xy * 0.5 + 0.5, nvn.z, 0.0); + frag_data[2] = vec4(nvn.xy * 0.5 + 0.5, nvn.z, 0.0); } diff --git a/indra/newview/app_settings/shaders/class1/deferred/avatarShadowF.glsl b/indra/newview/app_settings/shaders/class1/deferred/avatarShadowF.glsl index 558a88009..3686f2f64 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/avatarShadowF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/avatarShadowF.glsl @@ -24,7 +24,9 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif uniform sampler2D diffuseMap; @@ -33,7 +35,7 @@ VARYING vec4 post_pos; void main() { - gl_FragColor = vec4(1,1,1,1); + frag_color = vec4(1,1,1,1); gl_FragDepth = max(post_pos.z/post_pos.w*0.5+0.5, 0.0); } diff --git a/indra/newview/app_settings/shaders/class1/deferred/blurLightF.glsl b/indra/newview/app_settings/shaders/class1/deferred/blurLightF.glsl index 60d4dae99..f400eb7a5 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/blurLightF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/blurLightF.glsl @@ -26,7 +26,9 @@ #extension GL_ARB_texture_rectangle : enable #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif uniform sampler2DRect depthMap; @@ -111,6 +113,6 @@ void main() col /= defined_weight.xyxx; col.y *= col.y; - gl_FragColor = col; + frag_color = col; } diff --git a/indra/newview/app_settings/shaders/class1/deferred/bumpF.glsl b/indra/newview/app_settings/shaders/class1/deferred/bumpF.glsl index 6cc5f23ac..680eadb85 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/bumpF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/bumpF.glsl @@ -24,7 +24,9 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragData[3]; +out vec4 frag_data[3]; +#else +#define frag_data gl_FragData #endif uniform sampler2D diffuseMap; @@ -46,9 +48,9 @@ void main() dot(norm,vary_mat1), dot(norm,vary_mat2)); - gl_FragData[0] = vec4(col, 0.0); - gl_FragData[1] = vertex_color.aaaa; // spec - //gl_FragData[1] = vec4(vec3(vertex_color.a), vertex_color.a+(1.0-vertex_color.a)*vertex_color.a); // spec - from former class3 - maybe better, but not so well tested + frag_data[0] = vec4(col, 0.0); + frag_data[1] = vertex_color.aaaa; // spec + //frag_data[1] = vec4(vec3(vertex_color.a), vertex_color.a+(1.0-vertex_color.a)*vertex_color.a); // spec - from former class3 - maybe better, but not so well tested vec3 nvn = normalize(tnorm); - gl_FragData[2] = vec4(nvn.xy * 0.5 + 0.5, nvn.z, 0.0); + frag_data[2] = vec4(nvn.xy * 0.5 + 0.5, nvn.z, 0.0); } diff --git a/indra/newview/app_settings/shaders/class1/deferred/bumpSkinnedV.glsl b/indra/newview/app_settings/shaders/class1/deferred/bumpSkinnedV.glsl index 6c205074b..8ba75010a 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/bumpSkinnedV.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/bumpSkinnedV.glsl @@ -30,7 +30,7 @@ ATTRIBUTE vec3 position; ATTRIBUTE vec4 diffuse_color; ATTRIBUTE vec3 normal; ATTRIBUTE vec2 texcoord0; -ATTRIBUTE vec2 texcoord2; +ATTRIBUTE vec3 binormal; VARYING vec3 vary_mat0; VARYING vec3 vary_mat1; @@ -52,7 +52,7 @@ void main() vec3 n = normalize((mat * vec4(normal.xyz+position.xyz, 1.0)).xyz-pos.xyz); - vec3 b = normalize((mat * vec4(vec4(texcoord2,0,1).xyz+position.xyz, 1.0)).xyz-pos.xyz); + vec3 b = normalize((mat * vec4(binormal.xyz+position.xyz, 1.0)).xyz-pos.xyz); vec3 t = cross(b, n); vary_mat0 = vec3(t.x, b.x, n.x); diff --git a/indra/newview/app_settings/shaders/class1/deferred/cloudsF.glsl b/indra/newview/app_settings/shaders/class1/deferred/cloudsF.glsl index db272cf60..1d8ca04cc 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/cloudsF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/cloudsF.glsl @@ -25,7 +25,9 @@ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragData[3]; +out vec4 frag_data[3]; +#else +#define frag_data gl_FragData #endif ///////////////////////////////////////////////////////////////////////// @@ -98,8 +100,8 @@ void main() color *= 2.; /// Gamma correct for WL (soft clip effect). - gl_FragData[0] = vec4(scaleSoftClip(color.rgb), alpha1); - gl_FragData[1] = vec4(0.0,0.0,0.0,0.0); - gl_FragData[2] = vec4(0,0,1,0); + frag_data[0] = vec4(scaleSoftClip(color.rgb), alpha1); + frag_data[1] = vec4(0.0,0.0,0.0,0.0); + frag_data[2] = vec4(0,0,1,0); } diff --git a/indra/newview/app_settings/shaders/class1/deferred/cofF.glsl b/indra/newview/app_settings/shaders/class1/deferred/cofF.glsl index e612efba6..ccbc3c557 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/cofF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/cofF.glsl @@ -26,7 +26,9 @@ #extension GL_ARB_texture_rectangle : enable #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif uniform sampler2DRect diffuseRect; @@ -83,6 +85,6 @@ void main() sc = max(sc, -max_cof); vec4 bloom = texture2D(bloomMap, vary_fragcoord.xy/screen_res); - gl_FragColor.rgb = diff.rgb + bloom.rgb; - gl_FragColor.a = sc/max_cof*0.5+0.5; + frag_color.rgb = diff.rgb + bloom.rgb; + frag_color.a = sc/max_cof*0.5+0.5; } diff --git a/indra/newview/app_settings/shaders/class1/deferred/diffuseAlphaMaskF.glsl b/indra/newview/app_settings/shaders/class1/deferred/diffuseAlphaMaskF.glsl index e9989a4e4..b2027d3a5 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/diffuseAlphaMaskF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/diffuseAlphaMaskF.glsl @@ -24,7 +24,9 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragData[3]; +out vec4 frag_data[3]; +#else +#define frag_data gl_FragData #endif uniform float minimum_alpha; @@ -44,9 +46,9 @@ void main() discard; } - gl_FragData[0] = vec4(col.rgb, 0.0); - gl_FragData[1] = vec4(0,0,0,0); // spec + frag_data[0] = vec4(col.rgb, 0.0); + frag_data[1] = vec4(0,0,0,0); // spec vec3 nvn = normalize(vary_normal); - gl_FragData[2] = vec4(nvn.xy * 0.5 + 0.5, nvn.z, 0.0); + frag_data[2] = vec4(nvn.xy * 0.5 + 0.5, nvn.z, 0.0); } diff --git a/indra/newview/app_settings/shaders/class1/deferred/diffuseAlphaMaskIndexedF.glsl b/indra/newview/app_settings/shaders/class1/deferred/diffuseAlphaMaskIndexedF.glsl index fdf8d72b3..ead384b07 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/diffuseAlphaMaskIndexedF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/diffuseAlphaMaskIndexedF.glsl @@ -24,7 +24,9 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragData[3]; +out vec4 frag_data[3]; +#else +#define frag_data gl_FragData #endif VARYING vec3 vary_normal; @@ -43,8 +45,8 @@ void main() discard; } - gl_FragData[0] = vec4(col.rgb, 0.0); - gl_FragData[1] = vec4(0,0,0,0); + frag_data[0] = vec4(col.rgb, 0.0); + frag_data[1] = vec4(0,0,0,0); vec3 nvn = normalize(vary_normal); - gl_FragData[2] = vec4(nvn.xy * 0.5 + 0.5, nvn.z, 0.0); + frag_data[2] = vec4(nvn.xy * 0.5 + 0.5, nvn.z, 0.0); } diff --git a/indra/newview/app_settings/shaders/class1/deferred/diffuseAlphaMaskNoColorF.glsl b/indra/newview/app_settings/shaders/class1/deferred/diffuseAlphaMaskNoColorF.glsl index bb20e2ca4..f73fa6f23 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/diffuseAlphaMaskNoColorF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/diffuseAlphaMaskNoColorF.glsl @@ -25,7 +25,9 @@ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragData[3]; +out vec4 frag_data[3]; +#else +#define frag_data gl_FragData #endif uniform float minimum_alpha; @@ -44,9 +46,9 @@ void main() discard; } - gl_FragData[0] = vec4(col.rgb, 0.0); - gl_FragData[1] = vec4(0,0,0,0); // spec + frag_data[0] = vec4(col.rgb, 0.0); + frag_data[1] = vec4(0,0,0,0); // spec vec3 nvn = normalize(vary_normal); - gl_FragData[2] = vec4(nvn.xy * 0.5 + 0.5, nvn.z, 0.0); + frag_data[2] = vec4(nvn.xy * 0.5 + 0.5, nvn.z, 0.0); } diff --git a/indra/newview/app_settings/shaders/class1/deferred/diffuseF.glsl b/indra/newview/app_settings/shaders/class1/deferred/diffuseF.glsl index 7bde49eb8..227aa2aae 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/diffuseF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/diffuseF.glsl @@ -24,7 +24,9 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragData[3]; +out vec4 frag_data[3]; +#else +#define frag_data gl_FragData #endif uniform sampler2D diffuseMap; @@ -36,10 +38,10 @@ VARYING vec2 vary_texcoord0; void main() { vec3 col = vertex_color.rgb * texture2D(diffuseMap, vary_texcoord0.xy).rgb; - gl_FragData[0] = vec4(col, 0.0); - gl_FragData[1] = vertex_color.aaaa; // spec - //gl_FragData[1] = vec4(vec3(vertex_color.a), vertex_color.a+(1.0-vertex_color.a)*vertex_color.a); // spec - from former class3 - maybe better, but not so well tested + frag_data[0] = vec4(col, 0.0); + frag_data[1] = vertex_color.aaaa; // spec + //frag_data[1] = vec4(vec3(vertex_color.a), vertex_color.a+(1.0-vertex_color.a)*vertex_color.a); // spec - from former class3 - maybe better, but not so well tested vec3 nvn = normalize(vary_normal); - gl_FragData[2] = vec4(nvn.xy * 0.5 + 0.5, nvn.z, 0.0); + frag_data[2] = vec4(nvn.xy * 0.5 + 0.5, nvn.z, 0.0); } diff --git a/indra/newview/app_settings/shaders/class1/deferred/diffuseIndexedF.glsl b/indra/newview/app_settings/shaders/class1/deferred/diffuseIndexedF.glsl index 75b45111e..d442e5403 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/diffuseIndexedF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/diffuseIndexedF.glsl @@ -24,7 +24,9 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragData[3]; +out vec4 frag_data[3]; +#else +#define frag_data gl_FragData #endif VARYING vec3 vary_normal; @@ -35,9 +37,9 @@ void main() { vec3 col = vertex_color.rgb * diffuseLookup(vary_texcoord0.xy).rgb; - gl_FragData[0] = vec4(col, 0.0); - gl_FragData[1] = vertex_color.aaaa; // spec - //gl_FragData[1] = vec4(vec3(vertex_color.a), vertex_color.a+(1.0-vertex_color.a)*vertex_color.a); // spec - from former class3 - maybe better, but not so well tested + frag_data[0] = vec4(col, 0.0); + frag_data[1] = vertex_color.aaaa; // spec + //frag_data[1] = vec4(vec3(vertex_color.a), vertex_color.a+(1.0-vertex_color.a)*vertex_color.a); // spec - from former class3 - maybe better, but not so well tested vec3 nvn = normalize(vary_normal); - gl_FragData[2] = vec4(nvn.xy * 0.5 + 0.5, nvn.z, 0.0); + frag_data[2] = vec4(nvn.xy * 0.5 + 0.5, nvn.z, 0.0); } diff --git a/indra/newview/app_settings/shaders/class1/deferred/dofCombineF.glsl b/indra/newview/app_settings/shaders/class1/deferred/dofCombineF.glsl index 0cf5afc56..a425e5062 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/dofCombineF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/dofCombineF.glsl @@ -26,7 +26,9 @@ #extension GL_ARB_texture_rectangle : enable #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif uniform sampler2DRect diffuseRect; @@ -73,5 +75,5 @@ void main() diff = mix(diff, col*0.25, a); } - gl_FragColor = mix(diff, dof, a); + frag_color = mix(diff, dof, a); } diff --git a/indra/newview/app_settings/shaders/class1/deferred/emissiveF.glsl b/indra/newview/app_settings/shaders/class1/deferred/emissiveF.glsl index 92f78125d..6aa4d7b4e 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/emissiveF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/emissiveF.glsl @@ -26,7 +26,9 @@ #extension GL_ARB_texture_rectangle : enable #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif vec3 fullbrightAtmosTransport(vec3 light); @@ -45,6 +47,6 @@ void main() color.rgb = fullbrightScaleSoftClip(color.rgb); - gl_FragColor = color; + frag_color = color; } diff --git a/indra/newview/app_settings/shaders/class1/deferred/fullbrightF.glsl b/indra/newview/app_settings/shaders/class1/deferred/fullbrightF.glsl index 84ae2f9f1..36433a582 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/fullbrightF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/fullbrightF.glsl @@ -26,7 +26,9 @@ #extension GL_ARB_texture_rectangle : enable #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif VARYING vec4 vertex_color; @@ -46,6 +48,6 @@ void main() color.rgb = fullbrightScaleSoftClip(color.rgb); - gl_FragColor = color; + frag_color = color; } diff --git a/indra/newview/app_settings/shaders/class1/deferred/fxaaF.glsl b/indra/newview/app_settings/shaders/class1/deferred/fxaaF.glsl index 5af940645..e02a7b405 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/fxaaF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/fxaaF.glsl @@ -26,7 +26,9 @@ #extension GL_ARB_texture_rectangle : enable #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif #define FXAA_PC 1 @@ -341,18 +343,23 @@ A. Or use FXAA_GREEN_AS_LUMA. // 1 = API supports gather4 on alpha channel. // 0 = API does not support gather4 on alpha channel. // + #if (FXAA_GLSL_130 == 0) + #define FXAA_GATHER4_ALPHA 0 + #endif #if (FXAA_HLSL_5 == 1) #define FXAA_GATHER4_ALPHA 1 #endif - #ifdef GL_ARB_gpu_shader5 - #define FXAA_GATHER4_ALPHA 1 - #endif - #ifdef GL_NV_gpu_shader5 - #define FXAA_GATHER4_ALPHA 1 - #endif #ifndef FXAA_GATHER4_ALPHA - #define FXAA_GATHER4_ALPHA 0 - #endif + #ifdef GL_ARB_gpu_shader5 + #define FXAA_GATHER4_ALPHA 1 + #endif + #ifdef GL_NV_gpu_shader5 + #define FXAA_GATHER4_ALPHA 1 + #endif + #ifndef FXAA_GATHER4_ALPHA + #define FXAA_GATHER4_ALPHA 0 + #endif + #endif #endif /*============================================================================ @@ -2113,6 +2120,6 @@ void main() //diff = texture2D(diffuseMap, vary_tc); - gl_FragColor = diff; + frag_color = diff; } diff --git a/indra/newview/app_settings/shaders/class1/deferred/giF.glsl b/indra/newview/app_settings/shaders/class1/deferred/giF.glsl index 29ca80ae9..da1b23424 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/giF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/giF.glsl @@ -26,7 +26,9 @@ #extension GL_ARB_texture_rectangle : enable #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif uniform sampler2DRect depthMap; @@ -184,5 +186,5 @@ void main() vec3 norm = texture2DRect(normalMap, pos_screen).xyz; norm = vec3((norm.xy-0.5)*2.0,norm.z); // unpack norm - gl_FragColor.xyz = giAmbient(pos, norm); + frag_color.xyz = giAmbient(pos, norm); } diff --git a/indra/newview/app_settings/shaders/class1/deferred/giV.glsl b/indra/newview/app_settings/shaders/class1/deferred/giV.glsl deleted file mode 100644 index e5d3bb8ea..000000000 --- a/indra/newview/app_settings/shaders/class1/deferred/giV.glsl +++ /dev/null @@ -1,48 +0,0 @@ -/** - * @file giV.glsl - * - * $LicenseInfo:firstyear=2007&license=viewerlgpl$ - * Second Life Viewer Source Code - * Copyright (C) 2007, Linden Research, Inc. - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; - * version 2.1 of the License only. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - * Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA - * $/LicenseInfo$ - */ - -uniform mat4 modelview_projection_matrix; - -ATTRIBUTE vec3 position; -ATTRIBUTE vec4 diffuse_color; -ATTRIBUTE vec2 texcoord0; - -VARYING vec4 vertex_color; -VARYING vec2 vary_fragcoord; - -uniform vec2 screen_res; - -void main() -{ - //transform vertex - vec4 pos = modelview_projection_matrix * vec4(position.xyz, 1.0); - gl_Position = pos; - - vary_fragcoord = (pos.xy * 0.5 + 0.5)*screen_res; - vec4 tex = vec4(texcoord0,0,1); - tex.w = 1.0; - - vertex_color = diffuse_color; -} diff --git a/indra/newview/app_settings/shaders/class1/deferred/impostorF.glsl b/indra/newview/app_settings/shaders/class1/deferred/impostorF.glsl index a44173a2a..bc0719cb8 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/impostorF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/impostorF.glsl @@ -24,7 +24,9 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragData[3]; +out vec4 frag_data[3]; +#else +#define frag_data gl_FragData #endif uniform float minimum_alpha; @@ -45,7 +47,7 @@ void main() discard; } - gl_FragData[0] = vec4(col.rgb, col.a * 0.005); - gl_FragData[1] = texture2D(specularMap, vary_texcoord0.xy); - gl_FragData[2] = vec4(texture2D(normalMap, vary_texcoord0.xy).xyz, 0.0); + frag_data[0] = vec4(col.rgb, col.a * 0.005); + frag_data[1] = texture2D(specularMap, vary_texcoord0.xy); + frag_data[2] = vec4(texture2D(normalMap, vary_texcoord0.xy).xyz, 0.0); } diff --git a/indra/newview/app_settings/shaders/class1/deferred/luminanceF.glsl b/indra/newview/app_settings/shaders/class1/deferred/luminanceF.glsl index e014a14ad..dcf474824 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/luminanceF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/luminanceF.glsl @@ -26,12 +26,14 @@ uniform sampler2DRect diffuseMap; #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif VARYING vec2 vary_fragcoord; void main() { - gl_FragColor = texture2DRect(diffuseMap, vary_fragcoord.xy); + frag_color = texture2DRect(diffuseMap, vary_fragcoord.xy); } diff --git a/indra/newview/app_settings/shaders/class1/deferred/multiPointLightF.glsl b/indra/newview/app_settings/shaders/class1/deferred/multiPointLightF.glsl index 179c721a2..53a2a1339 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/multiPointLightF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/multiPointLightF.glsl @@ -26,7 +26,9 @@ #extension GL_ARB_texture_rectangle : enable #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif uniform sampler2DRect depthMap; @@ -141,6 +143,6 @@ void main() discard; } - gl_FragColor.rgb = out_col; - gl_FragColor.a = 0.0; + frag_color.rgb = out_col; + frag_color.a = 0.0; } diff --git a/indra/newview/app_settings/shaders/class1/deferred/multiSpotLightF.glsl b/indra/newview/app_settings/shaders/class1/deferred/multiSpotLightF.glsl index 2196d1489..75de47614 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/multiSpotLightF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/multiSpotLightF.glsl @@ -24,7 +24,9 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif //class 1 -- no shadows @@ -242,6 +244,6 @@ void main() } } - gl_FragColor.rgb = col; - gl_FragColor.a = 0.0; + frag_color.rgb = col; + frag_color.a = 0.0; } diff --git a/indra/newview/app_settings/shaders/class1/deferred/normgenF.glsl b/indra/newview/app_settings/shaders/class1/deferred/normgenF.glsl index 879942d8f..62cfa5c31 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/normgenF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/normgenF.glsl @@ -26,7 +26,9 @@ #extension GL_ARB_texture_rectangle : enable #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif uniform sampler2D alphaMap; @@ -52,5 +54,5 @@ void main() norm *= 0.5; norm += 0.5; - gl_FragColor = vec4(norm, alpha); + frag_color = vec4(norm, alpha); } diff --git a/indra/newview/app_settings/shaders/class1/deferred/pointLightF.glsl b/indra/newview/app_settings/shaders/class1/deferred/pointLightF.glsl index b673d00d6..a5e04fba5 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/pointLightF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/pointLightF.glsl @@ -26,7 +26,9 @@ #extension GL_ARB_texture_rectangle : enable #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif uniform sampler2DRect diffuseRect; @@ -118,6 +120,6 @@ void main() discard; } - gl_FragColor.rgb = col; - gl_FragColor.a = 0.0; + frag_color.rgb = col; + frag_color.a = 0.0; } diff --git a/indra/newview/app_settings/shaders/class1/deferred/postDeferredF.glsl b/indra/newview/app_settings/shaders/class1/deferred/postDeferredF.glsl index 9b3818b67..2c88331d4 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/postDeferredF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/postDeferredF.glsl @@ -26,7 +26,9 @@ #extension GL_ARB_texture_rectangle : enable #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif uniform sampler2DRect diffuseRect; @@ -122,5 +124,5 @@ void main() diff /= w; } - gl_FragColor = diff; + frag_color = diff; } diff --git a/indra/newview/app_settings/shaders/class1/deferred/postDeferredNoDoFF.glsl b/indra/newview/app_settings/shaders/class1/deferred/postDeferredNoDoFF.glsl index c27543477..eb5beeef3 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/postDeferredNoDoFF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/postDeferredNoDoFF.glsl @@ -26,7 +26,9 @@ #extension GL_ARB_texture_rectangle : enable #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif uniform sampler2DRect diffuseRect; @@ -40,6 +42,6 @@ void main() vec4 diff = texture2DRect(diffuseRect, vary_fragcoord.xy); vec4 bloom = texture2D(bloomMap, vary_fragcoord.xy/screen_res); - gl_FragColor = diff + bloom; + frag_color = diff + bloom; } diff --git a/indra/newview/app_settings/shaders/class1/deferred/postgiF.glsl b/indra/newview/app_settings/shaders/class1/deferred/postgiF.glsl index 84d65d5b3..96f962842 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/postgiF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/postgiF.glsl @@ -24,8 +24,10 @@ */ #ifdef DEFINE_GL_FRAGCOLOR - out vec4 gl_FragColor; - #endif +out vec4 frag_color; +#else +#define frag_color gl_FragColor +#endif uniform sampler2DRect depthMap; uniform sampler2DRect normalMap; @@ -96,5 +98,5 @@ void main() col = col*col*blur_quad.x + col*blur_quad.y + blur_quad.z; - gl_FragColor.rgb = col; + frag_color.rgb = col; } diff --git a/indra/newview/app_settings/shaders/class1/deferred/postgiV.glsl b/indra/newview/app_settings/shaders/class1/deferred/postgiV.glsl deleted file mode 100644 index 0d5c8e728..000000000 --- a/indra/newview/app_settings/shaders/class1/deferred/postgiV.glsl +++ /dev/null @@ -1,40 +0,0 @@ -/** - * @file postgiV.glsl - * - * $LicenseInfo:firstyear=2007&license=viewerlgpl$ - * Second Life Viewer Source Code - * Copyright (C) 2007, Linden Research, Inc. - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; - * version 2.1 of the License only. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * - * Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA - * $/LicenseInfo$ - */ - -uniform mat4 modelview_projection_matrix; - -ATTRIBUTE vec3 position; - - -VARYING vec2 vary_fragcoord; -uniform vec2 screen_res; - -void main() -{ - //transform vertex - vec4 pos = modelview_projection_matrix * vec4(position.xyz, 1.0); - gl_Position = pos; - vary_fragcoord = (pos.xy*0.5+0.5)*screen_res; -} diff --git a/indra/newview/app_settings/shaders/class1/deferred/shadowAlphaMaskF.glsl b/indra/newview/app_settings/shaders/class1/deferred/shadowAlphaMaskF.glsl index c1fb7b55d..cf8cf8364 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/shadowAlphaMaskF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/shadowAlphaMaskF.glsl @@ -24,7 +24,9 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif uniform float minimum_alpha; @@ -44,7 +46,7 @@ void main() discard; } - gl_FragColor = vec4(1,1,1,1); + frag_color = vec4(1,1,1,1); gl_FragDepth = max(post_pos.z/post_pos.w*0.5+0.5, 0.0); } diff --git a/indra/newview/app_settings/shaders/class1/deferred/shadowF.glsl b/indra/newview/app_settings/shaders/class1/deferred/shadowF.glsl index bf75ca262..7e55fdc12 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/shadowF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/shadowF.glsl @@ -24,14 +24,16 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif VARYING vec4 post_pos; void main() { - gl_FragColor = vec4(1,1,1,1); + frag_color = vec4(1,1,1,1); gl_FragDepth = max(post_pos.z/post_pos.w*0.5+0.5, 0.0); } diff --git a/indra/newview/app_settings/shaders/class1/deferred/skyF.glsl b/indra/newview/app_settings/shaders/class1/deferred/skyF.glsl index 96ad0aa93..faa54a316 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/skyF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/skyF.glsl @@ -24,7 +24,9 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragData[3]; +out vec4 frag_data[3]; +#else +#define frag_data gl_FragData #endif ///////////////////////////////////////////////////////////////////////// @@ -57,8 +59,8 @@ void main() color *= 2.; /// Gamma correct for WL (soft clip effect). - gl_FragData[0] = vec4(scaleSoftClip(color.rgb), 1.0); - gl_FragData[1] = vec4(0.0,0.0,0.0,0.0); - gl_FragData[2] = vec4(0,0,1,0); + frag_data[0] = vec4(scaleSoftClip(color.rgb), 1.0); + frag_data[1] = vec4(0.0,0.0,0.0,0.0); + frag_data[2] = vec4(0,0,1,0); } diff --git a/indra/newview/app_settings/shaders/class1/deferred/softenLightF.glsl b/indra/newview/app_settings/shaders/class1/deferred/softenLightF.glsl index 579ce74f2..c0fa9fa89 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/softenLightF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/softenLightF.glsl @@ -26,7 +26,9 @@ #extension GL_ARB_texture_rectangle : enable #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif uniform sampler2DRect diffuseRect; @@ -324,7 +326,7 @@ void main() col = diffuse.rgb; } - gl_FragColor.rgb = col; + frag_color.rgb = col; - gl_FragColor.a = bloom; + frag_color.a = bloom; } diff --git a/indra/newview/app_settings/shaders/class1/deferred/spotLightF.glsl b/indra/newview/app_settings/shaders/class1/deferred/spotLightF.glsl index cc0f4e5b6..7ed8ed337 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/spotLightF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/spotLightF.glsl @@ -27,7 +27,9 @@ #extension GL_ARB_texture_rectangle : enable #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif uniform sampler2DRect diffuseRect; @@ -184,6 +186,6 @@ void main() } } - gl_FragColor.rgb = col; - gl_FragColor.a = 0.0; + frag_color.rgb = col; + frag_color.a = 0.0; } diff --git a/indra/newview/app_settings/shaders/class1/deferred/starsF.glsl b/indra/newview/app_settings/shaders/class1/deferred/starsF.glsl index 03fccd276..821058804 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/starsF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/starsF.glsl @@ -24,7 +24,9 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragData[3]; +out vec4 frag_data[3]; +#else +#define frag_data gl_FragData #endif VARYING vec4 vertex_color; @@ -36,7 +38,7 @@ void main() { vec4 col = vertex_color * texture2D(diffuseMap, vary_texcoord0.xy); - gl_FragData[0] = col; - gl_FragData[1] = vec4(0,0,0,0); - gl_FragData[2] = vec4(0,0,1,0); + frag_data[0] = col; + frag_data[1] = vec4(0,0,0,0); + frag_data[2] = vec4(0,0,1,0); } diff --git a/indra/newview/app_settings/shaders/class1/deferred/sunLightF.glsl b/indra/newview/app_settings/shaders/class1/deferred/sunLightF.glsl index adc7c5d00..5ca817aff 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/sunLightF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/sunLightF.glsl @@ -28,10 +28,12 @@ #extension GL_ARB_texture_rectangle : enable #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif void main() { - gl_FragColor = vec4(0,0,0,0); + frag_color = vec4(0,0,0,0); } diff --git a/indra/newview/app_settings/shaders/class1/deferred/sunLightSSAOF.glsl b/indra/newview/app_settings/shaders/class1/deferred/sunLightSSAOF.glsl index fc5959a33..7fa666a73 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/sunLightSSAOF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/sunLightSSAOF.glsl @@ -26,7 +26,9 @@ #extension GL_ARB_texture_rectangle : enable #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif //class 1 -- no shadow, SSAO only @@ -128,8 +130,8 @@ void main() vec3 norm = texture2DRect(normalMap, pos_screen).xyz; norm = vec3((norm.xy-0.5)*2.0,norm.z); // unpack norm - gl_FragColor[0] = 1.0; - gl_FragColor[1] = calcAmbientOcclusion(pos, norm); - gl_FragColor[2] = 1.0; - gl_FragColor[3] = 1.0; + frag_color[0] = 1.0; + frag_color[1] = calcAmbientOcclusion(pos, norm); + frag_color[2] = 1.0; + frag_color[3] = 1.0; } diff --git a/indra/newview/app_settings/shaders/class1/deferred/terrainF.glsl b/indra/newview/app_settings/shaders/class1/deferred/terrainF.glsl index 5522e6c41..8a5e482e8 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/terrainF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/terrainF.glsl @@ -24,7 +24,9 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragData[3]; +out vec4 frag_data[3]; +#else +#define frag_data gl_FragData #endif uniform sampler2D detail_0; @@ -51,9 +53,9 @@ void main() float alphaFinal = texture2D(alpha_ramp, vary_texcoord1.zw).a; vec4 outColor = mix( mix(color3, color2, alpha2), mix(color1, color0, alpha1), alphaFinal ); - gl_FragData[0] = vec4(outColor.rgb, 0.0); - gl_FragData[1] = vec4(0,0,0,0); + frag_data[0] = vec4(outColor.rgb, 0.0); + frag_data[1] = vec4(0,0,0,0); vec3 nvn = normalize(vary_normal); - gl_FragData[2] = vec4(nvn.xy * 0.5 + 0.5, nvn.z, 0.0); + frag_data[2] = vec4(nvn.xy * 0.5 + 0.5, nvn.z, 0.0); } diff --git a/indra/newview/app_settings/shaders/class1/deferred/treeF.glsl b/indra/newview/app_settings/shaders/class1/deferred/treeF.glsl index ea98d6884..6cf6106b5 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/treeF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/treeF.glsl @@ -24,7 +24,9 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragData[3]; +out vec4 frag_data[3]; +#else +#define frag_data gl_FragData #endif uniform sampler2D diffuseMap; @@ -43,8 +45,8 @@ void main() discard; } - gl_FragData[0] = vec4(vertex_color.rgb*col.rgb, 0.0); - gl_FragData[1] = vec4(0,0,0,0); + frag_data[0] = vec4(vertex_color.rgb*col.rgb, 0.0); + frag_data[1] = vec4(0,0,0,0); vec3 nvn = normalize(vary_normal); - gl_FragData[2] = vec4(nvn.xy * 0.5 + 0.5, nvn.z, 0.0); + frag_data[2] = vec4(nvn.xy * 0.5 + 0.5, nvn.z, 0.0); } diff --git a/indra/newview/app_settings/shaders/class1/deferred/treeShadowF.glsl b/indra/newview/app_settings/shaders/class1/deferred/treeShadowF.glsl index 20d017053..d4d2f5f57 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/treeShadowF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/treeShadowF.glsl @@ -24,7 +24,9 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif uniform float minimum_alpha; @@ -43,7 +45,7 @@ void main() discard; } - gl_FragColor = vec4(1,1,1,1); + frag_color = vec4(1,1,1,1); gl_FragDepth = max(post_pos.z/post_pos.w*0.5+0.5, 0.0); } diff --git a/indra/newview/app_settings/shaders/class1/deferred/waterF.glsl b/indra/newview/app_settings/shaders/class1/deferred/waterF.glsl index 4c9ea24a2..42dc7c098 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/waterF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/waterF.glsl @@ -26,7 +26,9 @@ #extension GL_ARB_texture_rectangle : enable #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragData[3]; +out vec4 frag_data[3]; +#else +#define frag_data gl_FragData #endif vec3 scaleSoftClip(vec3 inColor); @@ -157,7 +159,7 @@ void main() //wavef = normalize(wavef); vec3 screenspacewavef = (norm_mat*vec4(wavef, 1.0)).xyz; - gl_FragData[0] = vec4(color.rgb, 0.5); // diffuse - gl_FragData[1] = vec4(0.5,0.5,0.5, 0.95); // speccolor*spec, spec - gl_FragData[2] = vec4(screenspacewavef.xy*0.5+0.5, screenspacewavef.z, screenspacewavef.z*0.5); // normalxyz, displace + frag_data[0] = vec4(color.rgb, 0.5); // diffuse + frag_data[1] = vec4(0.5,0.5,0.5, 0.95); // speccolor*spec, spec + frag_data[2] = vec4(screenspacewavef.xy*0.5+0.5, screenspacewavef.z, screenspacewavef.z*0.5); // normalxyz, displace } diff --git a/indra/newview/app_settings/shaders/class1/effects/glowExtractF.glsl b/indra/newview/app_settings/shaders/class1/effects/glowExtractF.glsl index 9a3d79222..0f5eb288f 100644 --- a/indra/newview/app_settings/shaders/class1/effects/glowExtractF.glsl +++ b/indra/newview/app_settings/shaders/class1/effects/glowExtractF.glsl @@ -26,7 +26,9 @@ #extension GL_ARB_texture_rectangle : enable #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif uniform sampler2DRect diffuseMap; @@ -46,7 +48,7 @@ void main() float lum = smoothstep(minLuminance, minLuminance+1.0, dot(col.rgb, lumWeights ) ); float warmth = smoothstep(minLuminance, minLuminance+1.0, max(col.r * warmthWeights.r, max(col.g * warmthWeights.g, col.b * warmthWeights.b)) ); - gl_FragColor.rgb = col.rgb; - gl_FragColor.a = max(col.a, mix(lum, warmth, warmthAmount) * maxExtractAlpha); + frag_color.rgb = col.rgb; + frag_color.a = max(col.a, mix(lum, warmth, warmthAmount) * maxExtractAlpha); } diff --git a/indra/newview/app_settings/shaders/class1/effects/glowF.glsl b/indra/newview/app_settings/shaders/class1/effects/glowF.glsl index 1b2522b81..933668b0d 100644 --- a/indra/newview/app_settings/shaders/class1/effects/glowF.glsl +++ b/indra/newview/app_settings/shaders/class1/effects/glowF.glsl @@ -24,7 +24,9 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif uniform sampler2D diffuseMap; @@ -51,5 +53,5 @@ void main() col += kern.y * texture2D(diffuseMap, vary_texcoord2.zw); col += kern.x * texture2D(diffuseMap, vary_texcoord3.zw); - gl_FragColor = vec4(col.rgb * glowStrength, col.a); + frag_color = vec4(col.rgb * glowStrength, col.a); } diff --git a/indra/newview/app_settings/shaders/class1/environment/terrainF.glsl b/indra/newview/app_settings/shaders/class1/environment/terrainF.glsl index 18f6d9180..668a710c0 100644 --- a/indra/newview/app_settings/shaders/class1/environment/terrainF.glsl +++ b/indra/newview/app_settings/shaders/class1/environment/terrainF.glsl @@ -24,7 +24,9 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif VARYING vec4 vertex_color; @@ -59,6 +61,6 @@ void main() /// Add WL Components outColor.rgb = atmosLighting(outColor.rgb * vertex_color.rgb); - gl_FragColor = vec4(scaleSoftClip(outColor.rgb), 1.0); + frag_color = vec4(scaleSoftClip(outColor.rgb), 1.0); } diff --git a/indra/newview/app_settings/shaders/class1/environment/terrainWaterF.glsl b/indra/newview/app_settings/shaders/class1/environment/terrainWaterF.glsl index e5c7ced52..a95656239 100644 --- a/indra/newview/app_settings/shaders/class1/environment/terrainWaterF.glsl +++ b/indra/newview/app_settings/shaders/class1/environment/terrainWaterF.glsl @@ -24,7 +24,9 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif VARYING vec4 vertex_color; @@ -60,6 +62,6 @@ void main() outColor.rgb = atmosLighting(outColor.rgb * vertex_color.rgb); outColor = applyWaterFog(outColor); - gl_FragColor = outColor; + frag_color = outColor; } diff --git a/indra/newview/app_settings/shaders/class1/environment/underWaterF.glsl b/indra/newview/app_settings/shaders/class1/environment/underWaterF.glsl index 1fdb90f79..0d8dab0a4 100644 --- a/indra/newview/app_settings/shaders/class1/environment/underWaterF.glsl +++ b/indra/newview/app_settings/shaders/class1/environment/underWaterF.glsl @@ -24,7 +24,9 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif uniform sampler2D diffuseMap; @@ -106,5 +108,5 @@ void main() vec4 fb = texture2D(screenTex, distort); - gl_FragColor = applyWaterFog(fb,view.xyz); + frag_color = applyWaterFog(fb,view.xyz); } diff --git a/indra/newview/app_settings/shaders/class1/environment/waterF.glsl b/indra/newview/app_settings/shaders/class1/environment/waterF.glsl index 444c896d3..79bffab74 100644 --- a/indra/newview/app_settings/shaders/class1/environment/waterF.glsl +++ b/indra/newview/app_settings/shaders/class1/environment/waterF.glsl @@ -24,7 +24,9 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif vec3 scaleSoftClip(vec3 inColor); @@ -135,5 +137,5 @@ void main() color.rgb = scaleSoftClip(color.rgb); color.a = spec * sunAngle2; - gl_FragColor = color; + frag_color = color; } diff --git a/indra/newview/app_settings/shaders/class1/interface/alphamaskF.glsl b/indra/newview/app_settings/shaders/class1/interface/alphamaskF.glsl index d2f5e1987..f520f301d 100644 --- a/indra/newview/app_settings/shaders/class1/interface/alphamaskF.glsl +++ b/indra/newview/app_settings/shaders/class1/interface/alphamaskF.glsl @@ -24,7 +24,9 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif uniform sampler2D diffuseMap; @@ -42,5 +44,5 @@ void main() discard; } - gl_FragColor = col; + frag_color = col; } diff --git a/indra/newview/app_settings/shaders/class1/interface/customalphaF.glsl b/indra/newview/app_settings/shaders/class1/interface/customalphaF.glsl index 4b481ba83..a96d04cc3 100644 --- a/indra/newview/app_settings/shaders/class1/interface/customalphaF.glsl +++ b/indra/newview/app_settings/shaders/class1/interface/customalphaF.glsl @@ -24,7 +24,9 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif uniform sampler2D diffuseMap; @@ -38,5 +40,5 @@ void main() { vec4 color = vertex_color*texture2D(diffuseMap, vary_texcoord0.xy); color.a *= custom_alpha; - gl_FragColor = color; + frag_color = color; } diff --git a/indra/newview/app_settings/shaders/class1/interface/debugF.glsl b/indra/newview/app_settings/shaders/class1/interface/debugF.glsl index 6bcc97ba1..67c6baddb 100644 --- a/indra/newview/app_settings/shaders/class1/interface/debugF.glsl +++ b/indra/newview/app_settings/shaders/class1/interface/debugF.glsl @@ -24,12 +24,14 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif uniform vec4 color; void main() { - gl_FragColor = color; + frag_color = color; } diff --git a/indra/newview/app_settings/shaders/class1/interface/glowcombineF.glsl b/indra/newview/app_settings/shaders/class1/interface/glowcombineF.glsl index f67703b83..ed803de27 100644 --- a/indra/newview/app_settings/shaders/class1/interface/glowcombineF.glsl +++ b/indra/newview/app_settings/shaders/class1/interface/glowcombineF.glsl @@ -24,7 +24,9 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif #extension GL_ARB_texture_rectangle : enable @@ -37,6 +39,6 @@ VARYING vec2 vary_texcoord1; void main() { - gl_FragColor = texture2D(glowMap, vary_texcoord0.xy) + + frag_color = texture2D(glowMap, vary_texcoord0.xy) + texture2DRect(screenMap, vary_texcoord1.xy); } diff --git a/indra/newview/app_settings/shaders/class1/interface/glowcombineFXAAF.glsl b/indra/newview/app_settings/shaders/class1/interface/glowcombineFXAAF.glsl index c66a6e5b4..59520bb99 100644 --- a/indra/newview/app_settings/shaders/class1/interface/glowcombineFXAAF.glsl +++ b/indra/newview/app_settings/shaders/class1/interface/glowcombineFXAAF.glsl @@ -26,7 +26,9 @@ #extension GL_ARB_texture_rectangle : enable #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif uniform sampler2DRect diffuseRect; @@ -38,5 +40,5 @@ void main() { vec3 col = texture2DRect(diffuseRect, vary_tc*screen_res).rgb; - gl_FragColor = vec4(col.rgb, dot(col.rgb, vec3(0.299, 0.587, 0.144))); + frag_color = vec4(col.rgb, dot(col.rgb, vec3(0.299, 0.587, 0.144))); } diff --git a/indra/newview/app_settings/shaders/class1/interface/highlightF.glsl b/indra/newview/app_settings/shaders/class1/interface/highlightF.glsl index ecbc30f05..6cc9bbbea 100644 --- a/indra/newview/app_settings/shaders/class1/interface/highlightF.glsl +++ b/indra/newview/app_settings/shaders/class1/interface/highlightF.glsl @@ -24,7 +24,9 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif uniform vec4 color; @@ -34,5 +36,5 @@ VARYING vec2 vary_texcoord0; void main() { - gl_FragColor = color*texture2D(diffuseMap, vary_texcoord0.xy); + frag_color = color*texture2D(diffuseMap, vary_texcoord0.xy); } diff --git a/indra/newview/app_settings/shaders/class1/interface/occlusionF.glsl b/indra/newview/app_settings/shaders/class1/interface/occlusionF.glsl index 85f819f4c..db130e456 100644 --- a/indra/newview/app_settings/shaders/class1/interface/occlusionF.glsl +++ b/indra/newview/app_settings/shaders/class1/interface/occlusionF.glsl @@ -24,10 +24,12 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif void main() { - gl_FragColor = vec4(1,1,1,1); + frag_color = vec4(1,1,1,1); } diff --git a/indra/newview/app_settings/shaders/class1/interface/onetexturenocolorF.glsl b/indra/newview/app_settings/shaders/class1/interface/onetexturenocolorF.glsl index fafeb5a7b..415181126 100644 --- a/indra/newview/app_settings/shaders/class1/interface/onetexturenocolorF.glsl +++ b/indra/newview/app_settings/shaders/class1/interface/onetexturenocolorF.glsl @@ -24,7 +24,9 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif uniform sampler2D tex0; @@ -33,5 +35,5 @@ VARYING vec2 vary_texcoord0; void main() { - gl_FragColor = texture2D(tex0, vary_texcoord0.xy); + frag_color = texture2D(tex0, vary_texcoord0.xy); } diff --git a/indra/newview/app_settings/shaders/class1/interface/solidcolorF.glsl b/indra/newview/app_settings/shaders/class1/interface/solidcolorF.glsl index f79012274..67dc50049 100644 --- a/indra/newview/app_settings/shaders/class1/interface/solidcolorF.glsl +++ b/indra/newview/app_settings/shaders/class1/interface/solidcolorF.glsl @@ -24,7 +24,9 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif uniform sampler2D tex0; @@ -36,5 +38,5 @@ void main() { float alpha = texture2D(tex0, vary_texcoord0.xy).a * vertex_color.a; - gl_FragColor = vec4(vertex_color.rgb, alpha); + frag_color = vec4(vertex_color.rgb, alpha); } diff --git a/indra/newview/app_settings/shaders/class1/interface/splattexturerectF.glsl b/indra/newview/app_settings/shaders/class1/interface/splattexturerectF.glsl index a0bb255cf..772bb374e 100644 --- a/indra/newview/app_settings/shaders/class1/interface/splattexturerectF.glsl +++ b/indra/newview/app_settings/shaders/class1/interface/splattexturerectF.glsl @@ -26,7 +26,9 @@ #extension GL_ARB_texture_rectangle : enable #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif uniform sampler2DRect screenMap; @@ -36,5 +38,5 @@ VARYING vec2 vary_texcoord0; void main() { - gl_FragColor = texture2DRect(screenMap, vary_texcoord0.xy) * vertex_color; + frag_color = texture2DRect(screenMap, vary_texcoord0.xy) * vertex_color; } diff --git a/indra/newview/app_settings/shaders/class1/interface/twotextureaddF.glsl b/indra/newview/app_settings/shaders/class1/interface/twotextureaddF.glsl index cdb48163d..95679e93e 100644 --- a/indra/newview/app_settings/shaders/class1/interface/twotextureaddF.glsl +++ b/indra/newview/app_settings/shaders/class1/interface/twotextureaddF.glsl @@ -24,7 +24,9 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif uniform sampler2D tex0; @@ -35,5 +37,5 @@ VARYING vec2 vary_texcoord1; void main() { - gl_FragColor = texture2D(tex0, vary_texcoord0.xy)+texture2D(tex1, vary_texcoord1.xy); + frag_color = texture2D(tex0, vary_texcoord0.xy)+texture2D(tex1, vary_texcoord1.xy); } diff --git a/indra/newview/app_settings/shaders/class1/interface/uiF.glsl b/indra/newview/app_settings/shaders/class1/interface/uiF.glsl index 36d6e06fc..299bfb72a 100644 --- a/indra/newview/app_settings/shaders/class1/interface/uiF.glsl +++ b/indra/newview/app_settings/shaders/class1/interface/uiF.glsl @@ -24,7 +24,9 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif uniform sampler2D diffuseMap; @@ -34,5 +36,5 @@ VARYING vec4 vertex_color; void main() { - gl_FragColor = vertex_color*texture2D(diffuseMap, vary_texcoord0.xy); + frag_color = vertex_color*texture2D(diffuseMap, vary_texcoord0.xy); } diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightAlphaMaskF.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightAlphaMaskF.glsl index 10413bdeb..cf29939cb 100644 --- a/indra/newview/app_settings/shaders/class1/lighting/lightAlphaMaskF.glsl +++ b/indra/newview/app_settings/shaders/class1/lighting/lightAlphaMaskF.glsl @@ -24,7 +24,9 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif uniform float minimum_alpha; @@ -48,6 +50,6 @@ void default_lighting() color.rgb = scaleSoftClip(color.rgb); - gl_FragColor = color; + frag_color = color; } diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightAlphaMaskNonIndexedF.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightAlphaMaskNonIndexedF.glsl index 1164e5b0a..4070d41f4 100644 --- a/indra/newview/app_settings/shaders/class1/lighting/lightAlphaMaskNonIndexedF.glsl +++ b/indra/newview/app_settings/shaders/class1/lighting/lightAlphaMaskNonIndexedF.glsl @@ -24,7 +24,9 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif uniform float minimum_alpha; @@ -50,6 +52,6 @@ void default_lighting() color.rgb = scaleSoftClip(color.rgb); - gl_FragColor = color; + frag_color = color; } diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightF.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightF.glsl index 735f5b381..d6ebfcb82 100644 --- a/indra/newview/app_settings/shaders/class1/lighting/lightF.glsl +++ b/indra/newview/app_settings/shaders/class1/lighting/lightF.glsl @@ -24,7 +24,9 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif VARYING vec4 vertex_color; @@ -41,6 +43,6 @@ void default_lighting() color.rgb = scaleSoftClip(color.rgb); - gl_FragColor = color; + frag_color = color; } diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightAlphaMaskF.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightAlphaMaskF.glsl index ba99c0ed7..6c34643aa 100644 --- a/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightAlphaMaskF.glsl +++ b/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightAlphaMaskF.glsl @@ -24,7 +24,9 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif uniform float minimum_alpha; @@ -48,6 +50,6 @@ void fullbright_lighting() color.rgb = fullbrightScaleSoftClip(color.rgb); - gl_FragColor = color; + frag_color = color; } diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightF.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightF.glsl index c3edc0bd7..2ff7f795b 100644 --- a/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightF.glsl +++ b/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightF.glsl @@ -24,7 +24,9 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif VARYING vec4 vertex_color; @@ -41,6 +43,6 @@ void fullbright_lighting() color.rgb = fullbrightScaleSoftClip(color.rgb); - gl_FragColor = color; + frag_color = color; } diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightNonIndexedAlphaMaskF.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightNonIndexedAlphaMaskF.glsl index 276fad4f4..f4477bd29 100644 --- a/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightNonIndexedAlphaMaskF.glsl +++ b/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightNonIndexedAlphaMaskF.glsl @@ -24,7 +24,9 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif uniform float minimum_alpha; @@ -50,6 +52,6 @@ void fullbright_lighting() color.rgb = fullbrightScaleSoftClip(color.rgb); - gl_FragColor = color; + frag_color = color; } diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightNonIndexedF.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightNonIndexedF.glsl index 4e1e664e6..2738ff894 100644 --- a/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightNonIndexedF.glsl +++ b/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightNonIndexedF.glsl @@ -24,7 +24,9 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif VARYING vec4 vertex_color; @@ -43,6 +45,6 @@ void fullbright_lighting() color.rgb = fullbrightScaleSoftClip(color.rgb); - gl_FragColor = color; + frag_color = color; } diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightShinyF.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightShinyF.glsl index c981e9eba..777c8b45b 100644 --- a/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightShinyF.glsl +++ b/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightShinyF.glsl @@ -24,7 +24,9 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif VARYING vec4 vertex_color; @@ -50,6 +52,6 @@ void fullbright_shiny_lighting() color.a = max(color.a, vertex_color.a); - gl_FragColor = color; + frag_color = color; } diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightShinyNonIndexedF.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightShinyNonIndexedF.glsl index a4893f035..4fa3b1d93 100644 --- a/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightShinyNonIndexedF.glsl +++ b/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightShinyNonIndexedF.glsl @@ -24,7 +24,9 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif VARYING vec4 vertex_color; @@ -51,6 +53,6 @@ void fullbright_shiny_lighting() color.a = max(color.a, vertex_color.a); - gl_FragColor = color; + frag_color = color; } diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightShinyWaterF.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightShinyWaterF.glsl index c10cde98e..58984a426 100644 --- a/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightShinyWaterF.glsl +++ b/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightShinyWaterF.glsl @@ -23,7 +23,9 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif VARYING vec4 vertex_color; @@ -48,6 +50,6 @@ void fullbright_shiny_lighting_water() color.rgb = fullbrightScaleSoftClip(color.rgb); color.a = max(color.a, vertex_color.a); - gl_FragColor = applyWaterFog(color); + frag_color = applyWaterFog(color); } diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightShinyWaterNonIndexedF.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightShinyWaterNonIndexedF.glsl index e9b26087f..a39b7205d 100644 --- a/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightShinyWaterNonIndexedF.glsl +++ b/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightShinyWaterNonIndexedF.glsl @@ -23,7 +23,9 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif VARYING vec4 vertex_color; @@ -49,6 +51,6 @@ void fullbright_shiny_lighting_water() color.rgb = fullbrightScaleSoftClip(color.rgb); color.a = max(color.a, vertex_color.a); - gl_FragColor = applyWaterFog(color); + frag_color = applyWaterFog(color); } diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightWaterAlphaMaskF.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightWaterAlphaMaskF.glsl index 754b2922d..99a6fe85f 100644 --- a/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightWaterAlphaMaskF.glsl +++ b/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightWaterAlphaMaskF.glsl @@ -24,7 +24,9 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif uniform float minimum_alpha; @@ -48,6 +50,6 @@ void fullbright_lighting_water() color.rgb = fullbrightAtmosTransport(color.rgb); - gl_FragColor = applyWaterFog(color); + frag_color = applyWaterFog(color); } diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightWaterF.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightWaterF.glsl index 2547f9e75..df182168f 100644 --- a/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightWaterF.glsl +++ b/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightWaterF.glsl @@ -24,7 +24,9 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif VARYING vec4 vertex_color; @@ -41,6 +43,6 @@ void fullbright_lighting_water() color.rgb = fullbrightAtmosTransport(color.rgb); - gl_FragColor = applyWaterFog(color); + frag_color = applyWaterFog(color); } diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightWaterNonIndexedAlphaMaskF.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightWaterNonIndexedAlphaMaskF.glsl index f69b907dc..63f92a884 100644 --- a/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightWaterNonIndexedAlphaMaskF.glsl +++ b/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightWaterNonIndexedAlphaMaskF.glsl @@ -24,7 +24,9 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif uniform float minimum_alpha; @@ -48,6 +50,6 @@ void fullbright_lighting_water() color.rgb = fullbrightAtmosTransport(color.rgb); - gl_FragColor = applyWaterFog(color); + frag_color = applyWaterFog(color); } diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightWaterNonIndexedF.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightWaterNonIndexedF.glsl index aa3ef8cdd..0e68091e7 100644 --- a/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightWaterNonIndexedF.glsl +++ b/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightWaterNonIndexedF.glsl @@ -24,7 +24,9 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif VARYING vec4 vertex_color; @@ -41,6 +43,6 @@ void fullbright_lighting_water() color.rgb = fullbrightAtmosTransport(color.rgb); - gl_FragColor = applyWaterFog(color); + frag_color = applyWaterFog(color); } diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightNonIndexedF.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightNonIndexedF.glsl index 9f1a358b5..0aca76802 100644 --- a/indra/newview/app_settings/shaders/class1/lighting/lightNonIndexedF.glsl +++ b/indra/newview/app_settings/shaders/class1/lighting/lightNonIndexedF.glsl @@ -24,7 +24,9 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif VARYING vec4 vertex_color; @@ -43,6 +45,6 @@ void default_lighting() color.rgb = scaleSoftClip(color.rgb); - gl_FragColor = color; + frag_color = color; } diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightShinyF.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightShinyF.glsl index e9c27dbef..52e3b2ad0 100644 --- a/indra/newview/app_settings/shaders/class1/lighting/lightShinyF.glsl +++ b/indra/newview/app_settings/shaders/class1/lighting/lightShinyF.glsl @@ -24,7 +24,9 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif VARYING vec4 vertex_color; @@ -49,6 +51,6 @@ void shiny_lighting() color.rgb = scaleSoftClip(color.rgb); color.a = max(color.a, vertex_color.a); - gl_FragColor = color; + frag_color = color; } diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightShinyNonIndexedF.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightShinyNonIndexedF.glsl index 595ad7436..474d5ea49 100644 --- a/indra/newview/app_settings/shaders/class1/lighting/lightShinyNonIndexedF.glsl +++ b/indra/newview/app_settings/shaders/class1/lighting/lightShinyNonIndexedF.glsl @@ -24,7 +24,9 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif VARYING vec4 vertex_color; @@ -50,6 +52,6 @@ void shiny_lighting() color.rgb = scaleSoftClip(color.rgb); color.a = max(color.a, vertex_color.a); - gl_FragColor = color; + frag_color = color; } diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightShinyWaterF.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightShinyWaterF.glsl index 68c727d62..d2a4c47aa 100644 --- a/indra/newview/app_settings/shaders/class1/lighting/lightShinyWaterF.glsl +++ b/indra/newview/app_settings/shaders/class1/lighting/lightShinyWaterF.glsl @@ -24,7 +24,9 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif VARYING vec4 vertex_color; @@ -46,6 +48,6 @@ void shiny_lighting_water() color.rgb = atmosLighting(color.rgb); color.a = max(color.a, vertex_color.a); - gl_FragColor = applyWaterFog(color); + frag_color = applyWaterFog(color); } diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightShinyWaterNonIndexedF.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightShinyWaterNonIndexedF.glsl index f32b9e195..f3bd66236 100644 --- a/indra/newview/app_settings/shaders/class1/lighting/lightShinyWaterNonIndexedF.glsl +++ b/indra/newview/app_settings/shaders/class1/lighting/lightShinyWaterNonIndexedF.glsl @@ -24,7 +24,9 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif VARYING vec4 vertex_color; @@ -47,6 +49,6 @@ void shiny_lighting_water() color.rgb = atmosLighting(color.rgb); color.a = max(color.a, vertex_color.a); - gl_FragColor = applyWaterFog(color); + frag_color = applyWaterFog(color); } diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightWaterAlphaMaskF.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightWaterAlphaMaskF.glsl index 103dd633c..b68240ba0 100644 --- a/indra/newview/app_settings/shaders/class1/lighting/lightWaterAlphaMaskF.glsl +++ b/indra/newview/app_settings/shaders/class1/lighting/lightWaterAlphaMaskF.glsl @@ -24,7 +24,9 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif uniform float minimum_alpha; @@ -46,6 +48,6 @@ void default_lighting_water() color.rgb = atmosLighting(color.rgb); - gl_FragColor = applyWaterFog(color); + frag_color = applyWaterFog(color); } diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightWaterAlphaMaskNonIndexedF.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightWaterAlphaMaskNonIndexedF.glsl index bef72752d..da3b20012 100644 --- a/indra/newview/app_settings/shaders/class1/lighting/lightWaterAlphaMaskNonIndexedF.glsl +++ b/indra/newview/app_settings/shaders/class1/lighting/lightWaterAlphaMaskNonIndexedF.glsl @@ -24,7 +24,9 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif uniform float minimum_alpha; @@ -50,6 +52,6 @@ void default_lighting_water() color = applyWaterFog(color); - gl_FragColor = color; + frag_color = color; } diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightWaterF.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightWaterF.glsl index e9537d1e9..00609e93c 100644 --- a/indra/newview/app_settings/shaders/class1/lighting/lightWaterF.glsl +++ b/indra/newview/app_settings/shaders/class1/lighting/lightWaterF.glsl @@ -24,8 +24,10 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; -#endif +out vec4 frag_color; +#else +#define frag_color gl_FragColor +#endif VARYING vec4 vertex_color; VARYING vec2 vary_texcoord0; @@ -39,6 +41,6 @@ void default_lighting_water() color.rgb = atmosLighting(color.rgb); - gl_FragColor = applyWaterFog(color); + frag_color = applyWaterFog(color); } diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightWaterNonIndexedF.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightWaterNonIndexedF.glsl index 8b0c25b70..13ecb7a63 100644 --- a/indra/newview/app_settings/shaders/class1/lighting/lightWaterNonIndexedF.glsl +++ b/indra/newview/app_settings/shaders/class1/lighting/lightWaterNonIndexedF.glsl @@ -24,7 +24,9 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif VARYING vec4 vertex_color; @@ -41,6 +43,6 @@ void default_lighting_water() color.rgb = atmosLighting(color.rgb); - gl_FragColor = applyWaterFog(color); + frag_color = applyWaterFog(color); } diff --git a/indra/newview/app_settings/shaders/class1/objects/bumpF.glsl b/indra/newview/app_settings/shaders/class1/objects/bumpF.glsl index 4b85d61ac..d55f0db53 100644 --- a/indra/newview/app_settings/shaders/class1/objects/bumpF.glsl +++ b/indra/newview/app_settings/shaders/class1/objects/bumpF.glsl @@ -24,7 +24,9 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif uniform sampler2D texture0; @@ -38,5 +40,5 @@ void main() float tex0 = texture2D(texture0, vary_texcoord0.xy).a; float tex1 = texture2D(texture1, vary_texcoord1.xy).a; - gl_FragColor = vec4(tex0+(1.0-tex1)-0.5); + frag_color = vec4(tex0+(1.0-tex1)-0.5); } diff --git a/indra/newview/app_settings/shaders/class1/objects/impostorF.glsl b/indra/newview/app_settings/shaders/class1/objects/impostorF.glsl index 3c6e22b29..add437d14 100644 --- a/indra/newview/app_settings/shaders/class1/objects/impostorF.glsl +++ b/indra/newview/app_settings/shaders/class1/objects/impostorF.glsl @@ -24,7 +24,9 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif uniform float minimum_alpha; @@ -42,5 +44,5 @@ void main() discard; } - gl_FragColor = color; + frag_color = color; } diff --git a/indra/newview/app_settings/shaders/class1/objects/indexedTextureV.glsl b/indra/newview/app_settings/shaders/class1/objects/indexedTextureV.glsl index a95c9e0ab..7c0699d72 100644 --- a/indra/newview/app_settings/shaders/class1/objects/indexedTextureV.glsl +++ b/indra/newview/app_settings/shaders/class1/objects/indexedTextureV.glsl @@ -23,9 +23,9 @@ * $/LicenseInfo$ */ -ATTRIBUTE float texture_index; +ATTRIBUTE ivec4 texture_index; -VARYING float vary_texture_index; +VARYING_FLAT ivec4 vary_texture_index; void passTextureIndex() { diff --git a/indra/newview/app_settings/shaders/class2/deferred/alphaF.glsl b/indra/newview/app_settings/shaders/class2/deferred/alphaF.glsl index 1179b212a..e5edb482a 100644 --- a/indra/newview/app_settings/shaders/class2/deferred/alphaF.glsl +++ b/indra/newview/app_settings/shaders/class2/deferred/alphaF.glsl @@ -26,7 +26,9 @@ #extension GL_ARB_texture_rectangle : enable #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif VARYING vec4 vertex_color; @@ -125,6 +127,6 @@ void main() color.rgb += diff.rgb * vary_pointlight_col.rgb; - gl_FragColor = color; + frag_color = color; } diff --git a/indra/newview/app_settings/shaders/class2/deferred/alphaNonIndexedF.glsl b/indra/newview/app_settings/shaders/class2/deferred/alphaNonIndexedF.glsl index 0df557f2a..c467e6c5c 100644 --- a/indra/newview/app_settings/shaders/class2/deferred/alphaNonIndexedF.glsl +++ b/indra/newview/app_settings/shaders/class2/deferred/alphaNonIndexedF.glsl @@ -26,7 +26,9 @@ #extension GL_ARB_texture_rectangle : enable #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif uniform sampler2DRectShadow shadowMap0; @@ -138,6 +140,6 @@ void main() color.rgb += diff.rgb * vary_pointlight_col.rgb; - gl_FragColor = color; + frag_color = color; } diff --git a/indra/newview/app_settings/shaders/class2/deferred/alphaNonIndexedNoColorF.glsl b/indra/newview/app_settings/shaders/class2/deferred/alphaNonIndexedNoColorF.glsl index 331dbc707..8aaf87a1b 100644 --- a/indra/newview/app_settings/shaders/class2/deferred/alphaNonIndexedNoColorF.glsl +++ b/indra/newview/app_settings/shaders/class2/deferred/alphaNonIndexedNoColorF.glsl @@ -26,7 +26,9 @@ #extension GL_ARB_texture_rectangle : enable #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif uniform sampler2DRectShadow shadowMap0; @@ -137,6 +139,6 @@ void main() color.rgb += diff.rgb * vary_pointlight_col.rgb; - gl_FragColor = color; + frag_color = color; } diff --git a/indra/newview/app_settings/shaders/class2/deferred/multiSpotLightF.glsl b/indra/newview/app_settings/shaders/class2/deferred/multiSpotLightF.glsl index 14a683971..f7f1f649c 100644 --- a/indra/newview/app_settings/shaders/class2/deferred/multiSpotLightF.glsl +++ b/indra/newview/app_settings/shaders/class2/deferred/multiSpotLightF.glsl @@ -26,7 +26,9 @@ #extension GL_ARB_texture_rectangle : enable #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif uniform sampler2DRect diffuseRect; @@ -253,6 +255,6 @@ void main() } } - gl_FragColor.rgb = col; - gl_FragColor.a = 0.0; + frag_color.rgb = col; + frag_color.a = 0.0; } diff --git a/indra/newview/app_settings/shaders/class2/deferred/softenLightF.glsl b/indra/newview/app_settings/shaders/class2/deferred/softenLightF.glsl index 0e1cf8a73..8841dc841 100644 --- a/indra/newview/app_settings/shaders/class2/deferred/softenLightF.glsl +++ b/indra/newview/app_settings/shaders/class2/deferred/softenLightF.glsl @@ -26,7 +26,9 @@ #extension GL_ARB_texture_rectangle : enable #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif uniform sampler2DRect diffuseRect; @@ -330,6 +332,6 @@ void main() col = diffuse.rgb; } - gl_FragColor.rgb = col; - gl_FragColor.a = bloom; + frag_color.rgb = col; + frag_color.a = bloom; } diff --git a/indra/newview/app_settings/shaders/class2/deferred/spotLightF.glsl b/indra/newview/app_settings/shaders/class2/deferred/spotLightF.glsl index 31bd0c79d..99a277fbf 100644 --- a/indra/newview/app_settings/shaders/class2/deferred/spotLightF.glsl +++ b/indra/newview/app_settings/shaders/class2/deferred/spotLightF.glsl @@ -26,7 +26,9 @@ #extension GL_ARB_texture_rectangle : enable #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif VARYING vec4 vertex_color; @@ -201,6 +203,6 @@ void main() } } - gl_FragColor.rgb = col; - gl_FragColor.a = 0.0; + frag_color.rgb = col; + frag_color.a = 0.0; } diff --git a/indra/newview/app_settings/shaders/class2/deferred/sunLightF.glsl b/indra/newview/app_settings/shaders/class2/deferred/sunLightF.glsl index 229c2f4b6..a40b29d2c 100644 --- a/indra/newview/app_settings/shaders/class2/deferred/sunLightF.glsl +++ b/indra/newview/app_settings/shaders/class2/deferred/sunLightF.glsl @@ -26,7 +26,9 @@ #extension GL_ARB_texture_rectangle : enable #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif //class 2, shadows, no SSAO @@ -129,7 +131,7 @@ void main() /*if (pos.z == 0.0) // do nothing for sky *FIX: REMOVE THIS IF/WHEN THE POSITION MAP IS BEING USED AS A STENCIL { - gl_FragColor = vec4(0.0); // doesn't matter + frag_color = vec4(0.0); // doesn't matter return; }*/ @@ -198,19 +200,19 @@ void main() shadow = 1.0; } - gl_FragColor[0] = shadow; - gl_FragColor[1] = 1.0; + frag_color[0] = shadow; + frag_color[1] = 1.0; spos = vec4(shadow_pos+norm*spot_shadow_offset, 1.0); //spotlight shadow 1 vec4 lpos = shadow_matrix[4]*spos; - gl_FragColor[2] = pcfShadow(shadowMap4, lpos, 0.8); + frag_color[2] = pcfShadow(shadowMap4, lpos, 0.8); //spotlight shadow 2 lpos = shadow_matrix[5]*spos; - gl_FragColor[3] = pcfShadow(shadowMap5, lpos, 0.8); + frag_color[3] = pcfShadow(shadowMap5, lpos, 0.8); - //gl_FragColor.rgb = pos.xyz; - //gl_FragColor.b = shadow; + //frag_color.rgb = pos.xyz; + //frag_color.b = shadow; } diff --git a/indra/newview/app_settings/shaders/class2/deferred/sunLightSSAOF.glsl b/indra/newview/app_settings/shaders/class2/deferred/sunLightSSAOF.glsl index 6b420833b..774f70262 100644 --- a/indra/newview/app_settings/shaders/class2/deferred/sunLightSSAOF.glsl +++ b/indra/newview/app_settings/shaders/class2/deferred/sunLightSSAOF.glsl @@ -25,7 +25,9 @@ #extension GL_ARB_texture_rectangle : enable #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif //class 2 -- shadows and SSAO @@ -190,7 +192,7 @@ void main() /*if (pos.z == 0.0) // do nothing for sky *FIX: REMOVE THIS IF/WHEN THE POSITION MAP IS BEING USED AS A STENCIL { - gl_FragColor = vec4(0.0); // doesn't matter + frag_color = vec4(0.0); // doesn't matter return; }*/ @@ -259,19 +261,19 @@ void main() shadow = 1.0; } - gl_FragColor[0] = shadow; - gl_FragColor[1] = calcAmbientOcclusion(pos, norm); + frag_color[0] = shadow; + frag_color[1] = calcAmbientOcclusion(pos, norm); spos = vec4(shadow_pos+norm*spot_shadow_offset, 1.0); //spotlight shadow 1 vec4 lpos = shadow_matrix[4]*spos; - gl_FragColor[2] = pcfShadow(shadowMap4, lpos, 0.8); + frag_color[2] = pcfShadow(shadowMap4, lpos, 0.8); //spotlight shadow 2 lpos = shadow_matrix[5]*spos; - gl_FragColor[3] = pcfShadow(shadowMap5, lpos, 0.8); + frag_color[3] = pcfShadow(shadowMap5, lpos, 0.8); - //gl_FragColor.rgb = pos.xyz; - //gl_FragColor.b = shadow; + //frag_color.rgb = pos.xyz; + //frag_color.b = shadow; } diff --git a/indra/newview/app_settings/shaders/class2/windlight/cloudsF.glsl b/indra/newview/app_settings/shaders/class2/windlight/cloudsF.glsl index 4ab06c6e2..96c70651b 100644 --- a/indra/newview/app_settings/shaders/class2/windlight/cloudsF.glsl +++ b/indra/newview/app_settings/shaders/class2/windlight/cloudsF.glsl @@ -24,7 +24,9 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif ///////////////////////////////////////////////////////////////////////// @@ -96,7 +98,7 @@ void main() color *= 2.; /// Gamma correct for WL (soft clip effect). - gl_FragColor.rgb = scaleSoftClip(color.rgb); - gl_FragColor.a = alpha1; + frag_color.rgb = scaleSoftClip(color.rgb); + frag_color.a = alpha1; } diff --git a/indra/newview/app_settings/shaders/class2/windlight/skyF.glsl b/indra/newview/app_settings/shaders/class2/windlight/skyF.glsl index c9d96b2cf..e2a236762 100644 --- a/indra/newview/app_settings/shaders/class2/windlight/skyF.glsl +++ b/indra/newview/app_settings/shaders/class2/windlight/skyF.glsl @@ -24,7 +24,9 @@ */ #ifdef DEFINE_GL_FRAGCOLOR -out vec4 gl_FragColor; +out vec4 frag_color; +#else +#define frag_color gl_FragColor #endif ///////////////////////////////////////////////////////////////////////// @@ -57,7 +59,7 @@ void main() color *= 2.; /// Gamma correct for WL (soft clip effect). - gl_FragColor.rgb = scaleSoftClip(color.rgb); - gl_FragColor.a = 1.0; + frag_color.rgb = scaleSoftClip(color.rgb); + frag_color.a = 1.0; } diff --git a/indra/newview/lldynamictexture.cpp b/indra/newview/lldynamictexture.cpp index ab842b713..d2d5e8290 100644 --- a/indra/newview/lldynamictexture.cpp +++ b/indra/newview/lldynamictexture.cpp @@ -129,8 +129,16 @@ BOOL LLViewerDynamicTexture::render() //----------------------------------------------------------------------------- void LLViewerDynamicTexture::preRender(BOOL clear_depth) { - { - // force rendering to on-screen portion of frame buffer + //only images up to 512x512 are supported + llassert(mFullHeight <= 512); + llassert(mFullWidth <= 512); + + if (gGLManager.mHasFramebufferObject && gPipeline.mWaterDis.isComplete()) + { //using offscreen render target, just use the bottom left corner + mOrigin.set(0, 0); + } + else + { // force rendering to on-screen portion of frame buffer LLCoordScreen window_pos; gViewerWindow->getWindow()->getPosition( &window_pos ); mOrigin.set(0, gViewerWindow->getWindowHeightRaw() - mFullHeight); // top left corner @@ -144,9 +152,9 @@ void LLViewerDynamicTexture::preRender(BOOL clear_depth) mOrigin.mY += window_pos.mY; mOrigin.mY = llmax(mOrigin.mY, 0) ; } - - gGL.getTexUnit(0)->unbind(LLTexUnit::TT_TEXTURE); } + + gGL.getTexUnit(0)->unbind(LLTexUnit::TT_TEXTURE); // Set up camera LLViewerCamera* camera = LLViewerCamera::getInstance(); mCamera.setOrigin(*camera); @@ -212,6 +220,13 @@ BOOL LLViewerDynamicTexture::updateAllInstances() return TRUE; } + bool use_fbo = gGLManager.mHasFramebufferObject && gPipeline.mWaterDis.isComplete(); + + if (use_fbo) + { + gPipeline.mWaterDis.bindTarget(); + } + LLGLSLShader::bindNoShader(); LLVertexBuffer::unbind(); @@ -245,6 +260,11 @@ BOOL LLViewerDynamicTexture::updateAllInstances() } } + if (use_fbo) + { + gPipeline.mWaterDis.flush(); + } + return ret; } diff --git a/indra/newview/llface.cpp b/indra/newview/llface.cpp index 28f781077..868afa04b 100644 --- a/indra/newview/llface.cpp +++ b/indra/newview/llface.cpp @@ -1636,14 +1636,22 @@ BOOL LLFace::getGeometryVolume(const LLVolume& volume, LLVector4a texIdx; - F32 index = (F32) (mTextureIndex < 255 ? mTextureIndex : 0); + U8 index = mTextureIndex < 255 ? mTextureIndex : 0; + + F32 val = 0.f; + U8* vp = (U8*) &val; + vp[0] = index; + vp[1] = 0; + vp[2] = 0; + vp[3] = 0; + llassert(index <= LLGLSLShader::sIndexedTextureChannels-1); LLVector4Logical mask; mask.clear(); mask.setElement<3>(); - texIdx.set(0,0,0,index); + texIdx.set(0,0,0,val); { LLFastTimer t(FTM_FACE_POSITION_STORE); diff --git a/indra/newview/llmeshrepository.cpp b/indra/newview/llmeshrepository.cpp index 7af322e63..ab64f5228 100644 --- a/indra/newview/llmeshrepository.cpp +++ b/indra/newview/llmeshrepository.cpp @@ -514,6 +514,7 @@ void LLMeshRepoThread::run() while (!mLODReqQ.empty() && count < MAX_MESH_REQUESTS_PER_SECOND && sActiveLODRequests < (S32)sMaxConcurrentRequests) { + if (mMutex) { mMutex->lock(); LODRequest req = mLODReqQ.front(); @@ -529,6 +530,7 @@ void LLMeshRepoThread::run() while (!mHeaderReqQ.empty() && count < MAX_MESH_REQUESTS_PER_SECOND && sActiveHeaderRequests < (S32)sMaxConcurrentRequests) { + if (mMutex) { mMutex->lock(); HeaderRequest req = mHeaderReqQ.front(); @@ -675,6 +677,12 @@ std::string LLMeshRepoThread::constructUrl(LLUUID mesh_id) bool LLMeshRepoThread::fetchMeshSkinInfo(const LLUUID& mesh_id) { //protected by mMutex + + if (!mHeaderMutex) + { + return false; + } + mHeaderMutex->lock(); if (mMeshHeader.find(mesh_id) == mMeshHeader.end()) @@ -747,6 +755,11 @@ bool LLMeshRepoThread::fetchMeshSkinInfo(const LLUUID& mesh_id) bool LLMeshRepoThread::fetchMeshDecomposition(const LLUUID& mesh_id) { //protected by mMutex + if (!mHeaderMutex) + { + return false; + } + mHeaderMutex->lock(); if (mMeshHeader.find(mesh_id) == mMeshHeader.end()) @@ -819,6 +832,11 @@ bool LLMeshRepoThread::fetchMeshDecomposition(const LLUUID& mesh_id) bool LLMeshRepoThread::fetchMeshPhysicsShape(const LLUUID& mesh_id) { //protected by mMutex + if (!mHeaderMutex) + { + return false; + } + mHeaderMutex->lock(); if (mMeshHeader.find(mesh_id) == mMeshHeader.end()) @@ -936,6 +954,11 @@ bool LLMeshRepoThread::fetchMeshHeader(const LLVolumeParams& mesh_params) bool LLMeshRepoThread::fetchMeshLOD(const LLVolumeParams& mesh_params, S32 lod) { //protected by mMutex + if (!mHeaderMutex) + { + return false; + } + mHeaderMutex->lock(); bool retval = false; @@ -1050,10 +1073,11 @@ bool LLMeshRepoThread::headerReceived(const LLVolumeParams& mesh_params, U8* dat { LLUUID mesh_id = mesh_params.getSculptID(); - mHeaderMutex->lock(); - mMeshHeaderSize[mesh_id] = header_size; - mMeshHeader[mesh_id] = header; - mHeaderMutex->unlock(); + { + LLMutexLock lock(mHeaderMutex); + mMeshHeaderSize[mesh_id] = header_size; + mMeshHeader[mesh_id] = header; + } //check for pending requests pending_lod_map::iterator iter = mPendingLOD.find(mesh_params); @@ -1616,6 +1640,11 @@ void LLMeshUploadThread::requestWholeModelFee() void LLMeshRepoThread::notifyLoadedMeshes() {//called via gMeshRepo.notifyLoadedMeshes(). mMutex already locked + if (!mMutex) + { + return; + } + while (!mLoadedQ.empty()) { mMutex->lock(); @@ -2342,93 +2371,92 @@ void LLMeshRepository::notifyLoadedMeshes() } } - mMeshMutex->lock(); - mThread->mMutex->lock(); + { + LLMutexLock lock1(mMeshMutex); + LLMutexLock lock2(mThread->mMutex); - //popup queued error messages from background threads - while (!mUploadErrorQ.empty()) - { - LLNotificationsUtil::add("MeshUploadError", mUploadErrorQ.front()); - mUploadErrorQ.pop(); - } - - S32 push_count = LLMeshRepoThread::sMaxConcurrentRequests-(LLMeshRepoThread::sActiveHeaderRequests+LLMeshRepoThread::sActiveLODRequests); - - if (push_count > 0) - { - //calculate "score" for pending requests - - //create score map - std::map score_map; - - for (U32 i = 0; i < 4; ++i) + //popup queued error messages from background threads + while (!mUploadErrorQ.empty()) { - for (mesh_load_map::iterator iter = mLoadingMeshes[i].begin(); iter != mLoadingMeshes[i].end(); ++iter) - { - F32 max_score = 0.f; - for (std::set::iterator obj_iter = iter->second.begin(); obj_iter != iter->second.end(); ++obj_iter) - { - LLViewerObject* object = gObjectList.findObject(*obj_iter); + LLNotificationsUtil::add("MeshUploadError", mUploadErrorQ.front()); + mUploadErrorQ.pop(); + } - if (object) + S32 push_count = LLMeshRepoThread::sMaxConcurrentRequests-(LLMeshRepoThread::sActiveHeaderRequests+LLMeshRepoThread::sActiveLODRequests); + + if (push_count > 0) + { + //calculate "score" for pending requests + + //create score map + std::map score_map; + + for (U32 i = 0; i < 4; ++i) + { + for (mesh_load_map::iterator iter = mLoadingMeshes[i].begin(); iter != mLoadingMeshes[i].end(); ++iter) + { + F32 max_score = 0.f; + for (std::set::iterator obj_iter = iter->second.begin(); obj_iter != iter->second.end(); ++obj_iter) { - LLDrawable* drawable = object->mDrawable; - if (drawable) + LLViewerObject* object = gObjectList.findObject(*obj_iter); + + if (object) { - F32 cur_score = drawable->getRadius()/llmax(drawable->mDistanceWRTCamera, 1.f); - max_score = llmax(max_score, cur_score); + LLDrawable* drawable = object->mDrawable; + if (drawable) + { + F32 cur_score = drawable->getRadius()/llmax(drawable->mDistanceWRTCamera, 1.f); + max_score = llmax(max_score, cur_score); + } } } - } - score_map[iter->first.getSculptID()] = max_score; + score_map[iter->first.getSculptID()] = max_score; + } + } + + //set "score" for pending requests + for (std::vector::iterator iter = mPendingRequests.begin(); iter != mPendingRequests.end(); ++iter) + { + iter->mScore = score_map[iter->mMeshParams.getSculptID()]; + } + + //sort by "score" + std::sort(mPendingRequests.begin(), mPendingRequests.end(), LLMeshRepoThread::CompareScoreGreater()); + + while (!mPendingRequests.empty() && push_count > 0) + { + LLMeshRepoThread::LODRequest& request = mPendingRequests.front(); + mThread->loadMeshLOD(request.mMeshParams, request.mLOD); + mPendingRequests.erase(mPendingRequests.begin()); + LLMeshRepository::sLODPending--; + push_count--; } } - //set "score" for pending requests - for (std::vector::iterator iter = mPendingRequests.begin(); iter != mPendingRequests.end(); ++iter) + //send skin info requests + while (!mPendingSkinRequests.empty()) { - iter->mScore = score_map[iter->mMeshParams.getSculptID()]; + mThread->loadMeshSkinInfo(mPendingSkinRequests.front()); + mPendingSkinRequests.pop(); } - - //sort by "score" - std::sort(mPendingRequests.begin(), mPendingRequests.end(), LLMeshRepoThread::CompareScoreGreater()); - - while (!mPendingRequests.empty() && push_count > 0) + + //send decomposition requests + while (!mPendingDecompositionRequests.empty()) { - LLMeshRepoThread::LODRequest& request = mPendingRequests.front(); - mThread->loadMeshLOD(request.mMeshParams, request.mLOD); - mPendingRequests.erase(mPendingRequests.begin()); - LLMeshRepository::sLODPending--; - push_count--; + mThread->loadMeshDecomposition(mPendingDecompositionRequests.front()); + mPendingDecompositionRequests.pop(); } - } - - //send skin info requests - while (!mPendingSkinRequests.empty()) - { - mThread->loadMeshSkinInfo(mPendingSkinRequests.front()); - mPendingSkinRequests.pop(); - } - //send decomposition requests - while (!mPendingDecompositionRequests.empty()) - { - mThread->loadMeshDecomposition(mPendingDecompositionRequests.front()); - mPendingDecompositionRequests.pop(); - } + //send physics shapes decomposition requests + while (!mPendingPhysicsShapeRequests.empty()) + { + mThread->loadMeshPhysicsShape(mPendingPhysicsShapeRequests.front()); + mPendingPhysicsShapeRequests.pop(); + } - //send physics shapes decomposition requests - while (!mPendingPhysicsShapeRequests.empty()) - { - mThread->loadMeshPhysicsShape(mPendingPhysicsShapeRequests.front()); - mPendingPhysicsShapeRequests.pop(); + mThread->notifyLoadedMeshes(); } - - mThread->notifyLoadedMeshes(); - - mThread->mMutex->unlock(); - mMeshMutex->unlock(); mThread->mSignal->signal(); } @@ -3089,13 +3117,14 @@ void LLPhysicsDecomp::doDecomposition() num_hulls = LLConvexDecomposition::getInstance()->getNumHullsFromStage(stage); } - mMutex->lock(); - mCurRequest->mHull.clear(); - mCurRequest->mHull.resize(num_hulls); + { + LLMutexLock lock(mMutex); + mCurRequest->mHull.clear(); + mCurRequest->mHull.resize(num_hulls); - mCurRequest->mHullMesh.clear(); - mCurRequest->mHullMesh.resize(num_hulls); - mMutex->unlock(); + mCurRequest->mHullMesh.clear(); + mCurRequest->mHullMesh.resize(num_hulls); + } for (S32 i = 0; i < num_hulls; ++i) { @@ -3119,14 +3148,14 @@ void LLPhysicsDecomp::doDecomposition() get_vertex_buffer_from_mesh(mesh, mCurRequest->mHullMesh[i]); - mMutex->lock(); - mCurRequest->mHull[i] = p; - mMutex->unlock(); + { + LLMutexLock lock(mMutex); + mCurRequest->mHull[i] = p; + } } { LLMutexLock lock(mMutex); - mCurRequest->setStatusMessage("FAIL"); completeCurrent(); } @@ -3190,7 +3219,7 @@ void LLPhysicsDecomp::doDecompositionSingleHull() #endif //!MESH_IMPORT #if MESH_IMPORT LLConvexDecomposition* decomp = LLConvexDecomposition::getInstance(); - + if (decomp == NULL) { //stub. do nothing. @@ -3248,14 +3277,13 @@ void LLPhysicsDecomp::doDecompositionSingleHull() { param_count = decomp->getParameters(¶ms); } - + for (S32 i = 0; i < param_count; ++i) { decomp->setParam(params[i].mName, params[i].mDefault.mIntOrEnumValue); } -#endif - const S32 STAGE_DECOMPOSE = mStageID["Decompose"]; + const S32 STAGE_DECOMPOSE = mStageID["Decompose"]; const S32 STAGE_SIMPLIFY = mStageID["Simplify"]; const S32 DECOMP_PREVIEW = 0; const S32 SIMPLIFY_RETAIN = 0; @@ -3317,12 +3345,13 @@ void LLPhysicsDecomp::doDecompositionSingleHull() } } } +#endif { completeCurrent(); } -#endif +#endif //MESH_IMPORT } diff --git a/indra/newview/llviewershadermgr.cpp b/indra/newview/llviewershadermgr.cpp index aa2ab0aa1..4feb87480 100644 --- a/indra/newview/llviewershadermgr.cpp +++ b/indra/newview/llviewershadermgr.cpp @@ -316,6 +316,12 @@ void LLViewerShaderMgr::setShaders() //NEVER use more than 16 texture channels (work around for prevalent driver bug) LLGLSLShader::sIndexedTextureChannels = llmin(LLGLSLShader::sIndexedTextureChannels, 16); + if (gGLManager.mGLSLVersionMajor < 1 || + (gGLManager.mGLSLVersionMajor == 1 && gGLManager.mGLSLVersionMinor <= 20)) + { //NEVER use indexed texture rendering when GLSL version is 1.20 or earlier + LLGLSLShader::sIndexedTextureChannels = 1; + } + reentrance = true; if (LLRender::sGLCoreProfile) @@ -359,6 +365,8 @@ void LLViewerShaderMgr::setShaders() // Shaders LL_INFOS("ShaderLoading") << "\n~~~~~~~~~~~~~~~~~~\n Loading Shaders:\n~~~~~~~~~~~~~~~~~~" << LL_ENDL; + LL_INFOS("ShaderLoading") << llformat("Using GLSL %d.%d", gGLManager.mGLSLVersionMajor, gGLManager.mGLSLVersionMinor) << llendl; + for (S32 i = 0; i < SHADER_COUNT; i++) { mVertexShaderLevel[i] = 0; @@ -368,6 +376,7 @@ void LLViewerShaderMgr::setShaders() LLGLSLShader::sNoFixedFunction = false; LLVertexBuffer::unbind(); if (LLFeatureManager::getInstance()->isFeatureAvailable("VertexShaderEnable") + && (gGLManager.mGLSLVersionMajor > 1 || gGLManager.mGLSLVersionMinor >= 10) && gSavedSettings.getBOOL("VertexShaderEnable")) { //using shaders, disable fixed function @@ -599,7 +608,10 @@ BOOL LLViewerShaderMgr::loadBasicShaders() shaders.push_back( make_pair( "windlight/atmosphericsV.glsl", mVertexShaderLevel[SHADER_WINDLIGHT] ) ); shaders.push_back( make_pair( "avatar/avatarSkinV.glsl", 1 ) ); shaders.push_back( make_pair( "avatar/objectSkinV.glsl", 1 ) ); - shaders.push_back( make_pair( "objects/indexedTextureV.glsl", 1 ) ); + if (gGLManager.mGLSLVersionMajor >= 2 || gGLManager.mGLSLVersionMinor >= 30) + { + shaders.push_back( make_pair( "objects/indexedTextureV.glsl", 1 ) ); + } shaders.push_back( make_pair( "objects/nonindexedTextureV.glsl", 1 ) ); // We no longer have to bind the shaders to global glhandles, they are automatically added to a map now. diff --git a/indra/newview/pipeline.cpp b/indra/newview/pipeline.cpp index 4b5a073b3..41c440c3b 100644 --- a/indra/newview/pipeline.cpp +++ b/indra/newview/pipeline.cpp @@ -884,10 +884,11 @@ void LLPipeline::createGLBuffers() if (LLPipeline::sWaterReflections) { //water reflection texture - U32 res = (U32) gSavedSettings.getS32("RenderWaterRefResolution"); + U32 res = (U32) llmax(gSavedSettings.getS32("RenderWaterRefResolution"), 512); mWaterRef.allocate(res,res,GL_RGBA,TRUE,FALSE); - mWaterDis.allocate(res,res,GL_RGBA,TRUE,FALSE); + //always use FBO for mWaterDis so it can be used for avatar texture bakes + mWaterDis.allocate(res,res,GL_RGBA,TRUE,FALSE,LLTexUnit::TT_TEXTURE, true); } @@ -6517,8 +6518,8 @@ void LLPipeline::renderBloom(BOOL for_snapshot, F32 zoom_factor, int subfield, b mDeferredLight.flush(); } - U32 dof_width = mScreen.getWidth()*CameraDoFResScale; - U32 dof_height = mScreen.getHeight()*CameraDoFResScale; + U32 dof_width = (U32) (mScreen.getWidth()*CameraDoFResScale); + U32 dof_height = (U32) (mScreen.getHeight()*CameraDoFResScale); { //perform DoF sampling at half-res (preserve alpha channel) mScreen.bindTarget(); From 70438fa06f79341147a0e7dd432a3b9354976c06 Mon Sep 17 00:00:00 2001 From: Siana Gearz Date: Sun, 25 Mar 2012 11:12:21 +0200 Subject: [PATCH 16/22] Catching up with Lindies part 3 --- indra/llcharacter/llcharacter.h | 2 +- indra/llmessage/llcurl.cpp | 54 ++- indra/llmessage/llcurl.h | 3 +- indra/llrender/llgl.cpp | 13 + indra/llrender/llimagegl.cpp | 43 ++- indra/llrender/llimagegl.h | 6 +- indra/llrender/llrendertarget.cpp | 4 +- indra/llrender/llshadermgr.cpp | 43 +-- indra/llrender/llvertexbuffer.cpp | 258 ++++++++++---- indra/llrender/llvertexbuffer.h | 17 +- indra/newview/app_settings/settings.xml | 11 + .../shaders/class1/deferred/alphaF.glsl | 2 - .../class1/deferred/alphaNonIndexedF.glsl | 2 - .../deferred/alphaNonIndexedNoColorF.glsl | 2 - .../class1/deferred/alphaSkinnedV.glsl | 4 +- .../shaders/class1/deferred/alphaV.glsl | 4 - .../class1/deferred/attachmentShadowF.glsl | 2 - .../class1/deferred/attachmentShadowV.glsl | 5 - .../class1/deferred/postDeferredF.glsl | 2 +- .../shaders/class1/deferred/skyV.glsl | 5 +- .../shaders/class1/deferred/softenLightF.glsl | 6 +- .../class1/deferred/softenLightNoSSAOF.glsl | 336 ------------------ .../class1/deferred/sunLightSSAOF.glsl | 5 - .../shaders/class1/effects/glowF.glsl | 23 +- .../shaders/class1/environment/waterFogF.glsl | 24 +- .../shaders/class2/deferred/alphaF.glsl | 52 ++- .../class2/deferred/alphaNonIndexedF.glsl | 55 ++- .../deferred/alphaNonIndexedNoColorF.glsl | 52 ++- .../shaders/class2/deferred/softenLightF.glsl | 2 +- .../shaders/class2/deferred/sunLightF.glsl | 48 ++- .../class2/deferred/sunLightSSAOF.glsl | 50 ++- .../shaders/class2/windlight/skyV.glsl | 1 - indra/newview/llappviewer.cpp | 3 +- indra/newview/lldrawpoolavatar.cpp | 2 + indra/newview/lldrawpoolbump.cpp | 5 +- indra/newview/llviewershadermgr.cpp | 17 +- indra/newview/llviewertexture.cpp | 4 + indra/newview/llviewertexture.h | 3 + indra/newview/llviewertexturelist.cpp | 3 + indra/newview/llviewerwindow.cpp | 5 +- indra/newview/llvoavatar.cpp | 13 +- indra/newview/llvoavatar.h | 4 +- indra/newview/pipeline.cpp | 24 +- 43 files changed, 642 insertions(+), 577 deletions(-) delete mode 100644 indra/newview/app_settings/shaders/class1/deferred/softenLightNoSSAOF.glsl diff --git a/indra/llcharacter/llcharacter.h b/indra/llcharacter/llcharacter.h index d435a4cca..b92805045 100644 --- a/indra/llcharacter/llcharacter.h +++ b/indra/llcharacter/llcharacter.h @@ -132,7 +132,7 @@ public: virtual void addDebugText( const std::string& text ) = 0; - virtual const LLUUID& getID() = 0; + virtual const LLUUID& getID() const = 0; //------------------------------------------------------------------------- // End Interface //------------------------------------------------------------------------- diff --git a/indra/llmessage/llcurl.cpp b/indra/llmessage/llcurl.cpp index e9ba67c29..ccefdb56c 100644 --- a/indra/llmessage/llcurl.cpp +++ b/indra/llmessage/llcurl.cpp @@ -548,6 +548,7 @@ LLCurl::Multi::Multi(F32 idle_time_out) mErrorCount(0), mState(STATE_READY), mDead(FALSE), + mValid(TRUE), mMutexp(NULL), mDeletionMutexp(NULL), mEasyMutexp(NULL) @@ -584,6 +585,9 @@ LLCurl::Multi::Multi(F32 idle_time_out) LLCurl::Multi::~Multi() { cleanup(true); + + delete mDeletionMutexp ; + mDeletionMutexp = NULL ; } void LLCurl::Multi::cleanup(bool deleted) @@ -592,7 +596,10 @@ void LLCurl::Multi::cleanup(bool deleted) { return ; //nothing to clean. } + llassert_always(deleted || !mValid) ; + LLMutexLock lock(mDeletionMutexp); + // Clean up active for(easy_active_list_t::iterator iter = mEasyActiveList.begin(); iter != mEasyActiveList.end(); ++iter) @@ -600,9 +607,9 @@ void LLCurl::Multi::cleanup(bool deleted) Easy* easy = *iter; check_curl_multi_code(curl_multi_remove_handle(mCurlMultiHandle, easy->getCurlHandle())); - if(deleted) - { - easy->mResponder = NULL ; //avoid triggering mResponder. + if(deleted) + { + easy->mResponder = NULL ; //avoid triggering mResponder. } delete easy; } @@ -615,14 +622,12 @@ void LLCurl::Multi::cleanup(bool deleted) check_curl_multi_code(LLCurl::deleteMultiHandle(mCurlMultiHandle)); mCurlMultiHandle = NULL ; - + delete mMutexp ; mMutexp = NULL ; - delete mDeletionMutexp ; - mDeletionMutexp = NULL ; delete mEasyMutexp ; mEasyMutexp = NULL ; - + mQueued = 0 ; mState = STATE_COMPLETED; @@ -649,10 +654,20 @@ void LLCurl::Multi::unlock() void LLCurl::Multi::markDead() { - LLMutexLock lock(mDeletionMutexp) ; + { + LLMutexLock lock(mDeletionMutexp) ; - mDead = TRUE ; - LLCurl::getCurlThread()->setPriority(mHandle, LLQueuedThread::PRIORITY_URGENT) ; + if(mCurlMultiHandle != NULL) + { + mDead = TRUE ; + LLCurl::getCurlThread()->setPriority(mHandle, LLQueuedThread::PRIORITY_URGENT) ; + + return; + } + } + + //not valid, delete it. + delete this; } void LLCurl::Multi::setState(LLCurl::Multi::ePerformState state) @@ -746,10 +761,14 @@ bool LLCurl::Multi::doPerform() setState(STATE_COMPLETED) ; mIdleTimer.reset() ; } - else if(mIdleTimer.getElapsedTimeF32() > mIdleTimeOut) //idle for too long, remove it. + else if(!mValid && mIdleTimer.getElapsedTimeF32() > mIdleTimeOut) //idle for too long, remove it. { dead = true ; } + else if(mValid && mIdleTimer.getElapsedTimeF32() > mIdleTimeOut - 1.f) //idle for too long, mark it invalid. + { + mValid = FALSE ; + } return dead ; } @@ -971,14 +990,7 @@ void LLCurlThread::killMulti(LLCurl::Multi* multi) return ; } - if(multi->isValid()) - { - multi->markDead() ; - } - else - { - deleteMulti(multi) ; - } + multi->markDead() ; } //private @@ -997,6 +1009,10 @@ void LLCurlThread::deleteMulti(LLCurl::Multi* multi) void LLCurlThread::cleanupMulti(LLCurl::Multi* multi) { multi->cleanup() ; + if(multi->isDead()) //check if marked dead during cleaning up. + { + deleteMulti(multi) ; + } } //------------------------------------------------------------ diff --git a/indra/llmessage/llcurl.h b/indra/llmessage/llcurl.h index fb6f5c6a8..1609530a3 100644 --- a/indra/llmessage/llcurl.h +++ b/indra/llmessage/llcurl.h @@ -304,7 +304,7 @@ public: ePerformState getState() ; bool isCompleted() ; - bool isValid() {return mCurlMultiHandle != NULL ;} + bool isValid() {return mCurlMultiHandle != NULL && mValid;} bool isDead() {return mDead;} bool waitToComplete() ; @@ -333,6 +333,7 @@ private: ePerformState mState; BOOL mDead ; + BOOL mValid ; LLMutex* mMutexp ; LLMutex* mDeletionMutexp ; LLMutex* mEasyMutexp ; diff --git a/indra/llrender/llgl.cpp b/indra/llrender/llgl.cpp index 76f81f789..b36202705 100644 --- a/indra/llrender/llgl.cpp +++ b/indra/llrender/llgl.cpp @@ -108,6 +108,10 @@ void APIENTRY gl_debug_callback(GLenum source, llwarns << "Severity: " << std::hex << severity << llendl; llwarns << "Message: " << message << llendl; llwarns << "-----------------------" << llendl; + if (severity == GL_DEBUG_SEVERITY_HIGH_ARB) + { + llerrs << "Halting on GL Error" << llendl; + } } #endif @@ -587,6 +591,15 @@ bool LLGLManager::initGL() #endif } + if (mGLVersion >= 3.f && LLImageGL::sCompressTextures) + { //use texture compression + glHint(GL_TEXTURE_COMPRESSION_HINT, GL_NICEST); + } + else + { //GL version is < 3.0, always disable texture compression + LLImageGL::sCompressTextures = false; + } + // Trailing space necessary to keep "nVidia Corpor_ati_on" cards // from being recognized as ATI. if (mGLVendor.substr(0,4) == "ATI ") diff --git a/indra/llrender/llimagegl.cpp b/indra/llrender/llimagegl.cpp index 5c04d6e82..b8e14aae0 100644 --- a/indra/llrender/llimagegl.cpp +++ b/indra/llrender/llimagegl.cpp @@ -62,6 +62,7 @@ BOOL LLImageGL::sGlobalUseAnisotropic = FALSE; F32 LLImageGL::sLastFrameTime = 0.f; BOOL LLImageGL::sAllowReadBackRaw = FALSE ; LLImageGL* LLImageGL::sDefaultGLTexture = NULL ; +bool LLImageGL::sCompressTextures = false; std::set LLImageGL::sImageList; @@ -489,6 +490,8 @@ void LLImageGL::init(BOOL usemipmaps) mHeight = 0; mCurrentDiscardLevel = -1; + mAllowCompression = true; + mTarget = GL_TEXTURE_2D; mBindTarget = LLTexUnit::TT_TEXTURE; mHasMipMaps = false; @@ -720,7 +723,7 @@ void LLImageGL::setImage(const U8* data_in, BOOL data_hasmips) stop_glerror(); } - LLImageGL::setManualImage(mTarget, gl_level, mFormatInternal, w, h, mFormatPrimary, GL_UNSIGNED_BYTE, (GLvoid*)data_in); + LLImageGL::setManualImage(mTarget, gl_level, mFormatInternal, w, h, mFormatPrimary, GL_UNSIGNED_BYTE, (GLvoid*)data_in, mAllowCompression); if (gl_level == 0) { analyzeAlpha(data_in, w, h); @@ -762,7 +765,7 @@ void LLImageGL::setImage(const U8* data_in, BOOL data_hasmips) LLImageGL::setManualImage(mTarget, 0, mFormatInternal, w, h, mFormatPrimary, mFormatType, - data_in); + data_in, mAllowCompression); analyzeAlpha(data_in, w, h); stop_glerror(); @@ -821,7 +824,7 @@ void LLImageGL::setImage(const U8* data_in, BOOL data_hasmips) stop_glerror(); } - LLImageGL::setManualImage(mTarget, m, mFormatInternal, w, h, mFormatPrimary, mFormatType, cur_mip_data); + LLImageGL::setManualImage(mTarget, m, mFormatInternal, w, h, mFormatPrimary, mFormatType, cur_mip_data, mAllowCompression); if (m == 0) { analyzeAlpha(data_in, w, h); @@ -880,7 +883,7 @@ void LLImageGL::setImage(const U8* data_in, BOOL data_hasmips) } LLImageGL::setManualImage(mTarget, 0, mFormatInternal, w, h, - mFormatPrimary, mFormatType, (GLvoid *)data_in); + mFormatPrimary, mFormatType, (GLvoid *)data_in, mAllowCompression); analyzeAlpha(data_in, w, h); updatePickMask(w, h, data_in); @@ -1039,7 +1042,7 @@ void LLImageGL::deleteTextures(S32 numTextures, U32 *textures, bool immediate) } // static -void LLImageGL::setManualImage(U32 target, S32 miplevel, S32 intformat, S32 width, S32 height, U32 pixformat, U32 pixtype, const void *pixels) +void LLImageGL::setManualImage(U32 target, S32 miplevel, S32 intformat, S32 width, S32 height, U32 pixformat, U32 pixtype, const void *pixels, bool allow_compression) { bool use_scratch = false; U32* scratch = NULL; @@ -1102,6 +1105,36 @@ void LLImageGL::setManualImage(U32 target, S32 miplevel, S32 intformat, S32 widt } } + if (LLImageGL::sCompressTextures && allow_compression) + { + switch (intformat) + { + case GL_RGB: + case GL_RGB8: + intformat = GL_COMPRESSED_RGB; + break; + case GL_RGBA: + case GL_RGBA8: + intformat = GL_COMPRESSED_RGBA; + break; + case GL_LUMINANCE: + case GL_LUMINANCE8: + intformat = GL_COMPRESSED_LUMINANCE; + break; + case GL_LUMINANCE_ALPHA: + case GL_LUMINANCE8_ALPHA8: + intformat = GL_COMPRESSED_LUMINANCE_ALPHA; + break; + case GL_ALPHA: + case GL_ALPHA8: + intformat = GL_COMPRESSED_ALPHA; + break; + default: + llwarns << "Could not compress format: " << std::hex << intformat << llendl; + break; + } + } + stop_glerror(); glTexImage2D(target, miplevel, intformat, width, height, 0, pixformat, pixtype, use_scratch ? scratch : pixels); stop_glerror(); diff --git a/indra/llrender/llimagegl.h b/indra/llrender/llimagegl.h index a472c6262..37b997199 100644 --- a/indra/llrender/llimagegl.h +++ b/indra/llrender/llimagegl.h @@ -100,12 +100,13 @@ public: void setSize(S32 width, S32 height, S32 ncomponents); void setComponents(S32 ncomponents) { mComponents = (S8)ncomponents ;} + void setAllowCompression(bool allow) { mAllowCompression = allow; } // These 3 functions currently wrap glGenTextures(), glDeleteTextures(), and glTexImage2D() // for tracking purposes and will be deprecated in the future static void generateTextures(S32 numTextures, U32 *textures); static void deleteTextures(S32 numTextures, U32 *textures, bool immediate = false); - static void setManualImage(U32 target, S32 miplevel, S32 intformat, S32 width, S32 height, U32 pixformat, U32 pixtype, const void *pixels); + static void setManualImage(U32 target, S32 miplevel, S32 intformat, S32 width, S32 height, U32 pixformat, U32 pixtype, const void *pixels, bool allow_compression = true); BOOL createGLTexture() ; BOOL createGLTexture(S32 discard_level, const LLImageRaw* imageraw, S32 usename = 0, BOOL to_create = TRUE, @@ -202,6 +203,8 @@ private: U16 mHeight; S8 mCurrentDiscardLevel; + bool mAllowCompression; + protected: LLGLenum mTarget; // Normally GL_TEXTURE2D, sometimes something else (ex. cube maps) LLTexUnit::eTextureType mBindTarget; // Normally TT_TEXTURE, sometimes something else (ex. cube maps) @@ -239,6 +242,7 @@ public: static U32 sUniqueCount; // Tracks number of unique texture binds for current frame static BOOL sGlobalUseAnisotropic; static LLImageGL* sDefaultGLTexture ; + static bool sCompressTextures; //use GL texture compression #if DEBUG_MISS BOOL mMissed; // Missed on last bind? diff --git a/indra/llrender/llrendertarget.cpp b/indra/llrender/llrendertarget.cpp index 97dbe74e7..324a6accc 100644 --- a/indra/llrender/llrendertarget.cpp +++ b/indra/llrender/llrendertarget.cpp @@ -157,7 +157,7 @@ bool LLRenderTarget::addColorAttachment(U32 color_fmt) { clear_glerror(); - LLImageGL::setManualImage(LLTexUnit::getInternalType(mUsage), 0, color_fmt, mResX, mResY, GL_RGBA, GL_UNSIGNED_BYTE, NULL); + LLImageGL::setManualImage(LLTexUnit::getInternalType(mUsage), 0, color_fmt, mResX, mResY, GL_RGBA, GL_UNSIGNED_BYTE, NULL, false); if (glGetError() != GL_NO_ERROR) { llwarns << "Could not allocate color buffer for render target." << llendl; @@ -237,7 +237,7 @@ bool LLRenderTarget::allocateDepth() U32 internal_type = LLTexUnit::getInternalType(mUsage); stop_glerror(); clear_glerror(); - LLImageGL::setManualImage(internal_type, 0, GL_DEPTH_COMPONENT24, mResX, mResY, GL_DEPTH_COMPONENT, GL_UNSIGNED_INT, NULL); + LLImageGL::setManualImage(internal_type, 0, GL_DEPTH_COMPONENT24, mResX, mResY, GL_DEPTH_COMPONENT, GL_UNSIGNED_INT, NULL, false); gGL.getTexUnit(0)->setTextureFilteringOption(LLTexUnit::TFO_POINT); } diff --git a/indra/llrender/llshadermgr.cpp b/indra/llrender/llshadermgr.cpp index 9a6c6e9e1..b6238ab01 100644 --- a/indra/llrender/llshadermgr.cpp +++ b/indra/llrender/llshadermgr.cpp @@ -543,7 +543,6 @@ GLhandleARB LLShaderMgr::loadShaderFile(const std::string& filename, S32 & shade return 0; } - //read in from file LLFILE* file = NULL; @@ -572,7 +571,7 @@ GLhandleARB LLShaderMgr::loadShaderFile(const std::string& filename, S32 & shade return 0; } - //we can't have any lines longer than 1024 characters + //we can't have any lines longer than 1024 characters //or any shaders longer than 4096 lines... deal - DaveP GLcharARB buff[1024]; GLcharARB* text[4096]; @@ -617,6 +616,7 @@ GLhandleARB LLShaderMgr::loadShaderFile(const std::string& filename, S32 & shade //some implementations of GLSL 1.30 require integer precision be explicitly declared text[count++] = strdup("precision mediump int;\n"); + text[count++] = strdup("precision highp float;\n"); } else { //set version to 400 @@ -642,15 +642,15 @@ GLhandleARB LLShaderMgr::loadShaderFile(const std::string& filename, S32 & shade //backwards compatibility with legacy texture lookup syntax text[count++] = strdup("#define texture2D texture\n"); - text[count++] = strdup("#define texture2DRect texture\n"); text[count++] = strdup("#define textureCube texture\n"); text[count++] = strdup("#define texture2DLod textureLod\n"); - text[count++] = strdup("#define shadow2D(a,b) vec2(texture(a,b))\n"); //Shadow lookups only return a single float. - - //Also deprecated: - text[count++] = strdup("#define texture2D texture\n"); - text[count++] = strdup("#define texture2DRect texture\n"); - text[count++] = strdup("#define shadow2DRect(a,b) vec2(texture(a,b))\n"); + text[count++] = strdup("#define shadow2D(a,b) vec2(texture(a,b))\n"); + + if (major_version > 1 || minor_version >= 40) + { //GLSL 1.40 replaces texture2DRect et al with texture + text[count++] = strdup("#define texture2DRect texture\n"); + text[count++] = strdup("#define shadow2DRect(a,b) vec2(texture(a,b))\n"); + } } //copy preprocessor definitions into buffer @@ -676,20 +676,22 @@ GLhandleARB LLShaderMgr::loadShaderFile(const std::string& filename, S32 & shade VARYING_FLAT ivec4 vary_texture_index; + vec4 ret = vec4(1,0,1,1); + vec4 diffuseLookup(vec2 texcoord) { - switch (vary_texture_index.r)) + switch (vary_texture_index.r)) { - case 0: return texture2D(tex0, texcoord); - case 1: return texture2D(tex1, texcoord); - case 2: return texture2D(tex2, texcoord); + case 0: ret = texture2D(tex0, texcoord); break; + case 1: ret = texture2D(tex1, texcoord); break; + case 2: ret = texture2D(tex2, texcoord); break; . . . - case N: return texture2D(texN, texcoord); + case N: return texture2D(texN, texcoord); break; } - return vec4(0,0,0,0); + return ret; } */ @@ -714,20 +716,21 @@ GLhandleARB LLShaderMgr::loadShaderFile(const std::string& filename, S32 & shade text[count++] = strdup("return texture2D(tex0, texcoord);\n"); text[count++] = strdup("}\n"); } - else if (gGLManager.mGLVersion >= 3.f && !(gGLManager.mIsATI && gGLManager.mGLVersion < 3.3f) ) - { - text[count++] = strdup("\tswitch (int(vary_texture_index+0.25))\n"); + else if (major_version > 1 || minor_version >= 30) + { //switches are supported in GLSL 1.30 and later + text[count++] = strdup("\tvec4 ret = vec4(1,0,1,1);\n"); + text[count++] = strdup("\tswitch (vary_texture_index.r)\n"); text[count++] = strdup("\t{\n"); //switch body for (S32 i = 0; i < texture_index_channels; ++i) { - std::string case_str = llformat("\t\tcase %d: return texture2D(tex%d, texcoord);\n", i, i); + std::string case_str = llformat("\t\tcase %d: ret = texture2D(tex%d, texcoord); break;\n", i, i); text[count++] = strdup(case_str.c_str()); } text[count++] = strdup("\t}\n"); - text[count++] = strdup("\treturn vec4(1,0,1,1);\n"); + text[count++] = strdup("\treturn ret;\n"); text[count++] = strdup("}\n"); } else diff --git a/indra/llrender/llvertexbuffer.cpp b/indra/llrender/llvertexbuffer.cpp index 4324d312c..a2bfe13c3 100644 --- a/indra/llrender/llvertexbuffer.cpp +++ b/indra/llrender/llvertexbuffer.cpp @@ -34,12 +34,13 @@ #include "llmemtype.h" #include "llrender.h" #include "llvector4a.h" -#include "llcontrol.h" #include "llshadermgr.h" #include "llglslshader.h" #include "llmemory.h" #include "llfasttimer.h" +#define LL_VBO_POOLING 0 + //Next Highest Power Of Two //helper function, returns first number > v that is a power of 2, or v if v is already a power of 2 U32 nhpo2(U32 v) @@ -51,6 +52,35 @@ U32 nhpo2(U32 v) return r; } +//which power of 2 is i? +//assumes i is a power of 2 > 0 +U32 wpo2(U32 i) +{ + llassert(i > 0); + llassert(nhpo2(i) == i); + + U32 r = 0; + + while (i >>= 1) ++r; + + return r; +} + + +const U32 LL_VBO_BLOCK_SIZE = 2048; + +U32 vbo_block_size(U32 size) +{ //what block size will fit size? + U32 mod = size % LL_VBO_BLOCK_SIZE; + return mod == 0 ? size : size + (LL_VBO_BLOCK_SIZE-mod); +} + +U32 vbo_block_index(U32 size) +{ + return vbo_block_size(size)/LL_VBO_BLOCK_SIZE; +} + + //============================================================================ @@ -59,9 +89,13 @@ LLVBOPool LLVertexBuffer::sStreamVBOPool(GL_STREAM_DRAW_ARB, GL_ARRAY_BUFFER_ARB LLVBOPool LLVertexBuffer::sDynamicVBOPool(GL_DYNAMIC_DRAW_ARB, GL_ARRAY_BUFFER_ARB); LLVBOPool LLVertexBuffer::sStreamIBOPool(GL_STREAM_DRAW_ARB, GL_ELEMENT_ARRAY_BUFFER_ARB); LLVBOPool LLVertexBuffer::sDynamicIBOPool(GL_DYNAMIC_DRAW_ARB, GL_ELEMENT_ARRAY_BUFFER_ARB); -U32 LLVBOPool::sBytesPooled = 0; -LLPrivateMemoryPool* LLVertexBuffer::sPrivatePoolp = NULL ; +U32 LLVBOPool::sBytesPooled = 0; +U32 LLVBOPool::sIndexBytesPooled = 0; +U32 LLVertexBuffer::sAllocatedIndexBytes = 0; +U32 LLVertexBuffer::sIndexCount = 0; + +LLPrivateMemoryPool* LLVertexBuffer::sPrivatePoolp = NULL; U32 LLVertexBuffer::sBindCount = 0; U32 LLVertexBuffer::sSetCount = 0; S32 LLVertexBuffer::sCount = 0; @@ -76,6 +110,7 @@ U32 LLVertexBuffer::sLastMask = 0; bool LLVertexBuffer::sVBOActive = false; bool LLVertexBuffer::sIBOActive = false; U32 LLVertexBuffer::sAllocatedBytes = 0; +U32 LLVertexBuffer::sVertexCount = 0; bool LLVertexBuffer::sMapped = false; bool LLVertexBuffer::sUseStreamDraw = true; bool LLVertexBuffer::sUseVAO = false; @@ -136,39 +171,35 @@ public: }; -//which power of 2 is i? -//assumes i is a power of 2 > 0 -U32 wpo2(U32 i) -{ - llassert(i > 0); - llassert(nhpo2(i) == i); - - U32 r = 0; - - while (i >>= 1) ++r; - - return r; -} - volatile U8* LLVBOPool::allocate(U32& name, U32 size) { - llassert(nhpo2(size) == size); + llassert(vbo_block_size(size) == size); + + volatile U8* ret = NULL; - U32 i = wpo2(size); +#if LL_VBO_POOLING + + U32 i = vbo_block_index(size); if (mFreeList.size() <= i) { mFreeList.resize(i+1); } - volatile U8* ret = NULL; - if (mFreeList[i].empty()) { //make a new buffer glGenBuffersARB(1, &name); glBindBufferARB(mType, name); - LLVertexBuffer::sAllocatedBytes += size; + + if (mType == GL_ARRAY_BUFFER_ARB) + { + LLVertexBuffer::sAllocatedBytes += size; + } + else + { + LLVertexBuffer::sAllocatedIndexBytes += size; + } if (LLVertexBuffer::sDisableVBOMapping || mUsage != GL_DYNAMIC_DRAW_ARB) { @@ -179,6 +210,7 @@ volatile U8* LLVBOPool::allocate(U32& name, U32 size) { //always use a true hint of static draw when allocating non-client-backed buffers glBufferDataARB(mType, size, 0, GL_STATIC_DRAW_ARB); } + glBindBufferARB(mType, 0); } else @@ -186,19 +218,55 @@ volatile U8* LLVBOPool::allocate(U32& name, U32 size) name = mFreeList[i].front().mGLName; ret = mFreeList[i].front().mClientData; - sBytesPooled -= size; + if (mType == GL_ARRAY_BUFFER_ARB) + { + sBytesPooled -= size; + } + else + { + sIndexBytesPooled -= size; + } mFreeList[i].pop_front(); } +#else //no pooling + + glGenBuffersARB(1, &name); + glBindBufferARB(mType, name); + + if (mType == GL_ARRAY_BUFFER_ARB) + { + LLVertexBuffer::sAllocatedBytes += size; + } + else + { + LLVertexBuffer::sAllocatedIndexBytes += size; + } + + if (LLVertexBuffer::sDisableVBOMapping || mUsage != GL_DYNAMIC_DRAW_ARB) + { + glBufferDataARB(mType, size, 0, mUsage); + ret = (U8*) ll_aligned_malloc_16(size); + } + else + { //always use a true hint of static draw when allocating non-client-backed buffers + glBufferDataARB(mType, size, 0, GL_STATIC_DRAW_ARB); + } + + glBindBufferARB(mType, 0); + +#endif return ret; } void LLVBOPool::release(U32 name, volatile U8* buffer, U32 size) { - llassert(nhpo2(size) == size); + llassert(vbo_block_size(size) == size); - U32 i = wpo2(size); +#if LL_VBO_POOLING + + U32 i = vbo_block_index(size); llassert(mFreeList.size() > i); @@ -212,9 +280,29 @@ void LLVBOPool::release(U32 name, volatile U8* buffer, U32 size) } else { - sBytesPooled += size; + if (mType == GL_ARRAY_BUFFER_ARB) + { + sBytesPooled += size; + } + else + { + sIndexBytesPooled += size; + } mFreeList[i].push_back(rec); } +#else //no pooling + glDeleteBuffersARB(1, &name); + ll_aligned_free_16((U8*) buffer); + + if (mType == GL_ARRAY_BUFFER_ARB) + { + LLVertexBuffer::sAllocatedBytes -= size; + } + else + { + LLVertexBuffer::sAllocatedIndexBytes -= size; + } +#endif } void LLVBOPool::cleanup() @@ -238,8 +326,16 @@ void LLVBOPool::cleanup() l.pop_front(); - LLVertexBuffer::sAllocatedBytes -= size; - sBytesPooled -= size; + if (mType == GL_ARRAY_BUFFER_ARB) + { + sBytesPooled -= size; + LLVertexBuffer::sAllocatedBytes -= size; + } + else + { + sIndexBytesPooled -= size; + LLVertexBuffer::sAllocatedIndexBytes -= size; + } } size *= 2; @@ -436,7 +532,7 @@ void LLVertexBuffer::drawArrays(U32 mode, const std::vector& pos, con U32 count = pos.size(); llassert_always(norm.size() >= pos.size()); - llassert_always(count > 0) ; + llassert_always(count > 0); unbind(); @@ -695,8 +791,8 @@ void LLVertexBuffer::drawArrays(U32 mode, U32 first, U32 count) const //static void LLVertexBuffer::initClass(bool use_vbo, bool no_vbo_mapping) { - sEnableVBOs = use_vbo && gGLManager.mHasVertexBufferObject ; - sDisableVBOMapping = sEnableVBOs && no_vbo_mapping ; + sEnableVBOs = use_vbo && gGLManager.mHasVertexBufferObject; + sDisableVBOMapping = sEnableVBOs && no_vbo_mapping; if (!sPrivatePoolp) { @@ -747,8 +843,8 @@ void LLVertexBuffer::cleanupClass() if(sPrivatePoolp) { - LLPrivateMemoryPoolManager::getInstance()->deletePool(sPrivatePoolp) ; - sPrivatePoolp = NULL ; + LLPrivateMemoryPoolManager::getInstance()->deletePool(sPrivatePoolp); + sPrivatePoolp = NULL; } } @@ -756,25 +852,41 @@ void LLVertexBuffer::cleanupClass() S32 LLVertexBuffer::determineUsage(S32 usage) { - if (LLRender::sGLCoreProfile) + S32 ret_usage = usage; + + if (!sEnableVBOs) + { + ret_usage = 0; + } + + if (ret_usage == GL_STREAM_DRAW_ARB && !sUseStreamDraw) + { + ret_usage = 0; + } + + if (ret_usage == GL_DYNAMIC_DRAW_ARB && sPreferStreamDraw) + { + ret_usage = GL_STREAM_DRAW_ARB; + } + + if (ret_usage == 0 && LLRender::sGLCoreProfile) { //MUST use VBOs for all rendering - if(!usage) - return GL_STREAM_DRAW_ARB; + ret_usage = GL_STREAM_DRAW_ARB; } - else if (!sEnableVBOs || !usage || (!sUseStreamDraw && usage == GL_STREAM_DRAW_ARB)) - { - return 0; - } - //Only stream_draw and dynamic_draw are supported when using VBOs, dynamic draw is the default. - //Always use stream_draw VBO if mapping is disabled, or stream is preferred or expected - if( sDisableVBOMapping || sPreferStreamDraw || (usage == GL_STREAM_DRAW_ARB)) - { - return GL_STREAM_DRAW_ARB; - } - else - { - return GL_DYNAMIC_DRAW_ARB; + + if (ret_usage && ret_usage != GL_STREAM_DRAW_ARB) + { //only stream_draw and dynamic_draw are supported when using VBOs, dynamic draw is the default + if (sDisableVBOMapping) + { //always use stream draw if VBO mapping is disabled + ret_usage = GL_STREAM_DRAW_ARB; + } + else + { + ret_usage = GL_DYNAMIC_DRAW_ARB; + } } + + return ret_usage; } LLVertexBuffer::LLVertexBuffer(U32 typemask, S32 usage) : @@ -883,7 +995,10 @@ LLVertexBuffer::~LLVertexBuffer() mFence = NULL; - llassert_always(!mMappedData && !mMappedIndexData) ; + sVertexCount -= mNumVerts; + sIndexCount -= mNumIndices; + + llassert_always(!mMappedData && !mMappedIndexData); }; void LLVertexBuffer::placeFence() const @@ -914,7 +1029,7 @@ void LLVertexBuffer::waitFence() const void LLVertexBuffer::genBuffer(U32 size) { - mSize = nhpo2(size); + mSize = vbo_block_size(size); if (mUsage == GL_STREAM_DRAW_ARB) { @@ -930,7 +1045,7 @@ void LLVertexBuffer::genBuffer(U32 size) void LLVertexBuffer::genIndices(U32 size) { - mIndicesSize = nhpo2(size); + mIndicesSize = vbo_block_size(size); if (mUsage == GL_STREAM_DRAW_ARB) { @@ -1099,14 +1214,16 @@ void LLVertexBuffer::updateNumVerts(S32 nverts) nverts = 65535; } - U32 needed_size = calcOffsets(mTypeMask, mOffsets, nverts); + S32 needed_size = calcOffsets(mTypeMask, mOffsets, nverts); - if (needed_size > (U32)mSize || needed_size <= (U32)mSize/2) + if (needed_size > mSize || needed_size <= mSize/2) { createGLBuffer(needed_size); } + sVertexCount -= mNumVerts; mNumVerts = nverts; + sVertexCount += mNumVerts; } void LLVertexBuffer::updateNumIndices(S32 nindices) @@ -1115,14 +1232,16 @@ void LLVertexBuffer::updateNumIndices(S32 nindices) llassert(nindices >= 0); - U32 needed_size = sizeof(U16) * nindices; + S32 needed_size = sizeof(U16) * nindices; - if (needed_size > (U32)mIndicesSize || needed_size <= (U32)mIndicesSize/2) + if (needed_size > mIndicesSize || needed_size <= mIndicesSize/2) { createGLIndices(needed_size); } + sIndexCount -= mNumIndices; mNumIndices = nindices; + sIndexCount += mNumIndices; } void LLVertexBuffer::allocateBuffer(S32 nverts, S32 nindices, bool create) @@ -1247,7 +1366,7 @@ void LLVertexBuffer::setupVertexArray() { glEnableVertexAttribArrayARB(i); - if (attrib_integer) + if (attrib_integer[i]) { #if !LL_DARWIN //glVertexattribIPointer requires GLSL 1.30 or later @@ -1323,6 +1442,7 @@ bool expand_region(LLVertexBuffer::MappedRegion& region, S32 index, S32 count) static LLFastTimer::DeclareTimer FTM_VBO_MAP_BUFFER_RANGE("VBO Map Range"); static LLFastTimer::DeclareTimer FTM_VBO_MAP_BUFFER("VBO Map"); + // Map for data access volatile U8* LLVertexBuffer::mapVertexBuffer(S32 type, S32 index, S32 count, bool map_range) { @@ -1457,16 +1577,16 @@ volatile U8* LLVertexBuffer::mapVertexBuffer(S32 type, S32 index, S32 count, boo log_glerror(); //check the availability of memory - LLMemory::logMemoryInfo(true) ; + LLMemory::logMemoryInfo(true); if(mMappable) { //-------------------- //print out more debug info before crash - llinfos << "vertex buffer size: (num verts : num indices) = " << getNumVerts() << " : " << getNumIndices() << llendl ; - GLint size ; - glGetBufferParameterivARB(GL_ARRAY_BUFFER_ARB, GL_BUFFER_SIZE_ARB, &size) ; - llinfos << "GL_ARRAY_BUFFER_ARB size is " << size << llendl ; + llinfos << "vertex buffer size: (num verts : num indices) = " << getNumVerts() << " : " << getNumIndices() << llendl; + GLint size; + glGetBufferParameterivARB(GL_ARRAY_BUFFER_ARB, GL_BUFFER_SIZE_ARB, &size); + llinfos << "GL_ARRAY_BUFFER_ARB size is " << size << llendl; //-------------------- GLint buff; @@ -1481,7 +1601,7 @@ volatile U8* LLVertexBuffer::mapVertexBuffer(S32 type, S32 index, S32 count, boo } else { - llerrs << "memory allocation for vertex data failed." << llendl ; + llerrs << "memory allocation for vertex data failed." << llendl; } } } @@ -1635,7 +1755,7 @@ volatile U8* LLVertexBuffer::mapIndexBuffer(S32 index, S32 count, bool map_range if (!mMappedIndexData) { log_glerror(); - LLMemory::logMemoryInfo(true) ; + LLMemory::logMemoryInfo(true); if(mMappable) { @@ -1650,7 +1770,7 @@ volatile U8* LLVertexBuffer::mapIndexBuffer(S32 index, S32 count, bool map_range } else { - llerrs << "memory allocation for Index data failed. " << llendl ; + llerrs << "memory allocation for Index data failed. " << llendl; } } } @@ -1681,10 +1801,10 @@ void LLVertexBuffer::unmapBuffer() LLMemType mt2(LLMemType::MTYPE_VERTEX_UNMAP_BUFFER); if (!useVBOs()) { - return ; //nothing to unmap + return; //nothing to unmap } - bool updated_all = false ; + bool updated_all = false; if (mMappedData && mVertexLocked) { @@ -1815,10 +1935,10 @@ void LLVertexBuffer::unmapBuffer() glUnmapBufferARB(GL_ELEMENT_ARRAY_BUFFER_ARB); stop_glerror(); - mMappedIndexData = NULL ; + mMappedIndexData = NULL; } - mIndexLocked = false ; + mIndexLocked = false; sMappedCount--; } diff --git a/indra/llrender/llvertexbuffer.h b/indra/llrender/llvertexbuffer.h index 50d6b691d..ceaa70c3b 100644 --- a/indra/llrender/llvertexbuffer.h +++ b/indra/llrender/llvertexbuffer.h @@ -55,7 +55,8 @@ class LLVBOPool { public: static U32 sBytesPooled; - + static U32 sIndexBytesPooled; + LLVBOPool(U32 vboUsage, U32 vboType) : mUsage(vboUsage) , mType(vboType) @@ -93,7 +94,7 @@ public: //============================================================================ // base class -class LLPrivateMemoryPool ; +class LLPrivateMemoryPool; class LLVertexBuffer : public LLRefCount { public: @@ -269,6 +270,8 @@ public: //for debugging, validate data in given range is valid void validateRange(U32 start, U32 end, U32 count, U32 offset) const; + + protected: S32 mNumVerts; // Number of vertices allocated S32 mNumIndices; // Number of indices allocated @@ -278,7 +281,9 @@ protected: S32 mSize; S32 mIndicesSize; U32 mTypeMask; - S32 mUsage; // GL usage + + const S32 mUsage; // GL usage + U32 mGLBuffer; // GL VBO handle U32 mGLIndices; // GL IBO handle U32 mGLArray; // GL VAO handle @@ -294,6 +299,7 @@ protected: U32 mEmpty : 1; // if true, client buffer is empty (or NULL). Old values have been discarded. mutable bool mMappable; // if true, use memory mapping to upload data (otherwise doublebuffer and use glBufferSubData) + S32 mOffsets[TYPE_MAX]; std::vector mMappedVertexRegions; @@ -307,7 +313,7 @@ protected: static S32 determineUsage(S32 usage); private: - static LLPrivateMemoryPool* sPrivatePoolp ; + static LLPrivateMemoryPool* sPrivatePoolp; public: static S32 sCount; @@ -327,6 +333,9 @@ public: static bool sIBOActive; static U32 sLastMask; static U32 sAllocatedBytes; + static U32 sAllocatedIndexBytes; + static U32 sVertexCount; + static U32 sIndexCount; static U32 sBindCount; static U32 sSetCount; }; diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml index fb9299e56..2ecbfbb56 100644 --- a/indra/newview/app_settings/settings.xml +++ b/indra/newview/app_settings/settings.xml @@ -9829,6 +9829,17 @@ Value 1 + RenderCompressTextures + + Comment + Enable texture compression on OpenGL 3.0 and later implementations (EXPERIMENTAL, requires restart) + Persist + 1 + Type + Boolean + Value + 0 + RenderLocalLights diff --git a/indra/newview/app_settings/shaders/class1/deferred/alphaF.glsl b/indra/newview/app_settings/shaders/class1/deferred/alphaF.glsl index 73f05a5dd..dd87ddb33 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/alphaF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/alphaF.glsl @@ -35,8 +35,6 @@ uniform sampler2DRect depthMap; vec4 diffuseLookup(vec2 texcoord); -uniform mat4 shadow_matrix[6]; -uniform vec4 shadow_clip; uniform vec2 screen_res; vec3 atmosLighting(vec3 light); diff --git a/indra/newview/app_settings/shaders/class1/deferred/alphaNonIndexedF.glsl b/indra/newview/app_settings/shaders/class1/deferred/alphaNonIndexedF.glsl index bfbd30a45..beb329018 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/alphaNonIndexedF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/alphaNonIndexedF.glsl @@ -35,8 +35,6 @@ uniform sampler2DRect depthMap; uniform sampler2D diffuseMap; -uniform mat4 shadow_matrix[6]; -uniform vec4 shadow_clip; uniform vec2 screen_res; vec3 atmosLighting(vec3 light); diff --git a/indra/newview/app_settings/shaders/class1/deferred/alphaNonIndexedNoColorF.glsl b/indra/newview/app_settings/shaders/class1/deferred/alphaNonIndexedNoColorF.glsl index dae1131bb..cb87b754b 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/alphaNonIndexedNoColorF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/alphaNonIndexedNoColorF.glsl @@ -34,8 +34,6 @@ out vec4 frag_color; uniform sampler2DRect depthMap; uniform sampler2D diffuseMap; -uniform mat4 shadow_matrix[6]; -uniform vec4 shadow_clip; uniform vec2 screen_res; vec3 atmosLighting(vec3 light); diff --git a/indra/newview/app_settings/shaders/class1/deferred/alphaSkinnedV.glsl b/indra/newview/app_settings/shaders/class1/deferred/alphaSkinnedV.glsl index eada38eaa..5a0e8ff68 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/alphaSkinnedV.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/alphaSkinnedV.glsl @@ -41,7 +41,6 @@ vec3 atmosAffectDirectionalLight(float lightIntensity); VARYING vec3 vary_position; VARYING vec3 vary_ambient; VARYING vec3 vary_directional; -VARYING vec3 vary_normal; VARYING vec3 vary_fragcoord; VARYING vec3 vary_pointlight_col; VARYING vec4 vertex_color; @@ -110,8 +109,7 @@ void main() gl_Position = frag_pos; vary_position = pos.xyz; - vary_normal = norm; - + calcAtmospherics(pos.xyz); vec4 col = vec4(0.0, 0.0, 0.0, diffuse_color.a); diff --git a/indra/newview/app_settings/shaders/class1/deferred/alphaV.glsl b/indra/newview/app_settings/shaders/class1/deferred/alphaV.glsl index 2d344c745..cf38a2f4f 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/alphaV.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/alphaV.glsl @@ -48,7 +48,6 @@ VARYING vec3 vary_ambient; VARYING vec3 vary_directional; VARYING vec3 vary_fragcoord; VARYING vec3 vary_position; -VARYING vec3 vary_light; VARYING vec3 vary_pointlight_col; VARYING vec4 vertex_color; @@ -129,14 +128,11 @@ void main() col.rgb += light_diffuse[7].rgb*calcPointLightOrSpotLight(pos.xyz, norm, light_position[7], light_direction[7], light_attenuation[7].x, light_attenuation[7].y, light_attenuation[7].z); vary_pointlight_col = col.rgb*diffuse_color.rgb; - col.rgb = vec3(0,0,0); // Add windlight lights col.rgb = atmosAmbient(vec3(0.)); - vary_light = light_position[0].xyz; - vary_ambient = col.rgb*diffuse_color.rgb; vary_directional.rgb = diffuse_color.rgb*atmosAffectDirectionalLight(max(calcDirectionalLight(norm, light_position[0].xyz), (1.0-diffuse_color.a)*(1.0-diffuse_color.a))); diff --git a/indra/newview/app_settings/shaders/class1/deferred/attachmentShadowF.glsl b/indra/newview/app_settings/shaders/class1/deferred/attachmentShadowF.glsl index 92e3f7f38..22c9a4d14 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/attachmentShadowF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/attachmentShadowF.glsl @@ -30,12 +30,10 @@ out vec4 frag_color; uniform sampler2D diffuseMap; -VARYING vec4 vertex_color; VARYING vec2 vary_texcoord0; void main() { - //frag_color = vec4(1,1,1,vertex_color.a * texture2D(diffuseMap, vary_texcoord0.xy).a); frag_color = vec4(1,1,1,1); } diff --git a/indra/newview/app_settings/shaders/class1/deferred/attachmentShadowV.glsl b/indra/newview/app_settings/shaders/class1/deferred/attachmentShadowV.glsl index ded6cced2..81961d774 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/attachmentShadowV.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/attachmentShadowV.glsl @@ -27,11 +27,8 @@ uniform mat4 modelview_matrix; uniform mat4 texture_matrix0; ATTRIBUTE vec3 position; -ATTRIBUTE vec4 diffuse_color; ATTRIBUTE vec2 texcoord0; -VARYING vec4 vertex_color; - mat4 getObjectSkinnedTransform(); void main() @@ -42,8 +39,6 @@ void main() mat = modelview_matrix * mat; vec3 pos = (mat*vec4(position.xyz, 1.0)).xyz; - vertex_color = diffuse_color; - vec4 p = projection_matrix * vec4(pos, 1.0); p.z = max(p.z, -p.w+0.01); gl_Position = p; diff --git a/indra/newview/app_settings/shaders/class1/deferred/postDeferredF.glsl b/indra/newview/app_settings/shaders/class1/deferred/postDeferredF.glsl index 2c88331d4..bf362e21a 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/postDeferredF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/postDeferredF.glsl @@ -120,7 +120,7 @@ void main() sc -= 1.0; } } - + diff /= w; } diff --git a/indra/newview/app_settings/shaders/class1/deferred/skyV.glsl b/indra/newview/app_settings/shaders/class1/deferred/skyV.glsl index cb7603f4f..7c02d31d4 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/skyV.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/skyV.glsl @@ -26,7 +26,6 @@ uniform mat4 modelview_projection_matrix; ATTRIBUTE vec3 position; -ATTRIBUTE vec2 texcoord0; // SKY //////////////////////////////////////////////////////////////////////// // The vertex shader for creating the atmospheric sky @@ -34,7 +33,6 @@ ATTRIBUTE vec2 texcoord0; // Output parameters VARYING vec4 vary_HazeColor; -VARYING vec2 vary_texcoord0; // Inputs uniform vec3 camPosLocal; @@ -60,8 +58,7 @@ void main() // World / view / projection gl_Position = modelview_projection_matrix * vec4(position.xyz, 1.0); - vary_texcoord0 = texcoord0; - + // Get relative position vec3 P = position.xyz - camPosLocal.xyz + vec3(0,50,0); //vec3 P = position.xyz + vec3(0,50,0); diff --git a/indra/newview/app_settings/shaders/class1/deferred/softenLightF.glsl b/indra/newview/app_settings/shaders/class1/deferred/softenLightF.glsl index c0fa9fa89..b5501c282 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/softenLightF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/softenLightF.glsl @@ -146,9 +146,7 @@ void calcAtmospherics(vec3 inPositionEye, float ambFactor) { vec3 P = inPositionEye; setPositionEye(P); - //(TERRAIN) limit altitude -// if (P.y > max_y.x) P *= (max_y.x / P.y); -// if (P.y < -max_y.x) P *= (-max_y.x / P.y); + vec3 tmpLightnorm = lightnorm.xyz; vec3 Pn = normalize(P); @@ -313,7 +311,7 @@ void main() //add environmentmap vec3 env_vec = env_mat * refnormpersp; col = mix(col.rgb, textureCube(environmentMap, env_vec).rgb, - max(spec.a-diffuse.a*2.0, 0.0)); + max(spec.a-diffuse.a*2.0, 0.0)); } col = atmosLighting(col); diff --git a/indra/newview/app_settings/shaders/class1/deferred/softenLightNoSSAOF.glsl b/indra/newview/app_settings/shaders/class1/deferred/softenLightNoSSAOF.glsl deleted file mode 100644 index a46fa001d..000000000 --- a/indra/newview/app_settings/shaders/class1/deferred/softenLightNoSSAOF.glsl +++ /dev/null @@ -1,336 +0,0 @@ -/** - * @file softenLightF.glsl - * - * Copyright (c) 2007-$CurrentYear$, Linden Research, Inc. - * $License$ - */ - - -#extension GL_ARB_texture_rectangle : enable - -uniform sampler2DRect diffuseRect; -uniform sampler2DRect specularRect; -uniform sampler2DRect normalMap; -uniform sampler2DRect depthMap; -uniform sampler2D lightFunc; - -uniform float blur_size; -uniform float blur_fidelity; - -// Inputs -uniform vec4 morphFactor; -uniform vec3 camPosLocal; -//uniform vec4 camPosWorld; -uniform vec4 gamma; -uniform vec4 lightnorm; -uniform vec4 sunlight_color; -uniform vec4 ambient; -uniform vec4 blue_horizon; -uniform vec4 blue_density; -uniform vec4 haze_horizon; -uniform vec4 haze_density; -uniform vec4 cloud_shadow; -uniform vec4 density_multiplier; -uniform vec4 distance_multiplier; -uniform vec4 max_y; -uniform vec4 glow; -uniform float scene_light_strength; -uniform vec3 env_mat[3]; -//uniform mat4 shadow_matrix[3]; -//uniform vec4 shadow_clip; -uniform mat3 ssao_effect_mat; - -VARYING vec4 vary_light; -VARYING vec2 vary_fragcoord; - -vec3 vary_PositionEye; - -vec3 vary_SunlitColor; -vec3 vary_AmblitColor; -vec3 vary_AdditiveColor; -vec3 vary_AtmosAttenuation; - -uniform mat4 inv_proj; -uniform vec2 screen_res; - -vec4 getPosition_d(vec2 pos_screen, float depth) -{ - 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; -} - -vec4 getPosition(vec2 pos_screen) -{ //get position in screen space (world units) given window coordinate and depth map - float depth = texture2DRect(depthMap, pos_screen.xy).a; - return getPosition_d(pos_screen, depth); -} - -vec3 getPositionEye() -{ - return vary_PositionEye; -} -vec3 getSunlitColor() -{ - return vary_SunlitColor; -} -vec3 getAmblitColor() -{ - return vary_AmblitColor; -} -vec3 getAdditiveColor() -{ - return vary_AdditiveColor; -} -vec3 getAtmosAttenuation() -{ - return vary_AtmosAttenuation; -} - - -void setPositionEye(vec3 v) -{ - vary_PositionEye = v; -} - -void setSunlitColor(vec3 v) -{ - vary_SunlitColor = v; -} - -void setAmblitColor(vec3 v) -{ - vary_AmblitColor = v; -} - -void setAdditiveColor(vec3 v) -{ - vary_AdditiveColor = v; -} - -void setAtmosAttenuation(vec3 v) -{ - vary_AtmosAttenuation = v; -} - -void calcAtmospherics(vec3 inPositionEye, float ambFactor) { - - vec3 P = inPositionEye; - setPositionEye(P); - - //(TERRAIN) limit altitude - if (P.y > max_y.x) P *= (max_y.x / P.y); - if (P.y < -max_y.x) P *= (-max_y.x / P.y); - - vec3 tmpLightnorm = lightnorm.xyz; - - vec3 Pn = normalize(P); - float Plen = length(P); - - vec4 temp1 = vec4(0); - vec3 temp2 = vec3(0); - vec4 blue_weight; - vec4 haze_weight; - vec4 sunlight = sunlight_color; - vec4 light_atten; - - //sunlight attenuation effect (hue and brightness) due to atmosphere - //this is used later for sunlight modulation at various altitudes - light_atten = (blue_density * 1.0 + vec4(haze_density.r) * 0.25) * (density_multiplier.x * max_y.x); - //I had thought blue_density and haze_density should have equal weighting, - //but attenuation due to haze_density tends to seem too strong - - temp1 = blue_density + vec4(haze_density.r); - blue_weight = blue_density / temp1; - haze_weight = vec4(haze_density.r) / temp1; - - //(TERRAIN) compute sunlight from lightnorm only (for short rays like terrain) - temp2.y = max(0.0, tmpLightnorm.y); - temp2.y = 1. / temp2.y; - sunlight *= exp( - light_atten * temp2.y); - - // main atmospheric scattering line integral - temp2.z = Plen * density_multiplier.x; - - // Transparency (-> temp1) - // ATI Bugfix -- can't store temp1*temp2.z*distance_multiplier.x in a variable because the ati - // compiler gets confused. - temp1 = exp(-temp1 * temp2.z * distance_multiplier.x); - - //final atmosphere attenuation factor - setAtmosAttenuation(temp1.rgb); - - //compute haze glow - //(can use temp2.x as temp because we haven't used it yet) - temp2.x = dot(Pn, tmpLightnorm.xyz); - temp2.x = 1. - temp2.x; - //temp2.x is 0 at the sun and increases away from sun - temp2.x = max(temp2.x, .03); //was glow.y - //set a minimum "angle" (smaller glow.y allows tighter, brighter hotspot) - temp2.x *= glow.x; - //higher glow.x gives dimmer glow (because next step is 1 / "angle") - temp2.x = pow(temp2.x, glow.z); - //glow.z should be negative, so we're doing a sort of (1 / "angle") function - - //add "minimum anti-solar illumination" - temp2.x += .25; - - //increase ambient when there are more clouds - vec4 tmpAmbient = ambient + (vec4(1.) - ambient) * cloud_shadow.x * 0.5; - - /* decrease value and saturation (that in HSV, not HSL) for occluded areas - * // for HSV color/geometry used here, see http://gimp-savvy.com/BOOK/index.html?node52.html - * // The following line of code performs the equivalent of: - * float ambAlpha = tmpAmbient.a; - * float ambValue = dot(vec3(tmpAmbient), vec3(0.577)); // projection onto <1/rt(3), 1/rt(3), 1/rt(3)>, the neutral white-black axis - * vec3 ambHueSat = vec3(tmpAmbient) - vec3(ambValue); - * tmpAmbient = vec4(RenderSSAOEffect.valueFactor * vec3(ambValue) + RenderSSAOEffect.saturationFactor *(1.0 - ambFactor) * ambHueSat, ambAlpha); - */ - tmpAmbient = vec4(mix(ssao_effect_mat * tmpAmbient.rgb, tmpAmbient.rgb, ambFactor), tmpAmbient.a); - - //haze color - setAdditiveColor( - vec3(blue_horizon * blue_weight * (sunlight*(1.-cloud_shadow.x) + tmpAmbient) - + (haze_horizon.r * haze_weight) * (sunlight*(1.-cloud_shadow.x) * temp2.x - + tmpAmbient))); - - //brightness of surface both sunlight and ambient - setSunlitColor(vec3(sunlight * .5)); - setAmblitColor(vec3(tmpAmbient * .25)); - setAdditiveColor(getAdditiveColor() * vec3(1.0 - temp1)); -} - -vec3 atmosLighting(vec3 light) -{ - light *= getAtmosAttenuation().r; - light += getAdditiveColor(); - return (2.0 * light); -} - -vec3 atmosTransport(vec3 light) { - light *= getAtmosAttenuation().r; - light += getAdditiveColor() * 2.0; - return light; -} -vec3 atmosGetDiffuseSunlightColor() -{ - return getSunlitColor(); -} - -vec3 scaleDownLight(vec3 light) -{ - return (light / scene_light_strength ); -} - -vec3 scaleUpLight(vec3 light) -{ - return (light * scene_light_strength); -} - -vec3 atmosAmbient(vec3 light) -{ - return getAmblitColor() + light / 2.0; -} - -vec3 atmosAffectDirectionalLight(float lightIntensity) -{ - return getSunlitColor() * lightIntensity; -} - -vec3 scaleSoftClip(vec3 light) -{ - //soft clip effect: - light = 1. - clamp(light, vec3(0.), vec3(1.)); - light = 1. - pow(light, gamma.xxx); - - return light; -} - -void main() -{ - vec2 tc = vary_fragcoord.xy; - float depth = texture2DRect(depthMap, tc.xy).a; - vec3 pos = getPosition_d(tc, depth).xyz; - vec3 norm = texture2DRect(normalMap, tc).xyz; - norm = vec3((norm.xy-0.5)*2.0,norm.z); // unpack norm - //vec3 nz = texture2D(noiseMap, vary_fragcoord.xy/128.0).xyz; - - float da = max(dot(norm.xyz, vary_light.xyz), 0.0); - - vec4 diffuse = texture2DRect(diffuseRect, tc); - vec4 spec = texture2DRect(specularRect, vary_fragcoord.xy); - - calcAtmospherics(pos.xyz, 1.0); - - vec3 col = atmosAmbient(vec3(0)); - col += atmosAffectDirectionalLight(max(min(da, 1.0), diffuse.a)); - - col *= diffuse.rgb; - - if (spec.a > 0.0) // specular reflection - { - // the old infinite-sky shiny reflection - // - vec3 refnormpersp = normalize(reflect(pos.xyz, norm.xyz)); - float sa = dot(refnormpersp, vary_light.xyz); - vec3 dumbshiny = vary_SunlitColor*texture2D(lightFunc, vec2(sa, spec.a)).a; - - /* - // screen-space cheap fakey reflection map - // - vec3 refnorm = normalize(reflect(vec3(0,0,-1), norm.xyz)); - depth -= 0.5; // unbias depth - // first figure out where we'll make our 2D guess from - vec2 ref2d = (0.25 * screen_res.y) * (refnorm.xy) * abs(refnorm.z) / depth; - // Offset the guess source a little according to a trivial - // checkerboard dither function and spec.a. - // This is meant to be similar to sampling a blurred version - // of the diffuse map. LOD would be better in that regard. - // The goal of the blur is to soften reflections in surfaces - // with low shinyness, and also to disguise our lameness. - float checkerboard = floor(mod(tc.x+tc.y, 2.0)); // 0.0, 1.0 - float checkoffset = (3.0 + (7.0*(1.0-spec.a)))*(checkerboard-0.5); - ref2d += vec2(checkoffset, checkoffset); - ref2d += tc.xy; // use as offset from destination - // Get attributes from the 2D guess point. - // We average two samples of diffuse (not of anything else) per - // pixel to try to reduce aliasing some more. - vec3 refcol = 0.5 * (texture2DRect(diffuseRect, ref2d + vec2(0.0, -checkoffset)).rgb + - texture2DRect(diffuseRect, ref2d + vec2(-checkoffset, 0.0)).rgb); - float refdepth = texture2DRect(depthMap, ref2d).a; - vec3 refpos = getPosition_d(ref2d, refdepth).xyz; - vec3 refn = texture2DRect(normalMap, ref2d).rgb; - refn = normalize(vec3((refn.xy-0.5)*2.0,refn.z)); // unpack norm - // figure out how appropriate our guess actually was - float refapprop = max(0.0, dot(-refnorm, normalize(pos - refpos))); - // darken reflections from points which face away from the reflected ray - our guess was a back-face - //refapprop *= step(dot(refnorm, refn), 0.0); - refapprop = min(refapprop, max(0.0, -dot(refnorm, refn))); // more conservative variant - // get appropriate light strength for guess-point. - // reflect light direction to increase the illusion that - // these are reflections. - vec3 reflight = reflect(lightnorm.xyz, norm.xyz); - float reflit = max(dot(refn, reflight.xyz), 0.0); - // apply sun color to guess-point, dampen according to inappropriateness of guess - float refmod = min(refapprop, reflit); - vec3 refprod = vary_SunlitColor * refcol.rgb * refmod; - vec3 ssshiny = (refprod * spec.a); - ssshiny *= 0.3; // dampen it even more - */ - vec3 ssshiny = vec3(0,0,0); - - // add the two types of shiny together - col += (ssshiny + dumbshiny) * spec.rgb; - } - - col = atmosLighting(col); - col = scaleSoftClip(col); - - gl_FragColor.rgb = col; - gl_FragColor.a = 0.0; -} diff --git a/indra/newview/app_settings/shaders/class1/deferred/sunLightSSAOF.glsl b/indra/newview/app_settings/shaders/class1/deferred/sunLightSSAOF.glsl index 7fa666a73..2422d73a3 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/sunLightSSAOF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/sunLightSSAOF.glsl @@ -39,8 +39,6 @@ uniform sampler2D noiseMap; // Inputs -uniform mat4 shadow_matrix[6]; -uniform vec4 shadow_clip; uniform float ssao_radius; uniform float ssao_max_radius; uniform float ssao_factor; @@ -51,9 +49,6 @@ VARYING vec2 vary_fragcoord; uniform mat4 inv_proj; uniform vec2 screen_res; -uniform float shadow_bias; -uniform float shadow_offset; - vec4 getPosition(vec2 pos_screen) { float depth = texture2DRect(depthMap, pos_screen.xy).r; diff --git a/indra/newview/app_settings/shaders/class1/effects/glowF.glsl b/indra/newview/app_settings/shaders/class1/effects/glowF.glsl index 933668b0d..c1f6af9f5 100644 --- a/indra/newview/app_settings/shaders/class1/effects/glowF.glsl +++ b/indra/newview/app_settings/shaders/class1/effects/glowF.glsl @@ -37,21 +37,24 @@ VARYING vec4 vary_texcoord1; VARYING vec4 vary_texcoord2; VARYING vec4 vary_texcoord3; -vec4 kern = vec4(.25,.5,.8,1.0); - void main() { vec4 col = vec4(0.0, 0.0, 0.0, 0.0); - col += kern.x * texture2D(diffuseMap, vary_texcoord0.xy); - col += kern.y * texture2D(diffuseMap, vary_texcoord1.xy); - col += kern.z * texture2D(diffuseMap, vary_texcoord2.xy); - col += kern.w * texture2D(diffuseMap, vary_texcoord3.xy); - col += kern.w * texture2D(diffuseMap, vary_texcoord0.zw); - col += kern.z * texture2D(diffuseMap, vary_texcoord1.zw); - col += kern.y * texture2D(diffuseMap, vary_texcoord2.zw); - col += kern.x * texture2D(diffuseMap, vary_texcoord3.zw); + // ATI compiler falls down on array initialization. + float kern[8]; + kern[0] = 0.25; kern[1] = 0.5; kern[2] = 0.8; kern[3] = 1.0; + kern[4] = 1.0; kern[5] = 0.8; kern[6] = 0.5; kern[7] = 0.25; + + col += kern[0] * texture2D(diffuseMap, vary_texcoord0.xy); + col += kern[1] * texture2D(diffuseMap, vary_texcoord1.xy); + col += kern[2] * texture2D(diffuseMap, vary_texcoord2.xy); + col += kern[3] * texture2D(diffuseMap, vary_texcoord3.xy); + col += kern[4] * texture2D(diffuseMap, vary_texcoord0.zw); + col += kern[5] * texture2D(diffuseMap, vary_texcoord1.zw); + col += kern[6] * texture2D(diffuseMap, vary_texcoord2.zw); + col += kern[7] * texture2D(diffuseMap, vary_texcoord3.zw); frag_color = vec4(col.rgb * glowStrength, col.a); } diff --git a/indra/newview/app_settings/shaders/class1/environment/waterFogF.glsl b/indra/newview/app_settings/shaders/class1/environment/waterFogF.glsl index f8cb7e1e2..4bdfce926 100644 --- a/indra/newview/app_settings/shaders/class1/environment/waterFogF.glsl +++ b/indra/newview/app_settings/shaders/class1/environment/waterFogF.glsl @@ -1,8 +1,26 @@ /** * @file waterFogF.glsl * - * Copyright (c) 2007-$CurrentYear$, Linden Research, Inc. - * $License$ + * $LicenseInfo:firstyear=2007&license=viewerlgpl$ + * Second Life Viewer Source Code + * Copyright (C) 2007, Linden Research, Inc. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; + * version 2.1 of the License only. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA + * $/LicenseInfo$ */ @@ -32,7 +50,7 @@ vec4 applyWaterFog(vec4 color) float depth = length(getPositionEye() - int_v); //get "thickness" of water - float l = min(max(depth, 0.1),50.0); + float l = max(depth, 0.1); float kd = waterFogDensity; float ks = waterFogKS; diff --git a/indra/newview/app_settings/shaders/class2/deferred/alphaF.glsl b/indra/newview/app_settings/shaders/class2/deferred/alphaF.glsl index e5edb482a..08f6ec63f 100644 --- a/indra/newview/app_settings/shaders/class2/deferred/alphaF.glsl +++ b/indra/newview/app_settings/shaders/class2/deferred/alphaF.glsl @@ -80,7 +80,7 @@ void main() vec2 frag = vary_fragcoord.xy/vary_fragcoord.z*0.5+0.5; frag *= screen_res; - float shadow = 1.0; + float shadow = 0.0; vec4 pos = vec4(vary_position, 1.0); vec4 spos = pos; @@ -89,31 +89,65 @@ void main() { vec4 lpos; - if (spos.z < -shadow_clip.z) + vec4 near_split = shadow_clip*-0.75; + vec4 far_split = shadow_clip*-1.25; + vec4 transition_domain = near_split-far_split; + float weight = 0.0; + + if (spos.z < near_split.z) { lpos = shadow_matrix[3]*spos; lpos.xy *= shadow_res; - shadow = pcfShadow(shadowMap3, lpos, 1.5); + + float w = 1.0; + w -= max(spos.z-far_split.z, 0.0)/transition_domain.z; + shadow += pcfShadow(shadowMap3, lpos, 0.25)*w; + weight += w; shadow += max((pos.z+shadow_clip.z)/(shadow_clip.z-shadow_clip.w)*2.0-1.0, 0.0); } - else if (spos.z < -shadow_clip.y) + + if (spos.z < near_split.y && spos.z > far_split.z) { lpos = shadow_matrix[2]*spos; lpos.xy *= shadow_res; - shadow = pcfShadow(shadowMap2, lpos, 1.5); + + float w = 1.0; + w -= max(spos.z-far_split.y, 0.0)/transition_domain.y; + w -= max(near_split.z-spos.z, 0.0)/transition_domain.z; + shadow += pcfShadow(shadowMap2, lpos, 0.75)*w; + weight += w; } - else if (spos.z < -shadow_clip.x) + + if (spos.z < near_split.x && spos.z > far_split.y) { lpos = shadow_matrix[1]*spos; lpos.xy *= shadow_res; - shadow = pcfShadow(shadowMap1, lpos, 1.5); + + float w = 1.0; + w -= max(spos.z-far_split.x, 0.0)/transition_domain.x; + w -= max(near_split.y-spos.z, 0.0)/transition_domain.y; + shadow += pcfShadow(shadowMap1, lpos, 0.75)*w; + weight += w; } - else + + if (spos.z > far_split.x) { lpos = shadow_matrix[0]*spos; lpos.xy *= shadow_res; - shadow = pcfShadow(shadowMap0, lpos, 1.5); + + float w = 1.0; + w -= max(near_split.x-spos.z, 0.0)/transition_domain.x; + + shadow += pcfShadow(shadowMap0, lpos, 1.0)*w; + weight += w; } + + + shadow /= weight; + } + else + { + shadow = 1.0; } vec4 diff = diffuseLookup(vary_texcoord0.xy); diff --git a/indra/newview/app_settings/shaders/class2/deferred/alphaNonIndexedF.glsl b/indra/newview/app_settings/shaders/class2/deferred/alphaNonIndexedF.glsl index c467e6c5c..aae6a070e 100644 --- a/indra/newview/app_settings/shaders/class2/deferred/alphaNonIndexedF.glsl +++ b/indra/newview/app_settings/shaders/class2/deferred/alphaNonIndexedF.glsl @@ -93,7 +93,7 @@ void main() vec2 frag = vary_fragcoord.xy/vary_fragcoord.z*0.5+0.5; frag *= screen_res; - float shadow = 1.0; + float shadow = 0.0; vec4 pos = vec4(vary_position, 1.0); vec4 spos = pos; @@ -102,33 +102,68 @@ void main() { vec4 lpos; - if (spos.z < -shadow_clip.z) + vec4 near_split = shadow_clip*-0.75; + vec4 far_split = shadow_clip*-1.25; + vec4 transition_domain = near_split-far_split; + float weight = 0.0; + + if (spos.z < near_split.z) { lpos = shadow_matrix[3]*spos; lpos.xy *= shadow_res; - shadow = pcfShadow(shadowMap3, lpos, 1.5); + + float w = 1.0; + w -= max(spos.z-far_split.z, 0.0)/transition_domain.z; + shadow += pcfShadow(shadowMap3, lpos, 0.25)*w; + weight += w; shadow += max((pos.z+shadow_clip.z)/(shadow_clip.z-shadow_clip.w)*2.0-1.0, 0.0); } - else if (spos.z < -shadow_clip.y) + + if (spos.z < near_split.y && spos.z > far_split.z) { lpos = shadow_matrix[2]*spos; lpos.xy *= shadow_res; - shadow = pcfShadow(shadowMap2, lpos, 1.5); + + float w = 1.0; + w -= max(spos.z-far_split.y, 0.0)/transition_domain.y; + w -= max(near_split.z-spos.z, 0.0)/transition_domain.z; + shadow += pcfShadow(shadowMap2, lpos, 0.75)*w; + weight += w; } - else if (spos.z < -shadow_clip.x) + + if (spos.z < near_split.x && spos.z > far_split.y) { lpos = shadow_matrix[1]*spos; lpos.xy *= shadow_res; - shadow = pcfShadow(shadowMap1, lpos, 1.5); + + float w = 1.0; + w -= max(spos.z-far_split.x, 0.0)/transition_domain.x; + w -= max(near_split.y-spos.z, 0.0)/transition_domain.y; + shadow += pcfShadow(shadowMap1, lpos, 0.75)*w; + weight += w; } - else + + if (spos.z > far_split.x) { lpos = shadow_matrix[0]*spos; lpos.xy *= shadow_res; - shadow = pcfShadow(shadowMap0, lpos, 1.5); + + float w = 1.0; + w -= max(near_split.x-spos.z, 0.0)/transition_domain.x; + + shadow += pcfShadow(shadowMap0, lpos, 1.0)*w; + weight += w; } + + + shadow /= weight; + } - + else + { + shadow = 1.0; + } + vec4 diff = texture2D(diffuseMap,vary_texcoord0.xy); vec4 col = vec4(vary_ambient + vary_directional.rgb*shadow, vertex_color.a); diff --git a/indra/newview/app_settings/shaders/class2/deferred/alphaNonIndexedNoColorF.glsl b/indra/newview/app_settings/shaders/class2/deferred/alphaNonIndexedNoColorF.glsl index 8aaf87a1b..931577359 100644 --- a/indra/newview/app_settings/shaders/class2/deferred/alphaNonIndexedNoColorF.glsl +++ b/indra/newview/app_settings/shaders/class2/deferred/alphaNonIndexedNoColorF.glsl @@ -92,7 +92,7 @@ void main() vec2 frag = vary_fragcoord.xy/vary_fragcoord.z*0.5+0.5; frag *= screen_res; - float shadow = 1.0; + float shadow = 0.0; vec4 pos = vec4(vary_position, 1.0); vec4 spos = pos; @@ -101,31 +101,65 @@ void main() { vec4 lpos; - if (spos.z < -shadow_clip.z) + vec4 near_split = shadow_clip*-0.75; + vec4 far_split = shadow_clip*-1.25; + vec4 transition_domain = near_split-far_split; + float weight = 0.0; + + if (spos.z < near_split.z) { lpos = shadow_matrix[3]*spos; lpos.xy *= shadow_res; - shadow = pcfShadow(shadowMap3, lpos, 1.5); + + float w = 1.0; + w -= max(spos.z-far_split.z, 0.0)/transition_domain.z; + shadow += pcfShadow(shadowMap3, lpos, 0.25)*w; + weight += w; shadow += max((pos.z+shadow_clip.z)/(shadow_clip.z-shadow_clip.w)*2.0-1.0, 0.0); } - else if (spos.z < -shadow_clip.y) + + if (spos.z < near_split.y && spos.z > far_split.z) { lpos = shadow_matrix[2]*spos; lpos.xy *= shadow_res; - shadow = pcfShadow(shadowMap2, lpos, 1.5); + + float w = 1.0; + w -= max(spos.z-far_split.y, 0.0)/transition_domain.y; + w -= max(near_split.z-spos.z, 0.0)/transition_domain.z; + shadow += pcfShadow(shadowMap2, lpos, 0.75)*w; + weight += w; } - else if (spos.z < -shadow_clip.x) + + if (spos.z < near_split.x && spos.z > far_split.y) { lpos = shadow_matrix[1]*spos; lpos.xy *= shadow_res; - shadow = pcfShadow(shadowMap1, lpos, 1.5); + + float w = 1.0; + w -= max(spos.z-far_split.x, 0.0)/transition_domain.x; + w -= max(near_split.y-spos.z, 0.0)/transition_domain.y; + shadow += pcfShadow(shadowMap1, lpos, 0.75)*w; + weight += w; } - else + + if (spos.z > far_split.x) { lpos = shadow_matrix[0]*spos; lpos.xy *= shadow_res; - shadow = pcfShadow(shadowMap0, lpos, 1.5); + + float w = 1.0; + w -= max(near_split.x-spos.z, 0.0)/transition_domain.x; + + shadow += pcfShadow(shadowMap0, lpos, 1.0)*w; + weight += w; } + + + shadow /= weight; + } + else + { + shadow = 1.0; } vec4 diff = texture2D(diffuseMap,vary_texcoord0.xy); diff --git a/indra/newview/app_settings/shaders/class2/deferred/softenLightF.glsl b/indra/newview/app_settings/shaders/class2/deferred/softenLightF.glsl index 8841dc841..61a7f1e32 100644 --- a/indra/newview/app_settings/shaders/class2/deferred/softenLightF.glsl +++ b/indra/newview/app_settings/shaders/class2/deferred/softenLightF.glsl @@ -319,7 +319,7 @@ void main() //add environmentmap vec3 env_vec = env_mat * refnormpersp; col = mix(col.rgb, textureCube(environmentMap, env_vec).rgb, - max(spec.a-diffuse.a*2.0, 0.0)); + max(spec.a-diffuse.a*2.0, 0.0)); } col = atmosLighting(col); diff --git a/indra/newview/app_settings/shaders/class2/deferred/sunLightF.glsl b/indra/newview/app_settings/shaders/class2/deferred/sunLightF.glsl index a40b29d2c..8c4ccf9cb 100644 --- a/indra/newview/app_settings/shaders/class2/deferred/sunLightF.glsl +++ b/indra/newview/app_settings/shaders/class2/deferred/sunLightF.glsl @@ -135,7 +135,7 @@ void main() return; }*/ - float shadow = 1.0; + float shadow = 0.0; float dp_directional_light = max(0.0, dot(norm, sun_dir.xyz)); vec3 shadow_pos = pos.xyz + displace*norm; @@ -154,32 +154,62 @@ void main() { vec4 lpos; - if (spos.z < -shadow_clip.z) + vec4 near_split = shadow_clip*-0.75; + vec4 far_split = shadow_clip*-1.25; + vec4 transition_domain = near_split-far_split; + float weight = 0.0; + + if (spos.z < near_split.z) { lpos = shadow_matrix[3]*spos; lpos.xy *= shadow_res; - shadow = pcfShadow(shadowMap3, lpos, 0.25); + + float w = 1.0; + w -= max(spos.z-far_split.z, 0.0)/transition_domain.z; + shadow += pcfShadow(shadowMap3, lpos, 0.25)*w; + weight += w; shadow += max((pos.z+shadow_clip.z)/(shadow_clip.z-shadow_clip.w)*2.0-1.0, 0.0); } - else if (spos.z < -shadow_clip.y) + + if (spos.z < near_split.y && spos.z > far_split.z) { lpos = shadow_matrix[2]*spos; lpos.xy *= shadow_res; - shadow = pcfShadow(shadowMap2, lpos, 0.5); + + float w = 1.0; + w -= max(spos.z-far_split.y, 0.0)/transition_domain.y; + w -= max(near_split.z-spos.z, 0.0)/transition_domain.z; + shadow += pcfShadow(shadowMap2, lpos, 0.75)*w; + weight += w; } - else if (spos.z < -shadow_clip.x) + + if (spos.z < near_split.x && spos.z > far_split.y) { lpos = shadow_matrix[1]*spos; lpos.xy *= shadow_res; - shadow = pcfShadow(shadowMap1, lpos, 0.75); + + float w = 1.0; + w -= max(spos.z-far_split.x, 0.0)/transition_domain.x; + w -= max(near_split.y-spos.z, 0.0)/transition_domain.y; + shadow += pcfShadow(shadowMap1, lpos, 0.75)*w; + weight += w; } - else + + if (spos.z > far_split.x) { lpos = shadow_matrix[0]*spos; lpos.xy *= shadow_res; - shadow = pcfShadow(shadowMap0, lpos, 1.0); + + float w = 1.0; + w -= max(near_split.x-spos.z, 0.0)/transition_domain.x; + + shadow += pcfShadow(shadowMap0, lpos, 1.0)*w; + weight += w; } + + shadow /= weight; + // take the most-shadowed value out of these two: // * the blurred sun shadow in the light (shadow) map // * an unblurred dot product between the sun and this norm diff --git a/indra/newview/app_settings/shaders/class2/deferred/sunLightSSAOF.glsl b/indra/newview/app_settings/shaders/class2/deferred/sunLightSSAOF.glsl index 774f70262..02075a768 100644 --- a/indra/newview/app_settings/shaders/class2/deferred/sunLightSSAOF.glsl +++ b/indra/newview/app_settings/shaders/class2/deferred/sunLightSSAOF.glsl @@ -196,7 +196,7 @@ void main() return; }*/ - float shadow = 1.0; + float shadow = 0.0; float dp_directional_light = max(0.0, dot(norm, sun_dir.xyz)); vec3 shadow_pos = pos.xyz + displace*norm; @@ -214,33 +214,63 @@ void main() else { vec4 lpos; - - if (spos.z < -shadow_clip.z) + + vec4 near_split = shadow_clip*-0.75; + vec4 far_split = shadow_clip*-1.25; + vec4 transition_domain = near_split-far_split; + float weight = 0.0; + + if (spos.z < near_split.z) { lpos = shadow_matrix[3]*spos; lpos.xy *= shadow_res; - shadow = pcfShadow(shadowMap3, lpos, 0.25); + + float w = 1.0; + w -= max(spos.z-far_split.z, 0.0)/transition_domain.z; + shadow += pcfShadow(shadowMap3, lpos, 0.25)*w; + weight += w; shadow += max((pos.z+shadow_clip.z)/(shadow_clip.z-shadow_clip.w)*2.0-1.0, 0.0); } - else if (spos.z < -shadow_clip.y) + + if (spos.z < near_split.y && spos.z > far_split.z) { lpos = shadow_matrix[2]*spos; lpos.xy *= shadow_res; - shadow = pcfShadow(shadowMap2, lpos, 0.5); + + float w = 1.0; + w -= max(spos.z-far_split.y, 0.0)/transition_domain.y; + w -= max(near_split.z-spos.z, 0.0)/transition_domain.z; + shadow += pcfShadow(shadowMap2, lpos, 0.75)*w; + weight += w; } - else if (spos.z < -shadow_clip.x) + + if (spos.z < near_split.x && spos.z > far_split.y) { lpos = shadow_matrix[1]*spos; lpos.xy *= shadow_res; - shadow = pcfShadow(shadowMap1, lpos, 0.75); + + float w = 1.0; + w -= max(spos.z-far_split.x, 0.0)/transition_domain.x; + w -= max(near_split.y-spos.z, 0.0)/transition_domain.y; + shadow += pcfShadow(shadowMap1, lpos, 0.75)*w; + weight += w; } - else + + if (spos.z > far_split.x) { lpos = shadow_matrix[0]*spos; lpos.xy *= shadow_res; - shadow = pcfShadow(shadowMap0, lpos, 1.0); + + float w = 1.0; + w -= max(near_split.x-spos.z, 0.0)/transition_domain.x; + + shadow += pcfShadow(shadowMap0, lpos, 1.0)*w; + weight += w; } + + shadow /= weight; + // take the most-shadowed value out of these two: // * the blurred sun shadow in the light (shadow) map // * an unblurred dot product between the sun and this norm diff --git a/indra/newview/app_settings/shaders/class2/windlight/skyV.glsl b/indra/newview/app_settings/shaders/class2/windlight/skyV.glsl index 39b8a3ede..3788ddaf2 100644 --- a/indra/newview/app_settings/shaders/class2/windlight/skyV.glsl +++ b/indra/newview/app_settings/shaders/class2/windlight/skyV.glsl @@ -85,7 +85,6 @@ void main() vec4 sunlight = sunlight_color; vec4 light_atten; - // Sunlight attenuation effect (hue and brightness) due to atmosphere // this is used later for sunlight modulation at various altitudes light_atten = (blue_density + vec4(haze_density * 0.25)) * (density_multiplier * max_y); diff --git a/indra/newview/llappviewer.cpp b/indra/newview/llappviewer.cpp index 371c9e807..9ed1c25f4 100644 --- a/indra/newview/llappviewer.cpp +++ b/indra/newview/llappviewer.cpp @@ -481,6 +481,7 @@ static void settings_to_globals() LLRender::sGLCoreProfile = gSavedSettings.getBOOL("RenderGLCoreProfile"); LLImageGL::sGlobalUseAnisotropic = gSavedSettings.getBOOL("RenderAnisotropic"); + LLImageGL::sCompressTextures = gSavedSettings.getBOOL("RenderCompressTextures"); LLVOVolume::sLODFactor = gSavedSettings.getF32("RenderVolumeLODFactor"); LLVOVolume::sDistanceFactor = 1.f-LLVOVolume::sLODFactor * 0.1f; LLVolumeImplFlexible::sUpdateFactor = gSavedSettings.getF32("RenderFlexTimeFactor"); @@ -500,7 +501,7 @@ static void settings_to_globals() gAgentPilot.mNumRuns = gSavedSettings.getS32("StatsNumRuns"); gAgentPilot.mQuitAfterRuns = gSavedSettings.getBOOL("StatsQuitAfterRuns"); gAgent.setHideGroupTitle(gSavedSettings.getBOOL("RenderHideGroupTitle")); - + gDebugWindowProc = gSavedSettings.getBOOL("DebugWindowProc"); gAllowIdleAFK = gSavedSettings.getBOOL("AllowIdleAFK"); gAllowTapTapHoldRun = gSavedSettings.getBOOL("AllowTapTapHoldRun"); diff --git a/indra/newview/lldrawpoolavatar.cpp b/indra/newview/lldrawpoolavatar.cpp index e0f2fd89c..864d98e83 100644 --- a/indra/newview/lldrawpoolavatar.cpp +++ b/indra/newview/lldrawpoolavatar.cpp @@ -1155,6 +1155,8 @@ void LLDrawPoolAvatar::renderAvatars(LLVOAvatar* single_avatar, S32 pass) return; } + llassert(LLPipeline::sImpostorRender || !avatarp->isVisuallyMuted()); + /*if (single_avatar && avatarp->mSpecialRenderMode >= 1) // 1=anim preview, 2=image preview, 3=morph view { gPipeline.enableLightsAvatarEdit(LLColor4(.5f, .5f, .5f, 1.f)); diff --git a/indra/newview/lldrawpoolbump.cpp b/indra/newview/lldrawpoolbump.cpp index a88c7ce46..65ab71abc 100644 --- a/indra/newview/lldrawpoolbump.cpp +++ b/indra/newview/lldrawpoolbump.cpp @@ -1342,7 +1342,6 @@ void LLBumpImageList::onSourceLoaded( BOOL success, LLViewerTexture *src_vi, LLI // immediately assign bump to a global smart pointer in case some local smart pointer // accidentally releases it. LLPointer bump = LLViewerTextureManager::getLocalTexture( TRUE ); - if (!LLPipeline::sRenderDeferred) { @@ -1352,6 +1351,10 @@ void LLBumpImageList::onSourceLoaded( BOOL success, LLViewerTexture *src_vi, LLI } else { //convert to normal map + + //disable compression on normal maps to prevent errors below + bump->getGLTexture()->setAllowCompression(false); + { LLFastTimer t(FTM_BUMP_SOURCE_CREATE); bump->setExplicitFormat(GL_RGBA8, GL_ALPHA); diff --git a/indra/newview/llviewershadermgr.cpp b/indra/newview/llviewershadermgr.cpp index 4feb87480..927f7817a 100644 --- a/indra/newview/llviewershadermgr.cpp +++ b/indra/newview/llviewershadermgr.cpp @@ -1100,6 +1100,7 @@ BOOL LLViewerShaderMgr::loadShadersDeferred() if (success) { std::string fragment; + std::string vertex = "deferred/sunLightV.glsl"; if (gSavedSettings.getBOOL("RenderDeferredSSAO")) { @@ -1108,11 +1109,15 @@ BOOL LLViewerShaderMgr::loadShadersDeferred() else { fragment = "deferred/sunLightF.glsl"; + if (mVertexShaderLevel[SHADER_DEFERRED] == 1) + { //no shadows, no SSAO, no frag coord + vertex = "deferred/sunLightNoFragCoordV.glsl"; + } } gDeferredSunProgram.mName = "Deferred Sun Shader"; gDeferredSunProgram.mShaderFiles.clear(); - gDeferredSunProgram.mShaderFiles.push_back(make_pair("deferred/sunLightV.glsl", GL_VERTEX_SHADER_ARB)); + gDeferredSunProgram.mShaderFiles.push_back(make_pair(vertex, GL_VERTEX_SHADER_ARB)); gDeferredSunProgram.mShaderFiles.push_back(make_pair(fragment, GL_FRAGMENT_SHADER_ARB)); gDeferredSunProgram.mShaderLevel = mVertexShaderLevel[SHADER_DEFERRED]; success = gDeferredSunProgram.createShader(NULL, NULL); @@ -1296,7 +1301,7 @@ BOOL LLViewerShaderMgr::loadShadersDeferred() gDeferredAvatarAlphaProgram.mFeatures.isAlphaLighting = true; gDeferredAvatarAlphaProgram.mFeatures.disableTextureIndex = true; gDeferredAvatarAlphaProgram.mShaderFiles.clear(); - gDeferredAvatarAlphaProgram.mShaderFiles.push_back(make_pair("deferred/avatarAlphaV.glsl", GL_VERTEX_SHADER_ARB)); + gDeferredAvatarAlphaProgram.mShaderFiles.push_back(make_pair("deferred/avatarAlphaNoColorV.glsl", GL_VERTEX_SHADER_ARB)); gDeferredAvatarAlphaProgram.mShaderFiles.push_back(make_pair("deferred/alphaNonIndexedNoColorF.glsl", GL_FRAGMENT_SHADER_ARB)); gDeferredAvatarAlphaProgram.mShaderLevel = mVertexShaderLevel[SHADER_DEFERRED]; @@ -1320,7 +1325,7 @@ BOOL LLViewerShaderMgr::loadShadersDeferred() { gDeferredPostProgram.mName = "Deferred Post Shader"; gDeferredPostProgram.mShaderFiles.clear(); - gDeferredPostProgram.mShaderFiles.push_back(make_pair("deferred/postDeferredV.glsl", GL_VERTEX_SHADER_ARB)); + gDeferredPostProgram.mShaderFiles.push_back(make_pair("deferred/postDeferredNoTCV.glsl", GL_VERTEX_SHADER_ARB)); gDeferredPostProgram.mShaderFiles.push_back(make_pair("deferred/postDeferredF.glsl", GL_FRAGMENT_SHADER_ARB)); gDeferredPostProgram.mShaderLevel = mVertexShaderLevel[SHADER_DEFERRED]; success = gDeferredPostProgram.createShader(NULL, NULL); @@ -1330,7 +1335,7 @@ BOOL LLViewerShaderMgr::loadShadersDeferred() { gDeferredCoFProgram.mName = "Deferred CoF Shader"; gDeferredCoFProgram.mShaderFiles.clear(); - gDeferredCoFProgram.mShaderFiles.push_back(make_pair("deferred/postDeferredV.glsl", GL_VERTEX_SHADER_ARB)); + gDeferredCoFProgram.mShaderFiles.push_back(make_pair("deferred/postDeferredNoTCV.glsl", GL_VERTEX_SHADER_ARB)); gDeferredCoFProgram.mShaderFiles.push_back(make_pair("deferred/cofF.glsl", GL_FRAGMENT_SHADER_ARB)); gDeferredCoFProgram.mShaderLevel = mVertexShaderLevel[SHADER_DEFERRED]; success = gDeferredCoFProgram.createShader(NULL, NULL); @@ -1340,7 +1345,7 @@ BOOL LLViewerShaderMgr::loadShadersDeferred() { gDeferredDoFCombineProgram.mName = "Deferred DoFCombine Shader"; gDeferredDoFCombineProgram.mShaderFiles.clear(); - gDeferredDoFCombineProgram.mShaderFiles.push_back(make_pair("deferred/postDeferredV.glsl", GL_VERTEX_SHADER_ARB)); + gDeferredDoFCombineProgram.mShaderFiles.push_back(make_pair("deferred/postDeferredNoTCV.glsl", GL_VERTEX_SHADER_ARB)); gDeferredDoFCombineProgram.mShaderFiles.push_back(make_pair("deferred/dofCombineF.glsl", GL_FRAGMENT_SHADER_ARB)); gDeferredDoFCombineProgram.mShaderLevel = mVertexShaderLevel[SHADER_DEFERRED]; success = gDeferredDoFCombineProgram.createShader(NULL, NULL); @@ -1350,7 +1355,7 @@ BOOL LLViewerShaderMgr::loadShadersDeferred() { gDeferredPostNoDoFProgram.mName = "Deferred Post Shader"; gDeferredPostNoDoFProgram.mShaderFiles.clear(); - gDeferredPostNoDoFProgram.mShaderFiles.push_back(make_pair("deferred/postDeferredV.glsl", GL_VERTEX_SHADER_ARB)); + gDeferredPostNoDoFProgram.mShaderFiles.push_back(make_pair("deferred/postDeferredNoTCV.glsl", GL_VERTEX_SHADER_ARB)); gDeferredPostNoDoFProgram.mShaderFiles.push_back(make_pair("deferred/postDeferredNoDoFF.glsl", GL_FRAGMENT_SHADER_ARB)); gDeferredPostNoDoFProgram.mShaderLevel = mVertexShaderLevel[SHADER_DEFERRED]; success = gDeferredPostNoDoFProgram.createShader(NULL, NULL); diff --git a/indra/newview/llviewertexture.cpp b/indra/newview/llviewertexture.cpp index 1096d9b7a..10b608761 100644 --- a/indra/newview/llviewertexture.cpp +++ b/indra/newview/llviewertexture.cpp @@ -3357,10 +3357,14 @@ LLViewerMediaTexture::LLViewerMediaTexture(const LLUUID& id, BOOL usemipmaps, LL sMediaMap.insert(std::make_pair(id, this)); mGLTexturep = gl_image ; + if(mGLTexturep.isNull()) { generateGLTexture() ; } + + mGLTexturep->setAllowCompression(false); + mGLTexturep->setNeedsAlphaAndPickMask(FALSE) ; mIsPlaying = FALSE ; diff --git a/indra/newview/llviewertexture.h b/indra/newview/llviewertexture.h index c2843f2f7..9c019b03d 100644 --- a/indra/newview/llviewertexture.h +++ b/indra/newview/llviewertexture.h @@ -273,6 +273,9 @@ protected: void reorganizeVolumeList() ; void setTexelsPerImage(); private: + friend class LLBumpImageList; + friend class LLUIImageList; + //note: do not make this function public. /*virtual*/ LLImageGL* getGLTexture() const ; virtual void switchToCachedImage(); diff --git a/indra/newview/llviewertexturelist.cpp b/indra/newview/llviewertexturelist.cpp index 442e78857..4af09d967 100644 --- a/indra/newview/llviewertexturelist.cpp +++ b/indra/newview/llviewertexturelist.cpp @@ -1455,6 +1455,9 @@ LLUIImagePtr LLUIImageList::loadUIImage(LLViewerFetchedTexture* imagep, const st imagep->setAddressMode(LLTexUnit::TAM_CLAMP); + //don't compress UI images + imagep->getGLTexture()->setAllowCompression(false); + //all UI images are non-deletable imagep->setNoDelete(); diff --git a/indra/newview/llviewerwindow.cpp b/indra/newview/llviewerwindow.cpp index ada92721d..712ff693c 100644 --- a/indra/newview/llviewerwindow.cpp +++ b/indra/newview/llviewerwindow.cpp @@ -512,7 +512,10 @@ public: } - addText(xpos, ypos, llformat("%d MB Vertex Data (%d MB Pooled)", LLVertexBuffer::sAllocatedBytes/(1024*1024), LLVBOPool::sBytesPooled/(1024*1024))); + addText(xpos, ypos, llformat("%d MB Index Data (%d MB Pooled, %d KIndices)", LLVertexBuffer::sAllocatedIndexBytes/(1024*1024), LLVBOPool::sIndexBytesPooled/(1024*1024), LLVertexBuffer::sIndexCount/1024)); + ypos += y_inc; + + addText(xpos, ypos, llformat("%d MB Vertex Data (%d MB Pooled, %d KVerts)", LLVertexBuffer::sAllocatedBytes/(1024*1024), LLVBOPool::sBytesPooled/(1024*1024), LLVertexBuffer::sVertexCount/1024)); ypos += y_inc; addText(xpos, ypos, llformat("%d Vertex Buffers", LLVertexBuffer::sGLCount)); diff --git a/indra/newview/llvoavatar.cpp b/indra/newview/llvoavatar.cpp index 590625b72..5afc90ba9 100644 --- a/indra/newview/llvoavatar.cpp +++ b/indra/newview/llvoavatar.cpp @@ -4058,7 +4058,7 @@ void LLVOAvatar::slamPosition() mRoot.updateWorldMatrixChildren(); } -bool LLVOAvatar::isVisuallyMuted() +bool LLVOAvatar::isVisuallyMuted() const { if(isSelf())return false; static LLCachedControl max_attachment_bytes(gSavedSettings, "RenderAutoMuteByteLimit"); @@ -4137,7 +4137,7 @@ BOOL LLVOAvatar::updateCharacter(LLAgent &agent) // the rest should only be done occasionally for far away avatars //-------------------------------------------------------------------- - if (visible && !isSelf() && !mIsDummy && sUseImpostors && !mNeedsAnimUpdate && !sFreezeCounter) + if (visible && (!isSelf() || isVisuallyMuted()) && !mIsDummy && sUseImpostors && !mNeedsAnimUpdate && !sFreezeCounter) { const LLVector4a* ext = mDrawable->getSpatialExtents(); LLVector4a size; @@ -4177,6 +4177,11 @@ BOOL LLVOAvatar::updateCharacter(LLAgent &agent) visible = (LLDrawable::getCurrentFrame()+mID.mData[0])%mUpdatePeriod == 0 ? TRUE : FALSE; } + else + { + mUpdatePeriod = 1; + } + // don't early out for your own avatar, as we rely on your animations playing reliably // for example, the "turn around" animation when entering customize avatar needs to trigger @@ -5777,7 +5782,7 @@ S32 LLVOAvatar::getCollisionVolumeID(std::string &name) //----------------------------------------------------------------------------- // getID() //----------------------------------------------------------------------------- -const LLUUID& LLVOAvatar::getID() +const LLUUID& LLVOAvatar::getID() const { return mID; } @@ -10407,7 +10412,7 @@ void LLVOAvatar::updateImpostors() BOOL LLVOAvatar::isImpostor() const { - return (sUseImpostors && mUpdatePeriod >= IMPOSTOR_PERIOD) ? TRUE : FALSE; + return (isVisuallyMuted() || (sUseImpostors && mUpdatePeriod >= IMPOSTOR_PERIOD)) ? TRUE : FALSE; } diff --git a/indra/newview/llvoavatar.h b/indra/newview/llvoavatar.h index ae799ca1d..b1c777b49 100644 --- a/indra/newview/llvoavatar.h +++ b/indra/newview/llvoavatar.h @@ -187,7 +187,7 @@ public: void resetJointPositionsToDefault( void ); void resetSpecificJointPosition( const std::string& name ); virtual const char* getAnimationPrefix() { return "avatar"; } - virtual const LLUUID& getID(); + virtual const LLUUID& getID() const; virtual LLVector3 getVolumePos(S32 joint_index, LLVector3& volume_offset); virtual LLJoint* findCollisionVolume(U32 volume_id); virtual S32 getCollisionVolumeID(std::string &name); @@ -382,7 +382,7 @@ public: // Graphical stuff for objects - maybe broken out into render class later? U32 renderFootShadows(); U32 renderImpostor(LLColor4U color = LLColor4U(255,255,255,255), S32 diffuse_channel = 0); - bool isVisuallyMuted(); + bool isVisuallyMuted() const; U32 renderRigid(); U32 renderSkinned(EAvatarRenderPass pass); diff --git a/indra/newview/pipeline.cpp b/indra/newview/pipeline.cpp index 41c440c3b..0472606f1 100644 --- a/indra/newview/pipeline.cpp +++ b/indra/newview/pipeline.cpp @@ -677,6 +677,10 @@ bool LLPipeline::allocateScreenBuffer(U32 resX, U32 resY, U32 samples) if (LLPipeline::sRenderDeferred) { + // Set this flag in case we crash while resizing window or allocating space for deferred rendering targets + gSavedSettings.setBOOL("RenderInitError", TRUE); + gSavedSettings.saveToFile( gSavedSettings.getString("ClientSettingsFile"), TRUE ); + S32 shadow_detail = gSavedSettings.getS32("RenderShadowDetail"); BOOL ssao = gSavedSettings.getBOOL("RenderDeferredSSAO"); BOOL RenderDepthOfField = gSavedSettings.getBOOL("RenderDepthOfField"); @@ -743,6 +747,10 @@ bool LLPipeline::allocateScreenBuffer(U32 resX, U32 resY, U32 samples) mShadow[i].release(); } } + + // don't disable shaders on next session + gSavedSettings.setBOOL("RenderInitError", FALSE); + gSavedSettings.saveToFile( gSavedSettings.getString("ClientSettingsFile"), TRUE ); } else { @@ -929,7 +937,7 @@ void LLPipeline::createGLBuffers() LLImageGL::generateTextures(1, &mNoiseMap); gGL.getTexUnit(0)->bindManual(LLTexUnit::TT_TEXTURE, mNoiseMap); - LLImageGL::setManualImage(LLTexUnit::getInternalType(LLTexUnit::TT_TEXTURE), 0, GL_RGB16F_ARB, noiseRes, noiseRes, GL_RGB, GL_FLOAT, noise); + LLImageGL::setManualImage(LLTexUnit::getInternalType(LLTexUnit::TT_TEXTURE), 0, GL_RGB16F_ARB, noiseRes, noiseRes, GL_RGB, GL_FLOAT, noise, false); gGL.getTexUnit(0)->setTextureFilteringOption(LLTexUnit::TFO_POINT); } @@ -944,7 +952,7 @@ void LLPipeline::createGLBuffers() LLImageGL::generateTextures(1, &mTrueNoiseMap); gGL.getTexUnit(0)->bindManual(LLTexUnit::TT_TEXTURE, mTrueNoiseMap); - LLImageGL::setManualImage(LLTexUnit::getInternalType(LLTexUnit::TT_TEXTURE), 0, GL_RGB16F_ARB, noiseRes, noiseRes, GL_RGB,GL_FLOAT, noise); + LLImageGL::setManualImage(LLTexUnit::getInternalType(LLTexUnit::TT_TEXTURE), 0, GL_RGB16F_ARB, noiseRes, noiseRes, GL_RGB,GL_FLOAT, noise, false); gGL.getTexUnit(0)->setTextureFilteringOption(LLTexUnit::TFO_POINT); } @@ -981,7 +989,7 @@ void LLPipeline::createGLBuffers() LLImageGL::generateTextures(1, &mLightFunc); gGL.getTexUnit(0)->bindManual(LLTexUnit::TT_TEXTURE, mLightFunc); - LLImageGL::setManualImage(LLTexUnit::getInternalType(LLTexUnit::TT_TEXTURE), 0, GL_R8, lightResX, lightResY, GL_RED, GL_UNSIGNED_BYTE, lg); + LLImageGL::setManualImage(LLTexUnit::getInternalType(LLTexUnit::TT_TEXTURE), 0, GL_R8, lightResX, lightResY, GL_RED, GL_UNSIGNED_BYTE, lg, false); gGL.getTexUnit(0)->setTextureAddressMode(LLTexUnit::TAM_CLAMP); gGL.getTexUnit(0)->setTextureFilteringOption(LLTexUnit::TFO_TRILINEAR); @@ -8654,16 +8662,16 @@ void LLPipeline::generateSunShadow(LLCamera& camera) da = powf(da, split_exp.mV[2]); - F32 sxp = split_exp.mV[1] + (split_exp.mV[0]-split_exp.mV[1])*da; - - + for (U32 i = 0; i < 4; ++i) { F32 x = (F32)(i+1)/4.f; x = powf(x, sxp); mSunClipPlanes.mV[i] = near_clip+range*x; } + + mSunClipPlanes.mV[0] *= 1.25f; //bump back first split for transition padding } // convenience array of 4 near clip plane distances @@ -8719,8 +8727,8 @@ void LLPipeline::generateSunShadow(LLCamera& camera) delta += (frust[i+4]-frust[(i+2)%4+4])*0.05f; delta.normVec(); F32 dp = delta*pn; - frust[i] = eye + (delta*dist[j]*0.95f)/dp; - frust[i+4] = eye + (delta*dist[j+1]*1.05f)/dp; + frust[i] = eye + (delta*dist[j]*0.75f)/dp; + frust[i+4] = eye + (delta*dist[j+1]*1.25f)/dp; } shadow_cam.calcAgentFrustumPlanes(frust); From caaba76921f266c0ecb13118b627a36cdf54bb19 Mon Sep 17 00:00:00 2001 From: Siana Gearz Date: Mon, 26 Mar 2012 15:05:35 +0200 Subject: [PATCH 17/22] Firestorm workaround for alloc failure --- indra/llrender/llvertexbuffer.cpp | 27 +++++++++++++++++++++------ 1 file changed, 21 insertions(+), 6 deletions(-) diff --git a/indra/llrender/llvertexbuffer.cpp b/indra/llrender/llvertexbuffer.cpp index a2bfe13c3..a3b1b36af 100644 --- a/indra/llrender/llvertexbuffer.cpp +++ b/indra/llrender/llvertexbuffer.cpp @@ -1210,8 +1210,13 @@ void LLVertexBuffer::updateNumVerts(S32 nverts) if (nverts >= 65535) { - llwarns << "Vertex buffer overflow!" << llendl; - nverts = 65535; + // FIRE-5077; Just print an info if there are more than 0xFFFF, for now just so there is a message in the logs where in older version #vertices would have been capped. + + // llwarns << "Vertex buffer overflow!" << llendl; + // nverts = 65535; + llinfos << "More vertices than 65535 (#" << nverts << ")" < } S32 needed_size = calcOffsets(mTypeMask, mOffsets, nverts); @@ -1250,11 +1255,21 @@ void LLVertexBuffer::allocateBuffer(S32 nverts, S32 nindices, bool create) stop_glerror(); - if (nverts < 0 || nindices < 0 || - nverts > 65536) - { + // FIRE-5077; Just print an info if there are more than 0xFFFF, for now just so there is a message in the logs where in older version #vertices would have been capped. + + // if (nverts < 0 || nindices < 0 || + // nverts > 65536) + // { + // llerrs << "Bad vertex buffer allocation: " << nverts << " : " << nindices << llendl; + // } + + if( nverts < 0 || nindices < 0 ) llerrs << "Bad vertex buffer allocation: " << nverts << " : " << nindices << llendl; - } + + if( nverts > 0xFFFF ) + llinfos << "More vertices than 65535 (#" << nverts << ")" < updateNumVerts(nverts); updateNumIndices(nindices); From fee59e83b81f478a3c7804a5a9f6df724db041f1 Mon Sep 17 00:00:00 2001 From: Siana Gearz Date: Mon, 26 Mar 2012 19:53:04 +0200 Subject: [PATCH 18/22] Fix size estimation --- indra/llimage/llimagej2c.cpp | 30 +++++++++++++++---------- indra/llimagej2coj/llimagej2coj.cpp | 7 ++++++ indra/newview/app_settings/settings.xml | 2 +- 3 files changed, 26 insertions(+), 13 deletions(-) diff --git a/indra/llimage/llimagej2c.cpp b/indra/llimage/llimagej2c.cpp index 8c6fe3386..08d1358e7 100644 --- a/indra/llimage/llimagej2c.cpp +++ b/indra/llimage/llimagej2c.cpp @@ -363,8 +363,7 @@ S32 LLImageJ2C::calcHeaderSizeJ2C() return FIRST_PACKET_SIZE; // Hack. just needs to be >= actual header size... } -//static -S32 LLImageJ2C::calcDataSizeJ2C(S32 w, S32 h, S32 comp, S32 discard_level, F32 rate) +static S32 cald_data_size_help(S32 w, S32 h, S32 comp, S32 discard_level, F32 rate) { if (rate <= 0.f) rate = .125f; while (discard_level > 0) @@ -376,10 +375,25 @@ S32 LLImageJ2C::calcDataSizeJ2C(S32 w, S32 h, S32 comp, S32 discard_level, F32 r discard_level--; } S32 bytes = (S32)((F32)(w*h*comp)*rate); - //bytes = llmax(bytes, calcHeaderSizeJ2C()); return bytes; } + +//static +S32 LLImageJ2C::calcDataSizeJ2C(S32 w, S32 h, S32 comp, S32 discard_level, F32 rate) +{ + static const LLCachedControl exponent("SianaJ2CSizeExponent", 1.0f); + static const LLCachedControl offset("SianaJ2CSizeOffset", 0); + S32 size = cald_data_size_help(w, h, comp, discard_level, rate); + S32 size_d0 = cald_data_size_help(w, h, comp, 0, rate); + + llassert_always(size_d0); + S32 bytes = pow(size/size_d0, exponent)*size_d0 + offset; + bytes = llmax (0, bytes - 600); + bytes = ((bytes + (1000 - 1))/1000)*1000 + 600; + return bytes; +} + S32 LLImageJ2C::calcHeaderSize() { return calcHeaderSizeJ2C(); @@ -392,15 +406,7 @@ S32 LLImageJ2C::calcDataSize(S32 discard_level) static const LLCachedControl legacy_size("SianaLegacyJ2CSize", false); if (legacy_size) { - static const LLCachedControl exponent("SianaJ2CSizeExponent", 1.0f); - static const LLCachedControl offset("SianaJ2CSizeOffset", 0); - - S32 size = calcDataSizeJ2C(getWidth(), getHeight(), getComponents(), discard_level, mRate); - S32 size_d0 = calcDataSizeJ2C(getWidth(), getHeight(), getComponents(), 0, mRate); - llassert_always(size_d0); - S32 bytes = pow(size/size_d0, exponent)*size_d0 + offset; - bytes = llmax(bytes, calcHeaderSizeJ2C()); - return bytes; + return calcDataSizeJ2C(getWidth(), getHeight(), getComponents(), discard_level, mRate); } discard_level = llclamp(discard_level, 0, MAX_DISCARD_LEVEL); diff --git a/indra/llimagej2coj/llimagej2coj.cpp b/indra/llimagej2coj/llimagej2coj.cpp index afcd914f4..d55a3e738 100644 --- a/indra/llimagej2coj/llimagej2coj.cpp +++ b/indra/llimagej2coj/llimagej2coj.cpp @@ -149,7 +149,14 @@ BOOL LLImageJ2COJ::decodeImpl(LLImageJ2C &base, LLImageRaw &raw_image, F32 decod opj_setup_decoder(dinfo, ¶meters); /* open a byte stream */ +#if 0 + std::vector data(base.getData(), base.getData()+base.getDataSize()); + data.push_back((U8)0xFF); + data.push_back((U8)0xD9); + cio = opj_cio_open((opj_common_ptr)dinfo, &data[0], data.size()); +#else cio = opj_cio_open((opj_common_ptr)dinfo, base.getData(), base.getDataSize()); +#endif /* decode the stream and fill the image structure */ image = opj_decode(dinfo, cio); diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml index 2ecbfbb56..f14115db6 100644 --- a/indra/newview/app_settings/settings.xml +++ b/indra/newview/app_settings/settings.xml @@ -287,7 +287,7 @@ Type F32 Value - 0.5 + 1.0 SianaJ2CSizeOffset From ce1607cf17027f008cf8dbc71901cf8f8747eb0c Mon Sep 17 00:00:00 2001 From: Siana Gearz Date: Mon, 26 Mar 2012 22:58:05 +0200 Subject: [PATCH 19/22] Plugging the mesh crash - thanks FS team! --- indra/llrender/llvertexbuffer.cpp | 2 +- indra/newview/llface.cpp | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/indra/llrender/llvertexbuffer.cpp b/indra/llrender/llvertexbuffer.cpp index a3b1b36af..8dd24da14 100644 --- a/indra/llrender/llvertexbuffer.cpp +++ b/indra/llrender/llvertexbuffer.cpp @@ -2004,7 +2004,7 @@ template struct VertexBufferStrider } else { - llerrs << "VertexBufferStrider could not find valid vertex data." << llendl; + llwarns << "VertexBufferStrider could not find valid vertex data." << llendl; } return false; } diff --git a/indra/newview/llface.cpp b/indra/newview/llface.cpp index 868afa04b..803005902 100644 --- a/indra/newview/llface.cpp +++ b/indra/newview/llface.cpp @@ -1740,7 +1740,10 @@ BOOL LLFace::getGeometryVolume(const LLVolume& volume, } } - if (rebuild_color) + // FS-5132 Only use color strider if face has colors. + // if (rebuild_color) + if (rebuild_color && mVertexBuffer->hasDataType(LLVertexBuffer::TYPE_COLOR) ) + // { LLFastTimer t(FTM_FACE_GEOM_COLOR); mVertexBuffer->getColorStrider(colors, mGeomIndex, mGeomCount, map_range); From 3acf6dc00104a02fe5e0c17035645c7cd58f27c9 Mon Sep 17 00:00:00 2001 From: Siana Gearz Date: Tue, 27 Mar 2012 16:23:55 +0200 Subject: [PATCH 20/22] Another stab at making textures work as they should --- indra/llimage/llimagej2c.cpp | 18 +++++++++--------- indra/llimagej2coj/llimagej2coj.cpp | 11 ++++++++--- indra/newview/app_settings/settings.xml | 2 +- 3 files changed, 18 insertions(+), 13 deletions(-) diff --git a/indra/llimage/llimagej2c.cpp b/indra/llimage/llimagej2c.cpp index 08d1358e7..63d06e338 100644 --- a/indra/llimage/llimagej2c.cpp +++ b/indra/llimage/llimagej2c.cpp @@ -382,16 +382,16 @@ static S32 cald_data_size_help(S32 w, S32 h, S32 comp, S32 discard_level, F32 ra //static S32 LLImageJ2C::calcDataSizeJ2C(S32 w, S32 h, S32 comp, S32 discard_level, F32 rate) { - static const LLCachedControl exponent("SianaJ2CSizeExponent", 1.0f); - static const LLCachedControl offset("SianaJ2CSizeOffset", 0); - S32 size = cald_data_size_help(w, h, comp, discard_level, rate); - S32 size_d0 = cald_data_size_help(w, h, comp, 0, rate); + static const LLCachedControl exponent("SianaJ2CSizeExponent", 1.0f); + static const LLCachedControl offset("SianaJ2CSizeOffset", 0); + S32 size = cald_data_size_help(w, h, comp, discard_level, rate); + S32 size_d0 = cald_data_size_help(w, h, comp, 0, rate); - llassert_always(size_d0); - S32 bytes = pow(size/size_d0, exponent)*size_d0 + offset; - bytes = llmax (0, bytes - 600); - bytes = ((bytes + (1000 - 1))/1000)*1000 + 600; - return bytes; + llassert_always(size_d0); + S32 bytes = size_d0*pow((double)size/size_d0, (double)exponent) + offset; + bytes = llmax (0, bytes - 600); + bytes = ((bytes + (1000 - 1))/1000)*1000 + 600; + return bytes; } S32 LLImageJ2C::calcHeaderSize() diff --git a/indra/llimagej2coj/llimagej2coj.cpp b/indra/llimagej2coj/llimagej2coj.cpp index d55a3e738..3f6fb7f2e 100644 --- a/indra/llimagej2coj/llimagej2coj.cpp +++ b/indra/llimagej2coj/llimagej2coj.cpp @@ -149,10 +149,15 @@ BOOL LLImageJ2COJ::decodeImpl(LLImageJ2C &base, LLImageRaw &raw_image, F32 decod opj_setup_decoder(dinfo, ¶meters); /* open a byte stream */ -#if 0 +#if 1 std::vector data(base.getData(), base.getData()+base.getDataSize()); - data.push_back((U8)0xFF); - data.push_back((U8)0xD9); + S32 size = data.size(); + if (data[size-1] == 0xFF) { + data.push_back((U8)0xD9); + } else if (data[size-2] != 0xFF || data[size-1] != 0xD9) { + data.push_back((U8)0xFF); + data.push_back((U8)0xD9); + } cio = opj_cio_open((opj_common_ptr)dinfo, &data[0], data.size()); #else cio = opj_cio_open((opj_common_ptr)dinfo, base.getData(), base.getDataSize()); diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml index f14115db6..040eb0664 100644 --- a/indra/newview/app_settings/settings.xml +++ b/indra/newview/app_settings/settings.xml @@ -298,7 +298,7 @@ Type S32 Value - 100 + 0 SianaLegacyJ2CSize From d86f67f8189a770a5f8d2787d4506f0d4e04bbd9 Mon Sep 17 00:00:00 2001 From: Siana Gearz Date: Wed, 28 Mar 2012 00:26:20 +0200 Subject: [PATCH 21/22] In hindsight, not letting OpenJPEG to error out nicely was a bad idea. --- LICENSES/boost.txt | 23 ----------------------- indra/llimagej2coj/llimagej2coj.cpp | 2 +- 2 files changed, 1 insertion(+), 24 deletions(-) delete mode 100644 LICENSES/boost.txt diff --git a/LICENSES/boost.txt b/LICENSES/boost.txt deleted file mode 100644 index 36b7cd93c..000000000 --- a/LICENSES/boost.txt +++ /dev/null @@ -1,23 +0,0 @@ -Boost Software License - Version 1.0 - August 17th, 2003 - -Permission is hereby granted, free of charge, to any person or organization -obtaining a copy of the software and accompanying documentation covered by -this license (the "Software") to use, reproduce, display, distribute, -execute, and transmit the Software, and to prepare derivative works of the -Software, and to permit third-parties to whom the Software is furnished to -do so, all subject to the following: - -The copyright notices in the Software and this entire statement, including -the above license grant, this restriction and the following disclaimer, -must be included in all copies of the Software, in whole or in part, and -all derivative works of the Software, unless such copies or derivative -works are solely in the form of machine-executable object code generated by -a source language processor. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT -SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE -FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE, -ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. diff --git a/indra/llimagej2coj/llimagej2coj.cpp b/indra/llimagej2coj/llimagej2coj.cpp index 3f6fb7f2e..cde11493f 100644 --- a/indra/llimagej2coj/llimagej2coj.cpp +++ b/indra/llimagej2coj/llimagej2coj.cpp @@ -149,7 +149,7 @@ BOOL LLImageJ2COJ::decodeImpl(LLImageJ2C &base, LLImageRaw &raw_image, F32 decod opj_setup_decoder(dinfo, ¶meters); /* open a byte stream */ -#if 1 +#if 0 std::vector data(base.getData(), base.getData()+base.getDataSize()); S32 size = data.size(); if (data[size-1] == 0xFF) { From be9f3178c0e0075622cb514d74cc8b39da3e4fa4 Mon Sep 17 00:00:00 2001 From: Siana Gearz Date: Wed, 28 Mar 2012 00:58:32 +0200 Subject: [PATCH 22/22] Fixies, missed files --- indra/cmake/00-Common.cmake | 6 +- indra/llrender/llgl.cpp | 7 +- .../class1/deferred/avatarAlphaNoColorV.glsl | 148 ++++++++++++++++++ .../shaders/class1/deferred/avatarEyesV.glsl | 48 ++++++ .../class1/deferred/postDeferredNoTCV.glsl | 40 +++++ .../class1/deferred/sunLightNoFragCoordV.glsl | 37 +++++ indra/newview/gpu_table.txt | 1 + 7 files changed, 279 insertions(+), 8 deletions(-) create mode 100644 indra/newview/app_settings/shaders/class1/deferred/avatarAlphaNoColorV.glsl create mode 100644 indra/newview/app_settings/shaders/class1/deferred/avatarEyesV.glsl create mode 100644 indra/newview/app_settings/shaders/class1/deferred/postDeferredNoTCV.glsl create mode 100644 indra/newview/app_settings/shaders/class1/deferred/sunLightNoFragCoordV.glsl diff --git a/indra/cmake/00-Common.cmake b/indra/cmake/00-Common.cmake index 6fed90939..7ce670a36 100644 --- a/indra/cmake/00-Common.cmake +++ b/indra/cmake/00-Common.cmake @@ -234,11 +234,11 @@ if (DARWIN) # NOTE: it's critical that the optimization flag is put in front. # NOTE: it's critical to have both CXX_FLAGS and C_FLAGS covered. set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} -O3 -msse3 -mtune=generic -mfpmath=sse ${GCC_EXTRA_OPTIMIZATIONS}") - set(CMAKE_C_FLAGS_RELWITHDEBINFO "${CMAKE_C_FLAGS_RELWITHDEBINFO} -03 -msse3 -mtune=generic -mfpmath=sse ${GCC_EXTRA_OPTIMIZATIONS}") + set(CMAKE_C_FLAGS_RELWITHDEBINFO "${CMAKE_C_FLAGS_RELWITHDEBINFO} -O3 -msse3 -mtune=generic -mfpmath=sse ${GCC_EXTRA_OPTIMIZATIONS}") set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -O3 -msse3 -mtune=generic -mfpmath=sse ${GCC_EXTRA_OPTIMIZATIONS}") - set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -03 -msse3 -mtune=generic -mfpmath=sse ${GCC_EXTRA_OPTIMIZATIONS}") + set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -O3 -msse3 -mtune=generic -mfpmath=sse ${GCC_EXTRA_OPTIMIZATIONS}") set(CMAKE_CXX_FLAGS_RELEASESSE2 "${CMAKE_CXX_FLAGS_RELEASESSE2} -O3 -msse2 -mtune=generic -mfpmath=sse ${GCC_EXTRA_OPTIMIZATIONS}") - set(CMAKE_C_FLAGS_RELEASESSE2 "${CMAKE_C_FLAGS_RELEASESSE2} -03 -msse2 -mtune=generic -mfpmath=sse ${GCC_EXTRA_OPTIMIZATIONS}") + set(CMAKE_C_FLAGS_RELEASESSE2 "${CMAKE_C_FLAGS_RELEASESSE2} -O3 -msse2 -mtune=generic -mfpmath=sse ${GCC_EXTRA_OPTIMIZATIONS}") endif (DARWIN) diff --git a/indra/llrender/llgl.cpp b/indra/llrender/llgl.cpp index b36202705..485ab205f 100644 --- a/indra/llrender/llgl.cpp +++ b/indra/llrender/llgl.cpp @@ -620,11 +620,8 @@ bool LLGLManager::initGL() #endif // LL_WINDOWS #if (LL_WINDOWS || LL_LINUX) && !LL_MESA_HEADLESS - // release 7277 is a point at which we verify that ATI OpenGL - // drivers get pretty stable with SL, ~Catalyst 8.2, - // for both Win32 and Linux. - if (mDriverVersionRelease < 7277 && - mDriverVersionRelease != 0) // 0 == Undetectable driver version - these get to pretend to be new ATI drivers, though that decision may be revisited. + // count any pre OpenGL 3.0 implementation as an old driver + if (mGLVersion < 3.f) { mATIOldDriver = TRUE; } diff --git a/indra/newview/app_settings/shaders/class1/deferred/avatarAlphaNoColorV.glsl b/indra/newview/app_settings/shaders/class1/deferred/avatarAlphaNoColorV.glsl new file mode 100644 index 000000000..5f395801e --- /dev/null +++ b/indra/newview/app_settings/shaders/class1/deferred/avatarAlphaNoColorV.glsl @@ -0,0 +1,148 @@ +/** + * @file avatarAlphaNoColorV.glsl + * + * $LicenseInfo:firstyear=2007&license=viewerlgpl$ + * Second Life Viewer Source Code + * Copyright (C) 2007, Linden Research, Inc. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; + * version 2.1 of the License only. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA + * $/LicenseInfo$ + */ + +uniform mat4 projection_matrix; + +ATTRIBUTE vec3 position; +ATTRIBUTE vec3 normal; +ATTRIBUTE vec2 texcoord0; + +vec4 calcLighting(vec3 pos, vec3 norm, vec4 color, vec4 baseCol); +mat4 getSkinnedTransform(); +void calcAtmospherics(vec3 inPositionEye); + +float calcDirectionalLight(vec3 n, vec3 l); +float calcPointLightOrSpotLight(vec3 v, vec3 n, vec4 lp, vec3 ln, float la, float is_pointlight); + +vec3 atmosAmbient(vec3 light); +vec3 atmosAffectDirectionalLight(float lightIntensity); +vec3 scaleDownLight(vec3 light); +vec3 scaleUpLight(vec3 light); + +VARYING vec3 vary_position; +VARYING vec3 vary_ambient; +VARYING vec3 vary_directional; +VARYING vec3 vary_fragcoord; +VARYING vec3 vary_pointlight_col; +VARYING vec2 vary_texcoord0; + + +uniform float near_clip; + +uniform vec4 color; + +uniform vec4 light_position[8]; +uniform vec3 light_direction[8]; +uniform vec3 light_attenuation[8]; +uniform vec3 light_diffuse[8]; + +float calcDirectionalLight(vec3 n, vec3 l) +{ + float a = max(dot(n,l),0.0); + return a; +} + +float calcPointLightOrSpotLight(vec3 v, vec3 n, vec4 lp, vec3 ln, float la, float fa, float is_pointlight) +{ + //get light vector + vec3 lv = lp.xyz-v; + + //get distance + float d = dot(lv,lv); + + float da = 0.0; + + if (d > 0.0 && la > 0.0 && fa > 0.0) + { + //normalize light vector + lv = normalize(lv); + + //distance attenuation + float dist2 = d/la; + da = clamp(1.0-(dist2-1.0*(1.0-fa))/fa, 0.0, 1.0); + + // spotlight coefficient. + float spot = max(dot(-ln, lv), is_pointlight); + da *= spot*spot; // GL_SPOT_EXPONENT=2 + + //angular attenuation + da *= max(dot(n, lv), 0.0); + } + + return da; +} + +void main() +{ + vary_texcoord0 = texcoord0; + + vec4 pos; + vec3 norm; + + mat4 trans = getSkinnedTransform(); + vec4 pos_in = vec4(position.xyz, 1.0); + pos.x = dot(trans[0], pos_in); + pos.y = dot(trans[1], pos_in); + pos.z = dot(trans[2], pos_in); + pos.w = 1.0; + + norm.x = dot(trans[0].xyz, normal); + norm.y = dot(trans[1].xyz, normal); + norm.z = dot(trans[2].xyz, normal); + norm = normalize(norm); + + vec4 frag_pos = projection_matrix * pos; + gl_Position = frag_pos; + + vary_position = pos.xyz; + + calcAtmospherics(pos.xyz); + + vec4 col = vec4(0.0, 0.0, 0.0, 1.0); + + // Collect normal lights + col.rgb += light_diffuse[2].rgb*calcPointLightOrSpotLight(pos.xyz, norm, light_position[2], light_direction[2], light_attenuation[2].x, light_attenuation[2].y, light_attenuation[2].z); + col.rgb += light_diffuse[3].rgb*calcPointLightOrSpotLight(pos.xyz, norm, light_position[3], light_direction[3], light_attenuation[3].x, light_attenuation[3].y, light_attenuation[3].z); + col.rgb += light_diffuse[4].rgb*calcPointLightOrSpotLight(pos.xyz, norm, light_position[4], light_direction[4], light_attenuation[4].x, light_attenuation[4].y, light_attenuation[4].z); + col.rgb += light_diffuse[5].rgb*calcPointLightOrSpotLight(pos.xyz, norm, light_position[5], light_direction[5], light_attenuation[5].x, light_attenuation[5].y, light_attenuation[5].z); + col.rgb += light_diffuse[6].rgb*calcPointLightOrSpotLight(pos.xyz, norm, light_position[6], light_direction[6], light_attenuation[6].x, light_attenuation[6].y, light_attenuation[6].z); + col.rgb += light_diffuse[7].rgb*calcPointLightOrSpotLight(pos.xyz, norm, light_position[7], light_direction[7], light_attenuation[7].x, light_attenuation[7].y, light_attenuation[7].z); + + vary_pointlight_col = col.rgb*color.rgb; + + col.rgb = vec3(0,0,0); + + // Add windlight lights + col.rgb = atmosAmbient(vec3(0.)); + + vary_ambient = col.rgb*color.rgb; + vary_directional = color.rgb*atmosAffectDirectionalLight(max(calcDirectionalLight(norm, light_position[0].xyz), 0.0)); + + col.rgb = col.rgb * color.rgb; + + vary_fragcoord.xyz = frag_pos.xyz + vec3(0,0,near_clip); +} + + diff --git a/indra/newview/app_settings/shaders/class1/deferred/avatarEyesV.glsl b/indra/newview/app_settings/shaders/class1/deferred/avatarEyesV.glsl new file mode 100644 index 000000000..01ffb862f --- /dev/null +++ b/indra/newview/app_settings/shaders/class1/deferred/avatarEyesV.glsl @@ -0,0 +1,48 @@ +/** + * @file avatarEyesV.glsl + * + * $LicenseInfo:firstyear=2007&license=viewerlgpl$ + * Second Life Viewer Source Code + * Copyright (C) 2007, Linden Research, Inc. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; + * version 2.1 of the License only. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA + * $/LicenseInfo$ + */ + +uniform mat3 normal_matrix; +uniform mat4 texture_matrix0; +uniform mat4 modelview_projection_matrix; + +ATTRIBUTE vec3 position; +ATTRIBUTE vec3 normal; +ATTRIBUTE vec4 diffuse_color; +ATTRIBUTE vec2 texcoord0; + +VARYING vec3 vary_normal; +VARYING vec4 vertex_color; +VARYING vec2 vary_texcoord0; + +void main() +{ + //transform vertex + gl_Position = modelview_projection_matrix * vec4(position.xyz, 1.0); + vary_texcoord0 = (texture_matrix0 * vec4(texcoord0,0,1)).xy; + + vary_normal = normalize(normal_matrix * normal); + + vertex_color = diffuse_color; +} diff --git a/indra/newview/app_settings/shaders/class1/deferred/postDeferredNoTCV.glsl b/indra/newview/app_settings/shaders/class1/deferred/postDeferredNoTCV.glsl new file mode 100644 index 000000000..bd0cb5046 --- /dev/null +++ b/indra/newview/app_settings/shaders/class1/deferred/postDeferredNoTCV.glsl @@ -0,0 +1,40 @@ +/** + * @file postDeferredV.glsl + * + * $LicenseInfo:firstyear=2007&license=viewerlgpl$ + * Second Life Viewer Source Code + * Copyright (C) 2007, Linden Research, Inc. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; + * version 2.1 of the License only. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA + * $/LicenseInfo$ + */ + +uniform mat4 modelview_projection_matrix; + +ATTRIBUTE vec3 position; + +VARYING vec2 vary_fragcoord; + +uniform vec2 screen_res; + +void main() +{ + //transform vertex + vec4 pos = modelview_projection_matrix * vec4(position.xyz, 1.0); + gl_Position = pos; + vary_fragcoord = (pos.xy*0.5+0.5)*screen_res; +} diff --git a/indra/newview/app_settings/shaders/class1/deferred/sunLightNoFragCoordV.glsl b/indra/newview/app_settings/shaders/class1/deferred/sunLightNoFragCoordV.glsl new file mode 100644 index 000000000..47e9d15fb --- /dev/null +++ b/indra/newview/app_settings/shaders/class1/deferred/sunLightNoFragCoordV.glsl @@ -0,0 +1,37 @@ +/** + * @file sunLightF.glsl + * + * $LicenseInfo:firstyear=2007&license=viewerlgpl$ + * Second Life Viewer Source Code + * Copyright (C) 2007, Linden Research, Inc. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; + * version 2.1 of the License only. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + * Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA + * $/LicenseInfo$ + */ + +uniform mat4 modelview_projection_matrix; + +ATTRIBUTE vec3 position; + +uniform vec2 screen_res; + +void main() +{ + //transform vertex + vec4 pos = modelview_projection_matrix * vec4(position.xyz, 1.0); + gl_Position = pos; +} diff --git a/indra/newview/gpu_table.txt b/indra/newview/gpu_table.txt index 06d890209..afb812699 100644 --- a/indra/newview/gpu_table.txt +++ b/indra/newview/gpu_table.txt @@ -223,6 +223,7 @@ ATI Radeon X800 .*ATI.*Radeon ?X8.* 2 1 ATI Radeon X900 .*ATI.*Radeon ?X9.* 2 1 ATI Radeon Xpress .*ATI.*Radeon Xpress.* 0 1 ATI Rage 128 .*ATI.*Rage 128.* 0 1 +ATI R300 (9700) .*R300.* 1 1 ATI R350 (9800) .*R350.* 1 1 ATI R580 (X1900) .*R580.* 3 1 ATI RC410 (Xpress 200) .*RC410.* 0 0

  2. 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 fO+JwLU>pDDuGX};bLRT diff --git a/indra/newview/character/avatar_head_2.llm b/indra/newview/character/avatar_head_2.llm index c2b808b1a61282d52106684cd566dcb86988795a..af21c324636da1e78b98b6a305ada543ceb257ac 100644 GIT binary patch literal 3605 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 TJUU`PO6tUMY5eQ>KY#uU!;np4 diff --git a/indra/newview/character/avatar_head_3.llm b/indra/newview/character/avatar_head_3.llm index a0676b1f1ce64686913cb67701412054349b2089..0244666a0caa6f445f960ca336d4f409d2622766 100644 GIT binary patch literal 1727 zcmYk7`BT(&7{}ia=fZLya^IE*f}oWVkYhiPnDjq1lQUq74oV^&lwE4#LCs=1qcd8X zN;qD~Skxq;Vs=R;m`j#qGF=pr3aP!myZz8U^FE&E^E{ttm)ZTYu%`COMYY+F)YLvv zw>rCO(TeKq;=&@yPZi}{7wJ6tGw8zJr(altDf)sk9 zK?+?d_NH2KExO-+#kFc1?nkgqOXblDuvATOlZ;oB3g80k(1+^4J9-R6+A-x@q&Y6% zcHnnvhjyZSln3%H&vMaR)B}6iG!8uQHZ;$iP5E#h^DEh#&s{5ZoUI*-vg2&)U{jPu zvFQ!f^L{>Je-p02>UjtCbUPFEO0#io=hkt>+jcm?;w^!iM^$(aT7mO$bA^WRW<%g( zeXp;{hu{jWWA+!h>3bNQW^N5!r8U3}yETt+D;>DtFyNw+&ZLW4DB7q}HkaFJ?b1wZ z)PuH8?^EyeajA9UN^LiITe}qsm)c>};Zph!bHfaqftzU?a1OtPZiP1x?b-^`$ydSc zszV)4v{m38vLf5X9gUi8Mch({wgbN=;WsMDHZtSf7LJ>3Np#j}8S~5NpKO!K8ub^h zQD33XZKJq9z^Eb>rEDTf(Qq`M?NQ*@M*Jwr>86+{S^p;V3V)lS8k0?+^j z!huwslR%Zj<(jXBpj<(AN--8=!4?EY$k&4rt*5KdTvmvGMlK(Z=tW{g_t|{loHx_g ztTA}ZH#w#ObU>$koXy?+c)!M2zoxS(#-`gDozX4!-qLkAnA&xHp2J$SHHd_`W0bo^_e~gYxNp!6;|r*BGE5ZH^BY;QUDHqGKkFKN1sztK4(MGihuicN+NMo;HKn% zR6H6-7O#hFPzQ-YDhI(ox&s33C>m&)c1K5*X->6^y5qVOYh8-7Sc|i}_`5m+AK^6C zKHxOd`qZOu3CERyOgpa(yQE%SLQ{RNSGSdFJ>WLo0aW|o9`)%EdI&ACFth}OnU{C= z0C@njsZ_l5bOSFpI<8w+aXFk`)p?)Gu(Rwtt4Y>Nty_N+-Fl4Z*5kkn7XdHqsq4#iE_N<=M^WYr(iIVN4 zPQvHFr_@4umbih;ZF_P2)NG6P@&wu9{9obe;yh7A$25LJ6Pjw%;0fJpQ_+3s1iz_$ a+K+eH9NQ1OtPD2?u2z{XR<#zRF8ddXSAiJ- literal 1797 zcmb7_YfzMB7>4f;a3M9Z$gHSo3o}ncP_`YIG)+nhs)3}LoXJC=3l0k`OodG$nO1fn z6Rf2Jc3|wVMU;tTSfr2%DhgSOr-TYAs4Q1Z#jf{TfA}|^xv%?v56}DV!tO_MmM0_A zTreqelo$;}8lBM9!@F{1)*|uo16x0Z7hjwbCc4(LOC{1^(7tOVqj3+bN zh`Qh&)CIeAFFU)KmGwR;P3fe!P`bt{Ro9@gN`MJ!p%T;&`{mU_6!d)ZkIGj7niS9j zXeOMA&s84^z+U^c^l?@%N>d|Bh3R;oeNzDTu{RD6a8{fOxXr8GxR=T&?S}U#o>%f1 z_a~70(Lxkwcf{)#&b*&f8?_&A)B*eeo~i~sm2#3&IoYXIs0Fs@alN6JNUNYziS)du zA?&*pEv9c0Y=8~SPC}PcL$nS>z;jRpGwbM#U@jbY$zknRgtb@?>R(2oR-ztZzR;$_ zDkM3qS!lLq@t2!T^5BLJ%Owvz$0!%w({aNY_HGwD=>^=JR!#Z{RqI?0)0fmR zMZ!ql+Z8D2E^;-yFTo?(F&x(EVuev6)oHE#e6-h+EQR193WcG}nw3yR!)RTpuTiwN z>q&J`t)x~~w(EA}hkhMb8}jQ0+|aLED8EkAc^W^iB=#k#2G-b}H7du;In(erybJ}s zgM8G!>!_ZhHjy{!UHk41{5kG7+<fSFY9$x;fBj`vrTSKlcr{+duGP@3 z`O44)=+@P^TX*RWO`#@|Ch7=0f?rSlNt%y>K88F_W9S)YrwO`BK2<0N#%Kf;qt8(- zyb#su3%pjB;f5pe3(!bLF^t#H7e!YTem4{;x9Kpi^~c0BD7~x&QzG diff --git a/indra/newview/character/avatar_head_4.llm b/indra/newview/character/avatar_head_4.llm index 5035585770bfff0018608d552ea8f9e660c24fbb..e8f6832d3b7eb90404c3a441dcdbbd969f895312 100644 GIT binary patch literal 1169 zcmYk3+cTA69EDd(DMA#t{(^@4BwZ*o^+z<585C)g!|p&jQIu4aQ;1ZA6q`gk*r{|v z2ePS14jpzRw>{stU9{J%XRY`9e((E!GkaT1{LZNOpv^JyJ1l8I+oKYrgF@B^OH1VX z`Gzl+|05$za=BHY5(vv3l`yct8hr z2=~Haz0)T&qbW2@o6=iy0UA$!(q=S4o6tA7pi#Zo7d)z!3YQ1+)C%muDw8xAL1yX+ z837A$F)UW0$s)2)Mf!?<&^(#isC?cT&o9vOVV=%oW0j|?`m6zsqXA~ev5jdPS)g>Y z$B}WY5}8jVlgyUS&LmyNt}LUKsS}l{SuLc&W}QPenvGLhP`dV^blrzZOtp}m+-uVV z{;m)$L&hH$f}Pk6F2!z|*LCfMZDbpH5;(S{x`Z`DqRIQZRDR{GdOx{$#&y zX$U*uBkX_<=Khkw8iPg~<4qqPQzJV{P^s>y0~)PEU3dg`!3H$K84b9UlS>z~k>1b# zk0$%oZMGq@o0Fd+UCP>vXBPLmBD)p%upq* xQWfU?Rx*dLsL(~2gX(E1xSr`0lhvd}dsK}r?D|7m^@g;fIofYL$9?te{|8odQ0@Q# literal 1239 zcmb7^>o-(k9EEpEDMFM>x=bmhG_Fk-BBCf%6cHli+F&M$R7j;8x{#qFxpbLGzVzqy zoHIW7n!Wb3_j}Ioec!XztR=U>UQ=tgWHi{T9G#ZDT4%i_-Wn&Zk>@WkeWk39o;1nh zze-nGy}cELy31zpVj zA;UBYjW)@fK|HBuc3eXxYE>sRTBo}4IP8W^Xq+>ea0w@utYkBNi2WZ-4yo5{qhv29 zKS9PFgL+E4$9dP(!rpFWsYBo39WqNd$Sm1NJGMcauA)4e9agK7tj3kR?_l~aPJj(K zL7U~TUC3VnFo3i6U{BiUi=5}LK%Q)86`)3)SDCD&!7`=r-U?GxL90-?dB2U!<}1o| z1!kj0S|V;_I?-emY1Ls>VJo|SlQz93ZD^793omkCBm1Q+dyOTp#nD>tT>U@i|N1|k CA=XU* diff --git a/indra/newview/character/avatar_lad.xml b/indra/newview/character/avatar_lad.xml old mode 100755 new mode 100644 diff --git a/indra/newview/character/avatar_lower_body.llm b/indra/newview/character/avatar_lower_body.llm index 04208997399f46846dd4054c4890127155dbf070..d7fb1f9f5c249bfc3916117718c045a54bc6346d 100644 GIT binary patch delta 63196 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 delta 62948 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 diff --git a/indra/newview/character/avatar_lower_body_1.llm b/indra/newview/character/avatar_lower_body_1.llm index 1394eb848b3995d333906f293b870bd3b3310cc6..5ce0a486c373bbc52f921f6dfa584d8c598d48cb 100644 GIT binary patch literal 7013 zcmYkBcU)Chx`w~CmN86%z1yoQG#9puyMC^!km7K89`7AXTiqRU6m_|Cp=Z zsx{tP{f7IkRWntOH)B-qtgV-u_)Si7Q?A0RobFR}Rj%<2PQuS{%WLAInyAm9C+@-y zv)I8K`m%#JY=--)3{|8yQ$=bcHHS0@_oUoOo~(3NEs+a!QP-qeTEc7WSWR7(Gw3F~ z$qCQMM*2jvKAM#UPOk#G^g`~im(!~i-jb@8R;sybg;%q(xjG{)7`MRdr72#IH&aci zW~w*xg}q@8ngw%UHm@riAMB(-crhKDv%_E&z_o0cs8->L)IgHmp*!+{O<@aq`jC37 zEIbF=l%p0>Ijl>?ZJ$-7RVoDzgsW5_v?)-PqOowDTIsA>$@-Oa&q6+M46{nrPH59k zI>f>;%uQuYs!DLU6W^)QU>Y6^W7SqQ1HJSJ6`|4@rSpz$r83kTREG23ts|`?6;LZl zymuOv0cd(mwxowqX2?v{Xis;>N9L_?dR)g&sKcW)wYSw!zqcm|bDN>{VtVwlcJ z7Q-MI0VC8FH62B$-^zdSm-m?*mEVf1I_e}>x_4Es?B&W|V-w{itL0UhC|>YYayGSE z^3WQGUbvTJI-H2RqlvOml4L%dFC%0DK0@ZOH~l|x#{PNO)-LO4oBl9FIQ?u?gll$|{U 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 literal 7083 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 diff --git a/indra/newview/character/avatar_lower_body_2.llm b/indra/newview/character/avatar_lower_body_2.llm index 0da9c1249ea4bd0cd6fcf29d21e1dc151c5ec100..3056feae640a3ebc986c000010f9890539381640 100644 GIT binary patch literal 4037 zcmYk8d306P6~_13hgmQXAOVyRrZAKQ0wf`i5O@g*^GpB*LC63hAz>&yoR{xP!QzvR@&fL-QFh8{^vL(i8j?@;ib_36g?pjkf_I@(r4#A{`=UP7 zdeVA{^|%F3L0jM!X04G1qz1ST`XrY9eHu&oc(+TDkI{ztZKa=dfE~QKeetm}PU3W| zG{zfqWvPLrfp`ztgVpZJu`OMF*|#y}PLPPZeG_4!xaG7S1GU%GBNic)1#iTeiT1InbcmC1R znQG3}Sm^#0&1H;qyl3f|Jd&qzmSpnP;leIj&r)#H(3xl=La?cn!Zsuj{{N z%3(SE?&G#^lv?DYY1*d-qJMcrVO#LyEd0U3@Wy}gR@aCUHv!joY*jKRa8OJQ_{ zv5VU;Oh!@N*snV?N5Q^$ckPOI*Adbcb?5#lR*qomaEWJLB=qAh`6G-bj7m_VhG61ba2g|I3OHKNj`33?nhfsb*&5i6UK)1`w6HRt58 zoRd&<7@Z=Yl0B#dmhi6kpb}ZhDT?7Ld?lv}ket4dHS;$n2q{<+6gb zg5A>T-y|==mzcQ+9%fPr6N*p?{VoOZB3X?WQKh6(SqoP~H#vweM=Q8rL{}*~CC@W| zg>1)H@NB!sU3jVN;(8bUGF8gTm(d@oQ}R3X8VohBky^q~(~`FlLk%Ovm^9CS%c>4s zg_!(m@tet`;pbl^X>_~OsJ$FP^lzZc6@WZ@?Galc@ zH_6*vzYaG^rWwNy=}gLGLMA@lOVhb>)AG5ll6=xYGnTbucskHzp-l4(o=Ht7O*ex* zj>4zYH42UN*dEU}?@4>}uDr*jeCEANRdJFx@H3p_4Ucc)Z^|L~2l>6cMI9j>!5f(; z%@H^acX^r_VfORAQz84&pQ#G@6IJ1LRY)YO-trh}o}#94Jq^#H{9gAod^l75rW5zv znn==2Gv8YiLF!~8$Psuold9#BS4g!~N`x6_;>|=f8%~6N=r?mHKV7MK4zp6dJl_l@ z$H6$fubGSHQ?aD^>=cVS!_IgFj4)@}p;FFLm9kIfnDO2oQ<>e_WU#V7$}s)#4ATP7 zFt11pj~T3ZRbG+K%y`w~0sNpGVAetO8|tj=rq0T7Y6s~Ubm^F^Lwn&mSdX1g$~)); zJRwItmgD8}7kCubz#8tq1Iu6;eaG;<=otO`;Bk1I-70x=`_M^v60e|6kWRx2SdO3O ztF@fk$m}&}BVV5`)xa%$oz}n_ybNvjb}PeE+0Sva_Z8a*-(pwWwRWrB0$+q%?K*s` zeZj7>JE>K+1g(W7un4V&Mex_uYWpku3!W6&`+7@1<+r-Ay+yiDYR7NueQgNa+1<8* zU1QhV<#ridgD-~O*Z{?;_(d8!xcgJlTyq?!Y&}-8}z_)em8w&11$xT?X@P zfVu9@w;Diswhd)T->4;h4ZqO>CM;yqLS`?tSuh(K6b@UWa2U?&Rw&%IV#3#&16$b~ zW?37AIqdbV2JHqsXt%=+a2ftQ+z!{{K{__rT`0%?(r#ntZFVKx0T?JqTKh^5?IC8*D=yU be2LcLF4yusSIc*w`{Jvmqn34!OYr{zvTk3F literal 4107 zcmbW3XLyxW7KPUWkp!h95I_h5p-7M}5JHtEB$Uvk8JaW=7(|Fbh|)w_gwPEHLAoF! zh#(*bf*8esCD_Je2Td_3XPH)%k-s{~u$=IyDeuM0m9wR%ZectD- z%-{`BA2%Oepw(WeT(5+y zy+{kS(o4~meol+D6fX5LzlbhFH|j+qk9?E!B5sp&l*0|yX&sD4qx}*i+Q)Sqe?li< zxZ^Q&sh7}Y3A)nx(ZH2n4OhDs{gy>;yqP^=SGeycE%6$3iC1e4%+=}$mr(P9a+M#g zg)>nLSJn2tL{(VTCEY;xMp)7hs3&nt+o~e2suPq?x2dl4DFKR1=%@M={+%cXD-h*y z@wj-EcVK^)_kBcv*xwcDcDwHL?Pyh4)zL&P7|oq>`E0pl;h!v@?$+I|2CGH-R=~G& zd(VM|)ShVP{K~ItxN5jB;g{?VS>WANRp8u0_;7$M?F5nRQ;piF4Su4sFlADnvNF3e4lX4&Qg4*RcONtwFP?&Zc&e7Eqf_?J6&z zc7fY6+C}c))}QDTmE;q&b4fl!e*6Ren7Od0fIen-0ek^8TLn~ARbV!nt$W}sm<_Wz z@mVySn}^HuBKU7DB3p&#p)0it&CyCd;~D;0)BFtlSz|rT>3Z4|J)L-(EVyy3PiMz8 z+`p)Z5Pe27m?e}6GwG1&G&q(>b8j@TFWQ$5fql?E8bhZ6u#bAPua_RD>o_=0lNsYQ z-IIxQrNeNCG3=fgsrd;F{wGcHB$$e(YO1HgUzCLg{-Uv(1P?4+;k>& zQ$3T&f?2GMrSb`CrZ_Maeachl_Y^k^b5qb>-17-W8oM)zH2+gs3O%zpDV-Zl@*Fg9 z5`E_ovx!;ox@M!-!;SQ`u2VNjbC@5`{B`ANo|ZG_X@wT^FFsw0AJDU0i zET_#%1YVhAc*< zT*jr?5f9^Cny3v+sWz?@vv;`?5$}pac^WM>;n^ z>l00wFG}?lqK9j!7&En016Eh92y3HPRGaGBXp)nt=mC4UshZ*%5%tuF&s+~T7^cEh z4`U41U^rAk>#LrUG>nyg8m7_e5Bq7jhv7zfxB~}~4-)&yhq9Md|9~dx2S$>QRkh zr28R_C(`|>$Fnz`9gh+N6*x)*HJbgSs2r)l&Ke27RcCe3x46ml>wxdajhdjnxlNM@ zo1@Lu3Er>9YQgvh_YFG852AxS0u6qIN2slOI>l|3;x=jnTd5TcRVhwpR|^FuYotd~ z7ivd(0^{LG^$7G4jnKmy!d%#sjC;%(kv(1Xn1{HFCJ;kBfVBbSK~rE~W*<{e{YZ@S zkLWnM{YbCJ{Wxxd2jeEtYjDJ8c!)Bbq9IB_yXi?HgVnCM49@JzX+z;qd>7b7eTcs9 z!|3ZodZk6qc!b_VeNA1}gSe*d=ruj;?(jY|@ESYnqC=^z8(}-uRY$d>XUEW&(Z_XE z2j7)(FD@Adm+YEEf@(4ncyCNpcef_G!EXLefmijNuBsQ=cW@v&kk!`kEBF<4$>a(6 zWNw}ayP{nqpJV`TfV;!)JjE17H?p2E1zx3lPu^v((!Zp8xgz~bx_`tCg#CFh9S8@a zUnyRlI57d&$#uDNU?+#S*mCHdKBo&RhF;J+u$cdZ7V}?pT5tPppVkMs3-AMYmN*B` z!lEup?K?Wd%2^%IF1@Nl{G#r{9l#yqxAlNtfyaEoJA7V$)(O7{&!Z>Eqlg`jV(jqi zxIz)Wg%%>a}u3hC8fnxI^%; z3e)E#olesGq%Z0%^r8w8hdJ?0;xIhS?gPYOAE3h_or4E_j$Ye*2A<=rqdMdFIq8f` zkiD-GoPONz>OI`Me7^TsKgaxe;+)@BaZWDov+xu==_14}y{IB|zo?6xd6=35tQGNj z+nTEIl2G`yi1 zyo=1x>D;QeL;?_e8nD|icg!3EIZ j3-CTyAo8}i3oS@&P#_hO+NBMPO&Xg%Zsd59|MTxZEfkOh diff --git a/indra/newview/character/avatar_lower_body_3.llm b/indra/newview/character/avatar_lower_body_3.llm index f3c49a1568d76ff16c454ff0b1fa4fafccd3b74a..0f36688896262d094049ad8bfdccdf9d7d41608e 100644 GIT binary patch literal 2045 zcmYk4YfzO{6o%JYJ2gzrZfGfR&_tM#CXkz28eo{99S*lFyO~Fme&9^aFw>01u|N^f z%(Tm2wL3zY$j$suhEth#QxOr(C@oV_E9v<@`q5eQKJUBtxA)rL6;b<6A-=AO1?KFh4!<})g1|1b6zb(}N+ufQwzCDl#p#)DLue?rho z*iq)Q#8Sv9beV-xsF5ZX^g!qIj8_W1-<)uk`%Nhc+kWxA&FaQE8$hU3a{BU=sm|3TwIWpPN%7K z9U)U?1Re`xCB`4cORKcVJ5-A_Qrk$|@by%q+<*)UY=n){4%=ml)S_XJlRG7jaTM+` z36J9FB$#dvjb}7f#*@6yZ*n(1rpON2E~UC%W@@R<)HIl;DKHiddyB+s6Zh4`xh=9A zHoPIEvXSG)fx$)W8~VU4wkg zTq4&-)9of!jw9WOkCrjeOJnFWMs9%qdDIejT@(JE45xi60gAo{!x2TBJNtV^&Sr(B1=Vn;|Pb4McYv3C0xeC_v z3{^hsWhYP5;B%+EPsd%HuuIzD9DP_9Qz4zB^H7K?AQj;8C=SNMPVOa6cXDzked=*9 z*KoL+v zcoaXz++orY{HXo_kLXW&N>8Js@H9NeoBN!%x!J9CHExUB4A;XgZi9Qt)uS3%53A5x zSOs6F*1A{S%Ur2)7wl&{V};gbt5BgGqo`qI@b$mkc`QqimRs&!kdqBBw>mL@Jtp_-Z$3VfU;3X+xBf zhOEM=t8ig>k(n?xXcwtLyJYKJrQ7P(xmvsu4q2_MhMQ2e+r&OENAL<5MjPR3w9&nW zd#uCj=((B>gXX15cZuGW?lSjr86U#Eb1GTaz@9g#jr4j2kGM11t6ln)p7GhGKjL4* zL)xZ2RGYTKR_&)+S=$RsSkntjbT(1uC!Z4#VEUkngln#|)lC2_`7A@w8OO%zR)R2+|q^4O(B$hH@NLjX+ zL7JLbSsA9~t}SA@kYQq)O0pQ>UZ$4!_tB4j$9p~Z^PKa&=RGsuTo?Vavi+Iav3;_# zGe%E{^<|D38JpO(n`G4b7vB5d@L$XCCAF%rsnACXF(1Qk&=)o<@Cq%0i|_?-flBoc zUP?_PO~YTp-(&AXyKlDMVef6twppqmGmBLa^FPW)Ixo!kH$bc=3A4X{B?C+`%x3TOr%kkiZ{In5l+f$Oy%ZqNp3eUEjx(*#I`OxlBj zVKCkacG9Kx>KEOvRCT3Nl|*$Rb-^#ElGGNpfr3deN%gQ^yOn@iy|XS>XVxy<;%~T1 zLAZ;XgU~r}4=m)YVbZVoZgtaDI*JCuff@t{DGl~Rt)5Cw=5r-;Z>oC3WLS^)=55xa z1ejpISr;C|+jT(~UWlBq5SDPRi8HC(d6ZwINhwqlyUFTL>W}xMGDsPC8cfpw4aNtc z!Fq^ODe6O|=q6pS>+lpEBpt*@P}Y5U`4Q4Eg)2gl zipL{$8I0Ezcsz9_sg~VnR4WH`up5RPsKf>U zUfoK0)q|h92QK5)F7B1th1Zg5@i-XAXAXl0_zqz<4=9muQ)e?#*D|puH}upU@LoNp zQB(`*0n|cek+Se+_SVe1}ouaj$90j8kYjZMw5t^)1 zxW&`>DQ2Fg$~jvg4{0AP;Dm>?pAL_G&Pu1ri|Kq ztPUs&c7Pq_F>AF|OSMv=Ce*mhQrwNZ%~rY0Dzug7Yqg46tJT`3Dn*)Y+KyMjP_tc| zVGY`>8o8NLqe|RuDmhuHozTOSooZ)1#$q+=YNmNi6|_LhI9aLhNtOCbla#9`aErNm291VebxirxG3CG<{YmA}I|&}4XA(T3A*3O?2j;?| zoXmxX@u7MO9)^dRH5ML2!(loa&J-)9Gb2ZL!*nOVgbTh zUS;B~(hn5DO5Fa14V@`1vqF$c%TO#+QSzeCd+eh9&iC{Ep7*@Zd(O=6?1r6fiPpAo zY-d}`>u-kZTHkmr9C_qX5tVzNyy$=B|IxWl(6xXRNI>#ozLZ%3&X;Af!pdx!M4@X@ zYqk=y86{{Xuo$}C1yVv^EK8WrhYvHI50}V8aH%ZjYAIgCQx=gA_$`+V;9R*6<;nv5 zAY1_NmxVA_`XwnxaKCh;e)$0P(0aJ}Gy&>C7DUV}FJtxjvWuF)q^jXr^Dbc6n+<9c4d(+N0Ep4W45 zT+fo@`U5l8{eks(*1)wI?6ILyGc zOlDw){87Iq9jC|(dYbvuoHVIHtXpw?uMEKX0Ci7%BC(M(5(6xPX z0FBbp@Bq&U(FKQ~`CZ9TImD9=$w7EfR`9fG`@{Z06E=+|>^8h@C($X|DKd^4X^mvP z?I0cNEdnD}ZGBQrMl4JEP?mJz9GJsfI4&ob^B%pj!&;bbv6o?vc&z3~g?TWG%#w&z zpa^HzTLbNRSP$c5oOG-6C6B!g=9tGBCwbdB6!+hB&YEaVwheBx?Qpxr{OK53PAj)U zX&?(FDD!EKK`D|Z&Uh8g*&W;M?ee<4KJP7W5AKG0U=r_wN%*e!Hfu@mhF!6Qm+)ro z2AZ{-xZS%+wtKhiZ@WcaA=|xnub0*X+r1u~!n2n0-lxqnm7sOvgtwP;Ot611?qa5k ze2=^DAh++j{cgY6MgEIg;h6uwc+oD|4E+-ShGVoDyGFZ4y4~0PmCLjl`_nGtzhEEV z(1&sycfl^cqvLo4j>s2iL_U*2`IH>QwOXiyaEpCqQ?>;+V)x6K@_#GS8H?s(Pi Q+OOnY`sJ+J9EBgvBCwRutRqTLYLJ4yq;EYl_Q9{6z4o*Byz~BMX00=8imGd(6*bB8s%y&Y8})8qn~&CPOw%r~dW*>X0Sx>#1|V($`MCB~Vt zD#f)FcV&k6517d?n-LDf1@XD(CAZOge|*2$Gl*2y~aIi55FZZKb7vqqxBw#S9s=8KkQM+g&oR@9`jTlw=;`d%~`sVd(28+<^y_UkN;y&_-6Ek?@F&nhxpVU@DL~Y f%sj~__F#V}ulP0=)I^huYwPQ(8ZP|u|G)k(J-9&m diff --git a/indra/newview/character/avatar_skirt.llm b/indra/newview/character/avatar_skirt.llm index 08ce3d170039ff5d2e099346ac95b128aec4866c..bf088d60d5a1077509103d630bc8dc297613f750 100644 GIT binary patch delta 11980 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 P|22668#8MME06WRz&;vk delta 12148 zcmZwN4_H)n+CK0zsA!5PsDP-T2&kwGV4~v897RR^hYE_KiAsu!ii(MfG9##H{z2td zj-aBBihn_b;w@!{qL#{vHEOA>*rI){tZ0{7x9p1dy`Q7+Ui-VQ-=2Lw_jAt7`JS0G z=gT>@d#k$Rt?G_PU&S%Q9*lG`b?Z0W!?{2A8D~n5HF(=490NM|U{;4PobObmha`rofPa{ZRs<8ZP1w0B7VZjPVx zgNGfRa*V)T{hZIct#gd;zec^V^;%8(r7_MEF=O$0hrT`&)~%_zlIZVD<1tpYe^Are z`mFP4FCJq`r$F1&K`b)J+Stz>uP1zKel%(9{|#c{AZqE!UY70$KQNt37^}9&dRW?H z?wF0UJk+NHTmEBUiwwN;l(pugTyM)a>-ShLetp;M_j;MR+`7l|`@5k|h5wm6D^CqF zedTD*--xk>S+=Jqt42OU@8}^;<7-Zb^bt4TaQqN4LjQt49Qe&qv*cz?-RysVo*MZ) zAN`bT{^xy@(=~Rix;oI)GUrWu&Bt>+)ZZ6)nak!p>s&Ro)#AAFg?ZPAH*4a8TP>q^ zoU5rH?e6S&<7M-K_dA=fCwXIMClB1}6gd9rNi@qzd^)a0#=W}w2lMd#Ii`B=HUBrR zMaCUc^QObm@1QAmR4Wd32^#$6v~HG{H?*3P=H#iH*NkxP)t2esBjKC5j?cp9%lE*q zE-iMy5;J;uxpO^y*q2a@lG~-e&~meJ;IUHBi6@*2g*74mSyPnZ|)Ru@Q7#LvOIGC zmjmXWfjHK49VR}r4rjXh%-h>Pq4w9?J!>QWD5$xUkX5^X%v#5}A#u*--~Zs8W?xc! zfAl2hqR(vV+ZSCOLz~~ell9UDwXwF!IrER*QLih8+7JDf)P@~-W86Rf;$Hhnb3$!o za+VqIcMo(c_%^BbzR6Xczv|^0{OIlz78+zzJNoZ7UHa{U`2fHBz282t9OHK%!BIl| zm#7g>NBOupL5*I@QU2)ZgR*Cq;g7C9KC@T&)m~_ft)23Cq*+sU)^6{2+;K3>&xvd| zpTK{t$yUq8_ODs}Sx@Kf^k6k{=ET~me=c+6?cSlzRQ@#n<2Ni${G)py#<>T&#bj=; z^&eJe{vczH6J*gFhgdB=L6OPF@2wLRSQ;qNx} zQ1;)=eYSQmYaHiIpCI(@yAJPotQ+qvHmNIr+~>SA%3n2YHL1po{g!1D{ngLkX*C^f z)*Kg%Hr1Xs%ef%wcun(bS!(pk4vw-pGo1I{%)$@7`+7gznq$^x_Hj&|Yg0FOt2V#6 zaH(nQBP-^41=;2u+;4iN?6A2x$)fw%voN`){hwC#o2%vKm3;#& zAAPt(J>h=F6m_qwX1IOEMNUS_x8wpS?Xs^-PF@*^@#PHWt+a`TgQUdnKiQ$ ztg6e8agNuHopZ#uSk;rQt!CT1{T;qNt?K$EzRvgdEOpGR*r`^2Qs(IWi=X4+S5~z$ zX|&_(d(qBg9y`>Xw|ZLe+pZc*YPK4)Ak6&bnj*(fU2W>CO%}_TPTOk+?cAZ}6-QYD z`~sYRUB6BJplPDxx$pboke3Hu_X-@p=#4mMwAW{*2z!<~YTRhYukS@$KIOPS@1AI0 z@3GY6sIaLU7loM}sYT|0a@^?$W;o%P38#K84I(PG!∾m)Z5gO%eNg% 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 U5?Bir{(m`&*_>isWnE$YFYO9zApigX diff --git a/indra/newview/character/avatar_skirt_1.llm b/indra/newview/character/avatar_skirt_1.llm index 88076c321f787d62eee2496d12510ed405c2a96d..fb35ffe3793b894d2fb8362ebffe965d12f0176e 100644 GIT binary patch literal 1829 zcmYk6X`Fr4w_uc4mZ;(Q8_GEnPn+nMvo&@ zsqK(TN>QXzsYqog9YtyzZa9LE;CHDh(i9%#y-isLnK#4AOkH4lP!I9DFvv9zNegfr zofhC}7)hm&JUXSr$irP#a!04AGL9UE=HAjsX?QA6>w$e<5BMwtf z-ow9Hg>@f2hJPufWfX>wVMvpBNH^i6#_>r-={prF4@Rj7<|!XHJcb{`UC<>j2Vs;x<(z|xnJbD%de*ydHHUgM_qiUy6{z- OR#`3EU(YfgCjAer>OZ3Z literal 1899 zcmbW1`(Kk~7{)KiLM-yoK|_tDLNEoLTILdl7)t~MGfj?T$vDb@LFPCg1_%hDf=EG5 zNGSv*r2nt)^T-eV-0siyy{`9tpZC7s?b%jPAFK`p9Xa(ue<bEYkeN+jZ$K6=pTKri^|hwbRS-ZH_!~6;i_3NqwDB4ybiCSO?VBCQJWgkG2C!O zN8wSWpa@KXpX)Oeff1#ufc3Yj`=l9YQXcsv{l@f#p6LYjOrz)&Jf%j83NzB-C|8E*FbdQ0VO1zo=cr7rQGb%Yfot;OYsjk{^b5>^=Cinn=b;b` z@oWX~HML3F#7C&t8sa^USPrR!sbVmwc99@+$MZma9C)3Mq>< zSzF$t9{a?rtjyG5zH6p`lyn&WMn!diiqii8Dz|gWnYDx5$-Es@hu%ZouvA0GZOAY82e5fn> zNk5<~R57Vo({LJZ(rHu-UHDh2zOpqF79{w3$`s(q_(y9#xcT!^kR z?;-q-qjp_FZSaBeRfO7M8_ZWTp05_zEDzqSI6c;!`eB@sV80S^LkI4_2jGC5)PR=s z2X44T_rK8+%(pok&sR1*v*m_vCKyiO9{8M^;7@EBkKxR7(i{_$6y&^{DNfa^2Cqjo zoR8rTt_n`rKe`Fl1$B??hCxk2H*_;^5(RiyExhYX@I3NBk1kj);}@9s7qzUfsb%`c z=q*weG^tAOqmL~s@k)-&%TE%s{Ae6b!h1TaUj0msll;)+cv8IXKtHTRdtoK~kun|c zaDA`#p?K~ar`IIUeHQh?Ss0*CFUg0`A|ET`VJR%-&VBF`m7!AIwCN^CAE^YDX_rmg z@e=lPJKPWB^bXg2R2g@bab&KR;O0s{s& zk@{Jki2C4u`pr?lk`BQ+_V5rq0+ZO$BQOotu)}Gv0oGGal9OLg19I}+I*yw7PBr1v eHcfL>WPd$HcsohT4OTk}n?o&iZDyDL-|Jt3v{G{b diff --git a/indra/newview/character/avatar_skirt_2.llm b/indra/newview/character/avatar_skirt_2.llm index 73b3effbc600a3e92ec695c3133aa92c2d8c528d..e4fb03f961ec011603ae7942045e3998fda2243a 100644 GIT binary patch literal 1481 zcmYk6TTc^F6onU{RG~mYt6&f+-a(6Eqwqix!nIXYXg*`Kq4ZS2Lvm; zK!QRsRYVlIYSJ!j9JnPl1`(Z}Jat0@wFF!0LN9vLYy27e!(4%ZQIChZTs)i<2bKV07=xY0@S39@bG* z1*_;#gquD`Nk?!)2kyYl?A7=YrXAp)AyP#5c}w?s3WjZX5Sr)Hrkj+P%lT1_k@BHQ`8q-6v-<=pMrU9#ETPWm6g;Ie9mC61 zikIm)EQO`YQ!SpSI%rZI|18pd4$WH}!^boZ$8mG5Vp1kDS1BPKLnU%r$;nY2)xvQt zG^tjt>cCs&!%g<-F6Gm0b>oI1>r6;pT0tSMY|=+KN6nMwwPbM|H`iaHGS!Zpumw3` zC*A>DU>ANDcCc@W^PPA*>g3!FrZV?_gLzuvEvk{!$W(@Rtm%CC9rZ9_j{-2jq_@=% z12Ben!w?nIDz!rT09WB6z5?g8!O^M?a+N&2WM6=zn0BZQ(r>s!|A(A^$p3~<@uv#I zFzXE;_1i}KD^h$7H_4y%7ZbPm3IG5A literal 1551 zcmbW1Ydcg?7=|B*3_?;-3R@9|94g7=kW(~{l`|7+riNHM?s%;PnNp=IOvxFk*H4LVl~Nyi$tM`6s>UZ}`_%8>Mso)+5zu zM=fg96V#$6ea4&Q#+wv^ZiR6-3agU}t5?79UY+8GpYT)l;SW(Ctim6|hj0h4f*(;0 z?52ZTv-Invdx+GC&obwuW>kUCpb9!v(AUt3JDF|x6z_zy$OT=jHr&S>VGOm;k2N=7 zk~vPTllB#$_L=9>9_awOpoEWM#JNlEN9ipF39G$}zNdaE0xF*vI0=ms-Qy3X1p&7&-sMTaTe^qD7p!wo0! z3EZ501^>orYx!oERHJg9QaN|Qumqoh=KhrE9c7U$JdZnL+04@#Tt8X2#VD#d>X>u}=jdO_^-8`stj4SL06t*8;eGrAjG_U1brc_D zenzG&tMNe%-+YO4!j3-aH3SsVV-;{XS#?|b)r{#sju*adO;dOFQ`6J oA8*GY>Xf%-FK@pgbUq`@+wc{+n}2^>z-x8S20!~l4F2=;2MTxUy8r+H diff --git a/indra/newview/character/avatar_skirt_3.llm b/indra/newview/character/avatar_skirt_3.llm index ded546fdeadeaf9ce914dd05a9004cc88de25098..6f8ebf95d5c8a5bfd4714deaabded188194db676 100644 GIT binary patch literal 1121 zcmYk4%~MiQ7{(vbQ1b&}ZGx4hrc4b^(ZW)5A&KnJ8Ao#xHB4Xu3#P=G0KXPW#13cF zWKo%#{E7X}p+&s&{GR9B%X!ax@7(ZaYHdB`o7zmhPk-{wt!LuCXa1*BlN!IC$$#O0 z`|?_9sIEsEPz%+qZPdbQKo3aW@S&EpsF2>`Ax+|jAjPW`w;JEU&3L*?u#InLcCAL|Z1x~M+&%8U0RFIVp&uTFKsEM;g?Sx4v?9;;-T z!*g^kQ9GJL4mg7xOfdt4(4-*KM(|mlBw}+&^Yor)ePYuQJW&N6Q6*A|J{9&<@Q6(j z?p8Sckm(QceN=|~@GDi;cdE>^b^Mh6b+`o=;UaHz6<^XiT-67B6|J$_f_432SDkbP zuhA7(O!|#qYgu8fsHR)p=mNi?lB9PisTiI_G5!-%0xqM3Ht~ewc!KM3_z}inOdC{; zT^r~Jm89cO+;qMr{X)0YCFv4BM>Tj3zo9dDrd_y;7nR40%Hk$x`5>EM|89C9gen01xobRNi)LCb`v2ZpM9R7%nKvvqpLP6%^%tL{)`V zX1rjs8mWj^sRF6MSw*E`0cPyUX?d6-W9eZY4|5sz;O(#jby|AZ^GX5s7T_4G0`%i1 z`}v;}`Jtct0XRnPwELa9t5)QMPJ4Hp6rkTYnt&7d0*YD|@F@MO8sROONjgX)aFmXt s_@GULtcK`2gx|NR4L4`C!RN3Qw$guGQ>1BV&YFf{IKgRQxB?gS7hx&7{{R30 literal 1191 zcmbV~ZC4Ue6ot2Fpr&b=rWQ%1r1%n3W@#cXibP0Orj~C(f`P&ypsdxmeo{ZN=U)2I z=QwLWd*2!Exo2k0R@p5S-9V!3<{Li)*Sqzue3<2I9Bk!pB`ijiWR zRnszzLD!zVtUNQgmU-sMGne5vyayhjL(4pS0vcy;3>I0%U;#I|!2i6c01Mn7heh(C z-S5>``H&ZS?cE8|IQ=Hj89c+wC}bJKL-fyRl(%FiIUtR~F*=Unr#79k8m8|sK4?=n tZqDk4_n{B^=s%&yq)BMbnuIg(jMHY|IV|%Yl5Qc8tu-!7O&0(8`vb-jkQM*{ diff --git a/indra/newview/character/avatar_skirt_4.llm b/indra/newview/character/avatar_skirt_4.llm index b9d5cb945e3fc0b91cbf882a4df824223f7537c9..bc56961fa2c9bf55d588d0d2b258c57d63861482 100644 GIT binary patch literal 773 zcmYk2yG{a86h*g!2%R6Gf{G@J7>$Vz1satCWGuBHXd(|43kpn}sF;X}j{;vM1wk5o z^Np@MSjfpe?WymqsLH;|(j++nKWrk2`N%iWMCb(AL`z>bdL0X)L7$5*EBo*Fv?6sGjK*BrfY1ugC^bShIdedHQa#? zzxF|)3iP3#2V`kf!wTZV+Ei94t>K0#rL}>lsb!J{(;9#l6(o(IAphIp`wUDmpMgb~ zRSwVU5atw9QvJF_Nj>6*N!6LD|9MkQx(xMAD#8pb;01lbPjz8eukaf-(KBqqI(mQ) zY&ERnRZcMsyQf~_VU2PADC&8Pr-;#8+`!z=;wg6Uv?evdWEF<>#O_z!!Y4LAlkV|b Sbgv7lO7cRJyi86ZuYLiLy@X5v literal 843 zcmbV|-BS`_6viKd5J<|XAU_ti1Ont!EprV?6qVQ&j3REEkr}w524|Y_&Og21yLi!c zd*=B)&sjL<-CcJ!znRSK_H6!hac6sz+o|2C)}?@!*V@TL_}A`R(o%o)Ro5EILqDh? z-L(d!6@|5-LllOe{p{d9(% zo7|_X(e+W!r#Z>ytP)hAjy1^APnk= zGmC64vfJ!0vaP5r%<3)7z)h{`6+0tvotc!9FsY|Zx7czDO*+*H-=GCsxC0%24M3qo z7)DEv%F?Q0isLc8Q$=~b!42~&Xd5q3TO^cY%Hob&|6`QHxr%P`M;8ScS~>Uc%( zVO?qE^hn1jrwiOLrw%in2Y2Ptm8lVF50>FBzN_!>o5pagD>#BK>OvQG&^bJ3t6>vw za*AQXKlK<-=o#m)qNS&Ki!{B(6PV|-c#9pppci`1WD_QI$?hw);U$~9q%*vY&h&|D cl0wj=5R)%ai0|8(-`L)-#qa4Y&3|5h0XuO^Hvj+t diff --git a/indra/newview/character/avatar_upper_body.llm b/indra/newview/character/avatar_upper_body.llm index da7d99054093854e6da5e0fd94e69c9d5e3a5800..2499a6e2920b242b702ed6f987a3b3a809d5f90c 100644 GIT binary patch delta 165275 zcmb?@2Uyft+jdT7G8qN2%YdSyfY?EFElhIkV!;Y3DhjT;sGwp46d190#fYN_Dk`qM zfr2v0=-L&#*p+qduDv(b|4tV7a=-Rp|9AcGx$bgK&Uv1bA(bLNQb*#`aBSmQGK2pOj95Y$=66B$kK|+;?3*Ib+*DtlKYa3O_P{*6=`uQM_yqaq4nNC} zKBUlx&DRPckr#!Z6H=u7YT;75>K>Lg%~}epAC^{1Ab3O5O>L7o7gA{PxTucTv?XX4 z;%L+|y5~!QFsU$BV2&*R?q$^vE*+)K$#PslgS$NtzQs0_H+BEV3#yOWvQMaZ@;6~n ziB!64c9MK{Mp-GhdRhPCaakQ-=9MY5*>p>Gs{fA{RDb!-BVnqmVlET2;=8xOON)t% zluS&$28_QT3}8~_w;NMwu@_X|<&Uj-&DPu(DjxpF%c_rZ?Js!L{U%prR?>YvUufrj zIr^V*0pn6yW0yg%SIieIey`;7<5Ov|7gV3w@v-n=Kqp~ZVcK^utKKo@xo|__<&>4H zzI#FS6Td{ttM54pzFDikdl_CjXL6D5R5wX(?xsP`Ij@AG&l%>k_1Dm1Z&UsLvU`O- z@rUG-F8_Ez_382(ZQt!%X3&0brfJtd!F!{*WyV@s z>}{$)yyBZMy@9*X-r*lF!%J6*;Ou-=C%W2Sn*Zp(o)&u>y!5rPOU;c%mj$QwTjZ$4 z>!|PEmqL}Wnev#Fbu^@q5xZL32}hFGN$0w{ID`imY3KFx`SsEmcNb|z6CX>>N<_@v zG0og0YdtOYHr0=Qo2;GpD&q#~?-n4hnV&3-FZqv`Rj=+BwPXAE^&f9meO5bGEHQVG z9P{BHFQ`7R?ibWk;d>YSbduZ5t!b-}KH8*}A7uE6N zIX`-fw&2u<`8MkxPXtTnjo%jw>f+*YSsnj;E>mtk`Js9F$W7n9P4)e2Tv0bIY#RQL zmsLNsu%a9>>4dOr&PJNO{grm{zncCTm(_90$9A8D3L*34mC+k%=FN0r|FG8r>AHz_ zbowY1brH;+Uj8#K|1fS-$1NYVwF1^IadELMEo+r0j2|G+$=OVcy`cKIC&_~OhE9nV zHq%d6Sh04@YIE0uO|(*%czI08Ey9WM|I889IpKbc_;AxgA*sYaURHhad|91e9LJ`{ zNg1XSTeWW~nR=9!+*z|UoK2I;>O7=CU4XPr7b&^8L`rkq7fYTsvZebqHfF7;S%FCV zJbW6?8)=rkMsecdN4sd3yM5&MFYgPj>TjnLgE-O2$4|I;YX_~D_q+LpTSbvwy-TX{ zlcyB;lZTY>laI9TClBYkUH52J`Z4n`UHq{?cHHeLlzx>XnVNb!ze#>8bj_}7o3L;T zZ9BTGc&c7XygkKG*w!0e-(D2b~h4?p>mDkzXSznuGu+pX$J`RWW z6LHquSGLhkTb6Y5l!R^`QdBpSl-_Nzv-RW+p+;ti`EjjW`ngq+aCLQCTj>(pqygRI zq-WhtSxtI)vsuG?rRf^(UbEA->cuZY+YM*vf8pgH##Jx9_2?*FYY{7PeS9QeeVUZ+ zVwMC?v(&@i)N9qVWFaEtgW%BCPCrmac&@K3jxV*3Ua#Iuu*`H8C)C(SKmI;J*ql>I z)VuAYQQt}mX|5)5N6o!-aMyF@!*M3DW#NA6`ni@ctCEYjJtt3^;_u?HxKp$c8}1+oMvNXGba1 zKTHbg;~}|oCaFH>A-!_(knVeiNt`*r!LQMAd8YeoVOWMNb?021mv)MkO*LzXNnZP@ zbz@Z_Cg7F8tvx11aKR4Z4>nGvcxhmotx8qV@v!^u2V0J$D z^HTHP54FX25eogmOA%h4Qi3@^n$yR}dG@;va;ifYvHX-H^an51bM7d4%osl9w z+;~X3X?P`tx&~wwco|7nu&|S49qikdNM-wFx2QLGx!iOAJ<*2Nhv5PsY-npX;)j5fBW4XgvHa!DIHjub`8(8J)h*FoLaT_ zU%t4c$LucPviC!^%<^YZAQ8|w%Kj|yaS=fhIt`kqoj+em4_ARpnOO6d(q<8Inq_Sb= z?EqnVMg`Hxj66+v5^693m>G7LZ z!YDgMExYV8ucV?X=B(fbD7zW$kCQCla2t_64fYvSTx!Y>WvBV#vQvI2JLQM6Q#{%n zr5;Wp&99a|q3oZ2@L&FwEl6H+@}82n=eQKn&{ql!@Q_;l>>0(2z^$Gp(dSFKO#U%itvzjMW6^Ge0)~S8*P6YUnuvL zw}^)iTkzw7nR2Oe17TIk(e|zjr<#+?=7>W}cA}5VyV(ckpS4NnXPGSO!6x&k+SG&P z9*w5Pj@!j|;py_Px3vJwm<_D_Yj`4kIW$OceR=A;msMY_-*~!_pCQ&Ptf&-wMfIm| znw9fQBJ5k317fkKKlmTVYikEaX2#hwSBXNvrciO-vmpEYck7iau@A)ujeF6b&y=R& zd6Q)+dRCb9c$SBy>ZHx0ls*d*>KiQr*k55Iw>~2$nYz_bRRQ1m$CD3zm3xr9X zKgq>jR=wml+{ZM!LL?pKpRLs8Jd|QDs$PnkZSt7YVXo+)MBDpJYbnljNz~5pM!8S& z2#l9eqG^AOORdsOmh15@^i0Dp_IcH32^ZimHS9vC!4m*s_NZDdzI&?r8XMxZQ%msh{MXI+F>A#ee~ME_4YvQ>)rty8^RWDS=bj=K4WR?i zKk)x@{ZDbusKN9X9Q0Z^PW(M7mQMQFD9p#4c11(%Low&aZ67`sWWO`Z!JcHgBX9U4 z$X?jffkwUhLmt{Bfp+ONUEVaESBkyxga2_{uO5)%hYQZ*`O<$8b%4K-ZL(%rf}x_x1Sc zQXGvwWK_cKKB5`k`;bwr1fL%^!CwEbMRHd30!1pCZSudrZ!-NNv=D<1<>dVVZx&l9 zdr#%$1^hCR{?Xf_R9tdh?gW3Yw?#}&zAkSFiKX*=hAKmE*`@A#JuQPqZWsH_A4(6{ z7b|-^G^ClSP3-Qp?srdBpMW{R^M~4H%!%(3LI*VF>~+`L#+_i?I@7ti_8TeJm3TRc`Ttom=0n^O;;x-|Di9fgl?POJFTweN&af8}mZZd;d5JbFx# z=KlS-ORF?NC?2<~e`M=gTzgJ#@O{+=PM=PxAqxB4e(_%BJA_$&rry%4N6J) z-ScONM)+SnOHpw~CwsajW0vB-dNh4LXt(mLX&1RdOVR$d#VawW|3jMZycDR8ZiqwS)FesMl)u9|S&EM@NXknR9wb4*gJoW;^DD9MeL zl5E(?gr&w!jn?Gv=HSI6Hy%jyNEc{NOIWZWcow z&h`{1haZ-|7*U3Qu9i1EuPH9y5l_A5SF^PlQC{4&HI6P_QCD2lx12nyqlLCEHB)w+ zzd$VdErMPeuv)Bf>8Kc7vIEU+QzS~!ktXLBF>UNGKb4@4Rre})Tf9?hJncp=&D<=_ zj`VeK`}G&Qf9nN8zQYx%<${h<$8}*+k>Vlki!@6qNgmRi1!2;rbpifk_l&o@eh3sl z*6lAETlKS-7(|uA`=9>h%ii6l_`5cwQ`&plEBB73KAR^fv-?I#j#0smS2s_la}Cv% z(x(r}Qg~FpW4n6eY0P?}w3;$cl#14QNcBgVO{JyEboRBmV&{s~{-c*lEyP`2A0XAY z`X`TQVAzxyVP_w82A4`pv_9;{HT?JI+Z6_nayI=(B=8C=UWx3ANe}vR6FQ z$DZ-pTX5@If_ASn#{OIOL}B5Q?TWN*^i?T*D&7niU6rnF_?jjEhMy%f#srz35NG?N z(xt?%J3G_%y{*C{-*v)`$%**5{c3h-+-{0!ymn3gJ$Pc))iL;8k~|f^OEMPYCrR0j zAm76`SyOSb+SOuhwEUy3*&U00QiJ*alJ8cNskm_MYT*_at6eQt>EKdRuj0zItCd+? zjdryf^{7(jP=x&ys`T604EdMUG4?a}Cn`Vs;$pS`P^@;fSi>gbHF&y7y0+9qirX3~ z`5yC;k|&xS8hAz9$Cj9tM=x)YzAlZE?r+6yJ!X)niVaYlO6HuJe z{fR-2*HMuj4b{c6YDM;lF#*|9{cRo&Q+Kwt*CA7tHNz`ORbpKvw^$D;8krZQV9vGx z$9IX7XwQLT<-#7F6ln&w(JIzt8s^-F)?k|`S0+@m|LCP%ShZrCkF@8Q`FkD8S{=T^ z%4ge58r+WuNGDS8`*XX8H2ipwW3_r0#1YY@w9NeYR5DP>GIXMIXRE!N(S zclCnf`2CT7(nq>A-Q-wYcd}Y{(&>{XkC!Rq=z8}88}lkn`O)ut>S(vO8ZR%Z7fhv6 zRv+or4*Z$HNe?MJ&g3y41@}kbD!CB~uDHl#wa99q_*T94mP?@cq`0_y5}Dy63DyIW z`_6k=?x*n6B6L!i~Wu3Zx@22ZqS$&=!_td29V-y$o1TQu2)-xk~Q z@!R73S^Nk)hu`<-a2wD0SdQdv5qlq5X?|2Snhr1DKu)-qZeE#dp|5>&M8EiX=32VZ zw9(HQO8@XX$`SuQv;n+d_#N>){MGZh=1EgMlq)OaX`Q+`V$NM^J6B>fowYjGOe7Dn zF~&pIv%-+EHO)hBSm?VqcHv;~6=BWT1X{H0fN3; zRbPHlzJb`fWIWyBGDq2#8KQVeW2mxUs`;X)wBUt@HA;s+^lw;L+1^yl&wEz3GwoHS zr5F~#+scleOt+>R#i~0S2@PTrs3-h{oJMke_^;b~+q|Fe@{jmrp`B`e6WZ0jZsVUM z(2H%q36m#ZF_(XmAU%EI>Hnp7BVpaGv$FH(M5>%vCVvdtBOAN??Z*Y}5lX^moPRGo znz+N_?TvfZ9m{yj13;i{)sE zbj8r}j8M7rSXxl-laP5lqQw;awz!LNw&fYQ62=QJ#EOq62iZ(rW9gDrapJaGEzIj$ z$I>QpWu?>-PVVzZ{C6*?eoK`uVw3(O&7TV<(GwNAh_?)*Y|SoDqI6rB80s?Eei=bglNfxXP>4<>0oq<1fy z>i2&bBOJ<*>0q)^JEWC@mqT1{Z;YvW5kFM+l-jzc^^Mnq%JRAtQGad!{X{C$>W>( z$-A5_)Yf65F!^|paLmU->t!~O7gs!F%im?88!oSuJKXaZ&U{UzoUMyEYgGjsdtnm& z5c*LLs~Tt9R3VXG`R$FI{b#1xT0N2G-r>crF{@e(wI$Hpue_L1vw2?oyac**o>A0~ z^EZ#!oj`{#F^bC)TkCB%b|pyF&kL3XUrPHgbG_c;z&8sWnOoX_J<;Xug&!o$5)yiq zl~X%d=pnz)!klVpW|tC)-@Q%s>YSlH$_gtnr}?OlHn$$`a?y4R^?s0{eE77{y!y;o z>eFwHa(u#k+qnwkXxX}s%H5Y!&07~H&?P~kV&d?tWrU(hv9u>TNyD$oWOA(acRlf~ z88f;B@EsRQM{?IzP?_)Aj<3c>LCm?Pv=S1g#56ICc|?b>z!+1SMIzJ=;P zr8?Pu9g-A<%*LkYV>jYeW4zh3|H#q*_?7dVSUbJl)kSF$jB zLx0*0-=%)@r|x&f+T5>t`bh^4GUu;z{>wIur*&S& zh|HKwTfLxIn)V__{39yU+ywr~S=QeEsbpS92GG@&Cdlz+H|(E*-yeNe>Fga(548o& z>rWl3eH5+^?CG8NxJn}Zefv?-@1mU7^uOVi7-_9i zow!(><`OzS)lu0{6hiyJH%)aE6X56f-mXN~70lIkjG+&fZCAw5P@9r5hVFlUQ*0yd z*gyN_Fxu{TOTk+=%Qg{3vfwUn|2ky8dC}v(^u&vsqGj3k79B808aG_|RK+ewRf(m? z#tv6@xZ8yh@bB|^`_Gmo-nQNE`_c-|9fYa1JDKNgv(N@bdf~3$5;MWeyy3H6=o+!a z_T_>_ia0MwyUwRcAs0NPlnVjUy9<$0_@hYa{L95s)GK_?zuuU2=QVy)kheb0%t_w< z?)@+3Iz@eHD9hM~tlMhak`Zcc$q^UpP>y(5Q&c*_5g#it!1)@8$r`S@WYz64kT9z| zPfR)Oc(R7IzA8a{94?8MZRh81wC%ZJu?AEnp4J&viHCF3TjP}@vpNfXXe@nu$Yd|` zWUzeac^B)wswCN(R1Lv0tC3jetvxQ=o?g#1yWh0X55p_k-xW?X|5VT|C%!tV&F1W? zLGWWF{32d*9+@QJZGhFiB#E^Kdf_kl<1VI2_aB+18E?(bO2>S8e;b|9&5GjB?I#CT zJ!_u6z#<)Z>tZQ8e5$goV1~T9Xd{unQU{ttg{SFEKR)l#U1+q~n9uf62D z5ZP^OQ>#xc;%gNgiP;)ni5gP4$tmGY+7fF>ZIUfLdu(zHK0jK?JM_#}bU2n;OVuGJsp1t6$@hbgHP8tW zJ?jt;{|C#bi<9(LdEmT>^hZC84YRw>ev^0p%m>kHR|#7BR;G}0zBe81u~RvDwYz*x zKSt_)<(kAj!E4`#tJVZ3@--*C4#5wH+E;^2zV`!ZLa$Ed*(MWRP|-pcJGPYlzAcii zaixjb(Qr7%-mZImUithfN>;+vFcCeY}lLrV4X>N)`AAO-A!(r9ll-NBD!ub$UE&3Ev@+)XPr}ln4Pa3>m{}u_KQ&2aS}aXxF^RB zoGV{EpCFC7?c)4)+Rut@)oj^UA4fZM39^TEye8+2ca&z|4t6LmJ{iR)-MoF;dcFej zaM-`Tnq63!D~vwbUOG_dA{{LBFpY29*p^a^-^mJB3hFx;u)mTk%lBdiYoH4ZmNiiE9FCi9FzJEx99pdl1B_Z zuUNxJ z_Pfa;d`B?dRDZi|K%t|w^Dkd(iZgP|X+%6cj-aZ|-8(eeKM)EW-|1HVw7J;g7SjBgutIoC`iLZ8#4G12R+p-qX8bK7}O#XFNO zi50eYplOGH7rQTT7GM5))SBItxLa>ECDkpR99z?aC+~R8+nnxBe<8Z>>`5nAcrLPakBRkn z-?BFDLRwkU4p$eI)z`(xUcTDFnm0ZPI4IuDTq(?H^}DF<;=T7xkv6$4s(tmWzHWLY z9(uPCXY^b|a81>5%ZRUH*!}LJdc6MbbWPWfk#UCaMWJLs zWFOzFY5m=9#cLXCns#`Nrt8Oq(rag&=`9a0P1Tc4pcScF=Bf_yFBG6wTR-A%DeSfY z^;-ee6s@UxMWP;7#+9!}?`Bq}-52!HR4s%i16`?F7^)6f)EX7*N*mrl?SGX?_2~v#14E^=^vzCl*w_6Hp6^;tGn!mG*Y3uN_$9xgP=|d0<{A zO;1czM10JszPFR6C9l+^+dEj?sd{;y$5*2<${-B5Q>Xfk#Jz9aa0T+UiP6GbQLXgW zVfO_!z_l|m;*C#LvEgmnyr(^Kg$*k`)Dsa^T|TNOefg^w9T(xNY1sX9LQ+ais+NEn zzj?N|c55&$CN;u=h~#bf2)I*x_%+2DYZKbei_{j(X|)C)_!@NM(ax$`Bb$-h*7Rm1 z!dj|1z7Lu-$2Y@-=6EHNJAgt1@mh8y5U-r=x{@(gxhu)FCUhg!yVbnmf;~3XN_c^_ z0iJTJME}Bu^!~X&P+pBGo`|Aa_O!`BJWp#;^@&$|Ktqbp5uT}DxN{4{$rT#lf^HUF z^b@T?{qc-V=ub?g58|sG&qbO*o1h-rT5bJ_OKCg+wQ%@I;&J3-ecPY3Dt%?$81b)5 zeesOjF5J!Z&j}hp4ic-|KvJDos~q>sx^*ORsa1QxB5kpHZ`5bvv;%WR^}4Cou$Hg4 zc5giGtx-^pXD6M{Y)Z1UC?>;-ui$tKvY?-O5Fi>ekcEaj7c?5N~TiH{xwkZ^QaA z3F^lP1t(x{C$)zynACA0t@Xwjl1jzIOxE$S`Y# z?%3*)fuyBXh(;|8ZGl||2EeuJjxlZ!@$pt``Rk@0bkT1W>A?NN>E1U9g8J!HpL^viLlGZH>r#J`VND4@lKb7s&Yb&$NOfYZKbBmzmKulG zt5q*}`aB+gW%lQJeBVW*etD{XTYc=MqqgzowefP(rikMr&ZB;2<2t`Y*xka{O}lVU zHd)hp5cfXG&un7dS<6spMp}1PC3S*`J)?gdACyH1yh~IcXX=d|uxKidm!sKACmXHu zIP%i^%uJemvTB)M$PyKt5F zj3zBsLdT9jAhxFs&%39T=e&rS@1?9||{H;?sL)QV^bwf!cX` z8p83!3B%Jxt-MgGz9-@PUcemdy&klQ~4NqkZ z)k;_0&E3rY|CDZFw3E@=OFgqMeorXMIYP=pNjjzD0*%f@xgmM;u337EUAv~;=il?d-eZ! zRsSEV{rjiDn%0}RJAbeC@6}&i_11cExRc*Y`+KQ>FY)5i#s^(1b?d#>WQ8@Q6V6KR zO{Q3be<90%4UQwkn$U){EUms%7?LXfQ_oL-A@0WFdKPlzHUzKsM>?q|C-fm>*ql-k zRV1za@x{~LaOSt!;68cyfu(_&b@oBvi*S6sv9{&(>6 zdqY*=?zdDiY?$Fc!15ml{@urmY|H-*a1&eph}0D>E&oec{<{Ok<9I2?&i`i&8|HWWQBuEFZKnAEaX zTTCkaLuITNXOpVdTeC6tovLyNvEtyeMEvn+sYGnSC6Tn%rLH((?Vd>7>!PG_3IAuT zA9EV_^PF|S3gTYb&+j63`d`8ti3!#@E0BG`Vr0^2#R^=7ZR!}v$PXKKyQNsN(0XnK zo@KXIkfndqf<*lB9KI8A!Wyh&Qb|QK!@NY||2tAwe8M^Y8`k7hGSRv^74K>qy-36# zTGXa9{&xc>{ohSg~0=U4MT;dH)7E5KSNiBz^W zlyH;3QypvQJaoTPb*qqs%%MpnKzBO7v2}oit3GVlPp$rM=$ZRdD~4%i^++S0&ZtOi z>p#IdMIsfgfoa6i8l0vkO~bcILK-Qf(gEwXG_v?_I-P_A&t?!~XFtC-IGMk}Fab#M z{|5X~0Zv?lwR<|5XC0l6KaSI=;Z!6ZJrz%Vi|Rm*Ig6%}OC)FYRP|D8Yz6POL^y3@ z_pll4c6KSd7}(Bk18-x~fedgmkO9tMM}SALQGg#&`6c5=P602OQ_Lf1XYvTHGsdoi zuQO|zrP}(XSZ77t#q2CLl9|j5WFnb)(0Q0K*#cP))0wP=u4mdKOnU@UxiPdc@zXdJ znu@e4M`9C^2&(cZXfoIeq=K#B#bEVRCb6?gI+?_#lQiNCq=TojX}~0nM?o!-piu}k z8xtehR5F`fWo9GERVEc1piq??V>??I3SQ4_!6v7J*E7?Bd1%Ao=HaY{16{ypktm08 zM#3D10O^QI&{Ja*vLCq0>}S+t`z_2OnElLE1m6#Af!~6$>A)6dtmej|Hyo`8`ooc+ z2T)hz2G9mfS&hp;%Q0opF9&#Gju*5G(?RnCpZKy z##>_(lmSdQUJtq$m63v$%1XH55_AICG72(^oyxW&6Tr@-9m>O*RE0X@{HmgzB~Nj7 zPjS{PDb1>WBU73!&2D7&qHV-k?gbX3&BoRi1JTTD<|*b>#i~2-chFOHAW;}cvX@b? zVlifoV5V6h)6kj5Yy&I6Ht;s4C#Lo!&)}b7iHxdic2Fmx~(h&Gsnfy2lJL>WUWvpvZe#OX<#pxYQH(vw&=K(-vm6mf8YdvtH1d#{ zLZa}e_79mTfX9*3jDh%K_G!i!>kOn9*q80a4uB3oG?jy(K{ySSJ3u?IKd}~70$@4; z0boC9UvMXID`+UVFIa^30Egluw1Axto&#M0P6022E`uh56WOusJTkUe%ac{4JedbB z2Nl_Ja3Z^kv_ia9WSRwL8u3G-X*eH0b_)3kJNpUR1c)Lj_>8VVlkhQJ0VJ{$*(FFk z5tsv3(@q4EkTeN8mMu?`fQjgpCowpd0K|ZoKzp!0I0YYULgkB0Ibtb~eO+YA1HXfR zXJXiBO#hvU#*!Fz9XJ}i7P=N8R9*>P0-gz;iEYdRW`gHyelc`0uE~71GIvBD!^MF2 zqb0(-pqHq3;VMI2!7khzpM`p%8R3lj zQyQ0qmeiX#l}kZQTq%7#(2I*l>&3l*+o6A<-=QxH_Cg#tWcj4qiL5(yX*v^Usf5L+ z^p&`|;JFBT7JNkiK_AKm>x02wU@!e*U@)h$8#kDfVp=zY{ZhrR@V)V&1KbjzSB zr|EvvodwdsX-Ib#IHvmw>;&(`Hlnz%7Kk0;2jgPg)F-)ZV(Ux4#DO_xVPHoLvU=5e!9MeUdQdxx3EB3=vyJAj#IgnJ{N&EX`HL?r+3zu z;V$cMKvll1cj5}6Dm!ugxt97uy~_Q$l3WL<$|bqo`VIgO&m%<#ARBEDGGqgKG#$4| zuLlzK7F=|sOT;<2aAmle`T%eMQU-AC!A?MX&I#TT>6|onjotgSd`tra`oNsxJ z3(#lv1?aQDEL?$E&}e;Ut{PXJbLTGUs{?KIozPRcGqf7G6IT`538>0d0bb~;Kws!y z>#A~!{)Ntin}k&!SaV5#MsM*zkTbCETpOs$?g-Qd!CisQ;5@x6lI8)?@X>l1En1%s z&evDN$XA31y}<<0(}qc z0>6W{!R+^FZ{Rv&wdD

B1IOK1ES!oJbqX0k%T*_>LDP63{=VSr?fREzO;a*qkD-X9kF!ys> z-OaY(!FlnVNO!CC1;GhFlfe^TkU>uyheya`wpRYhGquotK|Z~$Y_1~8$Ux^@JRY~< zc%Tkpf&3j}a3q)f`&yB$csRP?uC3(Q&-&uQ`7lGIziknD+Rlj#uv%Y223i*pPKF}S z*jh*cA3!|>uMWPXwV7E|rRFwD9%Ajb5$!pj(3}Vt=-)8gD>B@QY==B=O&|eAz-yIa z8S;P8w#Xk_0vznWQAh2d-@phk`gf3Zs&&~xxMKvS?w~a<*;+g}6P}QN<{Vbu+B^9I za8m-Eb}~@il)$K+tSDn`!A>H%ZiM4I=@vI75W9RPJ1M!;6nIxkl__M5b8= zzF-8lc%U!>2PB90_BuwOv5*Am)@3)*CfPVh01((L|0#At{!^{&SCDDePULkP4hf(E zE5D+CZdBm-S5yb(2qmrD*PJKas6dA?9BuCV8rC`>VDQ&8A=5IxCX<=AMdVF8Co;=w zeFMp|E+VsSoXA@?oFxyb{|WvDx)ByF;7+3c9tQF}Yqy8Mw{5t{d|M#$j_nm$U`6&q z7FrXLMb=kjv1N$7Ygj~2Ut|Bg)feR?15ylzsUbY66IwVE*i~6Z*H?${wU(7tMD%r~&;N zt$5|2at)*1IYLHmI0*aP9Kdk}6gHpKpEzThU09IgpHE*{k+8NUx<`nB#{I=>vTtMW>hGG!=bVr>S(N>1~I_ z?QMvjBkJ%yI`FU-+UMxu>4&MwRU-g}4fBEFw(T&p>ad+SOuLR)*&~pn)(#?hJogi_ z7VyduxP8nPDDb%L6**x=jzWI0CL$-TugEFO5c$!zKmtYoVc%0?+;Bdo{`oy!i&6zX zPKCZ5@ICB_Si=G}T~S=yzq4YS0s@u)<@w;a^gV|w#P1uAapvi`0n9;zV;tU)!5_L8 zAkx`&C3tovLjVW5BfU#MMpLl{!1u^8c#tc3`;lYxkW1b(XEWQX9fy;F4iAoAIw(l&{=*5jYZtp${~-{& ze|wBm6v`K#{{f2FeW55~_isfJyB9r4inwU_JLhBWYY@9Xg^$GU2GzOiBqbELb0Q_I z)+tD&brFfOaU#*S781zZe>uf+$)W2<{7YIpky18Xq_iy%;jAT6){6WD;h+TxH2n|$ zi4`o)GUQ*uwun@;b0U?j)@foPIOhZ7GzC<#ad_x}1qrQ2m5)-@>Q*+NXf7!4oKHt4 zmDU8<#V7IPe8!^-%F&3;e8{I?U0Uw(ke2g4{~^u+mCg_lSB7M5&yazO%(Hjt8e18- z$o!J5gDg8k-?~=+J&K3OoR7e}>GTpmD+7tgZ~K`}cU=sqOOCO@KWie5(U3dFko$Y| zNHqh{#FNa(&jtZxYhWjSrV*(5kG31nYVKt55z_H2yy19umR8?p3q%^*UPvGKD)i)E!t_{%#kE+c_B$C*D!n=&4TrAKhfHB0ea7T#et z8{e)!V5e(h7(ac<|?F^}1qRrSYmmkD z0}6FHctmWGXp1=?$iZ(q4>ys6KO%}8{8drp;2(%02me9zNj}yJpvb}R7DW#Je8Jyx z@THrOT8^%VF$I@{FWSVnp8w61%Kkm|VmK+BCK&;q4(z5VeGaOM8(=X(3)C-HdwG&B-^+<=<6_Wt7yDB30D z5g)LIRBIR`>r>4d#xOKr=TmFSAcSfo-ezu%BFM7kH@{&FFq5wAzi-Q9f%FQ|4ppb^9N`RSc7E|1!75+$cQ{SJtwotM-A0|CHOrflxA9 zbQ{GMglghmeI5~Jy?QHi=?m&LotuC-1K}9fm@Jbj(;JQDN--)rY6y+LBMnfpGi z7|icUGsKl}P8My#!g#ZvN#Wm!%PyEt`6rQGFu&-ZG1WPVZv7{`iknHKYQz4kdlF|- z!vjT`Desp82|HUw{;i|+G^0(e&AIorN_2U)sVf#Y{*l-Hzl%QTO{9blF{ix{qeXE>Z{IDAn{%%vY6F( zgp}dtQ+$>Ig5x}qawa3+=iXCK$VRoI`*Lh%D_V*v0!B?Mn77d`$iqea33qCw-A8{X z%M~w){fs*)^%8aoY~Mcg1)rLy)x$&MVNrHx&Poki)0r;bzwZy$;jp^AOCQ{tndr6& z@-rC)QxzppByo|mX!^!N;kLasbJ9is;hOF)`oG>`sZ}IT`2U-R*f8Mp>SGJ+V>slwaJ;uy*zpSCGUA^`c;>F!v6zkZ5zlXN~1Ry7MHf}f* zXlkH;;v!4w^(v!;0*>xs57>1VBMb8fSMdbr$qzh1g|_e$8wi*!YCr)g3#ixOy@kRo zzAa46t^?a%X~}2-T7cl}TPo5|JjNOVx=X^5SyyjI)e{zyf$wWx5$qyhG^`yNxL%3^ z8CjqBQK3lNBOJmv?HExJGKAnoI@Ev~Mg)s%(jw9(-yI{oLH~AC&hZAkZ2_w)6YAAw z6pj$+;H62dC(lNJ0e6cD8s@UIr3wB+Fu@&n@ZSkJeSg=UJRN-S$6X}(DVTuC?^5dD zozFe4M{~0YK7rh9!q_HM+;IrW^O=lo?ulVVTcYaTqXF23UYKeCnHWf+09?09Lzxge6gA1|$?s3bkMhhe9@Yb{om2%A&1Cm(Z26s`V)-Wh%C?Mw-b@_lI ze4}q-t@kRU{(`l-3k4?275@mX%(bjT=CE1ZIW1ld~I#_^dlQV;q8`b#hqIj2=XD)I{wQ9M{9T^7gvZKkVKfFbpdZ zY~DR$s)vG`*!i0jssB}?R7Mqs==mO)b$2TfrF+6JfD^a(j1h36e@{5#sxsc`soF|a zM&-ibjzBN{(OmjR%tnh{&YQXZqrTx&+=W32gYZT(}!JM|>K z1$fAC1V;FJvG=#PdwPlUec{S0y(kA5MR8kAkR^=f()*dQu>Wi?n&xUV%Jf!Mq&6dE zCxg0E@0jwyDEjwSRW~re7WbyOj&=?NQJld7Bo~S^nC}D0 z%oS%89)zDO&PW(UirfbnIsFDvtv77KAhLCkMy`TTn89q3%hhDu_zVdhrE$J7!^Sma z^h@H7(^uiRPL#J=QSyedP@jB;C~mBx{9ujBFV)+F)u2u&;7=V4qg`3X;=yDOVgs}4 zgJP4iG4SOlt46C9G|0l4$*MUR~?^YoGrKh&k^oME9NU4qZOQSo}du z=8i))`km9)`cM|i?42~}$)PmKAsfC#VYz})_87UK9s^^PL&@cuW(+>Mj-xKC;V{x- z!2;R&F?R2PqZ#n~&-1Bw{0{By-?05pRTKc@tWX@rbd#0|&KfgB~8 zlFK8*`N(u22Mu*@+XzPe%V0=~aMq=;{DWy_V2 z$%H)q0;Qz1(wtAhm8sCg6nbTc^-rPScKXs`7`@;_EQPFh+XegsqZij#E!UFq(fXYNg;7#(fTl$HjiZq+&q$V1e!Ex;7BI%X)E>;h2)K; zO4*r&cY29jU5!S{OJw6}G_L3Gx-@2V0H>+a0gzlEH2{*EN0CX|tLpJl3_R>-a7-En z15<8g2>N**)pcBlUNxctY-Alf1Nt@i#NLdM-9e}2v9mP1K+GsHS^o3iiBO~KSTe0gG8g8@H=db??jyT(u#;3Q~9*1OO5qaw=+ zN%G7bu>UK^XwsCSnDlf``e?F>6r6O0>smzkiFKhfxC70Zn)zLD%QSe95?kSkZ3Txqhy zQMV;GwwuPXy8LP1jfJ7-t=KDKs7!DqzQXvwVEyIcIFn1yP{Eb2!2XL?<$h4X$6lc( zZj2*r97h^JC%j`WW39$f-^GuUMe;Zfp5RVi8^@OkxRVb>!JYgh3ht!htIXWYdw_p- ze>H~ZQc}k8%By4r_GF2|vePtPUgb0f?4jv2wgP zJAo8@g`zrQd`z5RD4xviawMeD@Wrywkt|p4Vfa<~DbBES(x@@UIrzd$qjO!=M&)tj z5i)@+9hq|D1iCa+XcY${^d3BcB4H9E>gkEPR+L|+ z{32wR1xho9U#*wx1b}O-;fUH zvERYW(C5=xrEp+N`AJkaZVHjxP9m~nTZYMn5swn~j$96J$(uwq9NuzG86+R|(>S&a zdytKyM>mkDZ6Ms>|8 zl##ZS^|>=HfnF-Uzz|5AMn>6F$jCKvl%L6}@XHjnY!JLasKbgll~w?HiM4yC##9Z| zatxbFZh0rk_Z?i|Ubar9^BniGUs&XrX=3&%!W&N`yrp%UMmYEvv?F}RW$cV;@B{1% zkUYKc*`?^NmZM-ARdM)B&DT|7;a|a9%uHY~Dm#uG*MP3G76E>X^BMet# zxg7Y?Z#re?%2>#B4}FgAijR)v^wdB{(ImPiL25S&rc-E=z%KC_xH9FJBv-CnX}EyB zyqiH$@k6z&6M9=#$MRX`kU%=hITJ9*7okURUQee5#Wc}SPh5;57DiS)PrB2U{)kpZ?U2P$n*9cB!Iwptx~L67XB|@@1G6Apf;A!9Pw%1`?Q|<08vdjz%NjC(yuCnRI0ww36BA@F zBy27%pJX@BC3U7WXe7_2E>mm*9-v^>%Rk{shD7sc_;#MhfW%k`lVUpd(&Fc7PinPpo= zvg`sxS}_>m^Qq@sR)IA)bPhT*ZVBhJbUxK_-55z=*lCbGgN zh^(~r5R1P8g9{dl19HVL5?2J5se2R-^j-u90;L#dI7&~|-}IeaQ)d&;;WC#7uvnj6 z6cdMb49U{ZSr&A%xCYy`s=`%Iwx2YLY7c1&@)tj3H|?>-Lr(2IdG{E_TdsXBZtt8x|LhgQzQ(~GmfUKwp5FkRAMA9B>XKtGD1GW3)XVUNX{J>6$ctqSmkF4269*a%5~pOP{CRb#zQId$9;HvpTXAJjoj; zp=a1SlNgg@-(xR#;Eb+}Y{h%D#ep+!-~QCD;@l%U@Z2FZd%`$>2|bgrf;xbnVYOXB zOAp(G6*QxuDCfA%D;U2=?MHdIfs&h6vIVBe7)j@qOvdbRUan7E$@+gverx21ffClb zmE?I%p+#XUzlw}cS+iB-gEos;dvO(eTwVlRS-gsvXtQA9kqabENh|(7edHh-RBiC3 zl|c&~N%O?}3<3wyq-{p2c%g`}vR8Fjpu6YV=NV`07Gt=liaEnJ)}SVqPEso{q#aE& zuopX2gViu5uwtUewW(u@FxCaBS-b$IPF>BQa$HSz4^F#XM{tD}SAuF>11#~KP?X0x zD{|^FnC2`;4cU*pGxnQ;Ukj&z&*@t9S!TO6-w3#B6Y%9bPGZ_yN8^|qrAL~W}E)Y81 zHV}k93o>9lq2Gi?Wut!}gQ+ z6=@E|cc{vKG4)fj0{H_t>0YhLuc}W4>q#xE?e|mq<$rKL1`Tg4-{v7%?KJ6%2+x)if!?_otHbxAU;2q9qB4G zzWf}fC*97h5BmaMVC;nhid-0b;e+f8h8O^%*S;WD!ZgA*D=b;AKRo{B62(8bF*oMa zRbwxeFT*lN5S72IVf6q^PPt4HSE8{C#&vFx{TFqn7U+`BiADKR}e z7Tp@t4-x=o2o{DgcXO|hb*GTnN&!+RReo`A5V}k*hYIZriM?v{B{EcgEjg0j5sF+E zln^2q{5V@r3ME?%zi^2a8Y@*BXXN2Pp}K`s&UE7Tkjs%lX@yiNA%n7Uh5T#!a@8t> zQBb`wbpaBDvY^7CJslF1f2b(664Yl=Vd~=WpS;4l;JF6>nckiHIPj-=7-cx{r(YOx zu>b>eD{;_myEzzgNv|p%0$LzWGQx%>wf|M&;g1UuUGjwMQ}Oh=LK;j zvnsh%E{b2aLObB%+&!o$4FU5*^+TxsHKY&K7nUb7oai0;Gu@lZ<@la~xI*4gw}9;V zD4gUG0wLt@0>vB|f$a*jDiQdC@PUI7By)t%q*B2Hho7ivH;QpcDOiwG0*B1r!H?>Pm%dPUL4WWFPv7p=@)Ot zH5|{4oVxEXp=uZBTRp7=-Qp0QY+NBrd>n)<^~?eYkGh`Y_n=6UxbBT*kyHqCFC5k6 za^qFQULN+A^~n=Y3W7jO=%Z8Qy9=e0rO#>i+Q zu6GUr%Q+}UfyjY9F~rKT7BP6_-Gp4A^7||;<72q&Dp2?`!Y%i{7{1bD7*%fACA|!O z+kxU_B%y$wD^Pk}rd|5Qs&-EyuxlC1xhiJ}tIg)vSZqXh;Nr9-Bfx<;mE%a@7@Vf1 zNdWTZ>I8G-jWaeOnMLB%p`u&>JitiVKARNRaWx%E@%K8UW<)6}h7t}&)SfUZCL1mT z!trwqO+;z>z~M6qa-n|%V--Kgg3cKf!aL3WD2tQs+y8*i%qkr#_)L{Dumt$b)p-)v zi6y2%85-fp8Ezd|5Ebg&aL`P48FlwUhI>qD;sKR$g=>`qs7zv6rKro&{6blp4NB%} z&Thp89ZSq70c0Y}(IZDKsw~AjKxUvkj@hJgcsL-&2h9ne9w9#j^T7cz9`TfoEU$>t z!I4ReLw@o>3krtH#Kl$y0OJuH0OKo<17Kd!@@y5 zEPF6Qx+nW{{gtJC^OP_$+cg5>mTI}JK))wGTPzmzSXfna#EY+UZl$G1MYU0gmvp%t z@si_yLcF-k5ifpS?TD93mFULIf)Xr55e%k@mFTVPbP9T@5(T-LmIIYkt46Rjys}2q zQnJsv5x>Qcu%ISaR+lWpFRLgbj7RS5;XqVoxUj#+sDKVeqhsv7Hn|;70=BzY@}BwR&r(5!5q09p^`5b2o>ga z4f%DaeI4YAZ>n)ugWMdKGNMMTE7;gsgSsX5h~X^UJ+=mrl=?T|frbra?l-{U{4*>% z=v3hK=MCiIHdijGb`DB8e}md19UHZ8#1+wuRWs>EcnBheXLKk^bsWl#WSJ?3C*ko~ST#hqoUz=VBXA&)r0x@CoMG@w9 zR+8hHhPT_Kc;;oq6EJ&QJVU8@8i4i(YKY4^!qmN)N;syZ>&;@OP$T2za+Mo73Uy3L zzFdweDSwOD|0}?-`)(mWSGkdL3x!_8l<@6&i`F6O;>c3~a1yjD%89V z`8krLUmfyuBuSS1K#_1>BC-G^Ki8pI07&37VFHjmP!}K9xiP*j=^Q+=4wt|qhX?~a z5><}|J9s3q9%aU_r*lTtqee+`t&ppE49EIC^UbF2{^4lPhf#`Q{Oi>*dS0iD!b7G;d6hBS!i)rf>&~ zWHu(!Q}$6~BDwXHONsurQ`_!47s(rn5 zOi0(3497QZWJ@ABAY?;JjyPF%P#%s3sopBK5*N@dTH%4+l%NElAew?4f_KQ@^>#$w zNqO_F-ko?j6l5SCmbjhqka?&0^bixl8K3>oHQs>*C z?Hu$mrDDm#cDAjC*={<>$9Lw47}nu-w9!!>DP?1$?A3OxKtMhCQfsHOzf$COwD42A z+%DDu9#xC5iURQ9@O-x_DilZL-6~OjU&s%P2XkNRk7GRQwkLzFcK`p!)|s;qL*E#1p=XJeL7mBEBKZlwb~x2 zI~X_HBTp5&a_e?Q&w5aIjO|KlL;DkDc~=*ne}&d%^QS&*H`4t?3y2k&@fdE8eX8f` zjI5)Inr;0T``PYe^z~OadaZH$h!sj_xqsbp139dFGxHar?AQv$LR@AoKD>dh{OfEg zc_B_xk^T^t=M-Ttn{uv2O^sivhV|jP7hd~eafb7nR`hM>0_2B5->#0cB^q`P~ zS&yl1&HpRjpaB}_5w*hw$;Mg#`ezH2W<7Bp>*f6U7jg}9&oAT}t9!aElc@^Fd?+Y2 z>fXq&NU7m;{wvaGgg#@zjTCH=@<61|D0LGBi#~%k_a-OZiZ_J^ZlZc%+k<-Nqrt4l zhyE2Tdi?HRbEi_MUw_6>relvv%sKm zzffC{?OvQPs4eF9qDWCwf3xq{kayZxqqNw~8P7langZsAuDTHL`eG!~O?p-_I; zY7p7-ID89j&KXs>6_22?=y59n|I`S3psb)y+vA+_g2z+bj`F=3TA-e>%0x&;i`MgiwONVO)&Fu`w-^l%J*dsbXY&$V}h7sdOrdqriiKH zGIWyf_2aDs!ynW{A6V{Rb^G%xC@Pp8WaMT=#YFoBF~#!!_yrxs*Y-n4fsDiRKj5bQq~%E1k1> zUz2tNi4hEg4EL`fl6Za~XFL5IseC+;RDww2^g!-1B8j&;b34P{C3oCOctjFB#QqiZ z5u5HLCejE>&wiUnICppXdTwD*dE;FSDzDLqyQlzRyOQNTRN8x!d~=tp!bq}KK9z{W zH}issFoMCcok18eJRG>2x!0Bl*&ybnRNvLvj5)TalFCjW_&t@=V;Up~BTA^*ASzt4 zdJf`zO|S`)>5s3TAH=haE`n!y5LKsUCU^d4{|dT@x_5KBAc^RHHyw0$jkw#HwMOC< zJR*Z2`|sw2K@Cyv9{l#(AjmcT6^wuky@#X0{>S`#NQ_NLs%h^%vS_gEG;>hOJ)tD=`U=V(DM(dK?m7B(9hem~hs(~SE` zcvRF_Og+hEp2a`fWTe?JLX1|=VMMO^9}Z2&BhpMb&)82sz#%jf6^1)k<2h-M;e-el zLniuHSKAI*O9~w$>Q#G zxSwJz{X6MTe1JqIrtv7R;ujORc@Gdg>@QOO-yC9p5$f8%i5T`5x%b~x_$H^FF&{-b z!Q=36iW1cXB0c}=yM)%NSsF)!DUpF`oGKDb*e_@$Hl>lu)JMtVku>r+PZdT{elMuK z@uEf;^R)m(T8aIm2(?gK`{MtSnm>qtw1dcllw%f~ha^yhyC#$?sZ|ehC1@qc6~`F0 z9w#tbiFyx#Z1psjY7&Sx5!v(*g}Ph^?7u=4MuU}FO&#;zAuL*qCXrQIVE@(1GuG&w zu~yB;fOQ%GBE`h~Fc*=ddB@^w&;}?Vy_l_q$gc8jCj32!xYj^Eim$wXY7g| zwcTnykyD=j7lDUQB!M7_nD1Xf60y_2kVM31PU2dFRgq?s@WQGHnzb%H85N4bx+8h@8+do>lzNHU*!D$O2!#Tj5?Tkk`9d<*i>-&rneAQiw z6Q6aQ?K7x^O&)WT=JvGDW0Y#pKTLm&qyN=Eug>+I3`iCCr9Kw19f2v!??KOs{c6s{!s7iv3&~R=la)aep%E||4EJ=sleJ!-zR-0n-w|C zNWh|oH9j_V0>yIdNm57Dz}(|gRG}mG>+zIx@hJknu}^WvplevhFLVugPjM9$bPKV%KmEc}o)9GFHr zY}&yfT4|>IkJDcIgOHgxjYOz2z*TpPu3ZyNx7+_+a`ha)9j-^5G`=$&p9J7gAx(@l9Xuqyck;?Cv$2E4J8>Tr!>dDQ=Q zN;29hhCn!+Z$@crA){r_{IbUZh3_%0r+dsVcHY7kcc z_or|H9e4Bc6|9Gxp3Ad0bT=cV`<1?%KtT!c&Tdk|W(bvR6oR1NcQcB_aEN6jd^_K8 z4@c1iFvuTCyW68TgZjRE7;yx3z*8-`;`!;N*#dYEX9=5e)a{M7;>|sNC$~i4TPG02 z0&lird|fxcauudT6Z1KJPz(&qrz}P*!yYIG*t`snNHI`sFV%XS682IQ5bl3u z1ev>e2T51{C*&k(2+Dm*PHNVpWTy^c@X_T{LI)wi*D3S`p z9#U){d7m03)}{m}T=f%;(6D{fXjBAzJ?&x%DuQke9bLEJwRohz+2s;Uwf!yF+mR- zo0z$ig@#9~S1w;HNBNEzY=4x$6d{u%+5pJFitK#bq zHjh)kB~VvO2^M{e#|O%_2P%Uw-M}!dD)Pnfnd*^>t|z^@t>L*vbU^W(MhND+qM$se z`w90Iwxawx)|wFlq5~d?(@e^RR8StUQ{{K$ z5#<5Xb0wGu{U-+)?qG-J?@8r!W%neTFlyEHdrp3bO?U+3zYWUrY23r#d$Pb9gMS_{ zWC+z%zbspXhoeD@aAXpb&Ecl(j|vMl0{d_N!0Fi?gnh4^VbloBCpM&2+W7-*QLx@| z><6xHXbL6U%-X^xh2&vw3S#TJdk7pJ=pasD0gb(L{-;?B`-YVN5WmgDVB9;YA;RO3 z>~^afFk)rFLgFE+_YYA`WfMC;afib5r_C*RrpNVWd(0zBILv*j+0u>5CaQ|d0m~h3 zj+vSDO+>KZFj!u8!xwEE^08Z@pjMc8gi8q9hKwD@wY_EnS6*>Dp-ZVCWqTR&UvH;m7Kv7A68vdwmd`SxMN&a&?tP}o5s4!F*m}kX!(a7 z<0^wCjz!0~n6M|v&SNAIOmCd!m-hs@;5eOhP$=AaoX0&_+L(TvP(h(E_Q?5sgm;`9 z8)OP6j*}2F1#0on^xnu6uKPKXDU5>uBU50D&l22>AdCrug@2N%S;vicHf=_YU)=s% z#IWusQVr6DJ6cmK#{E*cMqK$~n)Qo^4-W8;Hxh<$rXXRcTc09Y`ygVR(>GHIgSm~n zPLLL228^qpU=YtvA?r_&Lv{-J4zlMu0eKHAqeuE9K5ALSP4Ak+DgKY&IQup52WB*)sUcRjbhVfq9z-t{CIuk&}tm)Cb=WZ~`Flbi&d1G6Ye zRF$t!R<2^>8z)baR+|RpE3?aU<@%O7jGVy@@LlzWB9s3^wl5(2FtW7ayJ)RLh#0gE zH~;F3waj7SuiUY)p-78D+M=H?VMp|1btq-NkHvt|os}x;n_o%2W`ak4*E7rrxkB(z zR@a=Ope`+@L8mw)n~cnY(Iz8b{Yni&?Z6DcrKL*vlM>8c{zj{Ufema0|3-c;E2dt* z5k9CMp0f|ChxNh7CO1ytqc@+Vb?EyWO0J-K82T2k2?KxU57LJyh@}s{Pmy(vdn?j` zxfhA_59LoY4!c^3r>W<`x(4-}T5_7gX4etl*0=&8QADN^)ef? zvzvJlJG+?|v$LDogq_{~fKA!i&Af!2-ONOGb~D*pWUqPMc`E)V*+bqy)-!1@*@B+6 z;>oPP2Xh(2{-g{MI?N)J_ZJC7=I}^M9-Xph87851pvcZrKny=gI!uO)Rdder z@OMxFh-_p`KZsB~d~Dw290?$JsHB_E(J>_{?Ht`EHZpE}nk|jrILFNhn~ZF#$Oz)_ zIr_#Wt7yWTJ6*>3~a}r`L zigllp5+f%zkx}|pUZpCPVCkVp@7JU zBP0q4hTShxhrWtKQHBg6rsBn8^{|{V<0hu2TfT?wsgA{CmH$>j_-o;z#bfkEwy{yF zG0)uEgkmMsx8wPhur{4jJQj8*am%GP$z-*B1D?{B|001PifFdm)%9O78`4Po7sWA1 zSs*f`QKJmc&Jhk;8^JXEL)hbbyCj9$phT=P-{B>eAi@x(8uuy#MEZz5B`A)dk2qT* z#*{@a1rvr1ZAx;YVM-}U$e@s5Kvh;RmW);9(>$LZ1Bu+JUrNRrVo@V@J|1Dq5+>Ri zf}HQmv^HY+U^2bxARl}1)kx(?FR|`??#_eCcbv^5cpAAAOuCff_z^p=Ek&L%rok9z zIdyBSGD;EhNH>aP_+M1-&r8Ml_}8{EzMjfxzijDPHIx$xrJV))-c_3T!I(yyS9vX+ zUpiI=iyApT9xQ776YEjM%1|JWDalAz8i<4wt9rA;d50eVDx-<-S1QMxbgFN8kWf@E zOZKNIu`C|wCupcjQ9aO4ppUP^P5q}XV`8JS^2^5RYk3;iRjeElpH@OS&h?B^KqRAh z4*y6-vHW&gnC;~#JhT+-C|r(Pf{_ghVlu_pq&x?(w80&k%w*i#n|aEc&E*Q2>F|aq zS>;K1w(>!wr(pey@m~dQWTp};;2W%M468tPm;2kPPM=y6?mbcdU#)YGPFzf}isY^9 zmE6h8{42;T?yML?4=|bm)!c7UIM$uR3mtTCEa><@4)Qu3%vWtH*vM6c= zvXoYd`~))`Xa^W_RU(&5lyBc4z^GiAYsyw)Wv*#yxOr%hLz%N@N_fvIrTvvTRS;iH zPeX83Iz}2Rl@Rll-a`2`nP<&xjE6Ir=BQbpk0|Ck&}!unhz0Dnn z5n9x+<;tGw9NM8GABviZduV&Zd&9O0{WZ>RQebN*p;yJbScOQKiK^OA~JS@}@1p`b!_2ygsDWA<${7LDtpbo(7f2 zH+5((e+Zpfp%UwIwTF~y999Ofu!HG^x&-fPB}cJ(T>g(rs7HvOlma3_$8+{St{nUS z93}8el-vm=)yK0)X&~-W#tZdh&EuLgUVzaiEtMOPJQ@xfTK@_fj$sYB(LuxUBERCU zWZcq#cvmrQG21Y1X$Y@ph+uYNhyWv%21YGv_#L#or5fMaJE%13B#>lKX>|85R2tRw z%XNIHG(90!C9WSiOCad!wyanj>`OoXQ$nn&_gg7`0ViO;6|>k$rCz{A2bspA3%KZC zm5WEQQz|lkQ^JMdccp;H2*z_466%a{>=6VS<)?eP>q2hHpE`ai{qmjTVr+zaEwfo2 z-!55#4Oo&Ik;XZt8Gk7YSgx_R5&1x_QM@rkuF=Xwt})2`SDa>=^&C`jO#;-ySo|VmP=G%-_jOU z1ha-sn$yO%u`_JXd3$p=GL~VmZo^lk9>=v%R&(O)x9|MTylNb7?x%A&^&K5K{b36y z(TjGXQws)oL6Y%63m(hMmC=HGfgWQ}b=S;ZBv7oSpA~B_F7vOT$9SqD2C46FN&DJH z=`EdUD>9Z>qVf2!C8wIW$%BqkSdjd)C8H%KfG=}?W-)4AzL*}U?`33QoMjo0UFJJ& z0~V_;qxAOQN>9AzcDjwjmpRL}T!BEIdBQ~QUy>3NNoVK-oD54bd@PU{i?MY}hJDdz zgsUy9uM#vy&$Z&zs53le!c6w=REOoZ`4i`3@8W8^MHi zjVm}^P;K;B!)5fig6xNFwMrg5iv14je=r6L)cRKS!}UBVh+Ro=c6OoH zx{}Kd#w{Mcl13>Qw^(OCWE|CW=*n0vWE^o8KhK> zqw2_TFjO7PWnV=FAFLvK1X~w9sxx}Lx(#J=uTt6&dZ^Nk`;=qcuL5J3Vr{{2C4orD zfyEv^Q))|NHBwpj-9MJw-Q-thSC6!%xPqFa^3^;yX-d4B$fKeb1vLlTBwx*g_mFb! zKUzh`7$saoDt+%Hft^=zc%0JlV4gk4{`>#qSC~Yeia)R6NeW_)hV4jwqLSJ1DJHyMN{#`bYq2bjFnL}dPT8hT&t91tX7(_Mp?#MEmL&>tJ51oA0uB zf|;4fTW!Z~)P{dHjwxT6@%OlHv<>emqZ=0-R30C9v)KeA7hAbF5}l=&f>8fN&TR*ZX~ho zA2VV8)r}r~olib0-^8H;CEmm#{h8v=c)X6?IdJ?@}338SalJ{kl== z#a>-o`@b%Gtx|QZB}B1bl%GP!%XTo&Uhlb}bEU&hFnpX-S2y({v0%Fb-9IM~(;Ub+ z(Dz+UHF$U)Ge*a}Cq*z|aby$~@$+8PnP9-8>twQ2=@t?Q8^dh&!sPt5^vm5#p(X2T zqZW7F!quHt`Yl`*gGOL=M_K)J3svV&#cstT>=ASGt=y7vmU~RRm6BiXePcX+@lG*& zZ)LbJ*J6)}*}Qty?j5UUb;rR`EDJd|wplT#w?~b|HOoZa@vh09F(=LQi)(UAh_s{E zZIB&fCPNPwZzE%6RRApM;J)|a>_|H3P5ozexwiAmjS-tW;5k4^~yKQB6e-6GR=C_2X(0bx=V3@|dw7A!;edsI3B{ zj$-`@kF5&w(%*Tpj^nZZglCw@A@3&B>t-&aq2g{QWDs*)dpjwg-fBf5J=pQnFo@&cy{6Mq;5V3H|~;qx&MT-SD@?OD}} zDi+fF$8^PWclbfF>55X9lGKNHP&Ke$!2o0dH>$(h3MDcJaM~dJXgGkJH&fC8vRe8b z9Bvm9Ktm6$N-geu!DEBDwz8XlsYh6g@ov|Pb`7532a1Uf7ZOC1B5&a8_CA|WTiaK--_@wW>%%2E-A)8Ci)*FOV%i$<6vOlO5I%t&sx zyyV-vsLqH+Ms=q;Z-0*x2+M?6u83|hmMiA0=TP7GxqCAYm#C}hM-idaAMjtr$Z#9& zZ!?HHin$8xr|)4UgAXCttzZzP76c^W8Jz1NK}GV;Ag(FctoY_6i;T@ClZ~1dkdU?V zYI!$h*F#BnQ+7d2GJK0iM|X1*u~orq_1!K?+okyGZntrD$j!)Zva0LzHg#jk||4@5Gt8g$1ndXs?&sCv0A``yLvrpe#9i54AZcOD-Es^q?%cV;Zf` zH*?5jke7sou1b5E;9bicbX;5J?+5eXUd;=ziO3{=2xO<4>r8g48D+9l&0-UI$zGG4 zYKq?r*{P0KBDSVAJwr7H~=|xGy!a(Egdp{_f{5geML-Ixt_V>Z~0*;uG;#%i51cBt`U@R52OA8U%SQyUESJ2TktYzg>I$;S5@ zZ5&m$@uT(`WmWQJP)@Cl%Qe`zTA2phsv8}2%IKlS*`S|#8@FqUF+dxPfhsiaQnjUk zy}*qT8f~x{qcL9lj7L>+8Aw-a;~5P$rYqBUR@;o(I%T}C#>>HW^)~V~#b7sL<98Jr z;3G1Spz7lemzwpsMDw6~HVaW>g*L}vrnrF<{4r8It7$2$WdhoIO8Q9b^ zzS9=tdmS~}tJbTagSr{FYrKKMKx2fyFrHDF*T8gaOMz#xEd}ziEd?rITMAUv8Kct1 zrW<0jit)f~-AHTErgA(l$s6eaA5y(d9DhbVjTxF`EYfP=N8sQlu9B)>aWkaqcQC2) zBO%pz!Dd1~raa?WoipaC`4;e^1{mLJhHaf*8nq$|;w8UZjy6y#(S;kPIgHI(rIA!{nvK%8J8PWTWY zPB7{!-KeJ=qrM6Z6bnW}C2a@Ym1gva&{O$#p+DFG{!$`{i?NElgF73~DzeG4`@5!> zyG^fNn-{Ta{1IgJc(R$u@~?S0>$xUdG6erC|8}!H9MWUGH>AgU@7|9I$9iw^osjk3 zR%WB~G{|JVcb3U|@4F`Jy(dl9doRd?toQaZS?`@}vfjJiWWD!0ll9*CUGPTw74s(g z6_XX-#U?AffxS5YZrrzUev_r$K_*MPvmkXScQ>VTy^0K`iS~dlN-+i~-AGlAF-Qf* zy^7_7p-M7_E6o@Y1z{!6t_h0U3nnSin5Ve_w`HIhx40#Ilt*yaE#0q9~vp{AYP4?Xf#o(afvdFmdZ6+smN%pgl|BSQjF`BZX_$m=&S;R`NVI*03{iB zDb2V?S;qa!H-;&$0E|$gF;c0wfb1>D`WSIKhPqBou+_93sbJo#nZH&`kV|L^@N89X@P8svm_%vPJ z>B@9^Y