From b94bcad28837d6cc758875379a13acacee57acc4 Mon Sep 17 00:00:00 2001 From: raven02 Date: Sat, 29 Dec 2012 09:02:47 +0800 Subject: [PATCH] Fall back to original filter logic when filter option is off --- GPU/GLES/TextureCache.cpp | 8 ++------ Windows/WndMainWindow.cpp | 5 +++++ Windows/ppsspp.rc | Bin 29384 -> 13304 bytes Windows/resource.h | 1 + 4 files changed, 8 insertions(+), 6 deletions(-) diff --git a/GPU/GLES/TextureCache.cpp b/GPU/GLES/TextureCache.cpp index 3e13c466e3..6322d9a62c 100644 --- a/GPU/GLES/TextureCache.cpp +++ b/GPU/GLES/TextureCache.cpp @@ -428,16 +428,12 @@ void UpdateSamplingParams() int tClamp = (gstate.texwrap>>8) & 1; glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, sClamp ? GL_CLAMP_TO_EDGE : GL_REPEAT); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, tClamp ? GL_CLAMP_TO_EDGE : GL_REPEAT); - // Tested mag/minFilt only work in either one case that can allow GL_LINEAR to be enable - //glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, magFilt ? GL_LINEAR : GL_NEAREST); - //glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, minFilt ? GL_LINEAR : GL_NEAREST); - // User define linear filtering if ( g_Config.bLinearFiltering ) { glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); } else { - glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST); - glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST); + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, magFilt ? GL_LINEAR : GL_NEAREST); + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, minFilt ? GL_LINEAR : GL_NEAREST); } } diff --git a/Windows/WndMainWindow.cpp b/Windows/WndMainWindow.cpp index 5237026b8b..fa045c4286 100644 --- a/Windows/WndMainWindow.cpp +++ b/Windows/WndMainWindow.cpp @@ -503,6 +503,10 @@ namespace MainWindow g_Config.bFastMemory = !g_Config.bFastMemory; UpdateMenus(); break; + case ID_OPTIONS_LINEARFILTERING: + g_Config.bLinearFiltering = !g_Config.bLinearFiltering; + UpdateMenus(); + break; ////////////////////////////////////////////////////////////////////////// @@ -648,6 +652,7 @@ namespace MainWindow CHECKITEM(ID_OPTIONS_WIREFRAME, g_Config.bDrawWireframe); CHECKITEM(ID_OPTIONS_HARDWARETRANSFORM, g_Config.bHardwareTransform); CHECKITEM(ID_OPTIONS_FASTMEMORY, g_Config.bFastMemory); + CHECKITEM(ID_OPTIONS_LINEARFILTERING, g_Config.bLinearFiltering); UINT enable = !Core_IsStepping() ? MF_GRAYED : MF_ENABLED; EnableMenuItem(menu,ID_EMULATION_RUN, g_State.bEmuThreadStarted ? enable : MF_GRAYED); diff --git a/Windows/ppsspp.rc b/Windows/ppsspp.rc index e9561bdac4468508cfa78c949648e089abb2f193..aeb975be72f2ea79989ec02bec57e8009212c673 100644 GIT binary patch literal 13304 zcmd5@>vE&WlK#DZiaP2Dg*%3E>*m|}hoB^LjDP@Sw>Kt2fh{Z(Er9}1yS*{5vrlqf zY`?4mp$n4x%yI9oXWBNXGApwxFJESrzkFe%=qXLI`E+x*a1-QmRI5p6ZR5Zm6a`4! zq5pereCu{QC!YUca;AF|kNX4L^4XvCFfhJy-Fxuxbni_Z+Zj9ZS50+%!?xrD28_5h zmJj}oq1_H#b;M8jSIHHm{Od&3H17BV!{h}!yz_0_yf-Y}zCS5BHZ*74I1wUTDXcN_ znD-LS=S-i^8bV|e{73tw&xeL}!tiDK{HxCzTAu#Bp;ShrTqqr--BGT@Ag&v}7)Jwi z-X9Mqnmx9BrQ5==?lq0%-el}J+|^W%Lm51(W8c2 zk}8*DH5;+2Z+~TE6+_#%4Om34OM@<2%H@Tk^}UJi+72w#G7XR10(*Y9HVHiVYTtt( zVr~td17m?PuChE?wB_W|_3jLQuaK3_^(a%b#a$G>Hk7pmNzMf`VKQwP@b#tAEw**& z+GB@gCEH?^1yF!gpgoMe)lqtvM+9;Ckd%;8xZy0y@-Q{={jeO$6}AX`JH6{|#!@wt z4}6kYX?Sm$A3SPFoTtgW+i57i2ImmofZbLuy2|Ahc1bWHA<9)Bj4h2qi4d%4-r^zxG}t;*M$q-8J^Kc^g6ybo0i+WgIh@ryc_$To@izW zNnYAH;g&9=rrNj1Le!nO*=@BI*1qT-h?^r@S4|NFA=I%rx+QuU0)-w$P_5#k`k1Wp z_akF#BQowp5Bru>wr`;%1(>#SzIJ~DmJ25^CXVBIj?4uVok?wyRba$K>5 zB1x0eV23-GinNq6EGNsiG@8BS?DXj~dwgRzVVp+anEN)J{qw)mDeJV_u$GOu4L)6L z#Cf*}-322RNdWnJ8ZLtLTgHMkWXm*JhH3uBl4q8`gi%Vld>KCF(f5!guYfh#*&nh0 z60&fyng@B3vM6KE_z_N5PeC3fG4g*9Pm$KYhx25)2;-bBSLrgz!i**H{7rls3avW16JjKepqKnbLj-j#Am^JA;FcGGh_ z{g#M6Ewd#SgPlI7VHg9aeBM^#O1Yq5utWb}^XQSN{}Bf9@AG7}WWyk$RXE)c?6X+Q z5q6KM(|MS((=EC8Cb~M`pGcifqhi~h(h$FA+c_VC^~zORJMoB*Z1-Ug`t*7V>s(zP zaN&=HK6Nl>6fTnV4LBTG;2_-TwIocd1w6wfPj<9dE`bK>5KozQfh^9Ii!$qOz?<#h zF4I@xmRPn?0Ya@g@4i5n^yQ*Fc7)oPBq8eLX`oNhs9sl8GWfU zdBp`19uTqso4aOzC{3QXm2Ph%Np2ztEr_2&X=|#baT6POQH@?NJ0XkRz|%q6Wj&xCI?3P#p{rrnTXANzo@dEVeD)Rn=!{5Pvux(%m0Mv5{t3JGt7sW33jG<*% z16vflsN=Vq42E@Q-*WwAI5u={8Wu`Wy`rc}$*NFRid_>PSq%{J448L>(%-NE0mbL^ z)+J0@zV5YTdZiCgZTVtejBZ!s`!)*2QAyD4N_0g8H@5qq1%V7jJ1>iRK-d_4L_(K1 z^=HMdX4{gxb1g$QvE7inR}J5MTdQN|sv3;4s8mpvCB%1I@it-)z1`AAChQ}+Yzf`# z$+)@CymNK2&wL#fer|^=!M7%DpG(#>=})NHE4mO=R}cy9nW#Dr3$ZmF>Y=rzZ7*Q2 zD0^uE>EEX?o}!C|2GF`SS6ctC=`$HmNi3WWQ_}D3HOgPuJb4YX9D2&2O3BZO^}d)vlHZH}@~j^m@TiL%VL(4j7RKQzgDu*V(MRe?26 z)~^~(GYO{5%h788BOmk{Tk}zU#y1Ch0czNCaHksVsds#5a5WjpKws6Qy!j(SduKft z|7!R`H;NTBv|K4JDrD4;?<|+QiXr{=?lQPz*^J$uz3Bv~mNCBF+9hz*vB&pU`Is(l zGt9!AxS_E|8dbZ1o+6ieZ3%FU8?{lx6jd|6OLpiyPpHS_Ixffeec>8SZ%(ZY6t;ta zdS|Sb$3XS`clhXUF&Y?8)x7$HrMg^Gn0CW8f-0oP&K~LEJ+`_NvE6eeIof4XGrV!w?0vxk-)FkQ%C@I&V^~i$yF5N1KEa zq)=sCw^s-&)ThXf?^e@KX0v(71}kJY4;_t=oQwKlWZt$oW5FrR*fh~`=DgO$usWg> zC8=zXR*@>o!W5ysQbB4o7 zc`mov5TI9GST&sXfHdT;tk~4ksdPStt>P>vTm1~tuC{rS56c~{lj%N6!)ID+b{hUb z3o@d{VK7GvYjfZ34VTN4Fmh)4s^W6fdr4jydGt&~c>ta02|b2QdTLDz2NKOY#1zfj z7v`AfNQ+|4_K(7Vi?~@@g*2-6*L|*ylC)Ej?%1Rx?HnWRmZaSswS*~mkCFCD(q0{D zuZHy4GBk}@oWK&%k)-Ap)aizs4qTjD_q^``i|lX0QJutb0F!O_b(j}CMJ*_} zk=*oeqbMkGZ5>Gb|BY~e0b=%E(L&B%*eU%I#{Vv0_U`yDUiR*B`sv+NR{@F_|A%;4 z06q#t-T~0O2p8W)SDGT$A=oVKJBnFTWaovn>7rF!9HolHTocoe+O>xBqO#FP!LVeh z+0KJ#`tAEkqp7bJ%e51f6#97NtlfZgDWER4JjfQu{Z~lQ45m{$RFS$#ZE$PAc__N+ zHIfKA6t8)@!YLHW*3;%o_@l@R8ypPF^WCvH_`KmY;jB@^NXmVb*I!z3AbP6EU&6Em zZQ`oP1dtxLAGli+nE-?V_r&?XC{ZZ=ZLJc}xT77WE@00iBJsCn673NC_HbzOKH~4K zLx;XK>)ae9bF>)PBf!Pe%huEbT-LDf`+yYM%|7K(+mkt2q5}Y+3`O+z<`*a(cosEp zO)_p&Zc%^@d00Y*T6(D}@K8u-*2qR&>12O$i==vNiZq0{_@Eph@PTBDeTU0{agNkI$B=EQE*8F{ZI7Zh3z(WYrpp?c;RK@&X_bTQKNhBlMePt zJya?h@W6X=9w;^6Cv-RGq|-yX1Mt4AcefKXX@n&+Ewd9g*eSEwJPyTs}2x^b~nnAZ`}UXYx)>$yQ# zRo{nb8u!x9#cq!+>TGQct=~GD2iN4bCR(>vHmKJtA!?^z67%kGH3{%g#Jf9OD1?hr zGno!B>EMkX#9<~Q{fZZi?g`+(6Xv+K4)D15o(2z0b?A*$@0M=KUYc~JnT|r`o!1k= zPYj`t@o6~E!tJ*$dP`?W^0n<@WY3fjbli(a3=xcQzqxu-!GgYNYqzZ7<ds+7*N< z#05HHyMAD&+GkvyYhCK$=PwtdxLYU;rheo*3tht3@@HX?cR_m08jD32 z{YqRGlv@tlZz0R!s**g`{Nr#_V8#ST zvEK+3ma~=;iIC9n-DUZQFb|#$V0!3q$ioc)%{cd{{b*6V?h7_ literal 29384 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 diff --git a/Windows/resource.h b/Windows/resource.h index 134447f2a5..af56ef8446 100644 --- a/Windows/resource.h +++ b/Windows/resource.h @@ -247,6 +247,7 @@ #define ID_OPTIONS_HARDWARETRANSFORM 40124 #define ID_OPTIONS_FASTMEMORY 40125 #define IDC_STEPHLE 40126 +#define ID_OPTIONS_LINEARFILTERING 40127 // Next default values for new objects //