From 25154e5b9f8a8b6752824e71acf06fec56fb9458 Mon Sep 17 00:00:00 2001 From: Lubos Date: Wed, 30 Mar 2022 18:27:12 +0200 Subject: [PATCH 1/3] Restore mediump float precision and fast-math C flag --- Makefile | 5 +---- android/app/src/main/cpp/code/renderergl2/tr_glsl.c | 7 +------ 2 files changed, 2 insertions(+), 10 deletions(-) diff --git a/Makefile b/Makefile index 76b823d2..3f201c14 100644 --- a/Makefile +++ b/Makefile @@ -442,11 +442,8 @@ ifeq ($(PLATFORM),android) -fno-builtin-cos -fno-builtin-sin -fPIC -DARCH_STRING=\\\"$(ARCH)\\\" CLIENT_CFLAGS += $(SDL_CFLAGS) -DSDL_DISABLE_IMMINTRIN_H -fno-builtin-cos -fno-builtin-sin - # Flag -ffast-math replacement: https://pspdfkit.com/blog/2021/understanding-fast-math/ - # Flags -ffp-contract=fast -fno-trapping-math are unused because they are causing lightmap issues - OPTIMIZEFASTMATH = -ffinite-math-only -fno-math-errno -fassociative-math -freciprocal-math -fno-signed-zeros OPTIMIZEVM = -O3 -funroll-loops -fomit-frame-pointer - OPTIMIZE = $(OPTIMIZEVM) $(OPTIMIZEFASTMATH) + OPTIMIZE = $(OPTIMIZEVM) $(OPTIMIZEFASTMATH) -ffast-math HAVE_VM_COMPILED = false diff --git a/android/app/src/main/cpp/code/renderergl2/tr_glsl.c b/android/app/src/main/cpp/code/renderergl2/tr_glsl.c index 5b07e82a..1906d4cf 100644 --- a/android/app/src/main/cpp/code/renderergl2/tr_glsl.c +++ b/android/app/src/main/cpp/code/renderergl2/tr_glsl.c @@ -243,12 +243,7 @@ static void GLSL_GetShaderHeader( GLenum shaderType, const GLchar *extra, char * // HACK: abuse the GLSL preprocessor to turn GLSL 1.20 shaders into 1.30 ones #ifdef __ANDROID__ Q_strcat(dest, size, "#version 300 es\n"); - - // HACK: use in main menu medium float precision (to prevent issue with missing models textures) - if (Cvar_Get("r_uiFullScreen", "1", 0)->integer) - Q_strcat(dest, size, "precision mediump float;\n"); - else - Q_strcat(dest, size, "precision highp float;\n"); + Q_strcat(dest, size, "precision mediump float;\n"); if(shaderType == GL_VERTEX_SHADER) { From 663dd1d5b20d1bedd7eba48ea5f15b725a8bc5d0 Mon Sep 17 00:00:00 2001 From: Lubos Date: Wed, 30 Mar 2022 18:28:41 +0200 Subject: [PATCH 2/3] Forgotten variable removed --- Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Makefile b/Makefile index 3f201c14..c51f81cb 100644 --- a/Makefile +++ b/Makefile @@ -443,7 +443,7 @@ ifeq ($(PLATFORM),android) CLIENT_CFLAGS += $(SDL_CFLAGS) -DSDL_DISABLE_IMMINTRIN_H -fno-builtin-cos -fno-builtin-sin OPTIMIZEVM = -O3 -funroll-loops -fomit-frame-pointer - OPTIMIZE = $(OPTIMIZEVM) $(OPTIMIZEFASTMATH) -ffast-math + OPTIMIZE = $(OPTIMIZEVM) -ffast-math HAVE_VM_COMPILED = false From 4a5cdc47f6a42242352cbdb87cf6cefcfb13827c Mon Sep 17 00:00:00 2001 From: Petr Bartos Date: Wed, 30 Mar 2022 18:29:39 +0200 Subject: [PATCH 3/3] Fix setting of HUD on initial startup, add HUD toggle to team arena --- android/app/src/main/assets/pakQ3Q.pk3 | Bin 322320 -> 322352 bytes .../app/src/main/cpp/code/client/cl_main.c | 3 ++- .../src/main/pakQ3Q/ui/ingame_options.menu | 23 +++++++++++++++--- android/app/src/main/pakQ3Q/ui/options.menu | 23 +++++++++++++++--- 4 files changed, 40 insertions(+), 9 deletions(-) diff --git a/android/app/src/main/assets/pakQ3Q.pk3 b/android/app/src/main/assets/pakQ3Q.pk3 index 55667353504a1cd3d4520230072604cc3427c41a..e20d63433cf84867f9ded456329106c9e4a83e55 100644 GIT binary patch delta 2744 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 delta 2702 zcmV;93UT$Y))SD{6M%#PgaU*Ev;={k4ivh5RC5_E8h``<0Oc5$kDde?e>ZnSVib2n zVs&^6009K(0{{R7=mP)%?U>zf;y4h%pOe30l#@=~7nYCGkGrScmX=5qdJVm*QYB;( z2Yd}SvK=U@`oHhk2~h&=Y1QskNL=6{nHk%eUu@5ee`7pM(ujhWvad7B@iwkaJ=cA9 zA08m+3~#UDs?)!PhX>a+fBJJ8!?O!`Ih@R}otSGTxEdLymnjxZv2jA7o;}8ClBiHp z%2DD-8fs{q96=op4_k29Jj$&^n5r|82nh|S9k)^6$TUi?u(SMOEM!E{#B~H8%(2U7 zP*gKbXQ6EylZcMR6O2jtm`UpP*ML94bsVD>sV>Z3Og|kJVmDzTe-wqXJJ=)>;t1({ zEfQwb8DZQscJVTUXIL^MOU5Iybe)M5=^Q3Q)PGuy?5^nv` z+07sby5IbpVldMUN!WygKkQtMzV-ae{^-WP><+h0p3t9d=_(t?JgbnPm$eq;S7E#j zYON{IWX6tzRGfcj@*0ogtyXiIc{04e?u_m`L4Q!d>Jfz>e>7l|skXSn1(Dz_ZL~f&x-zfR z{p58;Q>g+?Y-Z5 z53n_p&Ohj+!SP)ZmC@K>cy-$w`c9eB*q9F4jIP;Prah)K=5JmXBd3SF>UEr!H1g2< zHr@{6*u#wBrOb6tV}u`3u35Z-A(0cRt5eV@f5+jfQ*lq@K@V5%Un#zx8T@x4jY(-3$h?F|dj$8FZyazJ4zZCGs?zZM@OQ}-vUM)YXwfh~@ z({5U+LR-5S9o%=W8(8&sGg!SX^ zaLL9B4)7I8n&>ZBNnnxkq$L3}J{(+A8JkJXG0*8TW6-M3-jD96$FDT}DEYO7ga#>6 zNLdg{HrJ5OBckaBHgxFit;Bw={NQ{od;8!T>>0HAraZE19!oc>)z`d(nw}7^d~}^3 zAk%LjT{nso^EwjN!FJoE~^YNblZ zBo6o*Vq`mQQPuCh<0P=8y(>_l65BKgGUNDf|1ybZ(mz<_g|Sb;irLYGM))%*j4jiA zHt+7BSMT3kLA&0$fxA1?)c$iCz_SUs84;P_c`O>?_kd3oTIODY)5QG)<;|=p?0(5=e(>X42R#ikDIO7^gb#+ZYn>-b=bFLZOt1FCb|# z>Ty9dLDP6KO@wiAebTNY6?27PQA-||ai6O>soF?rzR7hZQX;*h^h$*^P$(8rQBWgd zy)%q=b)9lDSKEf_n!<`tw^Fo=RV`WDsp1OBT4htbf{n(z;9Dwxm+{(G94H;HsqFD6 z!ZWe+t%NahOXUwn)Ns2CjI=k^Uc$XneAT>Bw{#5EO{Tq4a^=liuI^rRg{JM;pRDPW z-A(Bx7j{d$T6R;wYw503-4yX|W{ayGMihRp`+yvBrTApK=agGbWh=Xu&CM5*%}583 zxTZ1mqYdCKyfoN=amOOK^TaDoNfg=|~24mge= zOG=Wzg=c{!ZER>D#^yX0!4$q-jDkf(D8F{M{?j zt-Z}i`kWm-esw9h7V&M;xyVp72~SPfim zEwEh#XSJzsAx30rb%Vgd-2G*luT%SN`K}e1O`k@8iUl+16EUJHACo%WTV#P9l*`Aa zdwdY=_O}?f@TUGd#$l@&^zLU%@Wdb>Qpx*S4p_xG2w;2Tb-{&4;VL9E%$3{Rr>_@| zKsQJnIc~M$L2%m_wsT!|^(mP^_kjwe_x3K;-psj7&MtoOIzunJdYSkSVrUgPR`y}k z7Vo2fGI0Aau0Dw)g-Kly6vx<(5@NHRUT%yGP78lEW zM%b`LAJQD;O>NQP5!F?MbsBQ+Bk6F4^~L<~Pq<`53EyytBo5VgtU|EBc~XLa)`xFb zR0KMrBTR%EOgC_Hq3hUN79`a*-=l6Ex!OXK|BWGrnDsotrV8SzPZWK{4QI57b^Q_q z`o;VSxADUS9wZJFx_wl087&%s1ONc#7?&OB1SkSGcbB2*1Ra-T=mZ`CK$nB)1Xlq% zm)qzBQUR`)F6jhQ0gjh~=>$9>hq`@K68)Fo`~(01Bp(0(762Fk000000RR91?SX~9 z1edVB1Q`Vd00Rwpm!atd9hVyF1Rev?!vvQO!~`0bRq6yl0UDQ<>I72(+L!9;1V9Gx I*8~6n0GNXvcK`qY diff --git a/android/app/src/main/cpp/code/client/cl_main.c b/android/app/src/main/cpp/code/client/cl_main.c index b33e1002..6ae76597 100644 --- a/android/app/src/main/cpp/code/client/cl_main.c +++ b/android/app/src/main/cpp/code/client/cl_main.c @@ -3577,9 +3577,10 @@ void CL_Init( void ) { cl_serverStatusResendTime = Cvar_Get ("cl_serverStatusResendTime", "750", 0); - // init autoswitch so the ui will have it correctly even + // init autoswitch and hud toggle so the ui will have it correctly even // if the cgame hasn't been started Cvar_Get ("cg_autoswitch", "1", CVAR_ARCHIVE); + Cvar_Get ("cg_drawStatus", "1", CVAR_ARCHIVE); m_pitch = Cvar_Get ("m_pitch", "0.022", CVAR_ARCHIVE); m_yaw = Cvar_Get ("m_yaw", "0.022", CVAR_ARCHIVE); diff --git a/android/app/src/main/pakQ3Q/ui/ingame_options.menu b/android/app/src/main/pakQ3Q/ui/ingame_options.menu index 1b83a123..e795e3e7 100755 --- a/android/app/src/main/pakQ3Q/ui/ingame_options.menu +++ b/android/app/src/main/pakQ3Q/ui/ingame_options.menu @@ -382,7 +382,7 @@ itemDef { name options group grpOptions type ITEM_TYPE_MULTI - text "Statusbar:" + text "HUD Type:" cvar "cg_hudfiles" cvarStrList { Normal "ui/hud.txt" Small "ui/hud2.txt" } rect 50 275 200 20 @@ -398,8 +398,8 @@ itemDef { name options group grpOptions type ITEM_TYPE_YESNO - text "Statusbar On Weapon Wheel:" - cvar "vr_weaponSelectorWithHud" + text "Draw HUD:" + cvar "cg_drawStatus" rect 50 292 200 20 textalign ITEM_ALIGN_RIGHT textalignx 143 @@ -409,6 +409,21 @@ itemDef { visible 1 } +itemDef { + name options + group grpOptions + type ITEM_TYPE_YESNO + text "Draw HUD On Weapon Wheel:" + cvar "vr_weaponSelectorWithHud" + rect 50 309 200 20 + textalign ITEM_ALIGN_RIGHT + textalignx 143 + textaligny 17 + textscale .25 + forecolor 1 1 1 1 + visible 1 + } + itemDef { name options group grpOptions @@ -416,7 +431,7 @@ itemDef { type ITEM_TYPE_MULTI cvar "vr_goreLevel" cvarFloatList { "None" 0 "Blood Only" 1 "Blood & Gibs (Default)" 2 "Extra Gore (Performance Hit)" 3 } - rect 50 329 200 20 + rect 50 339 200 20 textalign ITEM_ALIGN_RIGHT textalignx 80 textaligny 17 diff --git a/android/app/src/main/pakQ3Q/ui/options.menu b/android/app/src/main/pakQ3Q/ui/options.menu index f27833d6..29741753 100755 --- a/android/app/src/main/pakQ3Q/ui/options.menu +++ b/android/app/src/main/pakQ3Q/ui/options.menu @@ -263,7 +263,7 @@ itemDef { name options group grpOptions type ITEM_TYPE_MULTI - text "Statusbar:" + text "HUD Type:" cvar "cg_hudfiles" cvarStrList { Normal "ui/hud.txt" Small "ui/hud2.txt" } rect 99 315 256 20 @@ -279,8 +279,8 @@ itemDef { name options group grpOptions type ITEM_TYPE_YESNO - text "Statusbar On Weapon Wheel:" - cvar "vr_weaponSelectorWithHud" + text "Draw HUD:" + cvar "cg_drawStatus" rect 99 335 256 20 textalign ITEM_ALIGN_RIGHT textalignx 128 @@ -290,6 +290,21 @@ itemDef { visible 1 } +itemDef { + name options + group grpOptions + type ITEM_TYPE_YESNO + text "Draw HUD On Weapon Wheel:" + cvar "vr_weaponSelectorWithHud" + rect 99 355 256 20 + textalign ITEM_ALIGN_RIGHT + textalignx 128 + textaligny 20 + textscale .3 + forecolor 1 1 1 1 + visible 1 + } + itemDef { name options group grpOptions @@ -297,7 +312,7 @@ itemDef { type ITEM_TYPE_MULTI cvar "vr_goreLevel" cvarFloatList { "None" 0 "Blood Only" 1 "Blood & Gibs (Default)" 2 "Extra Gore (Performance Hit)" 3 } - rect 99 375 256 20 + rect 99 385 256 20 textalign ITEM_ALIGN_RIGHT textalignx 70 textaligny 20