!Yvd `6000.2.0b3sHW@p",(0."=:#+AyHc MZ,v^`X0p@ZPfPjS""hhN+ɵqv}r("S1KY//!4J5[OWkDsԋE@<F;9,u A-@B.nJ`p}J, JX0wRXYRlZڪ J FontAssetUnityEngine.TextCore.Text UnityEngine SpriteAssetLxj۰a'j SpriteAssetUnityEngine.TextCore.Text UnityEngineTextColorGradientR K>(TextColorGradientUnityEngine.TextCore.Text UnityEngineTextStyleSheetsƎ-3Y$fSTextStyleSheetUnityEngine.TextCore.Text UnityEngine VectorImageLyכ6 VectorImageUnityEngine.UIElements UnityEngine PanelSettingsc겚";ATͨ PanelSettingsUnityEngine.UIElements UnityEngine UIDocumentrۣ5LM_0r UIDocumentUnityEngine.UIElements UnityEnginePanelTextSettings|V}HPanelTextSettingsUnityEngine.UIElements UnityEngine UIRenderer UIRendererUnityEngine.UIElements UnityEngineInputSystemEventSystemqӣH`y(InputSystemEventSystem"UnityEngine.UIElements.InputSystem UnityEnginePanelInputConfigurationJ1l*_A%PanelInputConfigurationUnityEngine.UIElements UnityEngineThemeStyleSheetgZg\Mf鲝ThemeStyleSheetUnityEngine.UIElements UnityEngine? ? pA ? ? pA ? ? pA ? ? pA ? ? pA ? ? pA ? ? pA ? ? pA ? @ ? @ A A A C C unity_FogStart unity_FogEndunity_FogDensity unity_FogColor!!!!      DepthNormalsOnly? ? ? ? pA ? ? pA ? ? pA ? ? pA ? ? pA ? ? pA ? ? pA ? @ ? @ A A A C C ?. LIGHTMODEDepthNormalsOnly           ! ! ! !     DepthOnly? ? ? ? pA ? ? pA ? ? pA ? ? pA ? ? pA ? ? pA ? ? pA ? @ ? @ A A A C C ?. LIGHTMODE DepthOnly           ! ! ! !    STEREO_INSTANCING_ONUNITY_SINGLE_PASS_STEREOSTEREO_MULTIVIEW_ONSTEREO_CUBEMAP_RENDER_ON FOG_LINEARFOG_EXPFOG_EXP2Hidden/InternalErrorShader ( lJ'L:(   ` 48jpdB}E bt Spbll S b | T, C<S$TS@ S0p S< Sx STTb0 S && Sd-xxS-DHS / S1 &2 nu  UnityPerDraw3Pu_ObjectToWorlddL LbFrame(PMatrixVPL l HLLStereoGlobals@,T!T]TEyeIndexT!LPdt 0W8 : /DXBCm1WnTU,`ISGN,v POSITIONO44eSV_7@SHDR_@^YF D_r ug d@hb8"VT(j2 X"F(`*(p*F0|&V hT(/ ( h*(> l $ NITY_SINGLE_PASS_STEREO|d=8]PndlȈr X S)P5 RC@Hh04p (  00/ 0 0 _INSTANCING_ON2\FT5Z" @b0. "PlA'SV_InstanceID`X D XV_RenderTargetArray 0"00 u` 0" @E@"@T)"Xj6 l l lllhSFI0||MULTIVIEW_ONDBl E8o &;R|r/T O4@&DeD6 !T?"?H$  @/.<m_t GlZh\/7<8<$&$ptd  xCFog DFogParams@"  D=M#hQf| S|МH  6 '( RCOLOR L  G L iL   d d E6 d x x  D FOG_LINEARZL*lT?ua qR*4Dl$PPVPl_TEXCOORD  "< /O  (($ r( 5F D2 $2'00 , ,.,E8,X,,  ,lp /,\0 K H2 (&*t: 2!_EXPT^ %#~ &N\dY G 3h P2F_6DڦPVods \  ;oColor Nu|5 f$S4884"bP  D,TT%Wk&LD9<8I888#t%t* L0@l 5r p&F(/:0H P b<l Scd R  S c <C+/S,<c3<0CE@ SX( nu $Globals$unity_ObjectToWorld0D0MatrixVP,@xL @D4U4StereoEyeIndex,T ! TO@T&|a$ ll9P/?<#ifdef VERTEX #version 300 es #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if$ JTUNITYo #else uniform #endif%SUPPORTShLOCATION& N(x) layout(locat K= x)/wBINDING.pbinding-, std140) jUH vec4 hlslcc_mtx4x4O[4];3.in highp .pin_POSI10; ju_xlat1; void main() { )) =F.yyyy *;1];G3J0] *mfxxxx +Q2QOzzzzQ +[31=!1=. ^ 1G2G Gsgl_Posi1K 3KLwwwwKreturn; } FRAGMENT GL_EXT_shader_framebuff etch #exten9+ : enablea preci;"mfloat;Oint;h0) inout mediumSV_TargesR:8 %! =7p(1.0, 01)d INGLE_PASS_STEREO  |$0)v $ { XUnusedXu _P[8];H0VH4?InvK  /CameraPro?ionQ4?InvT8fT[4N3N SSpace>Oos[2GScaleOffset[2B}n1n_ o  texture> using namespace ; struct _Type { float4 hlslcc_mtx4x4O[4];0 ("To7 0#LODFade=ransformParams'RenderingLayer; };  glstate_lightmodel_ambienthA?SkyEquator!oGround IndirectSpecColor[m@_pro^?ion*?Inv-%VP+Oint cShadowMtl_VertexInPOSITION0 [[ attribute(0) ]] D:OutEmtl_Posi9Hp , invariant ]]NvC N (YconstanX&nbbuffer,>&@1@/` input(stage_in ]]) {)[outpu_01!" =h.y.yyyy *.G,1]WOfma(D=0],Txxxx,V)d/2dOzzzzd +31J a. 1K@%0] Q/1)X+2XEX.d3dLwwwwdereturn(}  $  NITY_SINGLE_PASS_STEREOE a  _P[8];0V0JcvCameraP 9?Inv< Cr\ 6-3 _SOos[2[/ScaleOffset' !\&J&L2N/i1&2ciU.i << 0x27  .(\+ 1)]cQXWa /2)j6/2)y 2y |5/3) 2    _INSTANCING_ONh ' WL t_1.r_target_array_id bool has_base_ !_ic1fun_31(4)G template  bitFieldInsert(G{width, ot Osrc23) { vmask = ((( "<_id+WBaseI*B2,9g /ifN#  =-;z Kint(~P0x1u,g +u,O0u)) | /1uD1 MULTIVIEW_ON(/sT 32_t rp_q_remap_[Ca E(ZB>> 0F(F;FragmentASV_Tc Z%0)fH U %p=p(1.0, 01`8 4 4,1d ,1,1X1 xCFog D2FogI$P01" @0D//A33 b[COLOR'1CBRuser(i4ho"iclamp(f/f)G p  8FOG_LINEAR9 t *  TEXCOORD( @&/? o.xyz =, .2>xyzzM![0G, C).2% 33%*l  P"0P01PW0P1:1PW0PPW0P1 $2 a.2a2aw2aw2a5a.3a3aw3aw3a+. w = dot(/n g = sqr0  E0.x, . /.zw_ B _EXP&! *Zy8vexp2((-[}8min .ml!l/2(lx8 /(-N'nl 4CC,CPCM/PF/In N'G[ #GTNG%2tI" L=/ PC!v<4Bc J .(-   u9(in )) /, d!ww-XP b<l Sbx b S S|P S&<S'<b. S@ &Rnu $Globals$unity_ObjectToWorld0D0MatrixVP,@xL @D4U4StereoEyeIndex,T ! TO@T&|a$ ll9P/M#ifdef VERTEX #version 150 #exten GL_ARB_explicit_attrib_locat : require P1shader_bit_encodingW&* : enable #endif #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1$ JTUNITYo #else uniform %SUPPORTShLOCATION& N(x) layout(fK= x)/wBINDING.1binA= x, std140) jUH vec4 hlslcc_mtx4x44O[4];3 .Ain )pin_POSI10; ju_xlat1; void main() { )) =F.yyyy *;1];G3J0] *mfxxxx +Q2QOzzzzQ +[31=!1=. ^ 1G2G Gsgl_Posi,K 3KLwwwwKreturn; } FRAGMENT+8b0) outSSV_Target05! =0p(1.0, 01)$x INGLE_PASS_STEREO Y Z$0)T U 2 { YXZUnusedXh _P[8];:"V:&8Inv= w !CameraProa?ionC&?InvF*TM&#@3@ sSSpaceNos[2y9ScaleOffset1}1 ( r< (T(bG(H#,x,/  '>95555`>91f#A2APAQ>R9S>AIhck lARoAf9i9m9pAAS{S{(24#$%8B%DAF)-AN3$$"S-U8C; "?wrw)*EH/HF.0a0 F0R0V0vJv@^TvU`TPvT`TPvtx b_INSTANCING_ONvpp/p3 dPG@p x!t )SPV_EXT_shader_viewport_i _layer%94Tal> +G<O ,f939u9`> nq rRul9o9s9vի >$< \("#ffMULTIVIEW_ON0 4 = Gىg # @"KHR_multi/42cpjG#B"   /  a<G2 >919/WS91 R95 BCC:;<=>?@ADE> T.W_Wu`>a9bWW9o )z5} ~WbXx9{99YYS""#a$c#"%4>%@YB)+YJ  `&" \\\"2h#H+J*".<Nw* ">*LFj0W0]N0aP h0t0e0]j]@mc]~"#rc_M_rc_ l51453795 hh<P<2284327951\FogColorx P0PoParamsPx <<h(,h 35608244643P$1569520654P$#Si ,σien/R2jPh^֘ A/   / 5 /> /|" ow C T?/ B  >9 e>9C C >9I !I !I !I !9 /(4 !_eyh QiB c9f9j9m w  |+ " V$ "#:r&#$ " ?&NS$ "/%6N )8N4R|I ##:L `:%/%n:S$ #8%:T""#]T"E]T"   FOG_LINEAR lb4l/l+|) fK,pM1l9;/ l0 mUvs_TEXCOORD*,G>   9  >9v2nq >  909!( > G1\4 P5( Q8i[/V929699 Y=F ?"   # Jg(/ D " ),)"7`0/8! 7TU O4G@UpGt^5=Q>9XX]",]! 9S9 > 92-""`!>9>"4 $q8p9׼p9/`#! = T#!0J <T*D<!,%%E5<#K DD#!7DDVD\D^DDDDpDvDx z3 @J  )&*!o/,6,,"(D*D7D,:D@DBDDD,RDXDZ,\,%l)*9<1o7<~6/=7=}}/@7@GG/C7CGG F%G%-*=&="HDHtIDI~/IDIG/IDIGG I#I;-&- -- "s\$"&q#D @J AD Kv |+"   6Z  "e 'IZ  ( &YKh&7!^#7 *"^(7(*((C 7D(* $ 0  %  ) WEXP  4eێk"  b0l oU 3oG^ C>9\  K9      p9٬   D #  &?F/N l%? $ $ $  $ $ ( $ $ $ $  $ $ (( $ $ $ $  $ $ )$ '2$ $ 4'ihǫe O$ d0$ oU$ 3$ `<>9@\,$ $ K9$ $ $ $ $ $ @'@9$ $ $ M$ & / )k2, , , ,  , , (8 , , , ,  , , (P, , ,  , , P cl R| b| < S&L" &*HS+H&,- &. bD0| b9 SP S/_1!tstruct  { /* @offset(0) */ hlslcc_mtx4x4 :e,=/64>;9_1, } var in_POSITION0 : ; @group(1) @binding:P> x_22;Ygl_PositionXfn main_1()var u_xlat~1_precise_# i$i$b$o)u)u$8= (Lq.yyyy *&. [[1i])M(:Y0i] *.xxxx) +MY$2YOzzzzY +31C=  8153k .1O2O $O S3SLwwwwSreturn; }\W1outW@builtin(px?) t@vertex`(@loca&d_param<J) ->v L=;E()L SV_Targe FragCoord=(1.0f, 01^! \*_1Yfragment[  Ua =;a`  |$ NITY_SINGLE_PASS_STEREO o{ uw< ]& a : i32Q; 8\ 2! 3! 4! 5! 6! 7! 8! 9!\3f, 2d 0C" XUnusedX E ?128P"VP2P?256P"4InvS3S.38$ 4B?512CameraProIsb 0Y"=Inv\6\/76TcV7V?896" M,_8F?024W SSpace_#osP9P/56PaScaleO20$ ;*19$ 5255Hd@1@7 D"i1 2 /19 %/19 D/19 M/19 i( .<< bitcast(2i)>2 ?74.%[(l+ 1i)]V(HG2[%?2i))2)f#?3i)<2<i*_INSTANCING_ONqMULTIVIEW_ONdZ4* 35834178564*g (P(551755536\FogColorx P0PPsPx <<hh$,h P*`965767712'P, 35292963173P$D-"D  / vs_COLOR/in! 3 /32 =n eclamp(,s m '), /))C/32C%/32CD/32CM/32C3/32C /32C:/32C>/32CL  i6&1)L  /, 3( ./FK`/vs+-vs>  t FOG_LINEAR{ FZ! `c- {y,  e,$19+ *  /).28 M TEXCOORD$?f32: C\8- .c8I*Pxyz)),Q(P 0Pz :2 :3 3 ?yyyF 1r0r+1rE0r1rI0rrI0r 4t922{2{2F;33{3{3*vA.x = dot?, -7sqr. '=  r .twR b/280#&80#E80#N80#480#!80#;80#?8r "_1 "+P /2;57 : .x )w-6:*7. $1((( c)T3V+.wg(.w/.wwq q)uL B!SEXPt_?Sy4gexp2(-U6min")!#2w_BV4  t-.P G "dO~uu.? ? ? ? pA ? ? pA ? ? pA ? ? pA ? ? pA ? ? pA ? ? pA ? A A A A C C unity_FogStart unity_FogEndunity_FogDensity unity_FogColor!!!!      ? ? pA ? ? pA ? ? pA ? ? pA ? ? pA ? ? pA ? ? pA ? ? pA ? A A A A C C unity_FogStart unity_FogEndunity_FogDensity unity_FogColorE!!!!      ? ? ? ? pA ? ? pA ? ? pA ? ? pA ? ? pA ? ? pA ? ? pA ? A ? A A A C C unity_FogStart unity_FogEndunity_FogDensity unity_FogColor@!!!!      ? ? pA ? ? pA ? ? pA ? ? pA ? ? pA ? ? pA ? ? pA ? ? pA ? A ? A A A C C unity_FogStart unity_FogEndunity_FogDensity unity_FogColor!!!!      ? ? ? ? pA ? ? pA ? ? pA ? ? pA ? ? pA ? ? pA ? ? pA ? A ? A A A C C unity_FogStart unity_FogEndunity_FogDensity unity_FogColor¶!!!!      ? ? pA ? ? pA ? ? pA ? ? pA ? ? pA ? ? pA ? ? pA ? ? pA ? A ? A A A C C unity_FogStart unity_FogEndunity_FogDensity unity_FogColor!!!!      ? ? ? ? pA ? ? pA ? ? pA ? ? pA ? ? pA ? ? pA ? ? pA ? A ? ? A A A C C unity_FogStart unity_FogEndunity_FogDensity unity_FogColor!!!!      ? ? pA ? ? pA ? ? pA ? ? pA ? ? pA ? ? pA ? ? pA ? ? pA ? A ? ? A A A C C unity_FogStart unity_FogEndunity_FogDensity unity_FogColor !!!!      STEREO_INSTANCING_ONUNITY_SINGLE_PASS_STEREOSTEREO_MULTIVIEW_ONSTEREO_CUBEMAP_RENDER_ONHidden/InternalClear wI N$wO4 , 5'/&+ bt Sb bH S S$S<SDTSX` S SD\ nu UnityPerDraw3Pu_ObjectToWorldL LFramep(PMatrixVPL l HLLStereoGlobals@,T!T]TEyeIndexT!LPdt 0W8  /DXBC*~ nM3b"|, .ISGNHfv8[AP POSITIONCOLOROSGNLPPPlSV_S SHDR@iYF D_r 1ug e Rh2$"Vl4j2 p"F(`*(p*F0|&V RhT(:/ ( h*(D6<"F>#   NITY_SINGLE_PASS_STEREOAn?[$4G@U^} X%S)5 C@h(04 (  800/ 0 0HH* J6_INSTANCING_ON<@w^FZ"ttP0LRdHpPHYH_R-`SV_InstanceIDp|x p\pb/SV_RenderTargetArray"0u`< " ,E"@T)"  ASFI0  K  MULTIVIEW_ON( *P Y>4y?߁eUr&S&,$ T2SV_t|@&bppD  `2 J\`f(QZ&$\\$ &$ $ @PXRl Slb` b$ l b S!8nu @Globals$unity_ObjectToWorld0D0MatrixVP,@ xL @D4U4StereoEyeIndex,T ! TO@T&|a$ ll9P/?#ifdef VERTEX #version 300 es #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if$ JTUNITYo #else uniform #endif%SUPPORTShLOCATION& N(x) layout(locat K= x)/wBINDING.pbinding-, std140) jUH vec4 hlslcc_mtx4x4O[4];3.in highp .pin_POSI0fmediumCOLOR0; out%vsju_xlat1; void main() { )) =}.yyyy *;1];G3J0] *mfxxxx +Q2QOzzzzQ +[31=!1=. ^ 1G2G Gsgl_PosihK 3KLwwwwKu( =return; } LFRAGMENT GL_EXT_shader_framebuff etch #exten9+ : enablea preci;tmfloat;9int} b]0) inSV_Targe:8 %( =/  INGLE_PASS_STEREO(  |$0)v 9 $ { XUnusedX _P[8];H0VH4?InvK  /CameraPro?ionQ4?InvT8fT[4N3N SSpace>Oos[2GScaleOffset[2B}n1n o  texture> using namespace ; struct _Type { float4 hlslcc_mtx4x4O[4];0 ("To7 0#LODFade=ransformParams'RenderingLayer; };  glstate_lightmodel_ambienthA?SkyEquator!oGround IndirectSpecColor[m@_pro^?ion*?Inv-%VP+Oint cShadowMtl_VertexInPOSITION0 [[ attribute(0) ]] b[COLOR'1'k:Outlmtl_Posi`Hp , invariant ]]uRuser(utvi t (Lconstan&gbbuffer,>&@1@|` input(stage_in ]]) {)[outpu<_01!" =h.y.yyyy *.,1]WOfma(D=0],Txxxx,V)d/2dOzzzzd +31J a. 1K@%0] Q/1)X+2XEX.d3dOwwwwd"ereturn%G} 4  Dd NITY_SINGLE_PASS_STEREO `a  _P[8];0V0cvCameraP9?Inv< Cr\ 6-3 _SOos[2[/ScaleOffset'  !%  C& J&L2] NN/i1&2o ci.i << 0x2  .(\+ 1)]cQXW /2)j6/2) 2 |5/3) 2 ' ! _INSTANCING_ON  ' W pW'r%_target_array_i F bool has_base_ !_ic1fun_3"(4{ template  bitFieldInsert(G{width, o Osrc23) { vmask = ((("<_id+WBaseI*B2,9g /ifN#  =-; Kint(~P0x1u, +u,O0u)) 1) ?1u)09( MULTIVIEW_ON"/P`sB32_t rp_q_remap_tC Eg(ZB>> 0(F;FragmentR(C *ASV_THc fH U  Lx !ggFPXRl Slb` b $ bD S nu $Globals$unity_ObjectToWorld0D0MatrixVP,@ xL @D4U4StereoEyeIndex,T ! TO@T&|a$ ll9P/#ifdef VERTEX #version 150 #exten GL_ARB_explicit_attrib_locat : require P1shader_bit_encodingW&* : enable #endif #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1$ JTUNITYo #else uniform %SUPPORTShLOCATION& N(x) layout(fK= x)/wBINDING.1binA= x, std140) jUH vec4 hlslcc_mtx4x44O[4];3 .Ain )pin_POSI0COLOR0; out%vsju_xlat1; void main() { )) =n.yyyy *;1];G3J0] *mfxxxx +Q2QOzzzzQ +[31=!1=. ^ 1G2G Gsgl_PosiTK 3KLwwwwKu( =return; } 8FRAGMENTnjV50) SV_Target0d( =T)O  ^INGLE_PASS_STEREO Y Z$0)T 2 { YXZUnusedXh$ _P[8];:"V:&8Inv= w !CameraProa?ionC&?InvF*TM&#@3@ sSSpaceNos[2y9ScaleOffset1}1E 9>9 > > P+9999"g/ 3$ HRS G##@"!Gd   ~ 1Q>9 +>9(L DE>F9G>9Pa> F]`` Pa ad\$[9^9b9eMU#J"$#A&&PJ0K"2##%6%%@%aBD),)K"LP|4|A" ||^|W%|l|$%&# ,%!&&<&PH""#UHD?#UHD"# d $ NITY_SINGLE_PASS_STEREO9@@4$sK=-5b@u  @5T`a@bG@H#DxDD%  ?>9MMMM`>91f#Y2YPYQ>R9S>9^Y_kyn oYRrYi9l9p9sYYSS(24#$%8B%DYF)-YN3$$"kEU8C; "?wrw)*EH/H^.0a0 F0R0V0JG^TUcTPTcTP" ~_INSTANCING_ONp/3hG/, +G<O ,  939u9c> qt uRxo9r9v9y >$< b."#ii!MULTIVIEW_ONd 4Ewo5 @"KHR_multi/T2copsjG#B"   /  a?G2_ !>919/WS91 j95 BCC:;<=>?@ADE>lT.o_os`>a9bomoW9r6 ?}K  $qqJ{9~99ttS""#|$c#"%4>%@tB)+tJ ; `&" w\w"2h#H+J*".<Nw*j ">*LFj0W0xN0aP h0t0e0xjxGmcx"#uc_i_uc_D PLb  b b< \ S&L% nu  VGlobals17547975340unity_MatrixVP8e@,ObjectToWorld0,$tUtStereoEyeIndexl ! TT261297654@\"HiR@D$// /!"b <f//Assets/DefaultResources/Internal-Clear.shader diagnostic(off, derivative_uniformity); alias Arr = array/_1!tstruct  { /* @offset(0) */ hlslcc_mtx4x4 :e,=/64>59_1, } var in_POSITION0 : ; @group(1) @binding:P> x_22;Yvs_COLORV z! gl_Position#fn main_1()Gvar u_xlatI1_precise_# i$i$b$o)u)u$8= (q.yyyy *h. [[1i])M(:Y0i] *.xxxx) +MY$2YOzzzzY +31C=  8153k .1O2O $O S3SLwwwwS=return; }p1outp@builtin(p?) P@loca8(0)s&_1&} @vertex(7 @e_param<`&1) &J) -> =a/in1d( ,)RF :SV_Targegl_FragCoord~P= H fragment/vs,; g -vs =Z3 `     NITY_SINGLE_PASS_STEREO oF Z o <W- ]@ a : i32Q[ 8| 2! 3! 4! 5! 6! 7! 8! 9!\3f, 2 0C" XUnusedX e ?128P"VP2P?256P"4InvS3S.38D 4B?512CameraProI8b 0Y"=Inv\6\/76TcV7V?896" M,_8F?024W SSpace_#osP9P/56PaScaleO20D;*19D5255d@1@70"i1 2/19%/19D/19M/19iH..<< bitcast(2i)>2?74.%[(l+ 1i)]V(HG62[%?2i)I2If#?3i)\2\N<J_INSTANCING_ON MULTIVIEW_ON"rP\J -__ColorColor???? _SrcBlendSrcBlend@ _DstBlendDstBlend A_ZWriteZWrite?_ZTestZTest@_CullCull_ZBiasZBias _SrcBlend _DstBlend _SrcBlend _DstBlend pA ? ? pA ? ? pA ? ? pA ? ? pA ? ? pA ? ? pA ? ? pA ? _ZTest_ZWrite_Cull _ZBias_ZBias A A A C C unity_FogStart unity_FogEndunity_FogDensity unity_FogColorIGNOREPROJECTORtrueQUEUE Transparent RenderType Transparent!!!!      IGNOREPROJECTORtrueQUEUE Transparent RenderType TransparentSTEREO_INSTANCING_ONUNITY_SINGLE_PASS_STEREOSTEREO_MULTIVIEW_ONSTEREO_CUBEMAP_RENDER_ONHidden/Internal-Colored  Ga%_   8.7(80l, DS SP b bd bL  STRd 6`S` S$ S\ nu 4Globals0/_Color$< UnityPerDraw,Pu_ObjectToWorldH( LFramep(PMatrixVPL l @&DDLcStereoB@,T!NT]TEyeIndexT!X0$ tHPW T  /DXBCt=u51!=zE",|ISGNHf8Hl[AP POSITIONCOLOROSGNLP V>P#G5SV_Y SHDR@pYF TRvPrh 1,e  @g jRh$"F |  #V(% Hj2 "F(`*(p*F0&V hT(/ ( (V*(>  f8 NITY_SINGLE_PASS_STEREOPWºi 7(8^" h$%$S)5 %@hD (  T00/ 0\00dd R_INSTANCING_ONt3C DfmZ"hRdpNPdYd_j-|SV_InstanceID|x bz xSV_RenderTargetArrayB L u`h " ,E"@T)"4D6  XSFI0G  d d MULTIVIEW_ON| *P Nu|5 r&S,$# 2SV_|@6"bHpD  `2 J\ J@2 6$\\\ \ \ \PXb$ S b b cdh $C"lnu dGlobalsWb_Color$s4unity_ObjectToWorld,840MatrixVP,&@tL _@ 4U4StereoEyeIndex,T ! TO@TJaH l<A</?#ifdef VERTEX #version 300 es #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if$ JTUNITYo #else uniform #endif%SUPPORTShLOCATION& N(x) layout(locat K= x)/wBINDING.pbinding-, std140) jUH vec4 hlslcc_mtx4x4O[4];3."; in highp pin_POSI0COLOR0; out medium%vsju_xlat1; void main() { )& =_% *"[& =W ;.yyyy *A,1]G3J0] *mnxxxx +Q2QOzzzzQ +[31=!/1=. ^ 1G2G Gsgl_PosiK 3KLwwwwKreturn; } *FRAGMENT, GL_EXT_shader_framebuff etch #exten9+ : enablea preci;vmfloat;1int  ]0) inSV_Targe:8 %( =/  8 INGLE_PASS_STEREO\ I $0) $ { sXUnusedX _P[8];H0VH4?InvK  /CameraPro?ionQ4?InvT8|T[4N3N SSpace>Oos[2GScaleOffset?B}n1n-oAflat;u `vs_BLE]DICES6 u7 uU E a 3S CB.x =((gl_InstanceID)), _* 0.5MUract(C + 'roundEvenMu/inm#i3 #?u0) 1e 31e 0qe ,1F1e ( 1( 3( ,1( 63( 1( :3( 1(  :' =(L )= h MULTIVIEW_ON+ h OVR_multiview2_ A@num__Ps = 2~;y b~ `ViewID)d l P DS SP b b b, S$$R- r-x S40 S2 &X5 nu [VGlobals_Color$<UnityPerDraw,Pu_ObjectToWorldH(L LFramep(PMatrixVPL @&DDLcStereoB@,T!NT]TEyeIndex, T!X$ tHP/ 0<(% xlatMtlMain#include  texture> using namespace ; struct _Type { float4 T; }; .2hlslcc_mtx4x4O[4];0 ("To7 0#LODFade=ransformParams'RenderingLaye glstate_lightmodel_ambienthA?SkyEquator!oGround IndirectSpec[m@_pro^?ionL*?Inv-%VP+Oint 8nShadowMtl_VertexInPOSITION0 [[ attribute(0) ]] b[COLOR'1'k_Out {BRuser(B hmtl_Posi,p , invariant3tvi t (Y{constan&fbbuffer,6 &>1>8&@2@` input(stage_in ]]) {)[outpur_014.=n*&'._LU.Gy.yyyy *".,1]WOfma(D=0],Txxxx,V)d/2dOzzzzd +31J aD.H 1K@%0] Q/1)X+2XE)1) d3dLwwwwdereturn7}W     NITY_SINGLE_PASS_STEREO*  P _P[8];0V0:cvCameraP9?Inv< Cr\ 6-3 _SOos[2[/ScaleOffset' y !  y& J &L3 N/i1&2 iE N.bx << 0x2@2'  .:(\+ 1)]cQXWQ /2)j6/2)i 2i |5/3) 2  #n _INSTANCING_ONM | '| 8 1.r%_target_array_il  bool has_base_ !_icM1fun_3"(4 template  bitFieldInsert(G{width, o Osrc23) { vmask = ((("<_id+WBaseI`x2,o /ifN#  =-;f Kint(P0x1u,S +u,BO0u))l |y .W/1u < MULTIVIEW_ON/Ps32_t rp_q_remap_t6C E(ZB>> 0(F;/FragmentIn0rC tASV_TIHc %0)QfH UU L x"ggFPXb$ S b b D b S nu dGlobalsWb_Color$s4unity_ObjectToWorld,840MatrixVP,&@tL _@ 4U4StereoEyeIndex,T ! TO@TJaH l<A</#ifdef VERTEX #version 150 #exten GL_ARB_explicit_attrib_locat : require P1shader_bit_encodingW&* : enable #endif #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1$ JTUNITYo #else uniform %SUPPORTShLOCATION& N(x) layout(fK= x)/wBINDING.1binA= x, std140) jUH vec4 hlslcc_mtx4x44O[4];3 .a; in pin_POSI0COLOR0; out%vsju_xlat1; void main() { 9& =Y% *$M) =.yyyy *,1]G3J0] *mfxxxx +Q2QOzzzzQ +[31=!1=. ^ 1G2G Gsgl_PosiK 3KLwwwwKreturn; } W;FRAGMENTs_50) SV_Target0m( =T)  zINGLE_PASS_STEREO g= p$0)j 2 { <XpUnusedX~V _P[8];:"V:&8Inv= w !CameraProw?ionC&?InvF*TM&9@3@ sSSpaceNos[2y9ScaleOffset1}1 9>9 > > P+9999"j/\ 5#OG##@#@"!'Gb    @ 4Q>9 >>9B0 &9 (Y KL>M9N>> X`dc Pd ag`'^9a9e9hJ" MU#  "#A&PJK"%%"%%*%,.#3)K"6:|4 |A" W |H|W%|V|$%&#  3%n%%<%O"#XOK?#XOK" t 4 NITY_SINGLE_PASS_STEREOKPP4{!EAiZPx/t P)[PdGPX#T_GxT/  N`b9]]]]!98>9i2iWiX>Y9Z>icn}q riRuil9o9s9viH""iY !i_ i S ,%$,%.i0Nii:,""{FB8&!BaFwZA*EF/O/l./a0 F/!0]0*J [ Uf[ WSf[ W! _INSTANCING_ONp/13KNKe6Lx>~!( )SPV_EXT_shader_viewport_i _layer=;[g + l< +G<O ,) !) ?) B>9:9 u9f> tw xR{r9u9y9|O A Y 4A  :N81*Er/1 F/R/ Z  &"#ll"MULTIVIEW_ON+ 4 6V^h)#H#d @"KHR_multi/H9jv2GB"5 E   e<G214@&59&8&&&2&196&q 989 @5 IJJABCDEFGHKL>T .fqg>h9iu 9u>5"P $qO~999Dc#!7))2` a `&" H"2z#O2Q* 1<Uw| ">)LEj/^/*N0aP h0t0l0j j |"#xjf}_xjfh P Lb0 b b  SX&H& nu VGlobals3305274885b_Color0@unity_MatrixVPe@,ObjectToWorld0,$tUtStereoEyeIndexl ! TT494497042@\"iR3P(h,,/4/ /!" D<//Assets/DefaultResources/Internal-"@ed.shader diagnostic(off, derivative_uniformity); alias Arr = array/_1!tstruct  { /* @offset(0) */ hlslcc_mtx4x4 :e,=/64>[9+_1;3128<x=2 : } var vs_COLOR0#;!.in!@group(1) @binding7_> x_19 :VPOSITIONzgl_Position#fn main_1()ovar u_xlatI1_precise_# i$i$b$o)u)u$6= (o*D.)*(AT.yyyy0l L[1i]M(:Y0i] *.xxxx) +MY$2YOzzzzY +31C= k 8153k .1O2O $O5S3SLwwwwSreturn; }1outP@locap8(0)&_1v @builtin(p,t@vertex(c&1)e_param9 M )J) ->t=^ =Z%1d(,)RH MSV_Targe& gl_FragCoordc=H*_1fragments  g ;-vs =Z#    D NITY_SINGLE_PASS_STEREOB o q R y  a : i32Q 8 2! 3! 4! 5! 6! 7! 8! 9!\3f, 2 0C" X UnusedX.$ P"VP2P?256P"4InvS3S.38 4B?512CameraProp<b n0Y"=Inv\6\/76TcV7V?896" t,_8F?024W SSpace_#osP9P/56PaScaleO20Z8Y2Y5Y@1@8:JD"i1 288&8E8N8i.X<< bitcast(2i)>2R?81.%[(l+ 1i)]V(HGq2[%?2i)2f#?3i)2"x_INSTANCING_ON MULTIVIEW_ONx#P *ܠ O8V/%_ UnityPerDrawunity_ObjectToWorld? ? pA ? ? pA ? ? pA ? ? pA ? ? pA ? ? pA ? ? pA ? ? pA ? @ ? @ A A A C C unity_FogStart unity_FogEndunity_FogDensity unity_FogColor3!!!!      STEREO_INSTANCING_ONUNITY_SINGLE_PASS_STEREOSTEREO_MULTIVIEW_ONSTEREO_CUBEMAP_RENDER_ONHidden/Internal-Loading  j$l401,9+ bTD Sbdl S b| T$ C<S$TS@ T(plC< nu UnityPerDraw bFrame\SPu_MatrixVP4w# ll HStereoGlobals@X!TEyeIndexT!PDg0W8 : /DXBCm1WnTUS,`SISGN,v POSITIONO44eSV_7@SHDR/@^YF ^D_r ug d@hb8"VT(j2 X"F(`*(p*F0|&V hT( / ( h*(> l $ NITY_SINGLE_PASS_STEREO|d=8]PndlȈr X S)P5 RC@Hh04p (  00/ 0 0 _INSTANCING_ON2\FT5Z" @0PlAR'SV_InstanceID`X D XV_RenderTargetArrayh 0"00 u` 0" @E@"@T)"Xj6 l l lllhSFI0||MULTIVIEW_ONDBl +InvEC?intS  cShadowUsin high\pin_POSIX10; ju_xlat1; void main() { )) =F.yyyy *;1];G3J0] *mfxxxx +Q2QOzzzzQ +[31=!K1=. ^ 1G2G Gsgl_PosiK 3KLwwwwKreturn; } O FRAGMENTQ  GL_EXT_shader_f@buff etch #exten9+ : enablea preci;"mfloat;i 0) inoutSV_Targes:8 %! =7x(0.0, 1)  P 8 INGLE_PASS_STEREOM , u_P[8];H0VH4 8 & .vCameraP Q3?InvT8D[4N36 9SSpace>Oos[2GScaleOffset?nI2n o? ?  E )i12 .!i1'/t( << (2 &!x0x1F)))=2L  (y\+ 1)]PA@l 2T/2) 2 ^/3) 2  8 _INSTANCING_ON AMD_vertexUl : require  Aflat"u `vs_BLEzQDICES&6oat u, u; : V 3H d([(gl_InstanceID)) \* 0.5Sfract /0)  6OEvenCuD/ina#i3 !?u0) 1D 31D 0AD ,11D  1 3 ,1 63 1 :3 1  ' =D MULTIVIEW_ON D OVR_multiview2; ;@num_Ps = 2;U -b[`ViewID)}dv ]  bTD Sbd b0 b St $SX(<t  S*8 S,4 &. nu UnityPerDraw FramepPu_MatrixVP4# ll HStereoGlobals@X!TEyeIndex, T!PDg0/ 0;<(% xlatMtlMain#include  texture> using namespace ; struct _Type { float4 hlslcc_mtx4x4KObjectToWorld[4];0 ("To7 0#LODFade=ransformParams'RenderingLayer; };  glstate_lightmodel_ambienthA?SkyEquator!oGround IndirectSpecColor[m@_pro^?ion*?Inv-%VP+Oint ncShadowMtl_VertexInPOSITION0 [[ attribute(0) ]] D:OutEmtl_Posi9Hp , invariant ]]NvC N (YconstanX&nbbuffer,>&@1@/` input(stage_in ]]) {)[outpu_01!" =h.y.yyyy *.G,1]WOfma(D=0],Txxxx,V)d/2dOzzzzd +31J a. 1K@%0] Q/1)X+2XEX.d3dLwwwwdereturn(}  $  NITY_SINGLE_PASS_STEREOE a  _P[8];0V0JcvCameraP 9?Inv< Cr\ 6-3 _SOos[2[/ScaleOffset' !\&J&L2N/i1&2ciU.i << 0x27  .(\+ 1)]cQXWa /2)j6/2)y 2y |5/3) 2    _INSTANCING_ONh ' WL t_1.r_target_array_id bool has_base_ !_ic1fun_31(4)G template  bitFieldInsert(G{width, ot Osrc23) { vmask = ((( "<_id+WBaseI*B2,9g /ifN#  =-;z Kint(~P0x1u,g +u,O0u)) | /1uD1 MULTIVIEW_ON(/sT 32_t rp_q_remap_[Ca E(ZB>> 0F(F;FragmentASV_Tc Z%0)fH U %p=x(0.0, 1`8 4 4PXbD S\b(l c $Cx S!< nu  UnityPerFramepsPu_MatrixVP4#  LWDrawhlH @@4StereoEyeIndex !|T pGlobals@p:8}, c4/D #ifdef VERTEX #version 150 #exten GL_ARB_explicit_attrib_locat : require P1shader_bit_encodingW&* : enable #endif #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1$ JTUNITYo #else uniform %SUPPORTShLOCATION& N(x) layout(fK= x)/wBINDING.1binA= x, std140) jUH '$0)!  { vec4 hlslcc_mtx4x4ObjectToWorld[4];:X,UnusedX:2"ToA:-LODFade$ Q@ransoParams1 RenderingLayer; };1/ {W glstate_lightmodel_ambient A$?Sky'Equator+oGround* IndirectSpecColorm @_pro?ionH4 8Inv75?int  8 cShadow2q}; in .pin_POSI10; ju_xlat1; void main() { )) =F.yyyy *~;1];G3J0] *mfxxxx +Q2QOzzzzQ +[31=!1=. ^ 1G2G Gsgl_Posi#K 3KLwwwwKreturn; } FRAGMENT"/b0) outSSV_Target05! =0x(0.0, 1)$l   INGLE_PASS_STEREO d 5 / { _P[8];:"V:&8 qx vCameraP C%?InvF*fM&@3 +SSpaceOos[2 9ScaleOffset1 28 " {c c ; Q )i12I .iJ  << (2 & int(0x1F))82  (t\+ 1)]PA@ 2T/2) 2 ^/3) 2 *  _INSTANCING_ON7 /33c% 5MD_vertexHl0 .@ Aflat}u< `vs_BLE]DICES` ua ua } 4o .uo S gl_InstanceID) & 1u 4P$t(8) I4 ,4 A4 J4  9' ='  m 0x x MULTIVIEW_ON x MOVR_multiview2o 9@num_Ws = 2) in #^y `ViewID!)cV = рdb$T Sx&T b0 bL S Sh nu  UnityPerDraw FramepPu_MatrixVP# l/l$StereoEyeIndex !xpTGlobals1397547755@\&$i$ H/ T`2031155764)$ |C4164128591_| /V`WX!xLO2v0/,LOMS GLSL.std.450#¥  >9|?> > P+9999"$l/ 3 P G##@#"!>%1G -@?G*   33>9  vQ >9 g 4>s9G@P3456WP798J>2$LM>N9O>>> be Pf ai$`9c9g9jMU#J"$#A&&PJ 0KI"2##%6%%@%aBD),)K"LP|49:|@"|$9:|n|&W(%|||4%6# 9:,%!&&L&XP"#ZPL?#ZPL"  $ NITY_SINGLE_PASS_STEREO/3¾`Z/듙,)  ffG<#: V V/  2m >90>293>Sg<5 EFF=>?@ABCDGH>I9J$.bc>d9e>z7} ~bx9{99g54*"(b"6l#K,M*".@Qw**PFn0Z0*N0aP l0x0h0LjL1pfLUrfbL_rfbL"p :_INSTANCING_ON8pHH4Vm# x{-H `H)SPV_EXT_shader_viewport_i _layer%r?3cp O +gYO ke>929c9 c BCqC:;F9Gc_cu`>a9bcz9o> k}Z"cmm!Yp{9~iA9n h >$<"k\k0{f#H,Jk:NtkJFh0W0kf0r0e0k0mck|("#uc_Suc_MULTIVIEW_ON 4ALzcY  @"KHR_multi~/p/dqpO"qYtht : t CDCDsBEF>G9Ht`tua>b9ct\9p {N~ rr y9|9rrrhT  0&" u^u2/;I,Ku<OwuLFj0X0uh0t0f0u1ndu~"#sd`eUsd` HP Lb T b`0 bx SH&P, nu  UnityPerDraw FramepPu_MatrixVP4# l/l$StereoEyeIndex !xpTGlobals2223268001@\&$i$ H/ T/!" \h//Assets/DefaultResources/Internal-Loading.shader diagnostic(off, derivative_uniformity); alias Arr = array/_1!xstruct > { /* @offset(0) */ hlslcc_mtx4x4ObjectToWorld :i,=#64>X?UnusedXME"ToTM+_1O?128PCLODFade : =/44= @rans`oParamsJ/60J 0RenvngLayerD}2 3! 4! 5: glstate_lightmodel_ambient*) A<?Sky?/32?EquatorC/48CnGroundB BIndirectSpecCol/80 `m@_pro 3ion2`NJ3J?208J4InvM4M/725<533 \ : i3/356 kShadow} var in_POSITION0&; @group(1) @bin*:P> x_22R919J57 :;sgl_Posifn main_1()var u_xlat1_precise_# i$i$b$o)u)u$8= (q.yyyy *d. [[1i])M(:Y0i] *.xxxx) +MY$2YOzzzzY +31C=?57..[1C(53k .1O2O $O S3SLwwwwSreturn; }$W1outW@builtin(px?) Nt@vertex`(@loca&1 _pj<J) ->v =;E() H SV_Targe FragCoord=(0.0f, 1Z \*_1UfragmentW  U] =;]\  0 $x NITY_SINGLE_PASS_STEREO,L o L p  wC  8 8 8 !6! 7! 8! 9! (10"\3f, 2" "WjP /28P" /56P" $38; # ?512|CameraPO6b0Y"=Inv\7\/76cV8V/96" h,_9F?024BSSpace_$osk0Q5aScaleO2I1b2?2 :jO75 : D"i1 2ie.<< bitcast(2i)>24?75.%[(l+ 1i)]V(HGS2[%?2i)f2ff#?3i)y2y8xXf_INSTANCING_ON*H MULTIVIEW_ON* P 3D,cKInternal-Skinning(main$Globals inVerticesinSkin inMatrices outVerticesTDXBCMB\G4,B]T,<LISGNOSGNSHEXP@jYF ppp@_h @O   & @ r Fr)" @bq6@6@6@60P:* ):@ pU" @V"8"@7 @r @Frr @Frr @ Fr @0Fx6 6" 6B 6  6 6" 6B 6  6 *6" *6B *2 F VF2 F VF2 F VF:@6@?FF"FFBFFr F>@Amain$Globals inVerticesinSkin inMatrices outVerticesDXBC.Y2X˯x^t?,<LISGNOSGNSHEXPmjYF ppp@_h @O   & @r Fr#" @@ rFr)B @*t6@6@6@6*0P:: ):@ pU" @V"8"@7 @r @Frr @Frr @ Fr @0Fx6 6" 6B  6  6 6" 6B  6  6 *6" *6B * 2 F VF2 F VF2 F VF:@6@?FF"FFBFFFF"FFBFFr FrF>@Amain$Globals inVerticesinSkin inMatrices outVerticesDXBC^9~"-9[,<LISGNOSGNSHEXPrjYF ppp@_h @O   & @ r Fr#" @ @ F~)B @*t6@6@6@6*0P" :)" @"pUB@VB*8B*@7"@r@Frr@Frr @ Fr @0Fx6 6" 6B  6  6 6" 6B  6  6 *6" *6B * 2 F F2 F F2 F F @6@?FF"FFBFFFF"FFBFFr F6:F>@Amain$Globals inVerticesinSkin inMatrices outVerticesDXBC͑CbG\n/FB,<LISGNOSGNSHEXtPjYF ppp@_h@O   & @(r Fr#b@((@ rFr*F~) @2:Fp6@6@6@6 0P::):@:pUB:@VB*8B*@7:@r:@Frr :@Frr :@ Fr :@0Fx6 6"  6B  6  6 6"  6B  6  6 *6" * 6B * 2 F F2 F F2 F F:@6@?FF"FFBFFFF"FFBFFFF"FFBFFr FrF6:*F>@Amain$Globals inVerticesinSkin inMatrices outVerticesDXBC+?=O4y^+I,<LISGNOSGNSHEX,PjYF ppp@_h@O   & @ r Fr)" @"pr@Frr@Frr@ Fr@0Fx6 6" 6B 6 6@?FF66"6B6"FF6*6"*6B*BFFr F>@Amain$Globals inVerticesinSkin inMatrices outVertices4DXBCM6ӎkڮd4,<LISGNOSGNSHEXPjYF ppp@_h @O   & @r Fr#" @@ rFr)B @B*pr*@Frr*@Frr*@ Fr*@0Fx6 6" 6B 6 6@?FF6 6" 6B 6 "F F6*6"*6B*BFFFF"F FBFFr FrF>@Amain$Globals inVerticesinSkin inMatrices outVerticesHDXBC?*}U[5~H,<LISGNOSGNSHEXPjYF ppp@_h @O   & @ r Fr#" @ @ F~)B @B*pr*@Frr*@Frr*@ Fr*@0Fx6 6" 6B 6 6@?FF6 6" 6B 6 "F F6*6"*6B*BFFFF"F FBFFr F6:F>@Amain$Globals inVerticesinSkin inMatrices outVerticesDXBCuM߃s9O`,<LISGNOSGNSHEXP(jYF ppp@_h @O   & @(r Fr#b@((@ rFr*F~) @:pr:@Frr:@Frr:@ Fr:@0Fx6 6" 6B 6 6@? FF6 6" 6B 6 " F F6*6"*6B*B FFFF"F FBFFFF"F FBFFr F rF6:*F>@Amain$Globals inVerticesinSkin inMatrices outVerticesDXBCAsp̝rQ[,<LISGNOSGNSHEXxP^jYF ppp@_h @O   & @ r Fr)" @F~*@yr*@Frr*@ Fr*@0Fx66" 6B 6 6*6"6B66:6"*6B*:@yr:@Frr:@ Fr:@0Fx6 6" 6B 6 8 VF 6 *6" 6B 6 8 VF 6:6"*6B*8VF2 FF 2 FF 2 FF6@?FF"FFBFFr F>@Amain$Globals inVerticesinSkin inMatrices outVerticesDXBC| I7D|",<LISGNOSGNSHEX,PjYF ppp@_h @O   & @r Fr#" @@ rFr)B @*F~r*@Frr*@Frr*@ Fr*@0Fx6 6" 6B 6 6 6" 6B 6 6*6"*6B*r:@Frr:@Frr:@ Fr :@0Fx6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 FF 2 F F 2 FF6@?FF"FFBFFFF"FFBFFr FrF>@Amain$Globals inVerticesinSkin inMatrices outVerticesDXBCoυ4d8^ga p,<LISGNOSGNSHEX@PjYF ppp@_h @O   & @ r Fr#" @ @ F~)B @*F~r*@Frr*@Frr*@ Fr*@0Fx6 6" 6B 6 6 6" 6B 6 6*6"*6B*r:@Frr:@Frr:@ Fr :@0Fx6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 FF 2 F F 2 FF6@?FF"FFBFFFF"FFBFFr F6:F>@Amain$Globals inVerticesinSkin inMatrices outVertices@DXBC12-I@,<LISGNOSGNSHEXPjYF ppp@_h@O   & @(r Fr#b@((@ rFr*F~) @:F~r*@Frr*@Frr*@ Fr*@0Fx6 6" 6B 6 6 6" 6B 6 6*6"*6B*r:@Frr:@Frr:@ Fr :@0Fx6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 F F 2 F F 2 FF6@?FF"FFBFFFF"FFBFFFF"FFBFFr FrF6:*F>@Amain$Globals inVerticesinSkin inMatrices outVertices DXBCX湮ix;0 ,<LISGNOSGNSHEX PkjYF ppp@_h @O   & @ r Fr)" @F~#" @ @F~ @yr @Frr @ Fr @0Fx66" 6B 6 6*6"6B66:6"*6B*@yr@Frr@ Fr @0Fx6 6" 6B 6  8 VF 6 *6" 6B 6  8 VF 6 :6" *6B *8VF 2 FF 2 FF 2 FF*@yr*@Frr*@ Fr *@0Fx6 6" 6B 6  6 *6" 6B 6  6 :6" *6B *2 F F2 F F2 F F:@yr:@Frr:@ Fr:@0Fx66" 6B 6 6 *6" 6B 6 6:6"*6B*2 FF2 F F2 FF6@?FF"FFBFFr F>@Amain$Globals inVerticesinSkin inMatrices outVertices DXBC D%l!Z`IP ,<LISGNOSGNSHEX` PjYF ppp@_h@O   & @r Fr#" @@ rFr)B @*F~#B @ @*F~r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6 6" 6B 6 6*6"*6B*r@Frr@Frr@ Fr @0Fx6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 F F 2 F F 2 FFr*@Frr *@Frr *@ Fr *@0Fx6 6"  6B  6  6 6"  6B  6  6 *6" * 6B * 2 F F2 F F2 F Fr:@Frr:@Frr:@ Fr :@0Fx6 6" 6B 6  6 6" 6B 6  6 *6" *6B *2 F F2 F F2 F F6@?FF"FFBFFFF"FFBFFr FrF>@Amain$Globals inVerticesinSkin inMatrices outVertices DXBC6jYZAUc ,<LISGNOSGNSHEXt PjYF ppp@_h@O   & @ r Fr#" @ @ F~)B @*F~#B @ @*F~r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6 6" 6B 6 6*6"*6B*r@Frr@Frr@ Fr @0Fx6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 F F 2 F F 2 FFr*@Frr *@Frr *@ Fr *@0Fx6 6"  6B  6  6 6"  6B  6  6 *6" * 6B * 2 F F2 F F2 F Fr:@Frr:@Frr:@ Fr :@0Fx6 6" 6B 6  6 6" 6B 6  6 *6" *6B *2 F F2 F F2 F F6@?FF"FFBFFFF"FFBFFr F6:F>@Amain$Globals inVerticesinSkin inMatrices outVerticest DXBC*)Ct ,<LISGNOSGNSHEX PjYF ppp@_h@O   & @(r Fr#b@((@ rFr*F~) @:F~# @ @:F~r @Frr @Frr @ Fr @0Fx6 6" 6B 6  6 6" 6B 6  6 *6" *6B *r@Frr@Frr@ Fr @0Fx6 6" 6B 6  8 VF 66"6B6 8VF6 *6" *6B *8VF 2 F F 2 F F2 F Fr *@Frr *@Frr *@ Fr *@0Fx6  6"  6B  6  6 6" 6B 6 6 * 6" * 6B * 2 F F2 F F2 F Fr:@Frr:@Frr :@ Fr :@0Fx6 6" 6B  6  6 6" 6B  6  6 *6" *6B * 2 F F2 F F2 F F6@?FF"FFBFFFF"FFBFFFF"FFBFFr FrF6:*F>@A batchMainComputeSkinCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4inSkin0inSkin1inSkin2inSkin3inSkin4 inMatrices  outVertices0 outVertices1 outVertices2 outVertices3 outVertices4|DXBC!YQ?%l|,<LISGNOSGNSHEX(PjYF pppppppppp p @_h @P     AO"  &" @ rFr) @R q 6@6@6@6 0P:* ):@ p U" @V"8"@7 @  r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6  6 6" 6B 6  6 *6" *6B *2 F VF2 F VF2 F VF:@6@?FF"FFBFFrFP :   : AO" : &" @ rFr) @R q6@6@6@6 0P:* ):@ pU" @V"8"@7 @ : r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6  6 6" 6B 6  6 *6" *6B *2 F VF2 F VF2 F VF:@6@?FF"FFBFFrFP *   * AO" * &" @ rFr) @R q6@6@6@6 0P:* ):@ pU" @V"8"@7 @ * r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6  6 6" 6B 6  6 *6" *6B *2 F VF2 F VF2 F VF:@6@?FF"FFBFFrFP     AO"  &" @ rFr) @R q6@6@6@6 0P:* ):@ pU" @V"8"@7 @  r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6  6 6" 6B 6  6 *6" *6B *2 F VF2 F VF2 F VF:@6@?FF"FFBFFrFP     AO"  &" @ rFr) @R q6@6@6@6 0P:* ):@ pU" @V"8"@7 @  r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6  6 6" 6B 6  6 *6" *6B *2 F VF2 F VF2 F VF:@6@?FF"FFBFFrF>@A batchMainComputeSkinCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4inSkin0inSkin1inSkin2inSkin3inSkin4 inMatrices  outVertices0 outVertices1 outVertices2 outVertices3 outVertices4DXBC0Ƶ.#@Q,<LISGNOSGNSHEXPpjYF pppppppppp p @_h @P     AO"  &" @rFr# B @@ r*Fr) @ t 6@6@6@6 0P:: ):@ p U" @V"8"@7 @  r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B  6  6 6" 6B  6  6 *6" *6B * 2 F VF2 F VF2 F VF:@6@?FF"FFBFFFF"FFBFFrFr*FP :   : AO" : &" @rFr# B @@ r*Fr) @ t6@6@6@6 0P:: ):@ pU" @V"8"@7 @ : r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B  6  6 6" 6B  6  6 *6" *6B * 2 F VF2 F VF2 F VF:@6@?FF"FFBFFFF"FFBFFrFr*FP *   * AO" * &" @rFr# B @@ r*Fr) @ t6@6@6@6 0P:: ):@ pU" @V"8"@7 @ * r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B  6  6 6" 6B  6  6 *6" *6B * 2 F VF2 F VF2 F VF:@6@?FF"FFBFFFF"FFBFFrFr*FP     AO"  &" @rFr# B @@ r*Fr) @ t6@6@6@6 0P:: ):@ pU" @V"8"@7 @  r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B  6  6 6" 6B  6  6 *6" *6B * 2 F VF2 F VF2 F VF:@6@?FF"FFBFFFF"FFBFFrFr*FP     AO"  &" @rFr# B @@ r*Fr) @ t6@6@6@6 0P:: ):@ pU" @V"8"@7 @  r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B  6  6 6" 6B  6  6 *6" *6B * 2 F VF2 F VF2 F VF:@6@?FF"FFBFFFF"FFBFFrFr*F>@A batchMainComputeSkinCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4inSkin0inSkin1inSkin2inSkin3inSkin4 inMatrices  outVertices0 outVertices1 outVertices2 outVertices3 outVertices4!DXBC+i̮.+-w!,<LISGNOSGNSHEX!P`jYF pppppppppp p @_h@P     AO"  &" @(rFr#@((@ r*Fr:F~) @2 Fp 6@6@6@6 0P :) @:p UB:@VB*8B*@7:@: r:@Fr r :@Fr r :@ Fr  :@0Fx 6 6"  6B  6  6 6"  6B  6  6 *6" * 6B * 2 F F2 F F2 F F @6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP :   : AO" : &" @(rFr#@((@ r*Fr:F~) @2 Fp6@6@6@6 0P :) @:pUB:@VB*8B*@7:@:: r:@Fr r :@Fr r :@ Fr  :@0Fx 6 6"  6B  6  6 6"  6B  6  6 *6" * 6B * 2 F F2 F F2 F F @6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP *   * AO" * &" @(rFr#@((@ r*Fr:F~) @2 Fp6@6@6@6 0P :) @:pUB:@VB*8B*@7:@:* r:@Fr r :@Fr r :@ Fr  :@0Fx 6 6"  6B  6  6 6"  6B  6  6 *6" * 6B * 2 F F2 F F2 F F @6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP     AO"  &" @(rFr#@((@ r*Fr:F~) @2 Fp6@6@6@6 0P :) @:pUB:@VB*8B*@7:@: r:@Fr r :@Fr r :@ Fr  :@0Fx 6 6"  6B  6  6 6"  6B  6  6 *6" * 6B * 2 F F2 F F2 F F @6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP     AO"  &" @(rFr#@((@ r*Fr:F~) @2 Fp6@6@6@6 0P :) @:pUB:@VB*8B*@7:@: r:@Fr r :@Fr r :@ Fr  :@0Fx 6 6"  6B  6  6 6"  6B  6  6 *6" * 6B * 2 F F2 F F2 F F @6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::F>@A batchMainComputeSkinCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4inSkin0inSkin1inSkin2inSkin3inSkin4 inMatrices  outVertices0 outVertices1 outVertices2 outVertices3 outVertices4XDXBCs%B0֋X,<LISGNOSGNSHEXPAjYF pppppppppp p @_h@P     AO"  &" @ rFr) @ p   r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6 6@?FF66"6B6"FF6*6"*6B*BFFrFP :   : AO" : &" @ rFr) @ p : r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6 6@?FF66"6B6"FF6*6"*6B*BFFrFP *   * AO" * &" @ rFr) @ p * r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6 6@?FF66"6B6"FF6*6"*6B*BFFrFP     AO"  &" @ rFr) @ p  r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6 6@?FF66"6B6"FF6*6"*6B*BFFrFP     AO"  &" @ rFr) @ p  r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6 6@?FF66"6B6"FF6*6"*6B*BFFrF>@A batchMainComputeSkinCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4inSkin0inSkin1inSkin2inSkin3inSkin4 inMatrices  outVertices0 outVertices1 outVertices2 outVertices3 outVertices4DXBCI+tJPO:z(v,<LISGNOSGNSHEXP'jYF pppppppppp p @_h @P     AO"  &" @rFr# B @@ r*Fr) @ p   r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6 6@?FF6 6" 6B 6 "F F6*6"*6B*BFFFF"F FBFFrFr*FP :   : AO" : &" @rFr# B @@ r*Fr) @ p : r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6 6@?FF6 6" 6B 6 "F F6*6"*6B*BFFFF"F FBFFrFr*FP *   * AO" * &" @rFr# B @@ r*Fr) @ p * r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6 6@?FF6 6" 6B 6 "F F6*6"*6B*BFFFF"F FBFFrFr*FP     AO"  &" @rFr# B @@ r*Fr) @ p  r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6 6@?FF6 6" 6B 6 "F F6*6"*6B*BFFFF"F FBFFrFr*FP     AO"  &" @rFr# B @@ r*Fr) @ p  r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6 6@?FF6 6" 6B 6 "F F6*6"*6B*BFFFF"F FBFFrFr*F>@A batchMainComputeSkinCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4inSkin0inSkin1inSkin2inSkin3inSkin4 inMatrices  outVertices0 outVertices1 outVertices2 outVertices3 outVertices4DXBC1J_"=,<LISGNOSGNSHEX\PjYF pppppppppp p @_h @P     AO"  &" @(rFr#@((@ r*Fr:F~) @ p   r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6 6@? FF6 6" 6B 6 " F F6*6"*6B*B FFFF"F FBFFFF"F FBFFrF r*F6::FP :   : AO" : &" @(rFr#@((@ r*Fr:F~) @ p : r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6 6@? FF6 6" 6B 6 " F F6*6"*6B*B FFFF"F FBFFFF"F FBFFrF r*F6::FP *   * AO" * &" @(rFr#@((@ r*Fr:F~) @ p * r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6 6@? FF6 6" 6B 6 " F F6*6"*6B*B FFFF"F FBFFFF"F FBFFrF r*F6::FP     AO"  &" @(rFr#@((@ r*Fr:F~) @ p  r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6 6@? FF6 6" 6B 6 " F F6*6"*6B*B FFFF"F FBFFFF"F FBFFrF r*F6::FP     AO"  &" @(rFr#@((@ r*Fr:F~) @ p  r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6 6@? FF6 6" 6B 6 " F F6*6"*6B*B FFFF"F FBFFFF"F FBFFrF r*F6::F>@A batchMainComputeSkinCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4inSkin0inSkin1inSkin2inSkin3inSkin4 inMatrices  outVertices0 outVertices1 outVertices2 outVertices3 outVertices4DXBC*2iMŞ @_Hb?,<LISGNOSGNSHEXP jYF pppppppppp p @_h @P     AO"  &" @ rFr) @ F~ R  r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6 66"6B66*6"*6B*r*@Fr r*@Fr r*@ Fr  *@0Fx 6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 FF 2 FF 2 FF6@?FF"FFBFFrFP :   : AO" : &" @ rFr) @ F~R  r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6 66"6B66*6"*6B*r*@Fr r*@Fr r*@ Fr  *@0Fx 6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 FF 2 FF 2 FF6@?FF"FFBFFrFP *   * AO" * &" @ rFr) @ F~R  r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6 66"6B66*6"*6B*r*@Fr r*@Fr r*@ Fr  *@0Fx 6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 FF 2 FF 2 FF6@?FF"FFBFFrFP     AO"  &" @ rFr) @ F~R V r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6 66"6B66*6"*6B*r*@Fr r*@Fr r*@ Fr  *@0Fx 6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 FF 2 FF 2 FF6@?FF"FFBFFrFP     AO"  &" @ rFr) @ F~R  r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6 66"6B66*6"*6B*r*@Fr r*@Fr r*@ Fr  *@0Fx 6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 FF 2 FF 2 FF6@?FF"FFBFFrF>@A batchMainComputeSkinCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4inSkin0inSkin1inSkin2inSkin3inSkin4 inMatrices  outVertices0 outVertices1 outVertices2 outVertices3 outVertices4l DXBCynz ܝ?yqfl ,<LISGNOSGNSHEX PjYF pppppppppp p @_h @P     AO"  &" @rFr# B @@ r*Fr) @ F~  r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6 6 6" 6B 6 6*6"*6B*r:@Fr r:@Fr r:@ Fr  :@0Fx 6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 FF 2 F F 2 FF6@?FF"FFBFFFF"FFBFFrFr*FP :   : AO" : &" @rFr# B @@ r*Fr) @ F~ r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6 6 6" 6B 6 6*6"*6B*r:@Fr r:@Fr r:@ Fr  :@0Fx 6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 FF 2 F F 2 FF6@?FF"FFBFFFF"FFBFFrFr*FP *   * AO" * &" @rFr# B @@ r*Fr) @ F~ r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6 6 6" 6B 6 6*6"*6B*r:@Fr r:@Fr r:@ Fr  :@0Fx 6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 FF 2 F F 2 FF6@?FF"FFBFFFF"FFBFFrFr*FP     AO"  &" @rFr# B @@ r*Fr) @ F~V r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6 6 6" 6B 6 6*6"*6B*r:@Fr r:@Fr r:@ Fr  :@0Fx 6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 FF 2 F F 2 FF6@?FF"FFBFFFF"FFBFFrFr*FP     AO"  &" @rFr# B @@ r*Fr) @ F~ r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6 6 6" 6B 6 6*6"*6B*r:@Fr r:@Fr r:@ Fr  :@0Fx 6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 FF 2 F F 2 FF6@?FF"FFBFFFF"FFBFFrFr*F>@A batchMainComputeSkinCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4inSkin0inSkin1inSkin2inSkin3inSkin4 inMatrices  outVertices0 outVertices1 outVertices2 outVertices3 outVertices4,$DXBC]g0/!a֤Óf,$,<LISGNOSGNSHEX#PjYF pppppppppp p @_h@P     AO"  &" @(rFr#@((@ r*Fr:F~) @ F~  r*@Fr r*@Fr r*@ Fr *@0Fx 6 6" 6B 6 6 6" 6B 6 6*6"*6B*r:@Fr r:@Fr r:@ Fr  :@0Fx 6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 F F 2 F F 2 FF6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP :   : AO" : &" @(rFr#@((@ r*Fr:F~) @ F~ r*@Fr r*@Fr r*@ Fr *@0Fx 6 6" 6B 6 6 6" 6B 6 6*6"*6B*r:@Fr r:@Fr r:@ Fr  :@0Fx 6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 F F 2 F F 2 FF6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP *   * AO" * &" @(rFr#@((@ r*Fr:F~) @ F~ r*@Fr r*@Fr r*@ Fr *@0Fx 6 6" 6B 6 6 6" 6B 6 6*6"*6B*r:@Fr r:@Fr r:@ Fr  :@0Fx 6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 F F 2 F F 2 FF6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP     AO"  &" @(rFr#@((@ r*Fr:F~) @ F~V r*@Fr r*@Fr r*@ Fr *@0Fx 6 6" 6B 6 6 6" 6B 6 6*6"*6B*r:@Fr r:@Fr r:@ Fr  :@0Fx 6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 F F 2 F F 2 FF6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP     AO"  &" @(rFr#@((@ r*Fr:F~) @ F~ r*@Fr r*@Fr r*@ Fr *@0Fx 6 6" 6B 6 6 6" 6B 6 6*6"*6B*r:@Fr r:@Fr r:@ Fr  :@0Fx 6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 F F 2 F F 2 FF6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::F>@A batchMainComputeSkinCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4inSkin0inSkin1inSkin2inSkin3inSkin4 inMatrices  outVertices0 outVertices1 outVertices2 outVertices3 outVertices42DXBC Px͘02,<LISGNOSGNSHEX1Pp jYF pppppppppp p @_h @P     AO"  &" @ rFr)B @*F~ @@ @ F~ F  @y r @Fr r @ Fr  @0Fx 6 6" 6B 6 6*6"6B66:6"*6B*@y r@Fr r@ Fr  @0Fx 6 6" 6B 6  8 VF 6 *6" 6B 6  8 VF 6 :6" *6B *8VF 2 FF 2 FF 2 FF*@y r*@Fr r*@ Fr  *@0Fx 6 6" 6B 6  6 *6" 6B 6  6 :6" *6B *2 F F2 F F2 F F:@y r:@Fr r:@ Fr :@0Fx 6 6" 6B 6 6 *6" 6B 6 6:6"*6B*2 FF2 F F2 FF6@?FF"FFBFFrFP :   : AO" : &" @ rFr)B @*F~ @@ @ F~F  @y r @Fr r @ Fr  @0Fx 6 6" 6B 6 6*6"6B66:6"*6B*@y r@Fr r@ Fr  @0Fx 6 6" 6B 6  8 VF 6 *6" 6B 6  8 VF 6 :6" *6B *8VF 2 FF 2 FF 2 FF*@y r*@Fr r*@ Fr  *@0Fx 6 6" 6B 6  6 *6" 6B 6  6 :6" *6B *2 F F2 F F2 F F:@y r:@Fr r:@ Fr :@0Fx 6 6" 6B 6 6 *6" 6B 6 6:6"*6B*2 FF2 F F2 FF6@?FF"FFBFFrFP *   * AO" * &" @ rFr)B @*F~ @@ @ F~F  @y r @Fr r @ Fr  @0Fx 6 6" 6B 6 6*6"6B66:6"*6B*@y r@Fr r@ Fr  @0Fx 6 6" 6B 6  8 VF 6 *6" 6B 6  8 VF 6 :6" *6B *8VF 2 FF 2 FF 2 FF*@y r*@Fr r*@ Fr  *@0Fx 6 6" 6B 6  6 *6" 6B 6  6 :6" *6B *2 F F2 F F2 F F:@y r:@Fr r:@ Fr :@0Fx 6 6" 6B 6 6 *6" 6B 6 6:6"*6B*2 FF2 F F2 FF6@?FF"FFBFFrFP     AO"  &" @ rFr)B @*F~ @@ @ F~FV  @y r @Fr r @ Fr  @0Fx 6 6" 6B 6 6*6"6B66:6"*6B*@y r@Fr r@ Fr  @0Fx 6 6" 6B 6  8 VF 6 *6" 6B 6  8 VF 6 :6" *6B *8VF 2 FF 2 FF 2 FF*@y r*@Fr r*@ Fr  *@0Fx 6 6" 6B 6  6 *6" 6B 6  6 :6" *6B *2 F F2 F F2 F F:@y r:@Fr r:@ Fr :@0Fx 6 6" 6B 6 6 *6" 6B 6 6:6"*6B*2 FF2 F F2 FF6@?FF"FFBFFrFP     AO"  &" @ rFr)B @*F~ @@ @ F~F  @y r @Fr r @ Fr  @0Fx 6 6" 6B 6 6*6"6B66:6"*6B*@y r@Fr r@ Fr  @0Fx 6 6" 6B 6  8 VF 6 *6" 6B 6  8 VF 6 :6" *6B *8VF 2 FF 2 FF 2 FF*@y r*@Fr r*@ Fr  *@0Fx 6 6" 6B 6  6 *6" 6B 6  6 :6" *6B *2 F F2 F F2 F F:@y r:@Fr r:@ Fr :@0Fx 6 6" 6B 6 6 *6" 6B 6 6:6"*6B*2 FF2 F F2 FF6@?FF"FFBFFrF>@A batchMainComputeSkinCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4inSkin0inSkin1inSkin2inSkin3inSkin4 inMatrices  outVertices0 outVertices1 outVertices2 outVertices3 outVertices45DXBC:ẗ́8fU@A batchMainComputeSkinCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4inSkin0inSkin1inSkin2inSkin3inSkin4 inMatrices  outVertices0 outVertices1 outVertices2 outVertices3 outVertices4l9DXBCC'* Ь] l9,<LISGNOSGNSHEX9PFjYF pppppppppp p @_h@P     AO"  &" @(rFr#@((@ r*Fr:F~) @:F~ @@ @ F~ F r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6  6 6" 6B 6  6 *6" *6B *r@Fr r@Fr r@ Fr  @0Fx 6 6" 6B 6  8 VF 66"6B6 8VF6 *6" *6B *8VF 2 F F 2 F F2 F Fr *@Fr r *@Fr r *@ Fr  *@0Fx 6  6"  6B  6  6 6" 6B 6 6 * 6" * 6B * 2 F F2 F F2 F Fr:@Fr r:@Fr r :@ Fr  :@0Fx 6 6" 6B  6  6 6" 6B  6  6 *6" *6B * 2 F F2 F F2 F F6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP :   : AO" : &" @(rFr#@((@ r*Fr:F~) @:F~ @@ @ F~F r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6  6 6" 6B 6  6 *6" *6B *r@Fr r@Fr r@ Fr  @0Fx 6 6" 6B 6  8 VF 66"6B6 8VF6 *6" *6B *8VF 2 F F 2 F F2 F Fr *@Fr r *@Fr r *@ Fr  *@0Fx 6  6"  6B  6  6 6" 6B 6 6 * 6" * 6B * 2 F F2 F F2 F Fr:@Fr r:@Fr r :@ Fr  :@0Fx 6 6" 6B  6  6 6" 6B  6  6 *6" *6B * 2 F F2 F F2 F F6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP *   * AO" * &" @(rFr#@((@ r*Fr:F~) @:F~ @@ @ F~F r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6  6 6" 6B 6  6 *6" *6B *r@Fr r@Fr r@ Fr  @0Fx 6 6" 6B 6  8 VF 66"6B6 8VF6 *6" *6B *8VF 2 F F 2 F F2 F Fr *@Fr r *@Fr r *@ Fr  *@0Fx 6  6"  6B  6  6 6" 6B 6 6 * 6" * 6B * 2 F F2 F F2 F Fr:@Fr r:@Fr r :@ Fr  :@0Fx 6 6" 6B  6  6 6" 6B  6  6 *6" *6B * 2 F F2 F F2 F F6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP     AO"  &" @(rFr#@((@ r*Fr:F~) @:F~ @@ @ F~FV r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6  6 6" 6B 6  6 *6" *6B *r@Fr r@Fr r@ Fr  @0Fx 6 6" 6B 6  8 VF 66"6B6 8VF6 *6" *6B *8VF 2 F F 2 F F2 F Fr *@Fr r *@Fr r *@ Fr  *@0Fx 6  6"  6B  6  6 6" 6B 6 6 * 6" * 6B * 2 F F2 F F2 F Fr:@Fr r:@Fr r :@ Fr  :@0Fx 6 6" 6B  6  6 6" 6B  6  6 *6" *6B * 2 F F2 F F2 F F6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP     AO"  &" @(rFr#@((@ r*Fr:F~) @:F~ @@ @ F~F r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6  6 6" 6B 6  6 *6" *6B *r@Fr r@Fr r@ Fr  @0Fx 6 6" 6B 6  8 VF 66"6B6 8VF6 *6" *6B *8VF 2 F F 2 F F2 F Fr *@Fr r *@Fr r *@ Fr  *@0Fx 6  6"  6B  6  6 6" 6B 6 6 * 6" * 6B * 2 F F2 F F2 F Fr:@Fr r:@Fr r :@ Fr  :@0Fx 6 6" 6B  6  6 6" 6B  6  6 *6" *6B * 2 F F2 F F2 F F6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::F>@AbatchMainInPlaceComputeSkinInPlaceCBufferinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6 inMatricesinOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices6$DXBCn~}HWF,$,<LISGNOSGNSHEX,$P jYF pppppppp@_h @P *   * AO" * &" @ rF) @R q6@6@6@6 0P:* ):@ pU" @V"8"@7 @ * r @Frr @Frr @ Fr @0Fx6 6" 6B 6  6 6" 6B 6  6 *6" *6B *2 F VF2 F VF2 F VF:@6@?FF"FFBFFrFP     AO"  &" @ rF) @R q6@6@6@6 0P:* ):@ pU" @V"8"@7 @  r @Frr @Frr @ Fr @0Fx6 6" 6B 6  6 6" 6B 6  6 *6" *6B *2 F VF2 F VF2 F VF:@6@?FF"FFBFFrFP     AO"  &" @ rF) @R q6@6@6@6 0P:* ):@ pU" @V"8"@7 @  r @Frr @Frr @ Fr @0Fx6 6" 6B 6  6 6" 6B 6  6 *6" *6B *2 F VF2 F VF2 F VF:@6@?FF"FFBFFrFP :   : AO" : &" @ rF) @R q6@6@6@6 0P:* ):@ pU" @V"8"@7 @ : r @Frr @Frr @ Fr @0Fx6 6" 6B 6  6 6" 6B 6  6 *6" *6B *2 F VF2 F VF2 F VF:@6@?FF"FFBFFrFP *   * AO" * &" @ rF) @R q6@6@6@6 0P:* ):@ pU" @V"8"@7 @ * r @Frr @Frr @ Fr @0Fx6 6" 6B 6  6 6" 6B 6  6 *6" *6B *2 F VF2 F VF2 F VF:@6@?FF"FFBFFrFP     AO"  &" @ rF) @R q6@6@6@6 0P:* ):@ pU" @V"8"@7 @  r @Frr @Frr @ Fr @0Fx6 6" 6B 6  6 6" 6B 6  6 *6" *6B *2 F VF2 F VF2 F VF:@6@?FF"FFBFFrFP     AO"  &" @ rF) @R q6@6@6@6 0P:* ):@ pU" @V"8"@7 @  r @Frr @Frr @ Fr @0Fx6 6" 6B 6  6 6" 6B 6  6 *6" *6B *2 F VF2 F VF2 F VF:@6@?FF"FFBFFrF>@AbatchMainInPlaceComputeSkinInPlaceCBufferinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6 inMatricesinOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices6)DXBC ̐JD2^؜#),<LISGNOSGNSHEX4)PM jYF pppppppp@_h @P *   * AO" * &" @rF# B @@ r*F) @ t6@6@6@6 0P:: ):@ pU" @V"8"@7 @ * r @Frr @Frr @ Fr @0Fx6 6" 6B  6  6 6" 6B  6  6 *6" *6B * 2 F VF2 F VF2 F VF:@6@?FF"FFBFFFF"FFBFFrFr*FP     AO"  &" @rF# B @@ r*F) @ t6@6@6@6 0P:: ):@ pU" @V"8"@7 @  r @Frr @Frr @ Fr @0Fx6 6" 6B  6  6 6" 6B  6  6 *6" *6B * 2 F VF2 F VF2 F VF:@6@?FF"FFBFFFF"FFBFFrFr*FP     AO"  &" @rF# B @@ r*F) @ t6@6@6@6 0P:: ):@ pU" @V"8"@7 @  r @Frr @Frr @ Fr @0Fx6 6" 6B  6  6 6" 6B  6  6 *6" *6B * 2 F VF2 F VF2 F VF:@6@?FF"FFBFFFF"FFBFFrFr*FP :   : AO" : &" @rF# B @@ r*F) @ t6@6@6@6 0P:: ):@ pU" @V"8"@7 @ : r @Frr @Frr @ Fr @0Fx6 6" 6B  6  6 6" 6B  6  6 *6" *6B * 2 F VF2 F VF2 F VF:@6@?FF"FFBFFFF"FFBFFrFr*FP *   * AO" * &" @rF# B @@ r*F) @ t6@6@6@6 0P:: ):@ pU" @V"8"@7 @ * r @Frr @Frr @ Fr @0Fx6 6" 6B  6  6 6" 6B  6  6 *6" *6B * 2 F VF2 F VF2 F VF:@6@?FF"FFBFFFF"FFBFFrFr*FP     AO"  &" @rF# B @@ r*F) @ t6@6@6@6 0P:: ):@ pU" @V"8"@7 @  r @Frr @Frr @ Fr @0Fx6 6" 6B  6  6 6" 6B  6  6 *6" *6B * 2 F VF2 F VF2 F VF:@6@?FF"FFBFFFF"FFBFFrFr*FP     AO"  &" @rF# B @@ r*F) @ t6@6@6@6 0P:: ):@ pU" @V"8"@7 @  r @Frr @Frr @ Fr @0Fx6 6" 6B  6  6 6" 6B  6  6 *6" *6B * 2 F VF2 F VF2 F VF:@6@?FF"FFBFFFF"FFBFFrFr*F>@AbatchMainInPlaceComputeSkinInPlaceCBufferinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6 inMatricesinOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices6.DXBCdX9 9b.,<LISGNOSGNSHEXt.P jYF pppppppp@_h@P *   * AO" * &" @(rF#@((@ r*F:F) @2 Fp6@6@6@6 0P :) @:pUB:@VB*8B*@7:@:* r:@Frr :@Frr :@ Fr :@0Fx6 6"  6B  6  6 6"  6B  6  6 *6" * 6B * 2 F F2 F F2 F F @6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP     AO"  &" @(rF#@((@ r*F:F) @2 Fp6@6@6@6 0P :) @:pUB:@VB*8B*@7:@: r:@Frr :@Frr :@ Fr :@0Fx6 6"  6B  6  6 6"  6B  6  6 *6" * 6B * 2 F F2 F F2 F F @6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP     AO"  &" @(rF#@((@ r*F:F) @2 Fp6@6@6@6 0P :) @:pUB:@VB*8B*@7:@: r:@Frr :@Frr :@ Fr :@0Fx6 6"  6B  6  6 6"  6B  6  6 *6" * 6B * 2 F F2 F F2 F F @6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP :   : AO" : &" @(rF#@((@ r*F:F) @2 Fp6@6@6@6 0P :) @:pUB:@VB*8B*@7:@:: r:@Frr :@Frr :@ Fr :@0Fx6 6"  6B  6  6 6"  6B  6  6 *6" * 6B * 2 F F2 F F2 F F @6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP *   * AO" * &" @(rF#@((@ r*F:F) @2 Fp6@6@6@6 0P :) @:pUB:@VB*8B*@7:@:* r:@Frr :@Frr :@ Fr :@0Fx6 6"  6B  6  6 6"  6B  6  6 *6" * 6B * 2 F F2 F F2 F F @6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP     AO"  &" @(rF#@((@ r*F:F) @2 Fp6@6@6@6 0P :) @:pUB:@VB*8B*@7:@: r:@Frr :@Frr :@ Fr :@0Fx6 6"  6B  6  6 6"  6B  6  6 *6" * 6B * 2 F F2 F F2 F F @6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP     AO"  &" @(rF#@((@ r*F:F) @2 Fp6@6@6@6 0P :) @:pUB:@VB*8B*@7:@: r:@Frr :@Frr :@ Fr :@0Fx6 6"  6B  6  6 6"  6B  6  6 *6" * 6B * 2 F F2 F F2 F F @6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::F>@AbatchMainInPlaceComputeSkinInPlaceCBufferinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6 inMatricesinOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices6DXBC3% D;u<K,<LISGNOSGNSHEX`PjYF pppppppp@_h@P *   * AO" * &" @ rF) @ p * r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6@?FF66"6B6"FF6*6"*6B*BFFrFP     AO"  &" @ rF) @ p  r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6@?FF66"6B6"FF6*6"*6B*BFFrFP     AO"  &" @ rF) @ p  r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6@?FF66"6B6"FF6*6"*6B*BFFrFP :   : AO" : &" @ rF) @ p : r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6@?FF66"6B6"FF6*6"*6B*BFFrFP *   * AO" * &" @ rF) @ p * r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6@?FF66"6B6"FF6*6"*6B*BFFrFP     AO"  &" @ rF) @ p  r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6@?FF66"6B6"FF6*6"*6B*BFFrFP     AO"  &" @ rF) @ p  r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6@?FF66"6B6"FF6*6"*6B*BFFrF>@AbatchMainInPlaceComputeSkinInPlaceCBufferinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6 inMatricesinOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices6DXBC)D|c8/`r,<LISGNOSGNSHEXhPjYF pppppppp@_h @P *   * AO" * &" @rF# B @@ r*F) @ p * r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6@?FF6 6" 6B 6 "F F6*6"*6B*BFFFF"F FBFFrFr*FP     AO"  &" @rF# B @@ r*F) @ p  r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6@?FF6 6" 6B 6 "F F6*6"*6B*BFFFF"F FBFFrFr*FP     AO"  &" @rF# B @@ r*F) @ p  r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6@?FF6 6" 6B 6 "F F6*6"*6B*BFFFF"F FBFFrFr*FP :   : AO" : &" @rF# B @@ r*F) @ p : r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6@?FF6 6" 6B 6 "F F6*6"*6B*BFFFF"F FBFFrFr*FP *   * AO" * &" @rF# B @@ r*F) @ p * r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6@?FF6 6" 6B 6 "F F6*6"*6B*BFFFF"F FBFFrFr*FP     AO"  &" @rF# B @@ r*F) @ p  r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6@?FF6 6" 6B 6 "F F6*6"*6B*BFFFF"F FBFFrFr*FP     AO"  &" @rF# B @@ r*F) @ p  r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6@?FF6 6" 6B 6 "F F6*6"*6B*BFFFF"F FBFFrFr*F>@AbatchMainInPlaceComputeSkinInPlaceCBufferinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6 inMatricesinOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices6!DXBCbmBVJ%bTNi!,<LISGNOSGNSHEX!PjjYF pppppppp@_h @P *   * AO" * &" @(rF#@((@ r*F:F) @ p * r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6@? FF6 6" 6B 6 " F F6*6"*6B*B FFFF"F FBFFFF"F FBFFrF r*F6::FP     AO"  &" @(rF#@((@ r*F:F) @ p  r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6@? FF6 6" 6B 6 " F F6*6"*6B*B FFFF"F FBFFFF"F FBFFrF r*F6::FP     AO"  &" @(rF#@((@ r*F:F) @ p  r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6@? FF6 6" 6B 6 " F F6*6"*6B*B FFFF"F FBFFFF"F FBFFrF r*F6::FP :   : AO" : &" @(rF#@((@ r*F:F) @ p : r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6@? FF6 6" 6B 6 " F F6*6"*6B*B FFFF"F FBFFFF"F FBFFrF r*F6::FP *   * AO" * &" @(rF#@((@ r*F:F) @ p * r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6@? FF6 6" 6B 6 " F F6*6"*6B*B FFFF"F FBFFFF"F FBFFrF r*F6::FP     AO"  &" @(rF#@((@ r*F:F) @ p  r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6@? FF6 6" 6B 6 " F F6*6"*6B*B FFFF"F FBFFFF"F FBFFrF r*F6::FP     AO"  &" @(rF#@((@ r*F:F) @ p  r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6@? FF6 6" 6B 6 " F F6*6"*6B*B FFFF"F FBFFFF"F FBFFrF r*F6::F>@AbatchMainInPlaceComputeSkinInPlaceCBufferinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6 inMatricesinOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices6'DXBClB>/Ni?k',<LISGNOSGNSHEXt'P jYF pppppppp@_h @P *   * AO" * &" @ rF) @ F~R  r @Frr @Frr @ Fr @0Fx6 6" 6B 6 66"6B66*6"*6B*r*@Frr*@Frr*@ Fr *@0Fx6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 FF 2 FF 2 FF6@?FF"FFBFFrFP     AO"  &" @ rF) @ F~R V r @Frr @Frr @ Fr @0Fx6 6" 6B 6 66"6B66*6"*6B*r*@Frr*@Frr*@ Fr *@0Fx6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 FF 2 FF 2 FF6@?FF"FFBFFrFP     AO"  &" @ rF) @ F~R  r @Frr @Frr @ Fr @0Fx6 6" 6B 6 66"6B66*6"*6B*r*@Frr*@Frr*@ Fr *@0Fx6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 FF 2 FF 2 FF6@?FF"FFBFFrFP :   : AO" : &" @ rF) @ F~R  r @Frr @Frr @ Fr @0Fx6 6" 6B 6 66"6B66*6"*6B*r*@Frr*@Frr*@ Fr *@0Fx6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 FF 2 FF 2 FF6@?FF"FFBFFrFP *   * AO" * &" @ rF) @ F~R  r @Frr @Frr @ Fr @0Fx6 6" 6B 6 66"6B66*6"*6B*r*@Frr*@Frr*@ Fr *@0Fx6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 FF 2 FF 2 FF6@?FF"FFBFFrFP     AO"  &" @ rF) @ F~R V r @Frr @Frr @ Fr @0Fx6 6" 6B 6 66"6B66*6"*6B*r*@Frr*@Frr*@ Fr *@0Fx6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 FF 2 FF 2 FF6@?FF"FFBFFrFP     AO"  &" @ rF) @ F~R  r @Frr @Frr @ Fr @0Fx6 6" 6B 6 66"6B66*6"*6B*r*@Frr*@Frr*@ Fr *@0Fx6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 FF 2 FF 2 FF6@?FF"FFBFFrF>@AbatchMainInPlaceComputeSkinInPlaceCBufferinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6 inMatricesinOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices6,DXBCttuV`~}t,,<LISGNOSGNSHEX|,P jYF pppppppp@_h @P *   * AO" * &" @rF# B @@ r*F) @ F~ r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6 6" 6B 6 6*6"*6B*r:@Frr:@Frr:@ Fr :@0Fx6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 FF 2 F F 2 FF6@?FF"FFBFFFF"FFBFFrFr*FP     AO"  &" @rF# B @@ r*F) @ F~V r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6 6" 6B 6 6*6"*6B*r:@Frr:@Frr:@ Fr :@0Fx6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 FF 2 F F 2 FF6@?FF"FFBFFFF"FFBFFrFr*FP     AO"  &" @rF# B @@ r*F) @ F~ r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6 6" 6B 6 6*6"*6B*r:@Frr:@Frr:@ Fr :@0Fx6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 FF 2 F F 2 FF6@?FF"FFBFFFF"FFBFFrFr*FP :   : AO" : &" @rF# B @@ r*F) @ F~ r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6 6" 6B 6 6*6"*6B*r:@Frr:@Frr:@ Fr :@0Fx6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 FF 2 F F 2 FF6@?FF"FFBFFFF"FFBFFrFr*FP *   * AO" * &" @rF# B @@ r*F) @ F~ r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6 6" 6B 6 6*6"*6B*r:@Frr:@Frr:@ Fr :@0Fx6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 FF 2 F F 2 FF6@?FF"FFBFFFF"FFBFFrFr*FP     AO"  &" @rF# B @@ r*F) @ F~V r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6 6" 6B 6 6*6"*6B*r:@Frr:@Frr:@ Fr :@0Fx6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 FF 2 F F 2 FF6@?FF"FFBFFFF"FFBFFrFr*FP     AO"  &" @rF# B @@ r*F) @ F~ r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6 6" 6B 6 6*6"*6B*r:@Frr:@Frr:@ Fr :@0Fx6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 FF 2 F F 2 FF6@?FF"FFBFFFF"FFBFFrFr*F>@AbatchMainInPlaceComputeSkinInPlaceCBufferinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6 inMatricesinOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices62DXBC DQm 7^(2,<LISGNOSGNSHEX1Po jYF pppppppp@_h@P *   * AO" * &" @(rF#@((@ r*F:F) @ F~ r*@Frr*@Frr*@ Fr*@0Fx6 6" 6B 6 6 6" 6B 6 6*6"*6B*r:@Frr:@Frr:@ Fr :@0Fx6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 F F 2 F F 2 FF6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP     AO"  &" @(rF#@((@ r*F:F) @ F~V r*@Frr*@Frr*@ Fr*@0Fx6 6" 6B 6 6 6" 6B 6 6*6"*6B*r:@Frr:@Frr:@ Fr :@0Fx6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 F F 2 F F 2 FF6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP     AO"  &" @(rF#@((@ r*F:F) @ F~ r*@Frr*@Frr*@ Fr*@0Fx6 6" 6B 6 6 6" 6B 6 6*6"*6B*r:@Frr:@Frr:@ Fr :@0Fx6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 F F 2 F F 2 FF6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP :   : AO" : &" @(rF#@((@ r*F:F) @ F~ r*@Frr*@Frr*@ Fr*@0Fx6 6" 6B 6 6 6" 6B 6 6*6"*6B*r:@Frr:@Frr:@ Fr :@0Fx6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 F F 2 F F 2 FF6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP *   * AO" * &" @(rF#@((@ r*F:F) @ F~ r*@Frr*@Frr*@ Fr*@0Fx6 6" 6B 6 6 6" 6B 6 6*6"*6B*r:@Frr:@Frr:@ Fr :@0Fx6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 F F 2 F F 2 FF6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP     AO"  &" @(rF#@((@ r*F:F) @ F~V r*@Frr*@Frr*@ Fr*@0Fx6 6" 6B 6 6 6" 6B 6 6*6"*6B*r:@Frr:@Frr:@ Fr :@0Fx6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 F F 2 F F 2 FF6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP     AO"  &" @(rF#@((@ r*F:F) @ F~ r*@Frr*@Frr*@ Fr*@0Fx6 6" 6B 6 6 6" 6B 6 6*6"*6B*r:@Frr:@Frr:@ Fr :@0Fx6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 F F 2 F F 2 FF6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::F>@AbatchMainInPlaceComputeSkinInPlaceCBufferinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6 inMatricesinOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices6EDXBClMKeJE,<LISGNOSGNSHEX4EPMjYF pppppppp@_h @P *   * AO" * &" @ rF)B @*F~ @@ @ F~F  @yr @Frr @ Fr @0Fx6 6" 6B 6 6*6"6B66:6"*6B*@yr@Frr@ Fr @0Fx6 6" 6B 6  8 VF 6 *6" 6B 6  8 VF 6 :6" *6B *8VF 2 FF 2 FF 2 FF*@yr*@Frr*@ Fr *@0Fx6 6" 6B 6  6 *6" 6B 6  6 :6" *6B *2 F F2 F F2 F F:@yr:@Frr:@ Fr:@0Fx6 6" 6B 6 6 *6" 6B 6 6:6"*6B*2 FF2 F F2 FF6@?FF"FFBFFrFP     AO"  &" @ rF)B @*F~ @@ @ F~FV  @yr @Frr @ Fr @0Fx6 6" 6B 6 6*6"6B66:6"*6B*@yr@Frr@ Fr @0Fx6 6" 6B 6  8 VF 6 *6" 6B 6  8 VF 6 :6" *6B *8VF 2 FF 2 FF 2 FF*@yr*@Frr*@ Fr *@0Fx6 6" 6B 6  6 *6" 6B 6  6 :6" *6B *2 F F2 F F2 F F:@yr:@Frr:@ Fr:@0Fx6 6" 6B 6 6 *6" 6B 6 6:6"*6B*2 FF2 F F2 FF6@?FF"FFBFFrFP     AO"  &" @ rF)B @*F~ @@ @ F~F  @yr @Frr @ Fr @0Fx6 6" 6B 6 6*6"6B66:6"*6B*@yr@Frr@ Fr @0Fx6 6" 6B 6  8 VF 6 *6" 6B 6  8 VF 6 :6" *6B *8VF 2 FF 2 FF 2 FF*@yr*@Frr*@ Fr *@0Fx6 6" 6B 6  6 *6" 6B 6  6 :6" *6B *2 F F2 F F2 F F:@yr:@Frr:@ Fr:@0Fx6 6" 6B 6 6 *6" 6B 6 6:6"*6B*2 FF2 F F2 FF6@?FF"FFBFFrFP :   : AO" : &" @ rF)B @*F~ @@ @ F~F  @yr @Frr @ Fr @0Fx6 6" 6B 6 6*6"6B66:6"*6B*@yr@Frr@ Fr @0Fx6 6" 6B 6  8 VF 6 *6" 6B 6  8 VF 6 :6" *6B *8VF 2 FF 2 FF 2 FF*@yr*@Frr*@ Fr *@0Fx6 6" 6B 6  6 *6" 6B 6  6 :6" *6B *2 F F2 F F2 F F:@yr:@Frr:@ Fr:@0Fx6 6" 6B 6 6 *6" 6B 6 6:6"*6B*2 FF2 F F2 FF6@?FF"FFBFFrFP *   * AO" * &" @ rF)B @*F~ @@ @ F~F  @yr @Frr @ Fr @0Fx6 6" 6B 6 6*6"6B66:6"*6B*@yr@Frr@ Fr @0Fx6 6" 6B 6  8 VF 6 *6" 6B 6  8 VF 6 :6" *6B *8VF 2 FF 2 FF 2 FF*@yr*@Frr*@ Fr *@0Fx6 6" 6B 6  6 *6" 6B 6  6 :6" *6B *2 F F2 F F2 F F:@yr:@Frr:@ Fr:@0Fx6 6" 6B 6 6 *6" 6B 6 6:6"*6B*2 FF2 F F2 FF6@?FF"FFBFFrFP     AO"  &" @ rF)B @*F~ @@ @ F~FV  @yr @Frr @ Fr @0Fx6 6" 6B 6 6*6"6B66:6"*6B*@yr@Frr@ Fr @0Fx6 6" 6B 6  8 VF 6 *6" 6B 6  8 VF 6 :6" *6B *8VF 2 FF 2 FF 2 FF*@yr*@Frr*@ Fr *@0Fx6 6" 6B 6  6 *6" 6B 6  6 :6" *6B *2 F F2 F F2 F F:@yr:@Frr:@ Fr:@0Fx6 6" 6B 6 6 *6" 6B 6 6:6"*6B*2 FF2 F F2 FF6@?FF"FFBFFrFP     AO"  &" @ rF)B @*F~ @@ @ F~F  @yr @Frr @ Fr @0Fx6 6" 6B 6 6*6"6B66:6"*6B*@yr@Frr@ Fr @0Fx6 6" 6B 6  8 VF 6 *6" 6B 6  8 VF 6 :6" *6B *8VF 2 FF 2 FF 2 FF*@yr*@Frr*@ Fr *@0Fx6 6" 6B 6  6 *6" 6B 6  6 :6" *6B *2 F F2 F F2 F F:@yr:@Frr:@ Fr:@0Fx6 6" 6B 6 6 *6" 6B 6 6:6"*6B*2 FF2 F F2 FF6@?FF"FFBFFrF>@AbatchMainInPlaceComputeSkinInPlaceCBufferinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6 inMatricesinOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices6JDXBCH$Նw' l)3̈́J,<LISGNOSGNSHEX@AbatchMainInPlaceComputeSkinInPlaceCBufferinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6 inMatricesinOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices6ODXBC3Q\/ʯ^tpV:O,<LISGNOSGNSHEX|OPjYF pppppppp@_h@P *   * AO" * &" @(rF#@((@ r*F:F) @:F~ @@ @ F~F r @Frr @Frr @ Fr @0Fx6 6" 6B 6  6 6" 6B 6  6 *6" *6B *r@Frr@Frr@ Fr @0Fx6 6" 6B 6  8 VF 66"6B6 8VF6 *6" *6B *8VF 2 F F 2 F F2 F Fr *@Frr *@Frr *@ Fr *@0Fx6  6"  6B  6  6 6" 6B 6 6 * 6" * 6B * 2 F F2 F F2 F Fr:@Frr:@Frr :@ Fr :@0Fx6 6" 6B  6  6 6" 6B  6  6 *6" *6B * 2 F F2 F F2 F F6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP     AO"  &" @(rF#@((@ r*F:F) @:F~ @@ @ F~FV r @Frr @Frr @ Fr @0Fx6 6" 6B 6  6 6" 6B 6  6 *6" *6B *r@Frr@Frr@ Fr @0Fx6 6" 6B 6  8 VF 66"6B6 8VF6 *6" *6B *8VF 2 F F 2 F F2 F Fr *@Frr *@Frr *@ Fr *@0Fx6  6"  6B  6  6 6" 6B 6 6 * 6" * 6B * 2 F F2 F F2 F Fr:@Frr:@Frr :@ Fr :@0Fx6 6" 6B  6  6 6" 6B  6  6 *6" *6B * 2 F F2 F F2 F F6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP     AO"  &" @(rF#@((@ r*F:F) @:F~ @@ @ F~F r @Frr @Frr @ Fr @0Fx6 6" 6B 6  6 6" 6B 6  6 *6" *6B *r@Frr@Frr@ Fr @0Fx6 6" 6B 6  8 VF 66"6B6 8VF6 *6" *6B *8VF 2 F F 2 F F2 F Fr *@Frr *@Frr *@ Fr *@0Fx6  6"  6B  6  6 6" 6B 6 6 * 6" * 6B * 2 F F2 F F2 F Fr:@Frr:@Frr :@ Fr :@0Fx6 6" 6B  6  6 6" 6B  6  6 *6" *6B * 2 F F2 F F2 F F6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP :   : AO" : &" @(rF#@((@ r*F:F) @:F~ @@ @ F~F r @Frr @Frr @ Fr @0Fx6 6" 6B 6  6 6" 6B 6  6 *6" *6B *r@Frr@Frr@ Fr @0Fx6 6" 6B 6  8 VF 66"6B6 8VF6 *6" *6B *8VF 2 F F 2 F F2 F Fr *@Frr *@Frr *@ Fr *@0Fx6  6"  6B  6  6 6" 6B 6 6 * 6" * 6B * 2 F F2 F F2 F Fr:@Frr:@Frr :@ Fr :@0Fx6 6" 6B  6  6 6" 6B  6  6 *6" *6B * 2 F F2 F F2 F F6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP *   * AO" * &" @(rF#@((@ r*F:F) @:F~ @@ @ F~F r @Frr @Frr @ Fr @0Fx6 6" 6B 6  6 6" 6B 6  6 *6" *6B *r@Frr@Frr@ Fr @0Fx6 6" 6B 6  8 VF 66"6B6 8VF6 *6" *6B *8VF 2 F F 2 F F2 F Fr *@Frr *@Frr *@ Fr *@0Fx6  6"  6B  6  6 6" 6B 6 6 * 6" * 6B * 2 F F2 F F2 F Fr:@Frr:@Frr :@ Fr :@0Fx6 6" 6B  6  6 6" 6B  6  6 *6" *6B * 2 F F2 F F2 F F6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP     AO"  &" @(rF#@((@ r*F:F) @:F~ @@ @ F~FV r @Frr @Frr @ Fr @0Fx6 6" 6B 6  6 6" 6B 6  6 *6" *6B *r@Frr@Frr@ Fr @0Fx6 6" 6B 6  8 VF 66"6B6 8VF6 *6" *6B *8VF 2 F F 2 F F2 F Fr *@Frr *@Frr *@ Fr *@0Fx6  6"  6B  6  6 6" 6B 6 6 * 6" * 6B * 2 F F2 F F2 F Fr:@Frr:@Frr :@ Fr :@0Fx6 6" 6B  6  6 6" 6B  6  6 *6" *6B * 2 F F2 F F2 F F6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP     AO"  &" @(rF#@((@ r*F:F) @:F~ @@ @ F~F r @Frr @Frr @ Fr @0Fx6 6" 6B 6  6 6" 6B 6  6 *6" *6B *r@Frr@Frr@ Fr @0Fx6 6" 6B 6  8 VF 66"6B6 8VF6 *6" *6B *8VF 2 F F 2 F F2 F Fr *@Frr *@Frr *@ Fr *@0Fx6  6"  6B  6  6 6" 6B 6 6 * 6" * 6B * 2 F F2 F F2 F Fr:@Frr:@Frr :@ Fr :@0Fx6 6" 6B  6  6 6" 6B  6  6 *6" *6B * 2 F F2 F F2 F F6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::F>@A$Globals g_VertCountComputeSkinCBufferp g_VertCountsg_BatchOffsets  g_PoseOffsets@ComputeSkinInPlaceCBufferp g_VertCountsg_BatchOffsets  g_PoseOffsets@ (main$Globals inVerticesinSkin inMatrices outVertices$#version 310 es #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif UNITY_BINDING(0) uniform CGlobals { uint g_VertCount; }; struct inVertices_type { uint[3] value; }; layout(std430, binding = 1) readonly buffer inVertices { inVertices_type inVertices_buf[]; }; struct inSkin_type { uint[1] value; }; layout(std430, binding = 2) readonly buffer inSkin { inSkin_type inSkin_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 3) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct outVertices_type { uint[3] value; }; layout(std430, binding = 0) buffer outVertices { outVertices_type outVertices_buf[]; }; vec4 u_xlat0; bool u_xlatb0; vec3 u_xlat1; uint u_xlatu1; vec4 u_xlat2; vec4 u_xlat3; vec4 u_xlat4; float u_xlat5; uint u_xlatu5; vec3 u_xlat6; vec3 u_xlat7; vec4 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; int u_xlati12; uint u_xlatu12; vec3 u_xlat16; uint u_xlatu23; int u_xlati34; uint u_xlatu34; bool u_xlatb34; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2])); u_xlatu1 = inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 0]; u_xlati12 = int(gl_GlobalInvocationID.x) + 1; u_xlatu12 = inSkin_buf[u_xlati12].value[(0 >> 2) + 0]; u_xlat2.x = float(0.0); u_xlat2.y = float(0.0); u_xlat2.z = float(0.0); u_xlat2.w = float(0.0); u_xlat3.x = float(0.0); u_xlat3.y = float(0.0); u_xlat3.z = float(0.0); u_xlat3.w = float(0.0); u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); for(uint u_xlatu_loop_1 = u_xlatu1 ; u_xlatu_loop_1> 2) + 0]; u_xlatu5 = u_xlatu34 >> (16u & uint(0x1F)); u_xlat5 = float(u_xlatu5); u_xlat5 = u_xlat5 * 1.52590219e-05; u_xlati34 = int(u_xlatu34 & 65535u); u_xlat16.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati34].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati34].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati34].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati34].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati34].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati34].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati34].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati34].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati34].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati34].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati34].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati34].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat16.x; u_xlat9.y = u_xlat6.x; u_xlat9.z = u_xlat7.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat16.y; u_xlat10.y = u_xlat6.y; u_xlat10.z = u_xlat7.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat16.z; u_xlat8.y = u_xlat6.z; u_xlat8.z = u_xlat7.z; u_xlat2 = u_xlat9 * vec4(u_xlat5) + u_xlat2; u_xlat3 = u_xlat10 * vec4(u_xlat5) + u_xlat3; u_xlat4 = u_xlat8 * vec4(u_xlat5) + u_xlat4; } u_xlat0.w = 1.0; u_xlat1.x = dot(u_xlat2, u_xlat0); u_xlat1.y = dot(u_xlat3, u_xlat0); u_xlat1.z = dot(u_xlat4, u_xlat0); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat1.x)); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat1.y)); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat1.z)); } return; } @Amain$Globals inVerticesinSkin inMatrices outVerticesQ#version 310 es #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif UNITY_BINDING(0) uniform CGlobals { uint g_VertCount; }; struct inVertices_type { uint[6] value; }; layout(std430, binding = 1) readonly buffer inVertices { inVertices_type inVertices_buf[]; }; struct inSkin_type { uint[1] value; }; layout(std430, binding = 2) readonly buffer inSkin { inSkin_type inSkin_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 3) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct outVertices_type { uint[6] value; }; layout(std430, binding = 0) buffer outVertices { outVertices_type outVertices_buf[]; }; vec4 u_xlat0; bool u_xlatb0; vec3 u_xlat1; vec4 u_xlat2; int u_xlati2; uint u_xlatu2; vec4 u_xlat3; vec4 u_xlat4; vec4 u_xlat5; vec4 u_xlat6; vec3 u_xlat7; vec3 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; vec4 u_xlat11; uint u_xlatu14; int u_xlati26; uint u_xlatu26; bool u_xlatb26; uint u_xlatu37; float u_xlat38; uint u_xlatu38; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 3])); u_xlat1.xy = vec2(uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 1])); u_xlatu37 = inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 0]; u_xlati2 = int(gl_GlobalInvocationID.x) + 1; u_xlatu2 = inSkin_buf[u_xlati2].value[(0 >> 2) + 0]; u_xlat3.x = float(0.0); u_xlat3.y = float(0.0); u_xlat3.z = float(0.0); u_xlat3.w = float(0.0); u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlat5.x = float(0.0); u_xlat5.y = float(0.0); u_xlat5.z = float(0.0); u_xlat5.w = float(0.0); for(uint u_xlatu_loop_1 = u_xlatu37 ; u_xlatu_loop_1> 2) + 0]; u_xlatu38 = u_xlatu26 >> (16u & uint(0x1F)); u_xlat38 = float(u_xlatu38); u_xlat38 = u_xlat38 * 1.52590219e-05; u_xlati26 = int(u_xlatu26 & 65535u); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati26].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati26].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati26].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati26].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati26].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati26].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati26].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati26].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati26].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati26].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati26].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati26].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat6.x; u_xlat10.y = u_xlat7.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat6.y; u_xlat11.y = u_xlat7.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat6.z; u_xlat9.y = u_xlat7.z; u_xlat9.z = u_xlat8.z; u_xlat3 = u_xlat10 * vec4(u_xlat38) + u_xlat3; u_xlat4 = u_xlat11 * vec4(u_xlat38) + u_xlat4; u_xlat5 = u_xlat9 * vec4(u_xlat38) + u_xlat5; } u_xlat2.xyz = u_xlat0.xyz; u_xlat2.w = 1.0; u_xlat6.x = dot(u_xlat3, u_xlat2); u_xlat6.y = dot(u_xlat4, u_xlat2); u_xlat6.z = dot(u_xlat5, u_xlat2); u_xlat1.z = u_xlat0.w; u_xlat6.w = dot(u_xlat3.yzx, u_xlat1.xyz); u_xlat0.x = dot(u_xlat4.yzx, u_xlat1.xyz); u_xlat0.y = dot(u_xlat5.yzx, u_xlat1.xyz); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat6.x)); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat6.y)); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat6.z)); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat6.w)); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat0.x)); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat0.y)); } return; } @Amain$Globals inVerticesinSkin inMatrices outVertices*#version 310 es #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif UNITY_BINDING(0) uniform CGlobals { uint g_VertCount; }; struct inVertices_type { uint[7] value; }; layout(std430, binding = 1) readonly buffer inVertices { inVertices_type inVertices_buf[]; }; struct inSkin_type { uint[1] value; }; layout(std430, binding = 2) readonly buffer inSkin { inSkin_type inSkin_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 3) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct outVertices_type { uint[7] value; }; layout(std430, binding = 0) buffer outVertices { outVertices_type outVertices_buf[]; }; vec4 u_xlat0; bool u_xlatb0; vec4 u_xlat1; vec4 u_xlat2; uint u_xlatu2; vec4 u_xlat3; vec4 u_xlat4; vec4 u_xlat5; vec4 u_xlat6; uint u_xlatu6; vec3 u_xlat7; vec3 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; vec4 u_xlat11; int u_xlati14; uint u_xlatu14; vec3 u_xlat18; uint u_xlatu26; int u_xlati38; uint u_xlatu38; bool u_xlatb38; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 3])); u_xlat1.xyz = vec3(uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 1]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 2])); u_xlatu2 = inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 0]; u_xlati14 = int(gl_GlobalInvocationID.x) + 1; u_xlatu14 = inSkin_buf[u_xlati14].value[(0 >> 2) + 0]; u_xlat3.x = float(0.0); u_xlat3.y = float(0.0); u_xlat3.z = float(0.0); u_xlat3.w = float(0.0); u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlat5.x = float(0.0); u_xlat5.y = float(0.0); u_xlat5.z = float(0.0); u_xlat5.w = float(0.0); for(uint u_xlatu_loop_1 = u_xlatu2 ; u_xlatu_loop_1> 2) + 0]; u_xlatu6 = u_xlatu38 >> (16u & uint(0x1F)); u_xlat6.x = float(u_xlatu6); u_xlat6.x = u_xlat6.x * 1.52590219e-05; u_xlati38 = int(u_xlatu38 & 65535u); u_xlat18.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat18.x; u_xlat10.y = u_xlat7.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat18.y; u_xlat11.y = u_xlat7.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat18.z; u_xlat9.y = u_xlat7.z; u_xlat9.z = u_xlat8.z; u_xlat3 = u_xlat10 * u_xlat6.xxxx + u_xlat3; u_xlat4 = u_xlat11 * u_xlat6.xxxx + u_xlat4; u_xlat5 = u_xlat9 * u_xlat6.xxxx + u_xlat5; } u_xlat2.xyz = u_xlat0.xyz; u_xlat2.w = 1.0; u_xlat6.x = dot(u_xlat3, u_xlat2); u_xlat6.y = dot(u_xlat4, u_xlat2); u_xlat6.z = dot(u_xlat5, u_xlat2); u_xlat1.w = u_xlat0.w; u_xlat6.w = dot(u_xlat3.yzx, u_xlat1.xyw); u_xlat0.x = dot(u_xlat4.yzx, u_xlat1.xyw); u_xlat0.y = dot(u_xlat5.yzx, u_xlat1.xyw); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat6.x)); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat6.y)); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat6.z)); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat6.w)); u_xlat0.z = u_xlat1.z; outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat0.x)); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat0.y)); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat0.z)); } return; } @Amain$Globals inVerticesinSkin inMatrices outVertices#version 310 es #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif UNITY_BINDING(0) uniform CGlobals { uint g_VertCount; }; struct inVertices_type { uint[10] value; }; layout(std430, binding = 1) readonly buffer inVertices { inVertices_type inVertices_buf[]; }; struct inSkin_type { uint[1] value; }; layout(std430, binding = 2) readonly buffer inSkin { inSkin_type inSkin_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 3) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct outVertices_type { uint[10] value; }; layout(std430, binding = 0) buffer outVertices { outVertices_type outVertices_buf[]; }; vec4 u_xlat0; bool u_xlatb0; vec4 u_xlat1; vec4 u_xlat2; vec4 u_xlat3; uint u_xlatu3; vec4 u_xlat4; vec4 u_xlat5; vec4 u_xlat6; vec4 u_xlat7; uint u_xlatu7; vec3 u_xlat8; vec3 u_xlat9; vec4 u_xlat10; vec4 u_xlat11; vec4 u_xlat12; int u_xlati16; uint u_xlatu16; vec3 u_xlat20; uint u_xlatu29; int u_xlati42; uint u_xlatu42; bool u_xlatb42; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x> 2) + 3]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2])); u_xlat1 = vec4(uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 1]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 2]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(32 >> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(32 >> 2) + 1])); u_xlatu3 = inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 0]; u_xlati16 = int(gl_GlobalInvocationID.x) + 1; u_xlatu16 = inSkin_buf[u_xlati16].value[(0 >> 2) + 0]; u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlat5.x = float(0.0); u_xlat5.y = float(0.0); u_xlat5.z = float(0.0); u_xlat5.w = float(0.0); u_xlat6.x = float(0.0); u_xlat6.y = float(0.0); u_xlat6.z = float(0.0); u_xlat6.w = float(0.0); for(uint u_xlatu_loop_1 = u_xlatu3 ; u_xlatu_loop_1> 2) + 0]; u_xlatu7 = u_xlatu42 >> (16u & uint(0x1F)); u_xlat7.x = float(u_xlatu7); u_xlat7.x = u_xlat7.x * 1.52590219e-05; u_xlati42 = int(u_xlatu42 & 65535u); u_xlat20.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(0 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(16 >> 2) + 2])); u_xlat9.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat20.x; u_xlat11.y = u_xlat8.x; u_xlat11.z = u_xlat9.x; u_xlat11.w = u_xlat10.x; u_xlat12.x = u_xlat20.y; u_xlat12.y = u_xlat8.y; u_xlat12.z = u_xlat9.y; u_xlat12.w = u_xlat10.y; u_xlat10.x = u_xlat20.z; u_xlat10.y = u_xlat8.z; u_xlat10.z = u_xlat9.z; u_xlat4 = u_xlat11 * u_xlat7.xxxx + u_xlat4; u_xlat5 = u_xlat12 * u_xlat7.xxxx + u_xlat5; u_xlat6 = u_xlat10 * u_xlat7.xxxx + u_xlat6; } u_xlat3.xyz = u_xlat0.yzw; u_xlat3.w = 1.0; u_xlat7.x = dot(u_xlat4, u_xlat3); u_xlat7.y = dot(u_xlat5, u_xlat3); u_xlat7.z = dot(u_xlat6, u_xlat3); u_xlat0.yz = u_xlat1.xy; u_xlat7.w = dot(u_xlat4.xyz, u_xlat0.xyz); u_xlat3.x = dot(u_xlat5.xyz, u_xlat0.xyz); u_xlat3.y = dot(u_xlat6.xyz, u_xlat0.xyz); u_xlat2.zw = u_xlat1.zw; u_xlat3.z = dot(u_xlat4.zxy, u_xlat2.xzw); u_xlat3.w = dot(u_xlat5.zxy, u_xlat2.xzw); u_xlat2.x = dot(u_xlat6.zxy, u_xlat2.xzw); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat7.x)); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat7.y)); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat7.z)); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat7.w)); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat3.x)); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat3.y)); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat3.z)); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat3.w)); outVertices_buf[gl_GlobalInvocationID.x].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat2.x)); outVertices_buf[gl_GlobalInvocationID.x].value[(32 >> 2) + 1] = uint(floatBitsToUint(u_xlat2.y)); } return; } @Amain$Globals inVerticesinSkin inMatrices outVertices #version 310 es #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif UNITY_BINDING(0) uniform CGlobals { uint g_VertCount; }; struct inVertices_type { uint[3] value; }; layout(std430, binding = 1) readonly buffer inVertices { inVertices_type inVertices_buf[]; }; struct inSkin_type { uint[1] value; }; layout(std430, binding = 2) readonly buffer inSkin { inSkin_type inSkin_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 3) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct outVertices_type { uint[3] value; }; layout(std430, binding = 0) buffer outVertices { outVertices_type outVertices_buf[]; }; vec4 u_xlat0; bool u_xlatb0; int u_xlati1; vec3 u_xlat2; vec3 u_xlat3; vec4 u_xlat4; vec4 u_xlat5; vec4 u_xlat6; vec3 u_xlat8; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2])); u_xlati1 = int(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 0]); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati1].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati1].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati1].value[(0 >> 2) + 2])); u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati1].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati1].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati1].value[(16 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati1].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati1].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati1].value[(32 >> 2) + 2])); u_xlat4.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati1].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati1].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati1].value[(48 >> 2) + 2])); u_xlat5.x = u_xlat8.x; u_xlat5.y = u_xlat2.x; u_xlat5.z = u_xlat3.x; u_xlat5.w = u_xlat4.x; u_xlat0.w = 1.0; u_xlat5.x = dot(u_xlat5, u_xlat0); u_xlat6.x = u_xlat8.y; u_xlat6.y = u_xlat2.y; u_xlat6.z = u_xlat3.y; u_xlat6.w = u_xlat4.y; u_xlat5.y = dot(u_xlat6, u_xlat0); u_xlat4.x = u_xlat8.z; u_xlat4.y = u_xlat2.z; u_xlat4.z = u_xlat3.z; u_xlat5.z = dot(u_xlat4, u_xlat0); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat5.x)); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat5.y)); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat5.z)); } return; } @Amain$Globals inVerticesinSkin inMatrices outVerticesZ#version 310 es #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif UNITY_BINDING(0) uniform CGlobals { uint g_VertCount; }; struct inVertices_type { uint[6] value; }; layout(std430, binding = 1) readonly buffer inVertices { inVertices_type inVertices_buf[]; }; struct inSkin_type { uint[1] value; }; layout(std430, binding = 2) readonly buffer inSkin { inSkin_type inSkin_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 3) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct outVertices_type { uint[6] value; }; layout(std430, binding = 0) buffer outVertices { outVertices_type outVertices_buf[]; }; vec4 u_xlat0; bool u_xlatb0; vec3 u_xlat1; vec3 u_xlat2; vec3 u_xlat3; vec3 u_xlat4; vec4 u_xlat5; vec4 u_xlat6; vec4 u_xlat7; vec4 u_xlat8; vec4 u_xlat9; int u_xlati31; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 3])); u_xlat1.xy = vec2(uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 1])); u_xlati31 = int(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 0]); u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati31].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati31].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati31].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati31].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati31].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati31].value[(16 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati31].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati31].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati31].value[(32 >> 2) + 2])); u_xlat5.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati31].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati31].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati31].value[(48 >> 2) + 2])); u_xlat6.x = u_xlat2.x; u_xlat6.y = u_xlat3.x; u_xlat6.z = u_xlat4.x; u_xlat6.w = u_xlat5.x; u_xlat7.xyz = u_xlat0.xyz; u_xlat7.w = 1.0; u_xlat8.x = dot(u_xlat6, u_xlat7); u_xlat9.x = u_xlat2.y; u_xlat9.y = u_xlat3.y; u_xlat9.z = u_xlat4.y; u_xlat9.w = u_xlat5.y; u_xlat8.y = dot(u_xlat9, u_xlat7); u_xlat5.x = u_xlat2.z; u_xlat5.y = u_xlat3.z; u_xlat5.z = u_xlat4.z; u_xlat8.z = dot(u_xlat5, u_xlat7); u_xlat1.z = u_xlat0.w; u_xlat8.w = dot(u_xlat6.yzx, u_xlat1.xyz); u_xlat0.x = dot(u_xlat9.yzx, u_xlat1.xyz); u_xlat0.y = dot(u_xlat5.yzx, u_xlat1.xyz); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat8.x)); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat8.y)); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat8.z)); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat8.w)); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat0.x)); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat0.y)); } return; } @Amain$Globals inVerticesinSkin inMatrices outVertices*#version 310 es #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif UNITY_BINDING(0) uniform CGlobals { uint g_VertCount; }; struct inVertices_type { uint[7] value; }; layout(std430, binding = 1) readonly buffer inVertices { inVertices_type inVertices_buf[]; }; struct inSkin_type { uint[1] value; }; layout(std430, binding = 2) readonly buffer inSkin { inSkin_type inSkin_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 3) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct outVertices_type { uint[7] value; }; layout(std430, binding = 0) buffer outVertices { outVertices_type outVertices_buf[]; }; vec4 u_xlat0; bool u_xlatb0; vec4 u_xlat1; int u_xlati2; vec3 u_xlat3; vec3 u_xlat4; vec4 u_xlat5; vec4 u_xlat6; vec4 u_xlat7; vec4 u_xlat8; vec4 u_xlat9; vec3 u_xlat12; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 3])); u_xlat1.xyz = vec3(uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 1]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 2])); u_xlati2 = int(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 0]); u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati2].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati2].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati2].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati2].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati2].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati2].value[(16 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati2].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati2].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati2].value[(32 >> 2) + 2])); u_xlat5.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati2].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati2].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati2].value[(48 >> 2) + 2])); u_xlat6.x = u_xlat12.x; u_xlat6.y = u_xlat3.x; u_xlat6.z = u_xlat4.x; u_xlat6.w = u_xlat5.x; u_xlat7.xyz = u_xlat0.xyz; u_xlat7.w = 1.0; u_xlat8.x = dot(u_xlat6, u_xlat7); u_xlat9.x = u_xlat12.y; u_xlat9.y = u_xlat3.y; u_xlat9.z = u_xlat4.y; u_xlat9.w = u_xlat5.y; u_xlat8.y = dot(u_xlat9, u_xlat7); u_xlat5.x = u_xlat12.z; u_xlat5.y = u_xlat3.z; u_xlat5.z = u_xlat4.z; u_xlat8.z = dot(u_xlat5, u_xlat7); u_xlat1.w = u_xlat0.w; u_xlat8.w = dot(u_xlat6.yzx, u_xlat1.xyw); u_xlat0.x = dot(u_xlat9.yzx, u_xlat1.xyw); u_xlat0.y = dot(u_xlat5.yzx, u_xlat1.xyw); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat8.x)); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat8.y)); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat8.z)); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat8.w)); u_xlat0.z = u_xlat1.z; outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat0.x)); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat0.y)); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat0.z)); } return; } @Amain$Globals inVerticesinSkin inMatrices outVertices+#version 310 es #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif UNITY_BINDING(0) uniform CGlobals { uint g_VertCount; }; struct inVertices_type { uint[10] value; }; layout(std430, binding = 1) readonly buffer inVertices { inVertices_type inVertices_buf[]; }; struct inSkin_type { uint[1] value; }; layout(std430, binding = 2) readonly buffer inSkin { inSkin_type inSkin_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 3) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct outVertices_type { uint[10] value; }; layout(std430, binding = 0) buffer outVertices { outVertices_type outVertices_buf[]; }; vec4 u_xlat0; bool u_xlatb0; vec4 u_xlat1; vec4 u_xlat2; vec4 u_xlat3; int u_xlati3; vec3 u_xlat4; vec3 u_xlat5; vec4 u_xlat6; vec4 u_xlat7; vec4 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; vec3 u_xlat14; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x> 2) + 3]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2])); u_xlat1 = vec4(uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 1]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 2]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(32 >> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(32 >> 2) + 1])); u_xlati3 = int(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 0]); u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat14.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.xyz = u_xlat0.yzw; u_xlat8.w = 1.0; u_xlat9.x = dot(u_xlat7, u_xlat8); u_xlat10.x = u_xlat14.y; u_xlat10.y = u_xlat4.y; u_xlat10.z = u_xlat5.y; u_xlat10.w = u_xlat6.y; u_xlat9.y = dot(u_xlat10, u_xlat8); u_xlat6.x = u_xlat14.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat9.z = dot(u_xlat6, u_xlat8); u_xlat0.yz = u_xlat1.xy; u_xlat9.w = dot(u_xlat7.xyz, u_xlat0.xyz); u_xlat3.x = dot(u_xlat10.xyz, u_xlat0.xyz); u_xlat3.y = dot(u_xlat6.xyz, u_xlat0.xyz); u_xlat2.zw = u_xlat1.zw; u_xlat3.z = dot(u_xlat7.zxy, u_xlat2.xzw); u_xlat3.w = dot(u_xlat10.zxy, u_xlat2.xzw); u_xlat2.x = dot(u_xlat6.zxy, u_xlat2.xzw); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat9.x)); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat9.y)); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat9.z)); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat9.w)); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat3.x)); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat3.y)); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat3.z)); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat3.w)); outVertices_buf[gl_GlobalInvocationID.x].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat2.x)); outVertices_buf[gl_GlobalInvocationID.x].value[(32 >> 2) + 1] = uint(floatBitsToUint(u_xlat2.y)); } return; } @Amain$Globals inVerticesinSkin inMatrices outVertices#version 310 es #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif UNITY_BINDING(0) uniform CGlobals { uint g_VertCount; }; struct inVertices_type { uint[3] value; }; layout(std430, binding = 1) readonly buffer inVertices { inVertices_type inVertices_buf[]; }; struct inSkin_type { uint[4] value; }; layout(std430, binding = 2) readonly buffer inSkin { inSkin_type inSkin_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 3) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct outVertices_type { uint[3] value; }; layout(std430, binding = 0) buffer outVertices { outVertices_type outVertices_buf[]; }; vec4 u_xlat0; bool u_xlatb0; vec4 u_xlat1; vec4 u_xlat2; vec4 u_xlat3; vec4 u_xlat4; vec4 u_xlat5; vec4 u_xlat6; vec4 u_xlat7; vec4 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2])); u_xlat1 = vec4(uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 3])); u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat1.z)].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat1.z)].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat1.z)].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat1.z)].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat1.z)].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat1.z)].value[(16 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat1.z)].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat1.z)].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat1.z)].value[(32 >> 2) + 2])); u_xlat5.xyw = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat1.z)].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat1.z)].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat1.z)].value[(48 >> 2) + 2])); u_xlat6.x = u_xlat2.x; u_xlat6.y = u_xlat3.x; u_xlat6.z = u_xlat4.x; u_xlat6.w = u_xlat5.x; u_xlat7.x = u_xlat2.y; u_xlat7.y = u_xlat3.y; u_xlat7.z = u_xlat4.y; u_xlat7.w = u_xlat5.y; u_xlat5.x = u_xlat2.z; u_xlat5.y = u_xlat3.z; u_xlat5.z = u_xlat4.z; u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat1.w)].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat1.w)].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat1.w)].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat1.w)].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat1.w)].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat1.w)].value[(16 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat1.w)].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat1.w)].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat1.w)].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat1.w)].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat1.w)].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat1.w)].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat2.x; u_xlat9.y = u_xlat3.x; u_xlat9.z = u_xlat4.x; u_xlat9.w = u_xlat8.x; u_xlat9 = u_xlat1.yyyy * u_xlat9; u_xlat10.x = u_xlat2.y; u_xlat10.y = u_xlat3.y; u_xlat10.z = u_xlat4.y; u_xlat10.w = u_xlat8.y; u_xlat10 = u_xlat1.yyyy * u_xlat10; u_xlat8.x = u_xlat2.z; u_xlat8.y = u_xlat3.z; u_xlat8.z = u_xlat4.z; u_xlat2 = u_xlat1.yyyy * u_xlat8; u_xlat3 = u_xlat6 * u_xlat1.xxxx + u_xlat9; u_xlat4 = u_xlat7 * u_xlat1.xxxx + u_xlat10; u_xlat1 = u_xlat5 * u_xlat1.xxxx + u_xlat2; u_xlat0.w = 1.0; u_xlat2.x = dot(u_xlat3, u_xlat0); u_xlat2.y = dot(u_xlat4, u_xlat0); u_xlat2.z = dot(u_xlat1, u_xlat0); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat2.x)); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat2.y)); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat2.z)); } return; } @Amain$Globals inVerticesinSkin inMatrices outVertices#version 310 es #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif UNITY_BINDING(0) uniform CGlobals { uint g_VertCount; }; struct inVertices_type { uint[6] value; }; layout(std430, binding = 1) readonly buffer inVertices { inVertices_type inVertices_buf[]; }; struct inSkin_type { uint[4] value; }; layout(std430, binding = 2) readonly buffer inSkin { inSkin_type inSkin_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 3) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct outVertices_type { uint[6] value; }; layout(std430, binding = 0) buffer outVertices { outVertices_type outVertices_buf[]; }; vec4 u_xlat0; bool u_xlatb0; vec3 u_xlat1; vec4 u_xlat2; vec4 u_xlat3; vec4 u_xlat4; vec4 u_xlat5; vec4 u_xlat6; vec4 u_xlat7; vec4 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; vec4 u_xlat11; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 3])); u_xlat1.xy = vec2(uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 1])); u_xlat2 = vec4(uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 3])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.z)].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.z)].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.z)].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.z)].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.z)].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.z)].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.z)].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.z)].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.z)].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.z)].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.z)].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.z)].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat3.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.x = u_xlat3.y; u_xlat8.y = u_xlat4.y; u_xlat8.z = u_xlat5.y; u_xlat8.w = u_xlat6.y; u_xlat6.x = u_xlat3.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.w)].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.w)].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.w)].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.w)].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.w)].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.w)].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.w)].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.w)].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.w)].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.w)].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.w)].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.w)].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat3.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat10 = u_xlat2.yyyy * u_xlat10; u_xlat11.x = u_xlat3.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat11 = u_xlat2.yyyy * u_xlat11; u_xlat9.x = u_xlat3.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat3 = u_xlat2.yyyy * u_xlat9; u_xlat4 = u_xlat7 * u_xlat2.xxxx + u_xlat10; u_xlat5 = u_xlat8 * u_xlat2.xxxx + u_xlat11; u_xlat2 = u_xlat6 * u_xlat2.xxxx + u_xlat3; u_xlat3.xyz = u_xlat0.xyz; u_xlat3.w = 1.0; u_xlat6.x = dot(u_xlat4, u_xlat3); u_xlat6.y = dot(u_xlat5, u_xlat3); u_xlat6.z = dot(u_xlat2, u_xlat3); u_xlat1.z = u_xlat0.w; u_xlat6.w = dot(u_xlat4.yzx, u_xlat1.xyz); u_xlat0.x = dot(u_xlat5.yzx, u_xlat1.xyz); u_xlat0.y = dot(u_xlat2.yzx, u_xlat1.xyz); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat6.x)); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat6.y)); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat6.z)); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat6.w)); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat0.x)); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat0.y)); } return; } @Amain$Globals inVerticesinSkin inMatrices outVertices#version 310 es #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif UNITY_BINDING(0) uniform CGlobals { uint g_VertCount; }; struct inVertices_type { uint[7] value; }; layout(std430, binding = 1) readonly buffer inVertices { inVertices_type inVertices_buf[]; }; struct inSkin_type { uint[4] value; }; layout(std430, binding = 2) readonly buffer inSkin { inSkin_type inSkin_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 3) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct outVertices_type { uint[7] value; }; layout(std430, binding = 0) buffer outVertices { outVertices_type outVertices_buf[]; }; vec4 u_xlat0; bool u_xlatb0; vec4 u_xlat1; vec4 u_xlat2; vec4 u_xlat3; vec4 u_xlat4; vec4 u_xlat5; vec4 u_xlat6; vec4 u_xlat7; vec4 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; vec4 u_xlat11; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 3])); u_xlat1.xyz = vec3(uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 1]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 3])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.z)].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.z)].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.z)].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.z)].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.z)].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.z)].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.z)].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.z)].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.z)].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.z)].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.z)].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.z)].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat3.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.x = u_xlat3.y; u_xlat8.y = u_xlat4.y; u_xlat8.z = u_xlat5.y; u_xlat8.w = u_xlat6.y; u_xlat6.x = u_xlat3.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.w)].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.w)].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.w)].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.w)].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.w)].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.w)].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.w)].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.w)].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.w)].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.w)].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.w)].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.w)].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat3.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat10 = u_xlat2.yyyy * u_xlat10; u_xlat11.x = u_xlat3.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat11 = u_xlat2.yyyy * u_xlat11; u_xlat9.x = u_xlat3.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat3 = u_xlat2.yyyy * u_xlat9; u_xlat4 = u_xlat7 * u_xlat2.xxxx + u_xlat10; u_xlat5 = u_xlat8 * u_xlat2.xxxx + u_xlat11; u_xlat2 = u_xlat6 * u_xlat2.xxxx + u_xlat3; u_xlat3.xyz = u_xlat0.xyz; u_xlat3.w = 1.0; u_xlat6.x = dot(u_xlat4, u_xlat3); u_xlat6.y = dot(u_xlat5, u_xlat3); u_xlat6.z = dot(u_xlat2, u_xlat3); u_xlat1.w = u_xlat0.w; u_xlat6.w = dot(u_xlat4.yzx, u_xlat1.xyw); u_xlat0.x = dot(u_xlat5.yzx, u_xlat1.xyw); u_xlat0.y = dot(u_xlat2.yzx, u_xlat1.xyw); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat6.x)); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat6.y)); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat6.z)); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat6.w)); u_xlat0.z = u_xlat1.z; outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat0.x)); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat0.y)); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat0.z)); } return; } @Amain$Globals inVerticesinSkin inMatrices outVertices#version 310 es #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif UNITY_BINDING(0) uniform CGlobals { uint g_VertCount; }; struct inVertices_type { uint[10] value; }; layout(std430, binding = 1) readonly buffer inVertices { inVertices_type inVertices_buf[]; }; struct inSkin_type { uint[4] value; }; layout(std430, binding = 2) readonly buffer inSkin { inSkin_type inSkin_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 3) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct outVertices_type { uint[10] value; }; layout(std430, binding = 0) buffer outVertices { outVertices_type outVertices_buf[]; }; vec4 u_xlat0; bool u_xlatb0; vec4 u_xlat1; vec4 u_xlat2; vec4 u_xlat3; vec4 u_xlat4; vec4 u_xlat5; vec4 u_xlat6; vec4 u_xlat7; vec4 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; vec4 u_xlat11; vec4 u_xlat12; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x> 2) + 3]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2])); u_xlat1 = vec4(uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 1]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 2]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(32 >> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(32 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 3])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat3.z)].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat3.z)].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat3.z)].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat3.z)].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat3.z)].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat3.z)].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat3.z)].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat3.z)].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat3.z)].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat3.z)].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat3.z)].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat3.z)].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat4.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat4.y; u_xlat9.y = u_xlat5.y; u_xlat9.z = u_xlat6.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat4.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat3.w)].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat3.w)].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat3.w)].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat3.w)].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat3.w)].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat3.w)].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat3.w)].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat3.w)].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat3.w)].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat3.w)].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat3.w)].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat3.w)].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat4.x; u_xlat11.y = u_xlat5.x; u_xlat11.z = u_xlat6.x; u_xlat11.w = u_xlat10.x; u_xlat11 = u_xlat3.yyyy * u_xlat11; u_xlat12.x = u_xlat4.y; u_xlat12.y = u_xlat5.y; u_xlat12.z = u_xlat6.y; u_xlat12.w = u_xlat10.y; u_xlat12 = u_xlat3.yyyy * u_xlat12; u_xlat10.x = u_xlat4.z; u_xlat10.y = u_xlat5.z; u_xlat10.z = u_xlat6.z; u_xlat4 = u_xlat3.yyyy * u_xlat10; u_xlat5 = u_xlat8 * u_xlat3.xxxx + u_xlat11; u_xlat6 = u_xlat9 * u_xlat3.xxxx + u_xlat12; u_xlat3 = u_xlat7 * u_xlat3.xxxx + u_xlat4; u_xlat4.xyz = u_xlat0.yzw; u_xlat4.w = 1.0; u_xlat7.x = dot(u_xlat5, u_xlat4); u_xlat7.y = dot(u_xlat6, u_xlat4); u_xlat7.z = dot(u_xlat3, u_xlat4); u_xlat0.yz = u_xlat1.xy; u_xlat7.w = dot(u_xlat5.xyz, u_xlat0.xyz); u_xlat4.x = dot(u_xlat6.xyz, u_xlat0.xyz); u_xlat4.y = dot(u_xlat3.xyz, u_xlat0.xyz); u_xlat2.zw = u_xlat1.zw; u_xlat4.z = dot(u_xlat5.zxy, u_xlat2.xzw); u_xlat4.w = dot(u_xlat6.zxy, u_xlat2.xzw); u_xlat2.x = dot(u_xlat3.zxy, u_xlat2.xzw); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat7.x)); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat7.y)); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat7.z)); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat7.w)); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat4.x)); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat4.y)); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat4.z)); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat4.w)); outVertices_buf[gl_GlobalInvocationID.x].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat2.x)); outVertices_buf[gl_GlobalInvocationID.x].value[(32 >> 2) + 1] = uint(floatBitsToUint(u_xlat2.y)); } return; } @Amain$Globals inVerticesinSkin inMatrices outVerticesj #version 310 es #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif UNITY_BINDING(0) uniform CGlobals { uint g_VertCount; }; struct inVertices_type { uint[3] value; }; layout(std430, binding = 1) readonly buffer inVertices { inVertices_type inVertices_buf[]; }; struct inSkin_type { uint[8] value; }; layout(std430, binding = 2) readonly buffer inSkin { inSkin_type inSkin_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 3) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct outVertices_type { uint[3] value; }; layout(std430, binding = 0) buffer outVertices { outVertices_type outVertices_buf[]; }; vec4 u_xlat0; bool u_xlatb0; vec4 u_xlat1; vec4 u_xlat2; ivec4 u_xlati2; vec4 u_xlat3; vec4 u_xlat4; vec4 u_xlat5; vec4 u_xlat6; vec4 u_xlat7; vec4 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; vec4 u_xlat11; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2])); u_xlat1 = vec4(uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 3])); u_xlati2 = ivec4(int(inSkin_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 0]), int(inSkin_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 1]), int(inSkin_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 2]), int(inSkin_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 3])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati2.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati2.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati2.x].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati2.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati2.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati2.x].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati2.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati2.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati2.x].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati2.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati2.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati2.x].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat3.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.x = u_xlat3.y; u_xlat8.y = u_xlat4.y; u_xlat8.z = u_xlat5.y; u_xlat8.w = u_xlat6.y; u_xlat6.x = u_xlat3.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati2.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati2.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati2.y].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati2.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati2.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati2.y].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati2.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati2.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati2.y].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati2.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati2.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati2.y].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat3.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat10 = u_xlat1.yyyy * u_xlat10; u_xlat11.x = u_xlat3.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat11 = u_xlat1.yyyy * u_xlat11; u_xlat9.x = u_xlat3.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat3 = u_xlat1.yyyy * u_xlat9; u_xlat4 = u_xlat7 * u_xlat1.xxxx + u_xlat10; u_xlat5 = u_xlat8 * u_xlat1.xxxx + u_xlat11; u_xlat3 = u_xlat6 * u_xlat1.xxxx + u_xlat3; u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati2.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati2.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati2.z].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati2.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati2.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati2.z].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati2.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati2.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati2.z].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati2.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati2.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati2.z].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat6.x; u_xlat10.y = u_xlat7.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat6.y; u_xlat11.y = u_xlat7.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat6.z; u_xlat9.y = u_xlat7.z; u_xlat9.z = u_xlat8.z; u_xlat4 = u_xlat10 * u_xlat1.zzzz + u_xlat4; u_xlat5 = u_xlat11 * u_xlat1.zzzz + u_xlat5; u_xlat3 = u_xlat9 * u_xlat1.zzzz + u_xlat3; u_xlat1.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati2.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati2.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati2.w].value[(0 >> 2) + 2])); u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati2.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati2.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati2.w].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati2.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati2.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati2.w].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati2.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati2.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati2.w].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat1.x; u_xlat8.y = u_xlat2.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat1.y; u_xlat9.y = u_xlat2.y; u_xlat9.z = u_xlat6.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat1.z; u_xlat7.y = u_xlat2.z; u_xlat7.z = u_xlat6.z; u_xlat2 = u_xlat8 * u_xlat1.wwww + u_xlat4; u_xlat4 = u_xlat9 * u_xlat1.wwww + u_xlat5; u_xlat1 = u_xlat7 * u_xlat1.wwww + u_xlat3; u_xlat0.w = 1.0; u_xlat2.x = dot(u_xlat2, u_xlat0); u_xlat2.y = dot(u_xlat4, u_xlat0); u_xlat2.z = dot(u_xlat1, u_xlat0); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat2.x)); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat2.y)); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat2.z)); } return; } @Amain$Globals inVerticesinSkin inMatrices outVertices##version 310 es #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif UNITY_BINDING(0) uniform CGlobals { uint g_VertCount; }; struct inVertices_type { uint[6] value; }; layout(std430, binding = 1) readonly buffer inVertices { inVertices_type inVertices_buf[]; }; struct inSkin_type { uint[8] value; }; layout(std430, binding = 2) readonly buffer inSkin { inSkin_type inSkin_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 3) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct outVertices_type { uint[6] value; }; layout(std430, binding = 0) buffer outVertices { outVertices_type outVertices_buf[]; }; vec4 u_xlat0; bool u_xlatb0; vec3 u_xlat1; vec4 u_xlat2; vec4 u_xlat3; ivec4 u_xlati3; vec4 u_xlat4; vec4 u_xlat5; vec4 u_xlat6; vec4 u_xlat7; vec4 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; vec4 u_xlat11; vec4 u_xlat12; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 3])); u_xlat1.xy = vec2(uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 1])); u_xlat2 = vec4(uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 3])); u_xlati3 = ivec4(int(inSkin_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 0]), int(inSkin_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 1]), int(inSkin_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 2]), int(inSkin_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 3])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat4.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat4.y; u_xlat9.y = u_xlat5.y; u_xlat9.z = u_xlat6.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat4.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat4.x; u_xlat11.y = u_xlat5.x; u_xlat11.z = u_xlat6.x; u_xlat11.w = u_xlat10.x; u_xlat11 = u_xlat2.yyyy * u_xlat11; u_xlat12.x = u_xlat4.y; u_xlat12.y = u_xlat5.y; u_xlat12.z = u_xlat6.y; u_xlat12.w = u_xlat10.y; u_xlat12 = u_xlat2.yyyy * u_xlat12; u_xlat10.x = u_xlat4.z; u_xlat10.y = u_xlat5.z; u_xlat10.z = u_xlat6.z; u_xlat4 = u_xlat2.yyyy * u_xlat10; u_xlat5 = u_xlat8 * u_xlat2.xxxx + u_xlat11; u_xlat6 = u_xlat9 * u_xlat2.xxxx + u_xlat12; u_xlat4 = u_xlat7 * u_xlat2.xxxx + u_xlat4; u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 2])); u_xlat9.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat7.x; u_xlat11.y = u_xlat8.x; u_xlat11.z = u_xlat9.x; u_xlat11.w = u_xlat10.x; u_xlat12.x = u_xlat7.y; u_xlat12.y = u_xlat8.y; u_xlat12.z = u_xlat9.y; u_xlat12.w = u_xlat10.y; u_xlat10.x = u_xlat7.z; u_xlat10.y = u_xlat8.z; u_xlat10.z = u_xlat9.z; u_xlat5 = u_xlat11 * u_xlat2.zzzz + u_xlat5; u_xlat6 = u_xlat12 * u_xlat2.zzzz + u_xlat6; u_xlat4 = u_xlat10 * u_xlat2.zzzz + u_xlat4; u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat2.x; u_xlat9.y = u_xlat3.x; u_xlat9.z = u_xlat7.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat2.y; u_xlat10.y = u_xlat3.y; u_xlat10.z = u_xlat7.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat2.z; u_xlat8.y = u_xlat3.z; u_xlat8.z = u_xlat7.z; u_xlat3 = u_xlat9 * u_xlat2.wwww + u_xlat5; u_xlat5 = u_xlat10 * u_xlat2.wwww + u_xlat6; u_xlat2 = u_xlat8 * u_xlat2.wwww + u_xlat4; u_xlat4.xyz = u_xlat0.xyz; u_xlat4.w = 1.0; u_xlat6.x = dot(u_xlat3, u_xlat4); u_xlat6.y = dot(u_xlat5, u_xlat4); u_xlat6.z = dot(u_xlat2, u_xlat4); u_xlat1.z = u_xlat0.w; u_xlat6.w = dot(u_xlat3.yzx, u_xlat1.xyz); u_xlat0.x = dot(u_xlat5.yzx, u_xlat1.xyz); u_xlat0.y = dot(u_xlat2.yzx, u_xlat1.xyz); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat6.x)); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat6.y)); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat6.z)); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat6.w)); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat0.x)); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat0.y)); } return; } @Amain$Globals inVerticesinSkin inMatrices outVertices|$#version 310 es #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif UNITY_BINDING(0) uniform CGlobals { uint g_VertCount; }; struct inVertices_type { uint[7] value; }; layout(std430, binding = 1) readonly buffer inVertices { inVertices_type inVertices_buf[]; }; struct inSkin_type { uint[8] value; }; layout(std430, binding = 2) readonly buffer inSkin { inSkin_type inSkin_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 3) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct outVertices_type { uint[7] value; }; layout(std430, binding = 0) buffer outVertices { outVertices_type outVertices_buf[]; }; vec4 u_xlat0; bool u_xlatb0; vec4 u_xlat1; vec4 u_xlat2; vec4 u_xlat3; ivec4 u_xlati3; vec4 u_xlat4; vec4 u_xlat5; vec4 u_xlat6; vec4 u_xlat7; vec4 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; vec4 u_xlat11; vec4 u_xlat12; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 3])); u_xlat1.xyz = vec3(uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 1]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 3])); u_xlati3 = ivec4(int(inSkin_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 0]), int(inSkin_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 1]), int(inSkin_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 2]), int(inSkin_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 3])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat4.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat4.y; u_xlat9.y = u_xlat5.y; u_xlat9.z = u_xlat6.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat4.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat4.x; u_xlat11.y = u_xlat5.x; u_xlat11.z = u_xlat6.x; u_xlat11.w = u_xlat10.x; u_xlat11 = u_xlat2.yyyy * u_xlat11; u_xlat12.x = u_xlat4.y; u_xlat12.y = u_xlat5.y; u_xlat12.z = u_xlat6.y; u_xlat12.w = u_xlat10.y; u_xlat12 = u_xlat2.yyyy * u_xlat12; u_xlat10.x = u_xlat4.z; u_xlat10.y = u_xlat5.z; u_xlat10.z = u_xlat6.z; u_xlat4 = u_xlat2.yyyy * u_xlat10; u_xlat5 = u_xlat8 * u_xlat2.xxxx + u_xlat11; u_xlat6 = u_xlat9 * u_xlat2.xxxx + u_xlat12; u_xlat4 = u_xlat7 * u_xlat2.xxxx + u_xlat4; u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 2])); u_xlat9.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat7.x; u_xlat11.y = u_xlat8.x; u_xlat11.z = u_xlat9.x; u_xlat11.w = u_xlat10.x; u_xlat12.x = u_xlat7.y; u_xlat12.y = u_xlat8.y; u_xlat12.z = u_xlat9.y; u_xlat12.w = u_xlat10.y; u_xlat10.x = u_xlat7.z; u_xlat10.y = u_xlat8.z; u_xlat10.z = u_xlat9.z; u_xlat5 = u_xlat11 * u_xlat2.zzzz + u_xlat5; u_xlat6 = u_xlat12 * u_xlat2.zzzz + u_xlat6; u_xlat4 = u_xlat10 * u_xlat2.zzzz + u_xlat4; u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat2.x; u_xlat9.y = u_xlat3.x; u_xlat9.z = u_xlat7.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat2.y; u_xlat10.y = u_xlat3.y; u_xlat10.z = u_xlat7.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat2.z; u_xlat8.y = u_xlat3.z; u_xlat8.z = u_xlat7.z; u_xlat3 = u_xlat9 * u_xlat2.wwww + u_xlat5; u_xlat5 = u_xlat10 * u_xlat2.wwww + u_xlat6; u_xlat2 = u_xlat8 * u_xlat2.wwww + u_xlat4; u_xlat4.xyz = u_xlat0.xyz; u_xlat4.w = 1.0; u_xlat6.x = dot(u_xlat3, u_xlat4); u_xlat6.y = dot(u_xlat5, u_xlat4); u_xlat6.z = dot(u_xlat2, u_xlat4); u_xlat1.w = u_xlat0.w; u_xlat6.w = dot(u_xlat3.yzx, u_xlat1.xyw); u_xlat0.x = dot(u_xlat5.yzx, u_xlat1.xyw); u_xlat0.y = dot(u_xlat2.yzx, u_xlat1.xyw); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat6.x)); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat6.y)); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat6.z)); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat6.w)); u_xlat0.z = u_xlat1.z; outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat0.x)); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat0.y)); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat0.z)); } return; } @Amain$Globals inVerticesinSkin inMatrices outVerticesv'#version 310 es #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif UNITY_BINDING(0) uniform CGlobals { uint g_VertCount; }; struct inVertices_type { uint[10] value; }; layout(std430, binding = 1) readonly buffer inVertices { inVertices_type inVertices_buf[]; }; struct inSkin_type { uint[8] value; }; layout(std430, binding = 2) readonly buffer inSkin { inSkin_type inSkin_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 3) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct outVertices_type { uint[10] value; }; layout(std430, binding = 0) buffer outVertices { outVertices_type outVertices_buf[]; }; vec4 u_xlat0; bool u_xlatb0; vec4 u_xlat1; vec4 u_xlat2; vec4 u_xlat3; vec4 u_xlat4; ivec4 u_xlati4; vec4 u_xlat5; vec4 u_xlat6; vec4 u_xlat7; vec4 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; vec4 u_xlat11; vec4 u_xlat12; vec4 u_xlat13; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x> 2) + 3]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2])); u_xlat1 = vec4(uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 1]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 2]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(32 >> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(32 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 3])); u_xlati4 = ivec4(int(inSkin_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 0]), int(inSkin_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 1]), int(inSkin_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 2]), int(inSkin_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 3])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat5.x; u_xlat9.y = u_xlat6.x; u_xlat9.z = u_xlat7.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat5.y; u_xlat10.y = u_xlat6.y; u_xlat10.z = u_xlat7.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat5.z; u_xlat8.y = u_xlat6.z; u_xlat8.z = u_xlat7.z; u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat5.x; u_xlat12.y = u_xlat6.x; u_xlat12.z = u_xlat7.x; u_xlat12.w = u_xlat11.x; u_xlat12 = u_xlat3.yyyy * u_xlat12; u_xlat13.x = u_xlat5.y; u_xlat13.y = u_xlat6.y; u_xlat13.z = u_xlat7.y; u_xlat13.w = u_xlat11.y; u_xlat13 = u_xlat3.yyyy * u_xlat13; u_xlat11.x = u_xlat5.z; u_xlat11.y = u_xlat6.z; u_xlat11.z = u_xlat7.z; u_xlat5 = u_xlat3.yyyy * u_xlat11; u_xlat6 = u_xlat9 * u_xlat3.xxxx + u_xlat12; u_xlat7 = u_xlat10 * u_xlat3.xxxx + u_xlat13; u_xlat5 = u_xlat8 * u_xlat3.xxxx + u_xlat5; u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 2])); u_xlat9.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 2])); u_xlat10.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat8.x; u_xlat12.y = u_xlat9.x; u_xlat12.z = u_xlat10.x; u_xlat12.w = u_xlat11.x; u_xlat13.x = u_xlat8.y; u_xlat13.y = u_xlat9.y; u_xlat13.z = u_xlat10.y; u_xlat13.w = u_xlat11.y; u_xlat11.x = u_xlat8.z; u_xlat11.y = u_xlat9.z; u_xlat11.z = u_xlat10.z; u_xlat6 = u_xlat12 * u_xlat3.zzzz + u_xlat6; u_xlat7 = u_xlat13 * u_xlat3.zzzz + u_xlat7; u_xlat5 = u_xlat11 * u_xlat3.zzzz + u_xlat5; u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat3.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat3.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat3.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat8.z; u_xlat4 = u_xlat10 * u_xlat3.wwww + u_xlat6; u_xlat6 = u_xlat11 * u_xlat3.wwww + u_xlat7; u_xlat3 = u_xlat9 * u_xlat3.wwww + u_xlat5; u_xlat5.xyz = u_xlat0.yzw; u_xlat5.w = 1.0; u_xlat7.x = dot(u_xlat4, u_xlat5); u_xlat7.y = dot(u_xlat6, u_xlat5); u_xlat7.z = dot(u_xlat3, u_xlat5); u_xlat0.yz = u_xlat1.xy; u_xlat7.w = dot(u_xlat4.xyz, u_xlat0.xyz); u_xlat5.x = dot(u_xlat6.xyz, u_xlat0.xyz); u_xlat5.y = dot(u_xlat3.xyz, u_xlat0.xyz); u_xlat2.zw = u_xlat1.zw; u_xlat5.z = dot(u_xlat4.zxy, u_xlat2.xzw); u_xlat5.w = dot(u_xlat6.zxy, u_xlat2.xzw); u_xlat2.x = dot(u_xlat3.zxy, u_xlat2.xzw); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat7.x)); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat7.y)); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat7.z)); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat7.w)); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat5.x)); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat5.y)); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat5.z)); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat5.w)); outVertices_buf[gl_GlobalInvocationID.x].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat2.x)); outVertices_buf[gl_GlobalInvocationID.x].value[(32 >> 2) + 1] = uint(floatBitsToUint(u_xlat2.y)); } return; } @A batchMainComputeSkinCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4inSkin0inSkin1inSkin2inSkin3inSkin4 inMatrices  outVertices0 outVertices1 outVertices2 outVertices3 outVertices4Z#version 310 es #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif UNITY_BINDING(0) uniform ComputeSkinCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; uvec4 g_PoseOffsets[2]; uint g_poseBufferMaxIndex; }; struct inVertices0_type { uint[3] value; }; layout(std430, binding = 5) readonly buffer inVertices0 { inVertices0_type inVertices0_buf[]; }; struct inVertices1_type { uint[3] value; }; layout(std430, binding = 6) readonly buffer inVertices1 { inVertices1_type inVertices1_buf[]; }; struct inVertices2_type { uint[3] value; }; layout(std430, binding = 7) readonly buffer inVertices2 { inVertices2_type inVertices2_buf[]; }; struct inVertices3_type { uint[3] value; }; layout(std430, binding = 8) readonly buffer inVertices3 { inVertices3_type inVertices3_buf[]; }; struct inVertices4_type { uint[3] value; }; layout(std430, binding = 9) readonly buffer inVertices4 { inVertices4_type inVertices4_buf[]; }; struct inSkin0_type { uint[1] value; }; layout(std430, binding = 10) readonly buffer inSkin0 { inSkin0_type inSkin0_buf[]; }; struct inSkin1_type { uint[1] value; }; layout(std430, binding = 11) readonly buffer inSkin1 { inSkin1_type inSkin1_buf[]; }; struct inSkin2_type { uint[1] value; }; layout(std430, binding = 12) readonly buffer inSkin2 { inSkin2_type inSkin2_buf[]; }; struct inSkin3_type { uint[1] value; }; layout(std430, binding = 13) readonly buffer inSkin3 { inSkin3_type inSkin3_buf[]; }; struct inSkin4_type { uint[1] value; }; layout(std430, binding = 14) readonly buffer inSkin4 { inSkin4_type inSkin4_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 15) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct outVertices0_type { uint[3] value; }; layout(std430, binding = 0) buffer outVertices0 { outVertices0_type outVertices0_buf[]; }; struct outVertices1_type { uint[3] value; }; layout(std430, binding = 1) buffer outVertices1 { outVertices1_type outVertices1_buf[]; }; struct outVertices2_type { uint[3] value; }; layout(std430, binding = 2) buffer outVertices2 { outVertices2_type outVertices2_buf[]; }; struct outVertices3_type { uint[3] value; }; layout(std430, binding = 3) buffer outVertices3 { outVertices3_type outVertices3_buf[]; }; struct outVertices4_type { uint[3] value; }; layout(std430, binding = 4) buffer outVertices4 { outVertices4_type outVertices4_buf[]; }; uint u_xlatu0; bool u_xlatb0; vec4 u_xlat1; vec4 u_xlat2; vec4 u_xlat3; vec4 u_xlat4; int u_xlati5; uint u_xlatu5; bool u_xlatb5; vec3 u_xlat6; vec3 u_xlat7; vec3 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; vec4 u_xlat11; uint u_xlatu12; bool u_xlatb12; float u_xlat17; uint u_xlatu17; int u_xlati24; uint u_xlatu24; uint u_xlatu36; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlatu12 = inSkin4_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati24 = int(u_xlatu0) + 1; u_xlatu24 = inSkin4_buf[u_xlati24].value[(0 >> 2) + 0]; u_xlat2.x = float(0.0); u_xlat2.y = float(0.0); u_xlat2.z = float(0.0); u_xlat2.w = float(0.0); u_xlat3.x = float(0.0); u_xlat3.y = float(0.0); u_xlat3.z = float(0.0); u_xlat3.w = float(0.0); u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); for(uint u_xlatu_loop_1 = u_xlatu12 ; u_xlatu_loop_1> 2) + 0]; u_xlatu17 = u_xlatu5 >> (16u & uint(0x1F)); u_xlat17 = float(u_xlatu17); u_xlat17 = u_xlat17 * 1.52590219e-05; u_xlati5 = int(u_xlatu5 & 65535u); u_xlati5 = u_xlati5 + int(g_PoseOffsets[1].x); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat6.x; u_xlat10.y = u_xlat7.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat6.y; u_xlat11.y = u_xlat7.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat6.z; u_xlat9.y = u_xlat7.z; u_xlat9.z = u_xlat8.z; u_xlat2 = u_xlat10 * vec4(u_xlat17) + u_xlat2; u_xlat3 = u_xlat11 * vec4(u_xlat17) + u_xlat3; u_xlat4 = u_xlat9 * vec4(u_xlat17) + u_xlat4; } u_xlat1.w = 1.0; u_xlat2.x = dot(u_xlat2, u_xlat1); u_xlat2.y = dot(u_xlat3, u_xlat1); u_xlat2.z = dot(u_xlat4, u_xlat1); outVertices4_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat2.x)); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat2.y)); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat2.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlatu12 = inSkin3_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati24 = int(u_xlatu0) + 1; u_xlatu24 = inSkin3_buf[u_xlati24].value[(0 >> 2) + 0]; u_xlat2.x = float(0.0); u_xlat2.y = float(0.0); u_xlat2.z = float(0.0); u_xlat2.w = float(0.0); u_xlat3.x = float(0.0); u_xlat3.y = float(0.0); u_xlat3.z = float(0.0); u_xlat3.w = float(0.0); u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); for(uint u_xlatu_loop_2 = u_xlatu12 ; u_xlatu_loop_2> 2) + 0]; u_xlatu17 = u_xlatu5 >> (16u & uint(0x1F)); u_xlat17 = float(u_xlatu17); u_xlat17 = u_xlat17 * 1.52590219e-05; u_xlati5 = int(u_xlatu5 & 65535u); u_xlati5 = u_xlati5 + int(g_PoseOffsets[0].w); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat6.x; u_xlat10.y = u_xlat7.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat6.y; u_xlat11.y = u_xlat7.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat6.z; u_xlat9.y = u_xlat7.z; u_xlat9.z = u_xlat8.z; u_xlat2 = u_xlat10 * vec4(u_xlat17) + u_xlat2; u_xlat3 = u_xlat11 * vec4(u_xlat17) + u_xlat3; u_xlat4 = u_xlat9 * vec4(u_xlat17) + u_xlat4; } u_xlat1.w = 1.0; u_xlat2.x = dot(u_xlat2, u_xlat1); u_xlat2.y = dot(u_xlat3, u_xlat1); u_xlat2.z = dot(u_xlat4, u_xlat1); outVertices3_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat2.x)); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat2.y)); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat2.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlatu12 = inSkin2_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati24 = int(u_xlatu0) + 1; u_xlatu24 = inSkin2_buf[u_xlati24].value[(0 >> 2) + 0]; u_xlat2.x = float(0.0); u_xlat2.y = float(0.0); u_xlat2.z = float(0.0); u_xlat2.w = float(0.0); u_xlat3.x = float(0.0); u_xlat3.y = float(0.0); u_xlat3.z = float(0.0); u_xlat3.w = float(0.0); u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); for(uint u_xlatu_loop_3 = u_xlatu12 ; u_xlatu_loop_3> 2) + 0]; u_xlatu17 = u_xlatu5 >> (16u & uint(0x1F)); u_xlat17 = float(u_xlatu17); u_xlat17 = u_xlat17 * 1.52590219e-05; u_xlati5 = int(u_xlatu5 & 65535u); u_xlati5 = u_xlati5 + int(g_PoseOffsets[0].z); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat6.x; u_xlat10.y = u_xlat7.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat6.y; u_xlat11.y = u_xlat7.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat6.z; u_xlat9.y = u_xlat7.z; u_xlat9.z = u_xlat8.z; u_xlat2 = u_xlat10 * vec4(u_xlat17) + u_xlat2; u_xlat3 = u_xlat11 * vec4(u_xlat17) + u_xlat3; u_xlat4 = u_xlat9 * vec4(u_xlat17) + u_xlat4; } u_xlat1.w = 1.0; u_xlat2.x = dot(u_xlat2, u_xlat1); u_xlat2.y = dot(u_xlat3, u_xlat1); u_xlat2.z = dot(u_xlat4, u_xlat1); outVertices2_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat2.x)); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat2.y)); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat2.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlatu12 = inSkin1_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati24 = int(u_xlatu0) + 1; u_xlatu24 = inSkin1_buf[u_xlati24].value[(0 >> 2) + 0]; u_xlat2.x = float(0.0); u_xlat2.y = float(0.0); u_xlat2.z = float(0.0); u_xlat2.w = float(0.0); u_xlat3.x = float(0.0); u_xlat3.y = float(0.0); u_xlat3.z = float(0.0); u_xlat3.w = float(0.0); u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); for(uint u_xlatu_loop_4 = u_xlatu12 ; u_xlatu_loop_4> 2) + 0]; u_xlatu17 = u_xlatu5 >> (16u & uint(0x1F)); u_xlat17 = float(u_xlatu17); u_xlat17 = u_xlat17 * 1.52590219e-05; u_xlati5 = int(u_xlatu5 & 65535u); u_xlati5 = u_xlati5 + int(g_PoseOffsets[0].y); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat6.x; u_xlat10.y = u_xlat7.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat6.y; u_xlat11.y = u_xlat7.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat6.z; u_xlat9.y = u_xlat7.z; u_xlat9.z = u_xlat8.z; u_xlat2 = u_xlat10 * vec4(u_xlat17) + u_xlat2; u_xlat3 = u_xlat11 * vec4(u_xlat17) + u_xlat3; u_xlat4 = u_xlat9 * vec4(u_xlat17) + u_xlat4; } u_xlat1.w = 1.0; u_xlat2.x = dot(u_xlat2, u_xlat1); u_xlat2.y = dot(u_xlat3, u_xlat1); u_xlat2.z = dot(u_xlat4, u_xlat1); outVertices1_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat2.x)); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat2.y)); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat2.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlatu12 = inSkin0_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati24 = int(u_xlatu0) + 1; u_xlatu24 = inSkin0_buf[u_xlati24].value[(0 >> 2) + 0]; u_xlat2.x = float(0.0); u_xlat2.y = float(0.0); u_xlat2.z = float(0.0); u_xlat2.w = float(0.0); u_xlat3.x = float(0.0); u_xlat3.y = float(0.0); u_xlat3.z = float(0.0); u_xlat3.w = float(0.0); u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); for(uint u_xlatu_loop_5 = u_xlatu12 ; u_xlatu_loop_5> 2) + 0]; u_xlatu17 = u_xlatu5 >> (16u & uint(0x1F)); u_xlat17 = float(u_xlatu17); u_xlat17 = u_xlat17 * 1.52590219e-05; u_xlati5 = int(u_xlatu5 & 65535u); u_xlati5 = u_xlati5 + int(g_PoseOffsets[0].x); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat6.x; u_xlat10.y = u_xlat7.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat6.y; u_xlat11.y = u_xlat7.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat6.z; u_xlat9.y = u_xlat7.z; u_xlat9.z = u_xlat8.z; u_xlat2 = u_xlat10 * vec4(u_xlat17) + u_xlat2; u_xlat3 = u_xlat11 * vec4(u_xlat17) + u_xlat3; u_xlat4 = u_xlat9 * vec4(u_xlat17) + u_xlat4; } u_xlat1.w = 1.0; u_xlat2.x = dot(u_xlat2, u_xlat1); u_xlat2.y = dot(u_xlat3, u_xlat1); u_xlat2.z = dot(u_xlat4, u_xlat1); outVertices0_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat2.x)); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat2.y)); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat2.z)); } } } } } } return; } @A batchMainComputeSkinCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4inSkin0inSkin1inSkin2inSkin3inSkin4 inMatrices  outVertices0 outVertices1 outVertices2 outVertices3 outVertices4j#version 310 es #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif UNITY_BINDING(0) uniform ComputeSkinCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; uvec4 g_PoseOffsets[2]; uint g_poseBufferMaxIndex; }; struct inVertices0_type { uint[6] value; }; layout(std430, binding = 5) readonly buffer inVertices0 { inVertices0_type inVertices0_buf[]; }; struct inVertices1_type { uint[6] value; }; layout(std430, binding = 6) readonly buffer inVertices1 { inVertices1_type inVertices1_buf[]; }; struct inVertices2_type { uint[6] value; }; layout(std430, binding = 7) readonly buffer inVertices2 { inVertices2_type inVertices2_buf[]; }; struct inVertices3_type { uint[6] value; }; layout(std430, binding = 8) readonly buffer inVertices3 { inVertices3_type inVertices3_buf[]; }; struct inVertices4_type { uint[6] value; }; layout(std430, binding = 9) readonly buffer inVertices4 { inVertices4_type inVertices4_buf[]; }; struct inSkin0_type { uint[1] value; }; layout(std430, binding = 10) readonly buffer inSkin0 { inSkin0_type inSkin0_buf[]; }; struct inSkin1_type { uint[1] value; }; layout(std430, binding = 11) readonly buffer inSkin1 { inSkin1_type inSkin1_buf[]; }; struct inSkin2_type { uint[1] value; }; layout(std430, binding = 12) readonly buffer inSkin2 { inSkin2_type inSkin2_buf[]; }; struct inSkin3_type { uint[1] value; }; layout(std430, binding = 13) readonly buffer inSkin3 { inSkin3_type inSkin3_buf[]; }; struct inSkin4_type { uint[1] value; }; layout(std430, binding = 14) readonly buffer inSkin4 { inSkin4_type inSkin4_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 15) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct outVertices0_type { uint[6] value; }; layout(std430, binding = 0) buffer outVertices0 { outVertices0_type outVertices0_buf[]; }; struct outVertices1_type { uint[6] value; }; layout(std430, binding = 1) buffer outVertices1 { outVertices1_type outVertices1_buf[]; }; struct outVertices2_type { uint[6] value; }; layout(std430, binding = 2) buffer outVertices2 { outVertices2_type outVertices2_buf[]; }; struct outVertices3_type { uint[6] value; }; layout(std430, binding = 3) buffer outVertices3 { outVertices3_type outVertices3_buf[]; }; struct outVertices4_type { uint[6] value; }; layout(std430, binding = 4) buffer outVertices4 { outVertices4_type outVertices4_buf[]; }; uint u_xlatu0; bool u_xlatb0; vec4 u_xlat1; vec3 u_xlat2; vec4 u_xlat3; vec4 u_xlat4; vec4 u_xlat5; vec4 u_xlat6; uint u_xlatu6; vec4 u_xlat7; vec3 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; vec4 u_xlat11; uint u_xlatu12; bool u_xlatb12; vec3 u_xlat18; int u_xlati24; uint u_xlatu24; uint u_xlatu36; int u_xlati38; uint u_xlatu38; bool u_xlatb38; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlatu12 = inSkin4_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati24 = int(u_xlatu0) + 1; u_xlatu24 = inSkin4_buf[u_xlati24].value[(0 >> 2) + 0]; u_xlat3.x = float(0.0); u_xlat3.y = float(0.0); u_xlat3.z = float(0.0); u_xlat3.w = float(0.0); u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlat5.x = float(0.0); u_xlat5.y = float(0.0); u_xlat5.z = float(0.0); u_xlat5.w = float(0.0); for(uint u_xlatu_loop_1 = u_xlatu12 ; u_xlatu_loop_1> 2) + 0]; u_xlatu6 = u_xlatu38 >> (16u & uint(0x1F)); u_xlat6.x = float(u_xlatu6); u_xlat6.x = u_xlat6.x * 1.52590219e-05; u_xlati38 = int(u_xlatu38 & 65535u); u_xlati38 = u_xlati38 + int(g_PoseOffsets[1].x); u_xlat18.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat18.x; u_xlat10.y = u_xlat7.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat18.y; u_xlat11.y = u_xlat7.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat18.z; u_xlat9.y = u_xlat7.z; u_xlat9.z = u_xlat8.z; u_xlat3 = u_xlat10 * u_xlat6.xxxx + u_xlat3; u_xlat4 = u_xlat11 * u_xlat6.xxxx + u_xlat4; u_xlat5 = u_xlat9 * u_xlat6.xxxx + u_xlat5; } u_xlat6.xyz = u_xlat1.xyz; u_xlat6.w = 1.0; u_xlat7.x = dot(u_xlat3, u_xlat6); u_xlat7.y = dot(u_xlat4, u_xlat6); u_xlat7.z = dot(u_xlat5, u_xlat6); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat3.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat4.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat5.yzx, u_xlat2.xyz); outVertices4_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat7.x)); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat7.y)); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat7.z)); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat7.w)); outVertices4_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat1.x)); outVertices4_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat1.y)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlatu12 = inSkin3_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati24 = int(u_xlatu0) + 1; u_xlatu24 = inSkin3_buf[u_xlati24].value[(0 >> 2) + 0]; u_xlat3.x = float(0.0); u_xlat3.y = float(0.0); u_xlat3.z = float(0.0); u_xlat3.w = float(0.0); u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlat5.x = float(0.0); u_xlat5.y = float(0.0); u_xlat5.z = float(0.0); u_xlat5.w = float(0.0); for(uint u_xlatu_loop_2 = u_xlatu12 ; u_xlatu_loop_2> 2) + 0]; u_xlatu6 = u_xlatu38 >> (16u & uint(0x1F)); u_xlat6.x = float(u_xlatu6); u_xlat6.x = u_xlat6.x * 1.52590219e-05; u_xlati38 = int(u_xlatu38 & 65535u); u_xlati38 = u_xlati38 + int(g_PoseOffsets[0].w); u_xlat18.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat18.x; u_xlat10.y = u_xlat7.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat18.y; u_xlat11.y = u_xlat7.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat18.z; u_xlat9.y = u_xlat7.z; u_xlat9.z = u_xlat8.z; u_xlat3 = u_xlat10 * u_xlat6.xxxx + u_xlat3; u_xlat4 = u_xlat11 * u_xlat6.xxxx + u_xlat4; u_xlat5 = u_xlat9 * u_xlat6.xxxx + u_xlat5; } u_xlat6.xyz = u_xlat1.xyz; u_xlat6.w = 1.0; u_xlat7.x = dot(u_xlat3, u_xlat6); u_xlat7.y = dot(u_xlat4, u_xlat6); u_xlat7.z = dot(u_xlat5, u_xlat6); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat3.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat4.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat5.yzx, u_xlat2.xyz); outVertices3_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat7.x)); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat7.y)); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat7.z)); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat7.w)); outVertices3_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat1.x)); outVertices3_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat1.y)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlatu12 = inSkin2_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati24 = int(u_xlatu0) + 1; u_xlatu24 = inSkin2_buf[u_xlati24].value[(0 >> 2) + 0]; u_xlat3.x = float(0.0); u_xlat3.y = float(0.0); u_xlat3.z = float(0.0); u_xlat3.w = float(0.0); u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlat5.x = float(0.0); u_xlat5.y = float(0.0); u_xlat5.z = float(0.0); u_xlat5.w = float(0.0); for(uint u_xlatu_loop_3 = u_xlatu12 ; u_xlatu_loop_3> 2) + 0]; u_xlatu6 = u_xlatu38 >> (16u & uint(0x1F)); u_xlat6.x = float(u_xlatu6); u_xlat6.x = u_xlat6.x * 1.52590219e-05; u_xlati38 = int(u_xlatu38 & 65535u); u_xlati38 = u_xlati38 + int(g_PoseOffsets[0].z); u_xlat18.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat18.x; u_xlat10.y = u_xlat7.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat18.y; u_xlat11.y = u_xlat7.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat18.z; u_xlat9.y = u_xlat7.z; u_xlat9.z = u_xlat8.z; u_xlat3 = u_xlat10 * u_xlat6.xxxx + u_xlat3; u_xlat4 = u_xlat11 * u_xlat6.xxxx + u_xlat4; u_xlat5 = u_xlat9 * u_xlat6.xxxx + u_xlat5; } u_xlat6.xyz = u_xlat1.xyz; u_xlat6.w = 1.0; u_xlat7.x = dot(u_xlat3, u_xlat6); u_xlat7.y = dot(u_xlat4, u_xlat6); u_xlat7.z = dot(u_xlat5, u_xlat6); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat3.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat4.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat5.yzx, u_xlat2.xyz); outVertices2_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat7.x)); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat7.y)); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat7.z)); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat7.w)); outVertices2_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat1.x)); outVertices2_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat1.y)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlatu12 = inSkin1_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati24 = int(u_xlatu0) + 1; u_xlatu24 = inSkin1_buf[u_xlati24].value[(0 >> 2) + 0]; u_xlat3.x = float(0.0); u_xlat3.y = float(0.0); u_xlat3.z = float(0.0); u_xlat3.w = float(0.0); u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlat5.x = float(0.0); u_xlat5.y = float(0.0); u_xlat5.z = float(0.0); u_xlat5.w = float(0.0); for(uint u_xlatu_loop_4 = u_xlatu12 ; u_xlatu_loop_4> 2) + 0]; u_xlatu6 = u_xlatu38 >> (16u & uint(0x1F)); u_xlat6.x = float(u_xlatu6); u_xlat6.x = u_xlat6.x * 1.52590219e-05; u_xlati38 = int(u_xlatu38 & 65535u); u_xlati38 = u_xlati38 + int(g_PoseOffsets[0].y); u_xlat18.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat18.x; u_xlat10.y = u_xlat7.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat18.y; u_xlat11.y = u_xlat7.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat18.z; u_xlat9.y = u_xlat7.z; u_xlat9.z = u_xlat8.z; u_xlat3 = u_xlat10 * u_xlat6.xxxx + u_xlat3; u_xlat4 = u_xlat11 * u_xlat6.xxxx + u_xlat4; u_xlat5 = u_xlat9 * u_xlat6.xxxx + u_xlat5; } u_xlat6.xyz = u_xlat1.xyz; u_xlat6.w = 1.0; u_xlat7.x = dot(u_xlat3, u_xlat6); u_xlat7.y = dot(u_xlat4, u_xlat6); u_xlat7.z = dot(u_xlat5, u_xlat6); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat3.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat4.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat5.yzx, u_xlat2.xyz); outVertices1_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat7.x)); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat7.y)); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat7.z)); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat7.w)); outVertices1_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat1.x)); outVertices1_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat1.y)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlatu12 = inSkin0_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati24 = int(u_xlatu0) + 1; u_xlatu24 = inSkin0_buf[u_xlati24].value[(0 >> 2) + 0]; u_xlat3.x = float(0.0); u_xlat3.y = float(0.0); u_xlat3.z = float(0.0); u_xlat3.w = float(0.0); u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlat5.x = float(0.0); u_xlat5.y = float(0.0); u_xlat5.z = float(0.0); u_xlat5.w = float(0.0); for(uint u_xlatu_loop_5 = u_xlatu12 ; u_xlatu_loop_5> 2) + 0]; u_xlatu6 = u_xlatu38 >> (16u & uint(0x1F)); u_xlat6.x = float(u_xlatu6); u_xlat6.x = u_xlat6.x * 1.52590219e-05; u_xlati38 = int(u_xlatu38 & 65535u); u_xlati38 = u_xlati38 + int(g_PoseOffsets[0].x); u_xlat18.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat18.x; u_xlat10.y = u_xlat7.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat18.y; u_xlat11.y = u_xlat7.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat18.z; u_xlat9.y = u_xlat7.z; u_xlat9.z = u_xlat8.z; u_xlat3 = u_xlat10 * u_xlat6.xxxx + u_xlat3; u_xlat4 = u_xlat11 * u_xlat6.xxxx + u_xlat4; u_xlat5 = u_xlat9 * u_xlat6.xxxx + u_xlat5; } u_xlat6.xyz = u_xlat1.xyz; u_xlat6.w = 1.0; u_xlat7.x = dot(u_xlat3, u_xlat6); u_xlat7.y = dot(u_xlat4, u_xlat6); u_xlat7.z = dot(u_xlat5, u_xlat6); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat3.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat4.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat5.yzx, u_xlat2.xyz); outVertices0_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat7.x)); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat7.y)); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat7.z)); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat7.w)); outVertices0_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat1.x)); outVertices0_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat1.y)); } } } } } } return; } @A batchMainComputeSkinCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4inSkin0inSkin1inSkin2inSkin3inSkin4 inMatrices  outVertices0 outVertices1 outVertices2 outVertices3 outVertices4_}#version 310 es #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif UNITY_BINDING(0) uniform ComputeSkinCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; uvec4 g_PoseOffsets[2]; uint g_poseBufferMaxIndex; }; struct inVertices0_type { uint[10] value; }; layout(std430, binding = 5) readonly buffer inVertices0 { inVertices0_type inVertices0_buf[]; }; struct inVertices1_type { uint[10] value; }; layout(std430, binding = 6) readonly buffer inVertices1 { inVertices1_type inVertices1_buf[]; }; struct inVertices2_type { uint[10] value; }; layout(std430, binding = 7) readonly buffer inVertices2 { inVertices2_type inVertices2_buf[]; }; struct inVertices3_type { uint[10] value; }; layout(std430, binding = 8) readonly buffer inVertices3 { inVertices3_type inVertices3_buf[]; }; struct inVertices4_type { uint[10] value; }; layout(std430, binding = 9) readonly buffer inVertices4 { inVertices4_type inVertices4_buf[]; }; struct inSkin0_type { uint[1] value; }; layout(std430, binding = 10) readonly buffer inSkin0 { inSkin0_type inSkin0_buf[]; }; struct inSkin1_type { uint[1] value; }; layout(std430, binding = 11) readonly buffer inSkin1 { inSkin1_type inSkin1_buf[]; }; struct inSkin2_type { uint[1] value; }; layout(std430, binding = 12) readonly buffer inSkin2 { inSkin2_type inSkin2_buf[]; }; struct inSkin3_type { uint[1] value; }; layout(std430, binding = 13) readonly buffer inSkin3 { inSkin3_type inSkin3_buf[]; }; struct inSkin4_type { uint[1] value; }; layout(std430, binding = 14) readonly buffer inSkin4 { inSkin4_type inSkin4_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 15) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct outVertices0_type { uint[10] value; }; layout(std430, binding = 0) buffer outVertices0 { outVertices0_type outVertices0_buf[]; }; struct outVertices1_type { uint[10] value; }; layout(std430, binding = 1) buffer outVertices1 { outVertices1_type outVertices1_buf[]; }; struct outVertices2_type { uint[10] value; }; layout(std430, binding = 2) buffer outVertices2 { outVertices2_type outVertices2_buf[]; }; struct outVertices3_type { uint[10] value; }; layout(std430, binding = 3) buffer outVertices3 { outVertices3_type outVertices3_buf[]; }; struct outVertices4_type { uint[10] value; }; layout(std430, binding = 4) buffer outVertices4 { outVertices4_type outVertices4_buf[]; }; uint u_xlatu0; bool u_xlatb0; vec4 u_xlat1; vec4 u_xlat2; vec4 u_xlat3; vec4 u_xlat4; vec4 u_xlat5; vec4 u_xlat6; vec4 u_xlat7; int u_xlati7; uint u_xlatu7; bool u_xlatb7; vec4 u_xlat8; vec3 u_xlat9; vec3 u_xlat10; vec4 u_xlat11; vec4 u_xlat12; vec4 u_xlat13; uint u_xlatu14; bool u_xlatb14; float u_xlat21; uint u_xlatu21; int u_xlati28; uint u_xlatu28; uint u_xlatu42; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb14 = u_xlatu0> 2) + 3]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.xy = vec2(uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(32 >> 2) + 0]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(32 >> 2) + 1])); u_xlatu14 = inSkin4_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati28 = int(u_xlatu0) + 1; u_xlatu28 = inSkin4_buf[u_xlati28].value[(0 >> 2) + 0]; u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlat5.x = float(0.0); u_xlat5.y = float(0.0); u_xlat5.z = float(0.0); u_xlat5.w = float(0.0); u_xlat6.x = float(0.0); u_xlat6.y = float(0.0); u_xlat6.z = float(0.0); u_xlat6.w = float(0.0); for(uint u_xlatu_loop_1 = u_xlatu14 ; u_xlatu_loop_1> 2) + 0]; u_xlatu21 = u_xlatu7 >> (16u & uint(0x1F)); u_xlat21 = float(u_xlatu21); u_xlat21 = u_xlat21 * 1.52590219e-05; u_xlati7 = int(u_xlatu7 & 65535u); u_xlati7 = u_xlati7 + int(g_PoseOffsets[1].x); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati7].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(0 >> 2) + 2])); u_xlat9.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati7].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(16 >> 2) + 2])); u_xlat10.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati7].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati7].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat8.x; u_xlat12.y = u_xlat9.x; u_xlat12.z = u_xlat10.x; u_xlat12.w = u_xlat11.x; u_xlat13.x = u_xlat8.y; u_xlat13.y = u_xlat9.y; u_xlat13.z = u_xlat10.y; u_xlat13.w = u_xlat11.y; u_xlat11.x = u_xlat8.z; u_xlat11.y = u_xlat9.z; u_xlat11.z = u_xlat10.z; u_xlat4 = u_xlat12 * vec4(u_xlat21) + u_xlat4; u_xlat5 = u_xlat13 * vec4(u_xlat21) + u_xlat5; u_xlat6 = u_xlat11 * vec4(u_xlat21) + u_xlat6; } u_xlat7.xyz = u_xlat1.yzw; u_xlat7.w = 1.0; u_xlat8.x = dot(u_xlat4, u_xlat7); u_xlat8.y = dot(u_xlat5, u_xlat7); u_xlat8.z = dot(u_xlat6, u_xlat7); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat7.x = dot(u_xlat5.xyz, u_xlat1.xyz); u_xlat7.y = dot(u_xlat6.xyz, u_xlat1.xyz); u_xlat3.zw = u_xlat2.zw; u_xlat7.z = dot(u_xlat4.zxy, u_xlat3.xzw); u_xlat7.w = dot(u_xlat5.zxy, u_xlat3.xzw); u_xlat3.x = dot(u_xlat6.zxy, u_xlat3.xzw); outVertices4_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat8.x)); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat8.y)); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat8.z)); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat8.w)); outVertices4_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat7.x)); outVertices4_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat7.y)); outVertices4_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat7.z)); outVertices4_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat7.w)); outVertices4_buf[u_xlatu0].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat3.x)); outVertices4_buf[u_xlatu0].value[(32 >> 2) + 1] = uint(floatBitsToUint(u_xlat3.y)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb14 = u_xlatu0> 2) + 3]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.xy = vec2(uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(32 >> 2) + 0]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(32 >> 2) + 1])); u_xlatu14 = inSkin3_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati28 = int(u_xlatu0) + 1; u_xlatu28 = inSkin3_buf[u_xlati28].value[(0 >> 2) + 0]; u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlat5.x = float(0.0); u_xlat5.y = float(0.0); u_xlat5.z = float(0.0); u_xlat5.w = float(0.0); u_xlat6.x = float(0.0); u_xlat6.y = float(0.0); u_xlat6.z = float(0.0); u_xlat6.w = float(0.0); for(uint u_xlatu_loop_2 = u_xlatu14 ; u_xlatu_loop_2> 2) + 0]; u_xlatu21 = u_xlatu7 >> (16u & uint(0x1F)); u_xlat21 = float(u_xlatu21); u_xlat21 = u_xlat21 * 1.52590219e-05; u_xlati7 = int(u_xlatu7 & 65535u); u_xlati7 = u_xlati7 + int(g_PoseOffsets[0].w); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati7].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(0 >> 2) + 2])); u_xlat9.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati7].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(16 >> 2) + 2])); u_xlat10.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati7].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati7].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat8.x; u_xlat12.y = u_xlat9.x; u_xlat12.z = u_xlat10.x; u_xlat12.w = u_xlat11.x; u_xlat13.x = u_xlat8.y; u_xlat13.y = u_xlat9.y; u_xlat13.z = u_xlat10.y; u_xlat13.w = u_xlat11.y; u_xlat11.x = u_xlat8.z; u_xlat11.y = u_xlat9.z; u_xlat11.z = u_xlat10.z; u_xlat4 = u_xlat12 * vec4(u_xlat21) + u_xlat4; u_xlat5 = u_xlat13 * vec4(u_xlat21) + u_xlat5; u_xlat6 = u_xlat11 * vec4(u_xlat21) + u_xlat6; } u_xlat7.xyz = u_xlat1.yzw; u_xlat7.w = 1.0; u_xlat8.x = dot(u_xlat4, u_xlat7); u_xlat8.y = dot(u_xlat5, u_xlat7); u_xlat8.z = dot(u_xlat6, u_xlat7); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat7.x = dot(u_xlat5.xyz, u_xlat1.xyz); u_xlat7.y = dot(u_xlat6.xyz, u_xlat1.xyz); u_xlat3.zw = u_xlat2.zw; u_xlat7.z = dot(u_xlat4.zxy, u_xlat3.xzw); u_xlat7.w = dot(u_xlat5.zxy, u_xlat3.xzw); u_xlat3.x = dot(u_xlat6.zxy, u_xlat3.xzw); outVertices3_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat8.x)); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat8.y)); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat8.z)); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat8.w)); outVertices3_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat7.x)); outVertices3_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat7.y)); outVertices3_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat7.z)); outVertices3_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat7.w)); outVertices3_buf[u_xlatu0].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat3.x)); outVertices3_buf[u_xlatu0].value[(32 >> 2) + 1] = uint(floatBitsToUint(u_xlat3.y)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb14 = u_xlatu0> 2) + 3]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.xy = vec2(uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(32 >> 2) + 0]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(32 >> 2) + 1])); u_xlatu14 = inSkin2_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati28 = int(u_xlatu0) + 1; u_xlatu28 = inSkin2_buf[u_xlati28].value[(0 >> 2) + 0]; u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlat5.x = float(0.0); u_xlat5.y = float(0.0); u_xlat5.z = float(0.0); u_xlat5.w = float(0.0); u_xlat6.x = float(0.0); u_xlat6.y = float(0.0); u_xlat6.z = float(0.0); u_xlat6.w = float(0.0); for(uint u_xlatu_loop_3 = u_xlatu14 ; u_xlatu_loop_3> 2) + 0]; u_xlatu21 = u_xlatu7 >> (16u & uint(0x1F)); u_xlat21 = float(u_xlatu21); u_xlat21 = u_xlat21 * 1.52590219e-05; u_xlati7 = int(u_xlatu7 & 65535u); u_xlati7 = u_xlati7 + int(g_PoseOffsets[0].z); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati7].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(0 >> 2) + 2])); u_xlat9.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati7].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(16 >> 2) + 2])); u_xlat10.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati7].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati7].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat8.x; u_xlat12.y = u_xlat9.x; u_xlat12.z = u_xlat10.x; u_xlat12.w = u_xlat11.x; u_xlat13.x = u_xlat8.y; u_xlat13.y = u_xlat9.y; u_xlat13.z = u_xlat10.y; u_xlat13.w = u_xlat11.y; u_xlat11.x = u_xlat8.z; u_xlat11.y = u_xlat9.z; u_xlat11.z = u_xlat10.z; u_xlat4 = u_xlat12 * vec4(u_xlat21) + u_xlat4; u_xlat5 = u_xlat13 * vec4(u_xlat21) + u_xlat5; u_xlat6 = u_xlat11 * vec4(u_xlat21) + u_xlat6; } u_xlat7.xyz = u_xlat1.yzw; u_xlat7.w = 1.0; u_xlat8.x = dot(u_xlat4, u_xlat7); u_xlat8.y = dot(u_xlat5, u_xlat7); u_xlat8.z = dot(u_xlat6, u_xlat7); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat7.x = dot(u_xlat5.xyz, u_xlat1.xyz); u_xlat7.y = dot(u_xlat6.xyz, u_xlat1.xyz); u_xlat3.zw = u_xlat2.zw; u_xlat7.z = dot(u_xlat4.zxy, u_xlat3.xzw); u_xlat7.w = dot(u_xlat5.zxy, u_xlat3.xzw); u_xlat3.x = dot(u_xlat6.zxy, u_xlat3.xzw); outVertices2_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat8.x)); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat8.y)); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat8.z)); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat8.w)); outVertices2_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat7.x)); outVertices2_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat7.y)); outVertices2_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat7.z)); outVertices2_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat7.w)); outVertices2_buf[u_xlatu0].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat3.x)); outVertices2_buf[u_xlatu0].value[(32 >> 2) + 1] = uint(floatBitsToUint(u_xlat3.y)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb14 = u_xlatu0> 2) + 3]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.xy = vec2(uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(32 >> 2) + 0]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(32 >> 2) + 1])); u_xlatu14 = inSkin1_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati28 = int(u_xlatu0) + 1; u_xlatu28 = inSkin1_buf[u_xlati28].value[(0 >> 2) + 0]; u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlat5.x = float(0.0); u_xlat5.y = float(0.0); u_xlat5.z = float(0.0); u_xlat5.w = float(0.0); u_xlat6.x = float(0.0); u_xlat6.y = float(0.0); u_xlat6.z = float(0.0); u_xlat6.w = float(0.0); for(uint u_xlatu_loop_4 = u_xlatu14 ; u_xlatu_loop_4> 2) + 0]; u_xlatu21 = u_xlatu7 >> (16u & uint(0x1F)); u_xlat21 = float(u_xlatu21); u_xlat21 = u_xlat21 * 1.52590219e-05; u_xlati7 = int(u_xlatu7 & 65535u); u_xlati7 = u_xlati7 + int(g_PoseOffsets[0].y); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati7].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(0 >> 2) + 2])); u_xlat9.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati7].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(16 >> 2) + 2])); u_xlat10.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati7].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati7].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat8.x; u_xlat12.y = u_xlat9.x; u_xlat12.z = u_xlat10.x; u_xlat12.w = u_xlat11.x; u_xlat13.x = u_xlat8.y; u_xlat13.y = u_xlat9.y; u_xlat13.z = u_xlat10.y; u_xlat13.w = u_xlat11.y; u_xlat11.x = u_xlat8.z; u_xlat11.y = u_xlat9.z; u_xlat11.z = u_xlat10.z; u_xlat4 = u_xlat12 * vec4(u_xlat21) + u_xlat4; u_xlat5 = u_xlat13 * vec4(u_xlat21) + u_xlat5; u_xlat6 = u_xlat11 * vec4(u_xlat21) + u_xlat6; } u_xlat7.xyz = u_xlat1.yzw; u_xlat7.w = 1.0; u_xlat8.x = dot(u_xlat4, u_xlat7); u_xlat8.y = dot(u_xlat5, u_xlat7); u_xlat8.z = dot(u_xlat6, u_xlat7); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat7.x = dot(u_xlat5.xyz, u_xlat1.xyz); u_xlat7.y = dot(u_xlat6.xyz, u_xlat1.xyz); u_xlat3.zw = u_xlat2.zw; u_xlat7.z = dot(u_xlat4.zxy, u_xlat3.xzw); u_xlat7.w = dot(u_xlat5.zxy, u_xlat3.xzw); u_xlat3.x = dot(u_xlat6.zxy, u_xlat3.xzw); outVertices1_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat8.x)); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat8.y)); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat8.z)); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat8.w)); outVertices1_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat7.x)); outVertices1_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat7.y)); outVertices1_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat7.z)); outVertices1_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat7.w)); outVertices1_buf[u_xlatu0].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat3.x)); outVertices1_buf[u_xlatu0].value[(32 >> 2) + 1] = uint(floatBitsToUint(u_xlat3.y)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb14 = u_xlatu0> 2) + 3]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.xy = vec2(uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(32 >> 2) + 0]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(32 >> 2) + 1])); u_xlatu14 = inSkin0_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati28 = int(u_xlatu0) + 1; u_xlatu28 = inSkin0_buf[u_xlati28].value[(0 >> 2) + 0]; u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlat5.x = float(0.0); u_xlat5.y = float(0.0); u_xlat5.z = float(0.0); u_xlat5.w = float(0.0); u_xlat6.x = float(0.0); u_xlat6.y = float(0.0); u_xlat6.z = float(0.0); u_xlat6.w = float(0.0); for(uint u_xlatu_loop_5 = u_xlatu14 ; u_xlatu_loop_5> 2) + 0]; u_xlatu21 = u_xlatu7 >> (16u & uint(0x1F)); u_xlat21 = float(u_xlatu21); u_xlat21 = u_xlat21 * 1.52590219e-05; u_xlati7 = int(u_xlatu7 & 65535u); u_xlati7 = u_xlati7 + int(g_PoseOffsets[0].x); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati7].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(0 >> 2) + 2])); u_xlat9.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati7].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(16 >> 2) + 2])); u_xlat10.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati7].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati7].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat8.x; u_xlat12.y = u_xlat9.x; u_xlat12.z = u_xlat10.x; u_xlat12.w = u_xlat11.x; u_xlat13.x = u_xlat8.y; u_xlat13.y = u_xlat9.y; u_xlat13.z = u_xlat10.y; u_xlat13.w = u_xlat11.y; u_xlat11.x = u_xlat8.z; u_xlat11.y = u_xlat9.z; u_xlat11.z = u_xlat10.z; u_xlat4 = u_xlat12 * vec4(u_xlat21) + u_xlat4; u_xlat5 = u_xlat13 * vec4(u_xlat21) + u_xlat5; u_xlat6 = u_xlat11 * vec4(u_xlat21) + u_xlat6; } u_xlat7.xyz = u_xlat1.yzw; u_xlat7.w = 1.0; u_xlat8.x = dot(u_xlat4, u_xlat7); u_xlat8.y = dot(u_xlat5, u_xlat7); u_xlat8.z = dot(u_xlat6, u_xlat7); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat7.x = dot(u_xlat5.xyz, u_xlat1.xyz); u_xlat7.y = dot(u_xlat6.xyz, u_xlat1.xyz); u_xlat3.zw = u_xlat2.zw; u_xlat7.z = dot(u_xlat4.zxy, u_xlat3.xzw); u_xlat7.w = dot(u_xlat5.zxy, u_xlat3.xzw); u_xlat3.x = dot(u_xlat6.zxy, u_xlat3.xzw); outVertices0_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat8.x)); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat8.y)); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat8.z)); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat8.w)); outVertices0_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat7.x)); outVertices0_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat7.y)); outVertices0_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat7.z)); outVertices0_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat7.w)); outVertices0_buf[u_xlatu0].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat3.x)); outVertices0_buf[u_xlatu0].value[(32 >> 2) + 1] = uint(floatBitsToUint(u_xlat3.y)); } } } } } } return; } @A batchMainComputeSkinCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4inSkin0inSkin1inSkin2inSkin3inSkin4 inMatrices  outVertices0 outVertices1 outVertices2 outVertices3 outVertices4c>#version 310 es #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif UNITY_BINDING(0) uniform ComputeSkinCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; uvec4 g_PoseOffsets[2]; uint g_poseBufferMaxIndex; }; struct inVertices0_type { uint[3] value; }; layout(std430, binding = 5) readonly buffer inVertices0 { inVertices0_type inVertices0_buf[]; }; struct inVertices1_type { uint[3] value; }; layout(std430, binding = 6) readonly buffer inVertices1 { inVertices1_type inVertices1_buf[]; }; struct inVertices2_type { uint[3] value; }; layout(std430, binding = 7) readonly buffer inVertices2 { inVertices2_type inVertices2_buf[]; }; struct inVertices3_type { uint[3] value; }; layout(std430, binding = 8) readonly buffer inVertices3 { inVertices3_type inVertices3_buf[]; }; struct inVertices4_type { uint[3] value; }; layout(std430, binding = 9) readonly buffer inVertices4 { inVertices4_type inVertices4_buf[]; }; struct inSkin0_type { uint[1] value; }; layout(std430, binding = 10) readonly buffer inSkin0 { inSkin0_type inSkin0_buf[]; }; struct inSkin1_type { uint[1] value; }; layout(std430, binding = 11) readonly buffer inSkin1 { inSkin1_type inSkin1_buf[]; }; struct inSkin2_type { uint[1] value; }; layout(std430, binding = 12) readonly buffer inSkin2 { inSkin2_type inSkin2_buf[]; }; struct inSkin3_type { uint[1] value; }; layout(std430, binding = 13) readonly buffer inSkin3 { inSkin3_type inSkin3_buf[]; }; struct inSkin4_type { uint[1] value; }; layout(std430, binding = 14) readonly buffer inSkin4 { inSkin4_type inSkin4_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 15) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct outVertices0_type { uint[3] value; }; layout(std430, binding = 0) buffer outVertices0 { outVertices0_type outVertices0_buf[]; }; struct outVertices1_type { uint[3] value; }; layout(std430, binding = 1) buffer outVertices1 { outVertices1_type outVertices1_buf[]; }; struct outVertices2_type { uint[3] value; }; layout(std430, binding = 2) buffer outVertices2 { outVertices2_type outVertices2_buf[]; }; struct outVertices3_type { uint[3] value; }; layout(std430, binding = 3) buffer outVertices3 { outVertices3_type outVertices3_buf[]; }; struct outVertices4_type { uint[3] value; }; layout(std430, binding = 4) buffer outVertices4 { outVertices4_type outVertices4_buf[]; }; uint u_xlatu0; bool u_xlatb0; vec4 u_xlat1; vec3 u_xlat2; vec3 u_xlat3; vec3 u_xlat4; vec4 u_xlat5; vec4 u_xlat6; vec4 u_xlat7; int u_xlati8; bool u_xlatb8; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb8 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlati8 = int(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati8 = u_xlati8 + int(g_PoseOffsets[1].x); u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 2])); u_xlat5.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 2])); u_xlat6.x = u_xlat2.x; u_xlat6.y = u_xlat3.x; u_xlat6.z = u_xlat4.x; u_xlat6.w = u_xlat5.x; u_xlat1.w = 1.0; u_xlat6.x = dot(u_xlat6, u_xlat1); u_xlat7.x = u_xlat2.y; u_xlat7.y = u_xlat3.y; u_xlat7.z = u_xlat4.y; u_xlat7.w = u_xlat5.y; u_xlat6.y = dot(u_xlat7, u_xlat1); u_xlat5.x = u_xlat2.z; u_xlat5.y = u_xlat3.z; u_xlat5.z = u_xlat4.z; u_xlat6.z = dot(u_xlat5, u_xlat1); outVertices4_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat6.x)); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat6.y)); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat6.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb8 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlati8 = int(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati8 = u_xlati8 + int(g_PoseOffsets[0].w); u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 2])); u_xlat5.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 2])); u_xlat6.x = u_xlat2.x; u_xlat6.y = u_xlat3.x; u_xlat6.z = u_xlat4.x; u_xlat6.w = u_xlat5.x; u_xlat1.w = 1.0; u_xlat6.x = dot(u_xlat6, u_xlat1); u_xlat7.x = u_xlat2.y; u_xlat7.y = u_xlat3.y; u_xlat7.z = u_xlat4.y; u_xlat7.w = u_xlat5.y; u_xlat6.y = dot(u_xlat7, u_xlat1); u_xlat5.x = u_xlat2.z; u_xlat5.y = u_xlat3.z; u_xlat5.z = u_xlat4.z; u_xlat6.z = dot(u_xlat5, u_xlat1); outVertices3_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat6.x)); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat6.y)); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat6.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb8 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlati8 = int(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati8 = u_xlati8 + int(g_PoseOffsets[0].z); u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 2])); u_xlat5.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 2])); u_xlat6.x = u_xlat2.x; u_xlat6.y = u_xlat3.x; u_xlat6.z = u_xlat4.x; u_xlat6.w = u_xlat5.x; u_xlat1.w = 1.0; u_xlat6.x = dot(u_xlat6, u_xlat1); u_xlat7.x = u_xlat2.y; u_xlat7.y = u_xlat3.y; u_xlat7.z = u_xlat4.y; u_xlat7.w = u_xlat5.y; u_xlat6.y = dot(u_xlat7, u_xlat1); u_xlat5.x = u_xlat2.z; u_xlat5.y = u_xlat3.z; u_xlat5.z = u_xlat4.z; u_xlat6.z = dot(u_xlat5, u_xlat1); outVertices2_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat6.x)); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat6.y)); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat6.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb8 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlati8 = int(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati8 = u_xlati8 + int(g_PoseOffsets[0].y); u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 2])); u_xlat5.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 2])); u_xlat6.x = u_xlat2.x; u_xlat6.y = u_xlat3.x; u_xlat6.z = u_xlat4.x; u_xlat6.w = u_xlat5.x; u_xlat1.w = 1.0; u_xlat6.x = dot(u_xlat6, u_xlat1); u_xlat7.x = u_xlat2.y; u_xlat7.y = u_xlat3.y; u_xlat7.z = u_xlat4.y; u_xlat7.w = u_xlat5.y; u_xlat6.y = dot(u_xlat7, u_xlat1); u_xlat5.x = u_xlat2.z; u_xlat5.y = u_xlat3.z; u_xlat5.z = u_xlat4.z; u_xlat6.z = dot(u_xlat5, u_xlat1); outVertices1_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat6.x)); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat6.y)); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat6.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb8 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlati8 = int(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati8 = u_xlati8 + int(g_PoseOffsets[0].x); u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 2])); u_xlat5.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 2])); u_xlat6.x = u_xlat2.x; u_xlat6.y = u_xlat3.x; u_xlat6.z = u_xlat4.x; u_xlat6.w = u_xlat5.x; u_xlat1.w = 1.0; u_xlat6.x = dot(u_xlat6, u_xlat1); u_xlat7.x = u_xlat2.y; u_xlat7.y = u_xlat3.y; u_xlat7.z = u_xlat4.y; u_xlat7.w = u_xlat5.y; u_xlat6.y = dot(u_xlat7, u_xlat1); u_xlat5.x = u_xlat2.z; u_xlat5.y = u_xlat3.z; u_xlat5.z = u_xlat4.z; u_xlat6.z = dot(u_xlat5, u_xlat1); outVertices0_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat6.x)); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat6.y)); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat6.z)); } } } } } } return; } @A batchMainComputeSkinCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4inSkin0inSkin1inSkin2inSkin3inSkin4 inMatrices  outVertices0 outVertices1 outVertices2 outVertices3 outVertices4N#version 310 es #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif UNITY_BINDING(0) uniform ComputeSkinCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; uvec4 g_PoseOffsets[2]; uint g_poseBufferMaxIndex; }; struct inVertices0_type { uint[6] value; }; layout(std430, binding = 5) readonly buffer inVertices0 { inVertices0_type inVertices0_buf[]; }; struct inVertices1_type { uint[6] value; }; layout(std430, binding = 6) readonly buffer inVertices1 { inVertices1_type inVertices1_buf[]; }; struct inVertices2_type { uint[6] value; }; layout(std430, binding = 7) readonly buffer inVertices2 { inVertices2_type inVertices2_buf[]; }; struct inVertices3_type { uint[6] value; }; layout(std430, binding = 8) readonly buffer inVertices3 { inVertices3_type inVertices3_buf[]; }; struct inVertices4_type { uint[6] value; }; layout(std430, binding = 9) readonly buffer inVertices4 { inVertices4_type inVertices4_buf[]; }; struct inSkin0_type { uint[1] value; }; layout(std430, binding = 10) readonly buffer inSkin0 { inSkin0_type inSkin0_buf[]; }; struct inSkin1_type { uint[1] value; }; layout(std430, binding = 11) readonly buffer inSkin1 { inSkin1_type inSkin1_buf[]; }; struct inSkin2_type { uint[1] value; }; layout(std430, binding = 12) readonly buffer inSkin2 { inSkin2_type inSkin2_buf[]; }; struct inSkin3_type { uint[1] value; }; layout(std430, binding = 13) readonly buffer inSkin3 { inSkin3_type inSkin3_buf[]; }; struct inSkin4_type { uint[1] value; }; layout(std430, binding = 14) readonly buffer inSkin4 { inSkin4_type inSkin4_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 15) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct outVertices0_type { uint[6] value; }; layout(std430, binding = 0) buffer outVertices0 { outVertices0_type outVertices0_buf[]; }; struct outVertices1_type { uint[6] value; }; layout(std430, binding = 1) buffer outVertices1 { outVertices1_type outVertices1_buf[]; }; struct outVertices2_type { uint[6] value; }; layout(std430, binding = 2) buffer outVertices2 { outVertices2_type outVertices2_buf[]; }; struct outVertices3_type { uint[6] value; }; layout(std430, binding = 3) buffer outVertices3 { outVertices3_type outVertices3_buf[]; }; struct outVertices4_type { uint[6] value; }; layout(std430, binding = 4) buffer outVertices4 { outVertices4_type outVertices4_buf[]; }; uint u_xlatu0; bool u_xlatb0; vec4 u_xlat1; vec3 u_xlat2; vec3 u_xlat3; vec3 u_xlat4; vec3 u_xlat5; vec4 u_xlat6; vec4 u_xlat7; vec4 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; int u_xlati11; bool u_xlatb11; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb11 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlati11 = int(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati11 = u_xlati11 + int(g_PoseOffsets[1].x); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat3.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.xyz = u_xlat1.xyz; u_xlat8.w = 1.0; u_xlat9.x = dot(u_xlat7, u_xlat8); u_xlat10.x = u_xlat3.y; u_xlat10.y = u_xlat4.y; u_xlat10.z = u_xlat5.y; u_xlat10.w = u_xlat6.y; u_xlat9.y = dot(u_xlat10, u_xlat8); u_xlat6.x = u_xlat3.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat9.z = dot(u_xlat6, u_xlat8); u_xlat2.z = u_xlat1.w; u_xlat9.w = dot(u_xlat7.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat10.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat6.yzx, u_xlat2.xyz); outVertices4_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat9.x)); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat9.y)); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat9.z)); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat9.w)); outVertices4_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat1.x)); outVertices4_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat1.y)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb11 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlati11 = int(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati11 = u_xlati11 + int(g_PoseOffsets[0].w); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat3.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.xyz = u_xlat1.xyz; u_xlat8.w = 1.0; u_xlat9.x = dot(u_xlat7, u_xlat8); u_xlat10.x = u_xlat3.y; u_xlat10.y = u_xlat4.y; u_xlat10.z = u_xlat5.y; u_xlat10.w = u_xlat6.y; u_xlat9.y = dot(u_xlat10, u_xlat8); u_xlat6.x = u_xlat3.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat9.z = dot(u_xlat6, u_xlat8); u_xlat2.z = u_xlat1.w; u_xlat9.w = dot(u_xlat7.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat10.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat6.yzx, u_xlat2.xyz); outVertices3_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat9.x)); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat9.y)); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat9.z)); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat9.w)); outVertices3_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat1.x)); outVertices3_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat1.y)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb11 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlati11 = int(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati11 = u_xlati11 + int(g_PoseOffsets[0].z); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat3.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.xyz = u_xlat1.xyz; u_xlat8.w = 1.0; u_xlat9.x = dot(u_xlat7, u_xlat8); u_xlat10.x = u_xlat3.y; u_xlat10.y = u_xlat4.y; u_xlat10.z = u_xlat5.y; u_xlat10.w = u_xlat6.y; u_xlat9.y = dot(u_xlat10, u_xlat8); u_xlat6.x = u_xlat3.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat9.z = dot(u_xlat6, u_xlat8); u_xlat2.z = u_xlat1.w; u_xlat9.w = dot(u_xlat7.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat10.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat6.yzx, u_xlat2.xyz); outVertices2_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat9.x)); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat9.y)); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat9.z)); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat9.w)); outVertices2_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat1.x)); outVertices2_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat1.y)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb11 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlati11 = int(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati11 = u_xlati11 + int(g_PoseOffsets[0].y); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat3.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.xyz = u_xlat1.xyz; u_xlat8.w = 1.0; u_xlat9.x = dot(u_xlat7, u_xlat8); u_xlat10.x = u_xlat3.y; u_xlat10.y = u_xlat4.y; u_xlat10.z = u_xlat5.y; u_xlat10.w = u_xlat6.y; u_xlat9.y = dot(u_xlat10, u_xlat8); u_xlat6.x = u_xlat3.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat9.z = dot(u_xlat6, u_xlat8); u_xlat2.z = u_xlat1.w; u_xlat9.w = dot(u_xlat7.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat10.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat6.yzx, u_xlat2.xyz); outVertices1_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat9.x)); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat9.y)); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat9.z)); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat9.w)); outVertices1_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat1.x)); outVertices1_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat1.y)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb11 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlati11 = int(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati11 = u_xlati11 + int(g_PoseOffsets[0].x); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat3.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.xyz = u_xlat1.xyz; u_xlat8.w = 1.0; u_xlat9.x = dot(u_xlat7, u_xlat8); u_xlat10.x = u_xlat3.y; u_xlat10.y = u_xlat4.y; u_xlat10.z = u_xlat5.y; u_xlat10.w = u_xlat6.y; u_xlat9.y = dot(u_xlat10, u_xlat8); u_xlat6.x = u_xlat3.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat9.z = dot(u_xlat6, u_xlat8); u_xlat2.z = u_xlat1.w; u_xlat9.w = dot(u_xlat7.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat10.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat6.yzx, u_xlat2.xyz); outVertices0_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat9.x)); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat9.y)); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat9.z)); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat9.w)); outVertices0_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat1.x)); outVertices0_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat1.y)); } } } } } } return; } @A batchMainComputeSkinCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4inSkin0inSkin1inSkin2inSkin3inSkin4 inMatrices  outVertices0 outVertices1 outVertices2 outVertices3 outVertices4a#version 310 es #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif UNITY_BINDING(0) uniform ComputeSkinCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; uvec4 g_PoseOffsets[2]; uint g_poseBufferMaxIndex; }; struct inVertices0_type { uint[10] value; }; layout(std430, binding = 5) readonly buffer inVertices0 { inVertices0_type inVertices0_buf[]; }; struct inVertices1_type { uint[10] value; }; layout(std430, binding = 6) readonly buffer inVertices1 { inVertices1_type inVertices1_buf[]; }; struct inVertices2_type { uint[10] value; }; layout(std430, binding = 7) readonly buffer inVertices2 { inVertices2_type inVertices2_buf[]; }; struct inVertices3_type { uint[10] value; }; layout(std430, binding = 8) readonly buffer inVertices3 { inVertices3_type inVertices3_buf[]; }; struct inVertices4_type { uint[10] value; }; layout(std430, binding = 9) readonly buffer inVertices4 { inVertices4_type inVertices4_buf[]; }; struct inSkin0_type { uint[1] value; }; layout(std430, binding = 10) readonly buffer inSkin0 { inSkin0_type inSkin0_buf[]; }; struct inSkin1_type { uint[1] value; }; layout(std430, binding = 11) readonly buffer inSkin1 { inSkin1_type inSkin1_buf[]; }; struct inSkin2_type { uint[1] value; }; layout(std430, binding = 12) readonly buffer inSkin2 { inSkin2_type inSkin2_buf[]; }; struct inSkin3_type { uint[1] value; }; layout(std430, binding = 13) readonly buffer inSkin3 { inSkin3_type inSkin3_buf[]; }; struct inSkin4_type { uint[1] value; }; layout(std430, binding = 14) readonly buffer inSkin4 { inSkin4_type inSkin4_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 15) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct outVertices0_type { uint[10] value; }; layout(std430, binding = 0) buffer outVertices0 { outVertices0_type outVertices0_buf[]; }; struct outVertices1_type { uint[10] value; }; layout(std430, binding = 1) buffer outVertices1 { outVertices1_type outVertices1_buf[]; }; struct outVertices2_type { uint[10] value; }; layout(std430, binding = 2) buffer outVertices2 { outVertices2_type outVertices2_buf[]; }; struct outVertices3_type { uint[10] value; }; layout(std430, binding = 3) buffer outVertices3 { outVertices3_type outVertices3_buf[]; }; struct outVertices4_type { uint[10] value; }; layout(std430, binding = 4) buffer outVertices4 { outVertices4_type outVertices4_buf[]; }; uint u_xlatu0; bool u_xlatb0; vec4 u_xlat1; vec4 u_xlat2; vec4 u_xlat3; vec4 u_xlat4; vec3 u_xlat5; vec3 u_xlat6; vec4 u_xlat7; vec4 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; vec4 u_xlat11; int u_xlati12; bool u_xlatb12; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb12 = u_xlatu0> 2) + 3]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.xy = vec2(uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(32 >> 2) + 0]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(32 >> 2) + 1])); u_xlati12 = int(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati12 = u_xlati12 + int(g_PoseOffsets[1].x); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat4.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.xyz = u_xlat1.yzw; u_xlat9.w = 1.0; u_xlat10.x = dot(u_xlat8, u_xlat9); u_xlat11.x = u_xlat4.y; u_xlat11.y = u_xlat5.y; u_xlat11.z = u_xlat6.y; u_xlat11.w = u_xlat7.y; u_xlat10.y = dot(u_xlat11, u_xlat9); u_xlat7.x = u_xlat4.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat10.z = dot(u_xlat7, u_xlat9); u_xlat1.yz = u_xlat2.xy; u_xlat10.w = dot(u_xlat8.xyz, u_xlat1.xyz); u_xlat4.x = dot(u_xlat11.xyz, u_xlat1.xyz); u_xlat4.y = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat3.zw = u_xlat2.zw; u_xlat4.z = dot(u_xlat8.zxy, u_xlat3.xzw); u_xlat4.w = dot(u_xlat11.zxy, u_xlat3.xzw); u_xlat3.x = dot(u_xlat7.zxy, u_xlat3.xzw); outVertices4_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat10.x)); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat10.y)); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat10.z)); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat10.w)); outVertices4_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat4.x)); outVertices4_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat4.y)); outVertices4_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat4.z)); outVertices4_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat4.w)); outVertices4_buf[u_xlatu0].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat3.x)); outVertices4_buf[u_xlatu0].value[(32 >> 2) + 1] = uint(floatBitsToUint(u_xlat3.y)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb12 = u_xlatu0> 2) + 3]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.xy = vec2(uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(32 >> 2) + 0]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(32 >> 2) + 1])); u_xlati12 = int(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati12 = u_xlati12 + int(g_PoseOffsets[0].w); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat4.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.xyz = u_xlat1.yzw; u_xlat9.w = 1.0; u_xlat10.x = dot(u_xlat8, u_xlat9); u_xlat11.x = u_xlat4.y; u_xlat11.y = u_xlat5.y; u_xlat11.z = u_xlat6.y; u_xlat11.w = u_xlat7.y; u_xlat10.y = dot(u_xlat11, u_xlat9); u_xlat7.x = u_xlat4.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat10.z = dot(u_xlat7, u_xlat9); u_xlat1.yz = u_xlat2.xy; u_xlat10.w = dot(u_xlat8.xyz, u_xlat1.xyz); u_xlat4.x = dot(u_xlat11.xyz, u_xlat1.xyz); u_xlat4.y = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat3.zw = u_xlat2.zw; u_xlat4.z = dot(u_xlat8.zxy, u_xlat3.xzw); u_xlat4.w = dot(u_xlat11.zxy, u_xlat3.xzw); u_xlat3.x = dot(u_xlat7.zxy, u_xlat3.xzw); outVertices3_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat10.x)); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat10.y)); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat10.z)); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat10.w)); outVertices3_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat4.x)); outVertices3_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat4.y)); outVertices3_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat4.z)); outVertices3_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat4.w)); outVertices3_buf[u_xlatu0].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat3.x)); outVertices3_buf[u_xlatu0].value[(32 >> 2) + 1] = uint(floatBitsToUint(u_xlat3.y)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb12 = u_xlatu0> 2) + 3]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.xy = vec2(uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(32 >> 2) + 0]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(32 >> 2) + 1])); u_xlati12 = int(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati12 = u_xlati12 + int(g_PoseOffsets[0].z); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat4.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.xyz = u_xlat1.yzw; u_xlat9.w = 1.0; u_xlat10.x = dot(u_xlat8, u_xlat9); u_xlat11.x = u_xlat4.y; u_xlat11.y = u_xlat5.y; u_xlat11.z = u_xlat6.y; u_xlat11.w = u_xlat7.y; u_xlat10.y = dot(u_xlat11, u_xlat9); u_xlat7.x = u_xlat4.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat10.z = dot(u_xlat7, u_xlat9); u_xlat1.yz = u_xlat2.xy; u_xlat10.w = dot(u_xlat8.xyz, u_xlat1.xyz); u_xlat4.x = dot(u_xlat11.xyz, u_xlat1.xyz); u_xlat4.y = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat3.zw = u_xlat2.zw; u_xlat4.z = dot(u_xlat8.zxy, u_xlat3.xzw); u_xlat4.w = dot(u_xlat11.zxy, u_xlat3.xzw); u_xlat3.x = dot(u_xlat7.zxy, u_xlat3.xzw); outVertices2_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat10.x)); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat10.y)); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat10.z)); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat10.w)); outVertices2_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat4.x)); outVertices2_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat4.y)); outVertices2_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat4.z)); outVertices2_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat4.w)); outVertices2_buf[u_xlatu0].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat3.x)); outVertices2_buf[u_xlatu0].value[(32 >> 2) + 1] = uint(floatBitsToUint(u_xlat3.y)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb12 = u_xlatu0> 2) + 3]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.xy = vec2(uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(32 >> 2) + 0]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(32 >> 2) + 1])); u_xlati12 = int(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati12 = u_xlati12 + int(g_PoseOffsets[0].y); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat4.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.xyz = u_xlat1.yzw; u_xlat9.w = 1.0; u_xlat10.x = dot(u_xlat8, u_xlat9); u_xlat11.x = u_xlat4.y; u_xlat11.y = u_xlat5.y; u_xlat11.z = u_xlat6.y; u_xlat11.w = u_xlat7.y; u_xlat10.y = dot(u_xlat11, u_xlat9); u_xlat7.x = u_xlat4.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat10.z = dot(u_xlat7, u_xlat9); u_xlat1.yz = u_xlat2.xy; u_xlat10.w = dot(u_xlat8.xyz, u_xlat1.xyz); u_xlat4.x = dot(u_xlat11.xyz, u_xlat1.xyz); u_xlat4.y = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat3.zw = u_xlat2.zw; u_xlat4.z = dot(u_xlat8.zxy, u_xlat3.xzw); u_xlat4.w = dot(u_xlat11.zxy, u_xlat3.xzw); u_xlat3.x = dot(u_xlat7.zxy, u_xlat3.xzw); outVertices1_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat10.x)); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat10.y)); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat10.z)); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat10.w)); outVertices1_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat4.x)); outVertices1_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat4.y)); outVertices1_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat4.z)); outVertices1_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat4.w)); outVertices1_buf[u_xlatu0].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat3.x)); outVertices1_buf[u_xlatu0].value[(32 >> 2) + 1] = uint(floatBitsToUint(u_xlat3.y)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb12 = u_xlatu0> 2) + 3]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.xy = vec2(uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(32 >> 2) + 0]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(32 >> 2) + 1])); u_xlati12 = int(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati12 = u_xlati12 + int(g_PoseOffsets[0].x); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat4.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.xyz = u_xlat1.yzw; u_xlat9.w = 1.0; u_xlat10.x = dot(u_xlat8, u_xlat9); u_xlat11.x = u_xlat4.y; u_xlat11.y = u_xlat5.y; u_xlat11.z = u_xlat6.y; u_xlat11.w = u_xlat7.y; u_xlat10.y = dot(u_xlat11, u_xlat9); u_xlat7.x = u_xlat4.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat10.z = dot(u_xlat7, u_xlat9); u_xlat1.yz = u_xlat2.xy; u_xlat10.w = dot(u_xlat8.xyz, u_xlat1.xyz); u_xlat4.x = dot(u_xlat11.xyz, u_xlat1.xyz); u_xlat4.y = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat3.zw = u_xlat2.zw; u_xlat4.z = dot(u_xlat8.zxy, u_xlat3.xzw); u_xlat4.w = dot(u_xlat11.zxy, u_xlat3.xzw); u_xlat3.x = dot(u_xlat7.zxy, u_xlat3.xzw); outVertices0_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat10.x)); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat10.y)); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat10.z)); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat10.w)); outVertices0_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat4.x)); outVertices0_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat4.y)); outVertices0_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat4.z)); outVertices0_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat4.w)); outVertices0_buf[u_xlatu0].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat3.x)); outVertices0_buf[u_xlatu0].value[(32 >> 2) + 1] = uint(floatBitsToUint(u_xlat3.y)); } } } } } } return; } @A batchMainComputeSkinCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4inSkin0inSkin1inSkin2inSkin3inSkin4 inMatrices  outVertices0 outVertices1 outVertices2 outVertices3 outVertices4f#version 310 es #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif UNITY_BINDING(0) uniform ComputeSkinCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; uvec4 g_PoseOffsets[2]; uint g_poseBufferMaxIndex; }; struct inVertices0_type { uint[3] value; }; layout(std430, binding = 5) readonly buffer inVertices0 { inVertices0_type inVertices0_buf[]; }; struct inVertices1_type { uint[3] value; }; layout(std430, binding = 6) readonly buffer inVertices1 { inVertices1_type inVertices1_buf[]; }; struct inVertices2_type { uint[3] value; }; layout(std430, binding = 7) readonly buffer inVertices2 { inVertices2_type inVertices2_buf[]; }; struct inVertices3_type { uint[3] value; }; layout(std430, binding = 8) readonly buffer inVertices3 { inVertices3_type inVertices3_buf[]; }; struct inVertices4_type { uint[3] value; }; layout(std430, binding = 9) readonly buffer inVertices4 { inVertices4_type inVertices4_buf[]; }; struct inSkin0_type { uint[4] value; }; layout(std430, binding = 10) readonly buffer inSkin0 { inSkin0_type inSkin0_buf[]; }; struct inSkin1_type { uint[4] value; }; layout(std430, binding = 11) readonly buffer inSkin1 { inSkin1_type inSkin1_buf[]; }; struct inSkin2_type { uint[4] value; }; layout(std430, binding = 12) readonly buffer inSkin2 { inSkin2_type inSkin2_buf[]; }; struct inSkin3_type { uint[4] value; }; layout(std430, binding = 13) readonly buffer inSkin3 { inSkin3_type inSkin3_buf[]; }; struct inSkin4_type { uint[4] value; }; layout(std430, binding = 14) readonly buffer inSkin4 { inSkin4_type inSkin4_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 15) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct outVertices0_type { uint[3] value; }; layout(std430, binding = 0) buffer outVertices0 { outVertices0_type outVertices0_buf[]; }; struct outVertices1_type { uint[3] value; }; layout(std430, binding = 1) buffer outVertices1 { outVertices1_type outVertices1_buf[]; }; struct outVertices2_type { uint[3] value; }; layout(std430, binding = 2) buffer outVertices2 { outVertices2_type outVertices2_buf[]; }; struct outVertices3_type { uint[3] value; }; layout(std430, binding = 3) buffer outVertices3 { outVertices3_type outVertices3_buf[]; }; struct outVertices4_type { uint[3] value; }; layout(std430, binding = 4) buffer outVertices4 { outVertices4_type outVertices4_buf[]; }; uint u_xlatu0; bool u_xlatb0; vec4 u_xlat1; vec4 u_xlat2; vec4 u_xlat3; vec4 u_xlat4; vec4 u_xlat5; vec4 u_xlat6; vec4 u_xlat7; vec4 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; vec4 u_xlat11; ivec2 u_xlati12; bool u_xlatb12; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati12.xy = floatBitsToInt(u_xlat2.zw) + ivec2(g_PoseOffsets[1].xx); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat3.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.x = u_xlat3.y; u_xlat8.y = u_xlat4.y; u_xlat8.z = u_xlat5.y; u_xlat8.w = u_xlat6.y; u_xlat6.x = u_xlat3.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat3.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat10 = u_xlat2.yyyy * u_xlat10; u_xlat11.x = u_xlat3.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat11 = u_xlat2.yyyy * u_xlat11; u_xlat9.x = u_xlat3.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat3 = u_xlat2.yyyy * u_xlat9; u_xlat4 = u_xlat7 * u_xlat2.xxxx + u_xlat10; u_xlat5 = u_xlat8 * u_xlat2.xxxx + u_xlat11; u_xlat2 = u_xlat6 * u_xlat2.xxxx + u_xlat3; u_xlat1.w = 1.0; u_xlat3.x = dot(u_xlat4, u_xlat1); u_xlat3.y = dot(u_xlat5, u_xlat1); u_xlat3.z = dot(u_xlat2, u_xlat1); outVertices4_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat3.x)); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat3.y)); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat3.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati12.xy = floatBitsToInt(u_xlat2.zw) + ivec2(g_PoseOffsets[0].ww); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat3.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.x = u_xlat3.y; u_xlat8.y = u_xlat4.y; u_xlat8.z = u_xlat5.y; u_xlat8.w = u_xlat6.y; u_xlat6.x = u_xlat3.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat3.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat10 = u_xlat2.yyyy * u_xlat10; u_xlat11.x = u_xlat3.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat11 = u_xlat2.yyyy * u_xlat11; u_xlat9.x = u_xlat3.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat3 = u_xlat2.yyyy * u_xlat9; u_xlat4 = u_xlat7 * u_xlat2.xxxx + u_xlat10; u_xlat5 = u_xlat8 * u_xlat2.xxxx + u_xlat11; u_xlat2 = u_xlat6 * u_xlat2.xxxx + u_xlat3; u_xlat1.w = 1.0; u_xlat3.x = dot(u_xlat4, u_xlat1); u_xlat3.y = dot(u_xlat5, u_xlat1); u_xlat3.z = dot(u_xlat2, u_xlat1); outVertices3_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat3.x)); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat3.y)); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat3.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati12.xy = floatBitsToInt(u_xlat2.zw) + ivec2(g_PoseOffsets[0].zz); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat3.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.x = u_xlat3.y; u_xlat8.y = u_xlat4.y; u_xlat8.z = u_xlat5.y; u_xlat8.w = u_xlat6.y; u_xlat6.x = u_xlat3.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat3.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat10 = u_xlat2.yyyy * u_xlat10; u_xlat11.x = u_xlat3.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat11 = u_xlat2.yyyy * u_xlat11; u_xlat9.x = u_xlat3.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat3 = u_xlat2.yyyy * u_xlat9; u_xlat4 = u_xlat7 * u_xlat2.xxxx + u_xlat10; u_xlat5 = u_xlat8 * u_xlat2.xxxx + u_xlat11; u_xlat2 = u_xlat6 * u_xlat2.xxxx + u_xlat3; u_xlat1.w = 1.0; u_xlat3.x = dot(u_xlat4, u_xlat1); u_xlat3.y = dot(u_xlat5, u_xlat1); u_xlat3.z = dot(u_xlat2, u_xlat1); outVertices2_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat3.x)); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat3.y)); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat3.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati12.xy = floatBitsToInt(u_xlat2.zw) + ivec2(g_PoseOffsets[0].yy); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat3.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.x = u_xlat3.y; u_xlat8.y = u_xlat4.y; u_xlat8.z = u_xlat5.y; u_xlat8.w = u_xlat6.y; u_xlat6.x = u_xlat3.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat3.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat10 = u_xlat2.yyyy * u_xlat10; u_xlat11.x = u_xlat3.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat11 = u_xlat2.yyyy * u_xlat11; u_xlat9.x = u_xlat3.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat3 = u_xlat2.yyyy * u_xlat9; u_xlat4 = u_xlat7 * u_xlat2.xxxx + u_xlat10; u_xlat5 = u_xlat8 * u_xlat2.xxxx + u_xlat11; u_xlat2 = u_xlat6 * u_xlat2.xxxx + u_xlat3; u_xlat1.w = 1.0; u_xlat3.x = dot(u_xlat4, u_xlat1); u_xlat3.y = dot(u_xlat5, u_xlat1); u_xlat3.z = dot(u_xlat2, u_xlat1); outVertices1_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat3.x)); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat3.y)); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat3.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati12.xy = floatBitsToInt(u_xlat2.zw) + ivec2(g_PoseOffsets[0].xx); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat3.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.x = u_xlat3.y; u_xlat8.y = u_xlat4.y; u_xlat8.z = u_xlat5.y; u_xlat8.w = u_xlat6.y; u_xlat6.x = u_xlat3.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat3.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat10 = u_xlat2.yyyy * u_xlat10; u_xlat11.x = u_xlat3.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat11 = u_xlat2.yyyy * u_xlat11; u_xlat9.x = u_xlat3.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat3 = u_xlat2.yyyy * u_xlat9; u_xlat4 = u_xlat7 * u_xlat2.xxxx + u_xlat10; u_xlat5 = u_xlat8 * u_xlat2.xxxx + u_xlat11; u_xlat2 = u_xlat6 * u_xlat2.xxxx + u_xlat3; u_xlat1.w = 1.0; u_xlat3.x = dot(u_xlat4, u_xlat1); u_xlat3.y = dot(u_xlat5, u_xlat1); u_xlat3.z = dot(u_xlat2, u_xlat1); outVertices0_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat3.x)); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat3.y)); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat3.z)); } } } } } } return; } @A batchMainComputeSkinCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4inSkin0inSkin1inSkin2inSkin3inSkin4 inMatrices  outVertices0 outVertices1 outVertices2 outVertices3 outVertices4w#version 310 es #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif UNITY_BINDING(0) uniform ComputeSkinCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; uvec4 g_PoseOffsets[2]; uint g_poseBufferMaxIndex; }; struct inVertices0_type { uint[6] value; }; layout(std430, binding = 5) readonly buffer inVertices0 { inVertices0_type inVertices0_buf[]; }; struct inVertices1_type { uint[6] value; }; layout(std430, binding = 6) readonly buffer inVertices1 { inVertices1_type inVertices1_buf[]; }; struct inVertices2_type { uint[6] value; }; layout(std430, binding = 7) readonly buffer inVertices2 { inVertices2_type inVertices2_buf[]; }; struct inVertices3_type { uint[6] value; }; layout(std430, binding = 8) readonly buffer inVertices3 { inVertices3_type inVertices3_buf[]; }; struct inVertices4_type { uint[6] value; }; layout(std430, binding = 9) readonly buffer inVertices4 { inVertices4_type inVertices4_buf[]; }; struct inSkin0_type { uint[4] value; }; layout(std430, binding = 10) readonly buffer inSkin0 { inSkin0_type inSkin0_buf[]; }; struct inSkin1_type { uint[4] value; }; layout(std430, binding = 11) readonly buffer inSkin1 { inSkin1_type inSkin1_buf[]; }; struct inSkin2_type { uint[4] value; }; layout(std430, binding = 12) readonly buffer inSkin2 { inSkin2_type inSkin2_buf[]; }; struct inSkin3_type { uint[4] value; }; layout(std430, binding = 13) readonly buffer inSkin3 { inSkin3_type inSkin3_buf[]; }; struct inSkin4_type { uint[4] value; }; layout(std430, binding = 14) readonly buffer inSkin4 { inSkin4_type inSkin4_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 15) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct outVertices0_type { uint[6] value; }; layout(std430, binding = 0) buffer outVertices0 { outVertices0_type outVertices0_buf[]; }; struct outVertices1_type { uint[6] value; }; layout(std430, binding = 1) buffer outVertices1 { outVertices1_type outVertices1_buf[]; }; struct outVertices2_type { uint[6] value; }; layout(std430, binding = 2) buffer outVertices2 { outVertices2_type outVertices2_buf[]; }; struct outVertices3_type { uint[6] value; }; layout(std430, binding = 3) buffer outVertices3 { outVertices3_type outVertices3_buf[]; }; struct outVertices4_type { uint[6] value; }; layout(std430, binding = 4) buffer outVertices4 { outVertices4_type outVertices4_buf[]; }; uint u_xlatu0; bool u_xlatb0; vec4 u_xlat1; vec3 u_xlat2; vec4 u_xlat3; vec4 u_xlat4; vec4 u_xlat5; vec4 u_xlat6; vec4 u_xlat7; vec4 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; vec4 u_xlat11; vec4 u_xlat12; ivec2 u_xlati13; bool u_xlatb13; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb13 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati13.xy = floatBitsToInt(u_xlat3.zw) + ivec2(g_PoseOffsets[1].xx); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat4.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat4.y; u_xlat9.y = u_xlat5.y; u_xlat9.z = u_xlat6.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat4.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat4.x; u_xlat11.y = u_xlat5.x; u_xlat11.z = u_xlat6.x; u_xlat11.w = u_xlat10.x; u_xlat11 = u_xlat3.yyyy * u_xlat11; u_xlat12.x = u_xlat4.y; u_xlat12.y = u_xlat5.y; u_xlat12.z = u_xlat6.y; u_xlat12.w = u_xlat10.y; u_xlat12 = u_xlat3.yyyy * u_xlat12; u_xlat10.x = u_xlat4.z; u_xlat10.y = u_xlat5.z; u_xlat10.z = u_xlat6.z; u_xlat4 = u_xlat3.yyyy * u_xlat10; u_xlat5 = u_xlat8 * u_xlat3.xxxx + u_xlat11; u_xlat6 = u_xlat9 * u_xlat3.xxxx + u_xlat12; u_xlat3 = u_xlat7 * u_xlat3.xxxx + u_xlat4; u_xlat4.xyz = u_xlat1.xyz; u_xlat4.w = 1.0; u_xlat7.x = dot(u_xlat5, u_xlat4); u_xlat7.y = dot(u_xlat6, u_xlat4); u_xlat7.z = dot(u_xlat3, u_xlat4); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat5.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat6.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat3.yzx, u_xlat2.xyz); outVertices4_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat7.x)); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat7.y)); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat7.z)); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat7.w)); outVertices4_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat1.x)); outVertices4_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat1.y)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb13 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati13.xy = floatBitsToInt(u_xlat3.zw) + ivec2(g_PoseOffsets[0].ww); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat4.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat4.y; u_xlat9.y = u_xlat5.y; u_xlat9.z = u_xlat6.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat4.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat4.x; u_xlat11.y = u_xlat5.x; u_xlat11.z = u_xlat6.x; u_xlat11.w = u_xlat10.x; u_xlat11 = u_xlat3.yyyy * u_xlat11; u_xlat12.x = u_xlat4.y; u_xlat12.y = u_xlat5.y; u_xlat12.z = u_xlat6.y; u_xlat12.w = u_xlat10.y; u_xlat12 = u_xlat3.yyyy * u_xlat12; u_xlat10.x = u_xlat4.z; u_xlat10.y = u_xlat5.z; u_xlat10.z = u_xlat6.z; u_xlat4 = u_xlat3.yyyy * u_xlat10; u_xlat5 = u_xlat8 * u_xlat3.xxxx + u_xlat11; u_xlat6 = u_xlat9 * u_xlat3.xxxx + u_xlat12; u_xlat3 = u_xlat7 * u_xlat3.xxxx + u_xlat4; u_xlat4.xyz = u_xlat1.xyz; u_xlat4.w = 1.0; u_xlat7.x = dot(u_xlat5, u_xlat4); u_xlat7.y = dot(u_xlat6, u_xlat4); u_xlat7.z = dot(u_xlat3, u_xlat4); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat5.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat6.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat3.yzx, u_xlat2.xyz); outVertices3_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat7.x)); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat7.y)); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat7.z)); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat7.w)); outVertices3_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat1.x)); outVertices3_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat1.y)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb13 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati13.xy = floatBitsToInt(u_xlat3.zw) + ivec2(g_PoseOffsets[0].zz); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat4.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat4.y; u_xlat9.y = u_xlat5.y; u_xlat9.z = u_xlat6.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat4.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat4.x; u_xlat11.y = u_xlat5.x; u_xlat11.z = u_xlat6.x; u_xlat11.w = u_xlat10.x; u_xlat11 = u_xlat3.yyyy * u_xlat11; u_xlat12.x = u_xlat4.y; u_xlat12.y = u_xlat5.y; u_xlat12.z = u_xlat6.y; u_xlat12.w = u_xlat10.y; u_xlat12 = u_xlat3.yyyy * u_xlat12; u_xlat10.x = u_xlat4.z; u_xlat10.y = u_xlat5.z; u_xlat10.z = u_xlat6.z; u_xlat4 = u_xlat3.yyyy * u_xlat10; u_xlat5 = u_xlat8 * u_xlat3.xxxx + u_xlat11; u_xlat6 = u_xlat9 * u_xlat3.xxxx + u_xlat12; u_xlat3 = u_xlat7 * u_xlat3.xxxx + u_xlat4; u_xlat4.xyz = u_xlat1.xyz; u_xlat4.w = 1.0; u_xlat7.x = dot(u_xlat5, u_xlat4); u_xlat7.y = dot(u_xlat6, u_xlat4); u_xlat7.z = dot(u_xlat3, u_xlat4); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat5.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat6.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat3.yzx, u_xlat2.xyz); outVertices2_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat7.x)); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat7.y)); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat7.z)); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat7.w)); outVertices2_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat1.x)); outVertices2_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat1.y)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb13 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati13.xy = floatBitsToInt(u_xlat3.zw) + ivec2(g_PoseOffsets[0].yy); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat4.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat4.y; u_xlat9.y = u_xlat5.y; u_xlat9.z = u_xlat6.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat4.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat4.x; u_xlat11.y = u_xlat5.x; u_xlat11.z = u_xlat6.x; u_xlat11.w = u_xlat10.x; u_xlat11 = u_xlat3.yyyy * u_xlat11; u_xlat12.x = u_xlat4.y; u_xlat12.y = u_xlat5.y; u_xlat12.z = u_xlat6.y; u_xlat12.w = u_xlat10.y; u_xlat12 = u_xlat3.yyyy * u_xlat12; u_xlat10.x = u_xlat4.z; u_xlat10.y = u_xlat5.z; u_xlat10.z = u_xlat6.z; u_xlat4 = u_xlat3.yyyy * u_xlat10; u_xlat5 = u_xlat8 * u_xlat3.xxxx + u_xlat11; u_xlat6 = u_xlat9 * u_xlat3.xxxx + u_xlat12; u_xlat3 = u_xlat7 * u_xlat3.xxxx + u_xlat4; u_xlat4.xyz = u_xlat1.xyz; u_xlat4.w = 1.0; u_xlat7.x = dot(u_xlat5, u_xlat4); u_xlat7.y = dot(u_xlat6, u_xlat4); u_xlat7.z = dot(u_xlat3, u_xlat4); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat5.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat6.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat3.yzx, u_xlat2.xyz); outVertices1_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat7.x)); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat7.y)); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat7.z)); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat7.w)); outVertices1_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat1.x)); outVertices1_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat1.y)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb13 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati13.xy = floatBitsToInt(u_xlat3.zw) + ivec2(g_PoseOffsets[0].xx); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat4.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat4.y; u_xlat9.y = u_xlat5.y; u_xlat9.z = u_xlat6.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat4.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat4.x; u_xlat11.y = u_xlat5.x; u_xlat11.z = u_xlat6.x; u_xlat11.w = u_xlat10.x; u_xlat11 = u_xlat3.yyyy * u_xlat11; u_xlat12.x = u_xlat4.y; u_xlat12.y = u_xlat5.y; u_xlat12.z = u_xlat6.y; u_xlat12.w = u_xlat10.y; u_xlat12 = u_xlat3.yyyy * u_xlat12; u_xlat10.x = u_xlat4.z; u_xlat10.y = u_xlat5.z; u_xlat10.z = u_xlat6.z; u_xlat4 = u_xlat3.yyyy * u_xlat10; u_xlat5 = u_xlat8 * u_xlat3.xxxx + u_xlat11; u_xlat6 = u_xlat9 * u_xlat3.xxxx + u_xlat12; u_xlat3 = u_xlat7 * u_xlat3.xxxx + u_xlat4; u_xlat4.xyz = u_xlat1.xyz; u_xlat4.w = 1.0; u_xlat7.x = dot(u_xlat5, u_xlat4); u_xlat7.y = dot(u_xlat6, u_xlat4); u_xlat7.z = dot(u_xlat3, u_xlat4); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat5.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat6.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat3.yzx, u_xlat2.xyz); outVertices0_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat7.x)); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat7.y)); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat7.z)); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat7.w)); outVertices0_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat1.x)); outVertices0_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat1.y)); } } } } } } return; } @A batchMainComputeSkinCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4inSkin0inSkin1inSkin2inSkin3inSkin4 inMatrices  outVertices0 outVertices1 outVertices2 outVertices3 outVertices4#version 310 es #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif UNITY_BINDING(0) uniform ComputeSkinCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; uvec4 g_PoseOffsets[2]; uint g_poseBufferMaxIndex; }; struct inVertices0_type { uint[10] value; }; layout(std430, binding = 5) readonly buffer inVertices0 { inVertices0_type inVertices0_buf[]; }; struct inVertices1_type { uint[10] value; }; layout(std430, binding = 6) readonly buffer inVertices1 { inVertices1_type inVertices1_buf[]; }; struct inVertices2_type { uint[10] value; }; layout(std430, binding = 7) readonly buffer inVertices2 { inVertices2_type inVertices2_buf[]; }; struct inVertices3_type { uint[10] value; }; layout(std430, binding = 8) readonly buffer inVertices3 { inVertices3_type inVertices3_buf[]; }; struct inVertices4_type { uint[10] value; }; layout(std430, binding = 9) readonly buffer inVertices4 { inVertices4_type inVertices4_buf[]; }; struct inSkin0_type { uint[4] value; }; layout(std430, binding = 10) readonly buffer inSkin0 { inSkin0_type inSkin0_buf[]; }; struct inSkin1_type { uint[4] value; }; layout(std430, binding = 11) readonly buffer inSkin1 { inSkin1_type inSkin1_buf[]; }; struct inSkin2_type { uint[4] value; }; layout(std430, binding = 12) readonly buffer inSkin2 { inSkin2_type inSkin2_buf[]; }; struct inSkin3_type { uint[4] value; }; layout(std430, binding = 13) readonly buffer inSkin3 { inSkin3_type inSkin3_buf[]; }; struct inSkin4_type { uint[4] value; }; layout(std430, binding = 14) readonly buffer inSkin4 { inSkin4_type inSkin4_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 15) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct outVertices0_type { uint[10] value; }; layout(std430, binding = 0) buffer outVertices0 { outVertices0_type outVertices0_buf[]; }; struct outVertices1_type { uint[10] value; }; layout(std430, binding = 1) buffer outVertices1 { outVertices1_type outVertices1_buf[]; }; struct outVertices2_type { uint[10] value; }; layout(std430, binding = 2) buffer outVertices2 { outVertices2_type outVertices2_buf[]; }; struct outVertices3_type { uint[10] value; }; layout(std430, binding = 3) buffer outVertices3 { outVertices3_type outVertices3_buf[]; }; struct outVertices4_type { uint[10] value; }; layout(std430, binding = 4) buffer outVertices4 { outVertices4_type outVertices4_buf[]; }; uint u_xlatu0; bool u_xlatb0; vec4 u_xlat1; vec4 u_xlat2; vec4 u_xlat3; vec4 u_xlat4; vec4 u_xlat5; vec4 u_xlat6; vec4 u_xlat7; vec4 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; vec4 u_xlat11; vec4 u_xlat12; vec4 u_xlat13; ivec2 u_xlati14; bool u_xlatb14; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb14 = u_xlatu0> 2) + 3]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.xy = vec2(uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(32 >> 2) + 0]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(32 >> 2) + 1])); u_xlat4 = vec4(uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati14.xy = floatBitsToInt(u_xlat4.zw) + ivec2(g_PoseOffsets[1].xx); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat5.x; u_xlat9.y = u_xlat6.x; u_xlat9.z = u_xlat7.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat5.y; u_xlat10.y = u_xlat6.y; u_xlat10.z = u_xlat7.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat5.z; u_xlat8.y = u_xlat6.z; u_xlat8.z = u_xlat7.z; u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat5.x; u_xlat12.y = u_xlat6.x; u_xlat12.z = u_xlat7.x; u_xlat12.w = u_xlat11.x; u_xlat12 = u_xlat4.yyyy * u_xlat12; u_xlat13.x = u_xlat5.y; u_xlat13.y = u_xlat6.y; u_xlat13.z = u_xlat7.y; u_xlat13.w = u_xlat11.y; u_xlat13 = u_xlat4.yyyy * u_xlat13; u_xlat11.x = u_xlat5.z; u_xlat11.y = u_xlat6.z; u_xlat11.z = u_xlat7.z; u_xlat5 = u_xlat4.yyyy * u_xlat11; u_xlat6 = u_xlat9 * u_xlat4.xxxx + u_xlat12; u_xlat7 = u_xlat10 * u_xlat4.xxxx + u_xlat13; u_xlat4 = u_xlat8 * u_xlat4.xxxx + u_xlat5; u_xlat5.xyz = u_xlat1.yzw; u_xlat5.w = 1.0; u_xlat8.x = dot(u_xlat6, u_xlat5); u_xlat8.y = dot(u_xlat7, u_xlat5); u_xlat8.z = dot(u_xlat4, u_xlat5); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat6.xyz, u_xlat1.xyz); u_xlat5.x = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat5.y = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat3.zw = u_xlat2.zw; u_xlat5.z = dot(u_xlat6.zxy, u_xlat3.xzw); u_xlat5.w = dot(u_xlat7.zxy, u_xlat3.xzw); u_xlat3.x = dot(u_xlat4.zxy, u_xlat3.xzw); outVertices4_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat8.x)); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat8.y)); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat8.z)); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat8.w)); outVertices4_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat5.x)); outVertices4_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat5.y)); outVertices4_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat5.z)); outVertices4_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat5.w)); outVertices4_buf[u_xlatu0].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat3.x)); outVertices4_buf[u_xlatu0].value[(32 >> 2) + 1] = uint(floatBitsToUint(u_xlat3.y)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb14 = u_xlatu0> 2) + 3]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.xy = vec2(uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(32 >> 2) + 0]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(32 >> 2) + 1])); u_xlat4 = vec4(uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati14.xy = floatBitsToInt(u_xlat4.zw) + ivec2(g_PoseOffsets[0].ww); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat5.x; u_xlat9.y = u_xlat6.x; u_xlat9.z = u_xlat7.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat5.y; u_xlat10.y = u_xlat6.y; u_xlat10.z = u_xlat7.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat5.z; u_xlat8.y = u_xlat6.z; u_xlat8.z = u_xlat7.z; u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat5.x; u_xlat12.y = u_xlat6.x; u_xlat12.z = u_xlat7.x; u_xlat12.w = u_xlat11.x; u_xlat12 = u_xlat4.yyyy * u_xlat12; u_xlat13.x = u_xlat5.y; u_xlat13.y = u_xlat6.y; u_xlat13.z = u_xlat7.y; u_xlat13.w = u_xlat11.y; u_xlat13 = u_xlat4.yyyy * u_xlat13; u_xlat11.x = u_xlat5.z; u_xlat11.y = u_xlat6.z; u_xlat11.z = u_xlat7.z; u_xlat5 = u_xlat4.yyyy * u_xlat11; u_xlat6 = u_xlat9 * u_xlat4.xxxx + u_xlat12; u_xlat7 = u_xlat10 * u_xlat4.xxxx + u_xlat13; u_xlat4 = u_xlat8 * u_xlat4.xxxx + u_xlat5; u_xlat5.xyz = u_xlat1.yzw; u_xlat5.w = 1.0; u_xlat8.x = dot(u_xlat6, u_xlat5); u_xlat8.y = dot(u_xlat7, u_xlat5); u_xlat8.z = dot(u_xlat4, u_xlat5); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat6.xyz, u_xlat1.xyz); u_xlat5.x = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat5.y = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat3.zw = u_xlat2.zw; u_xlat5.z = dot(u_xlat6.zxy, u_xlat3.xzw); u_xlat5.w = dot(u_xlat7.zxy, u_xlat3.xzw); u_xlat3.x = dot(u_xlat4.zxy, u_xlat3.xzw); outVertices3_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat8.x)); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat8.y)); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat8.z)); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat8.w)); outVertices3_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat5.x)); outVertices3_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat5.y)); outVertices3_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat5.z)); outVertices3_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat5.w)); outVertices3_buf[u_xlatu0].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat3.x)); outVertices3_buf[u_xlatu0].value[(32 >> 2) + 1] = uint(floatBitsToUint(u_xlat3.y)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb14 = u_xlatu0> 2) + 3]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.xy = vec2(uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(32 >> 2) + 0]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(32 >> 2) + 1])); u_xlat4 = vec4(uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati14.xy = floatBitsToInt(u_xlat4.zw) + ivec2(g_PoseOffsets[0].zz); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat5.x; u_xlat9.y = u_xlat6.x; u_xlat9.z = u_xlat7.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat5.y; u_xlat10.y = u_xlat6.y; u_xlat10.z = u_xlat7.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat5.z; u_xlat8.y = u_xlat6.z; u_xlat8.z = u_xlat7.z; u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat5.x; u_xlat12.y = u_xlat6.x; u_xlat12.z = u_xlat7.x; u_xlat12.w = u_xlat11.x; u_xlat12 = u_xlat4.yyyy * u_xlat12; u_xlat13.x = u_xlat5.y; u_xlat13.y = u_xlat6.y; u_xlat13.z = u_xlat7.y; u_xlat13.w = u_xlat11.y; u_xlat13 = u_xlat4.yyyy * u_xlat13; u_xlat11.x = u_xlat5.z; u_xlat11.y = u_xlat6.z; u_xlat11.z = u_xlat7.z; u_xlat5 = u_xlat4.yyyy * u_xlat11; u_xlat6 = u_xlat9 * u_xlat4.xxxx + u_xlat12; u_xlat7 = u_xlat10 * u_xlat4.xxxx + u_xlat13; u_xlat4 = u_xlat8 * u_xlat4.xxxx + u_xlat5; u_xlat5.xyz = u_xlat1.yzw; u_xlat5.w = 1.0; u_xlat8.x = dot(u_xlat6, u_xlat5); u_xlat8.y = dot(u_xlat7, u_xlat5); u_xlat8.z = dot(u_xlat4, u_xlat5); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat6.xyz, u_xlat1.xyz); u_xlat5.x = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat5.y = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat3.zw = u_xlat2.zw; u_xlat5.z = dot(u_xlat6.zxy, u_xlat3.xzw); u_xlat5.w = dot(u_xlat7.zxy, u_xlat3.xzw); u_xlat3.x = dot(u_xlat4.zxy, u_xlat3.xzw); outVertices2_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat8.x)); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat8.y)); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat8.z)); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat8.w)); outVertices2_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat5.x)); outVertices2_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat5.y)); outVertices2_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat5.z)); outVertices2_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat5.w)); outVertices2_buf[u_xlatu0].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat3.x)); outVertices2_buf[u_xlatu0].value[(32 >> 2) + 1] = uint(floatBitsToUint(u_xlat3.y)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb14 = u_xlatu0> 2) + 3]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.xy = vec2(uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(32 >> 2) + 0]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(32 >> 2) + 1])); u_xlat4 = vec4(uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati14.xy = floatBitsToInt(u_xlat4.zw) + ivec2(g_PoseOffsets[0].yy); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat5.x; u_xlat9.y = u_xlat6.x; u_xlat9.z = u_xlat7.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat5.y; u_xlat10.y = u_xlat6.y; u_xlat10.z = u_xlat7.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat5.z; u_xlat8.y = u_xlat6.z; u_xlat8.z = u_xlat7.z; u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat5.x; u_xlat12.y = u_xlat6.x; u_xlat12.z = u_xlat7.x; u_xlat12.w = u_xlat11.x; u_xlat12 = u_xlat4.yyyy * u_xlat12; u_xlat13.x = u_xlat5.y; u_xlat13.y = u_xlat6.y; u_xlat13.z = u_xlat7.y; u_xlat13.w = u_xlat11.y; u_xlat13 = u_xlat4.yyyy * u_xlat13; u_xlat11.x = u_xlat5.z; u_xlat11.y = u_xlat6.z; u_xlat11.z = u_xlat7.z; u_xlat5 = u_xlat4.yyyy * u_xlat11; u_xlat6 = u_xlat9 * u_xlat4.xxxx + u_xlat12; u_xlat7 = u_xlat10 * u_xlat4.xxxx + u_xlat13; u_xlat4 = u_xlat8 * u_xlat4.xxxx + u_xlat5; u_xlat5.xyz = u_xlat1.yzw; u_xlat5.w = 1.0; u_xlat8.x = dot(u_xlat6, u_xlat5); u_xlat8.y = dot(u_xlat7, u_xlat5); u_xlat8.z = dot(u_xlat4, u_xlat5); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat6.xyz, u_xlat1.xyz); u_xlat5.x = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat5.y = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat3.zw = u_xlat2.zw; u_xlat5.z = dot(u_xlat6.zxy, u_xlat3.xzw); u_xlat5.w = dot(u_xlat7.zxy, u_xlat3.xzw); u_xlat3.x = dot(u_xlat4.zxy, u_xlat3.xzw); outVertices1_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat8.x)); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat8.y)); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat8.z)); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat8.w)); outVertices1_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat5.x)); outVertices1_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat5.y)); outVertices1_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat5.z)); outVertices1_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat5.w)); outVertices1_buf[u_xlatu0].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat3.x)); outVertices1_buf[u_xlatu0].value[(32 >> 2) + 1] = uint(floatBitsToUint(u_xlat3.y)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb14 = u_xlatu0> 2) + 3]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.xy = vec2(uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(32 >> 2) + 0]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(32 >> 2) + 1])); u_xlat4 = vec4(uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati14.xy = floatBitsToInt(u_xlat4.zw) + ivec2(g_PoseOffsets[0].xx); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat5.x; u_xlat9.y = u_xlat6.x; u_xlat9.z = u_xlat7.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat5.y; u_xlat10.y = u_xlat6.y; u_xlat10.z = u_xlat7.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat5.z; u_xlat8.y = u_xlat6.z; u_xlat8.z = u_xlat7.z; u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat5.x; u_xlat12.y = u_xlat6.x; u_xlat12.z = u_xlat7.x; u_xlat12.w = u_xlat11.x; u_xlat12 = u_xlat4.yyyy * u_xlat12; u_xlat13.x = u_xlat5.y; u_xlat13.y = u_xlat6.y; u_xlat13.z = u_xlat7.y; u_xlat13.w = u_xlat11.y; u_xlat13 = u_xlat4.yyyy * u_xlat13; u_xlat11.x = u_xlat5.z; u_xlat11.y = u_xlat6.z; u_xlat11.z = u_xlat7.z; u_xlat5 = u_xlat4.yyyy * u_xlat11; u_xlat6 = u_xlat9 * u_xlat4.xxxx + u_xlat12; u_xlat7 = u_xlat10 * u_xlat4.xxxx + u_xlat13; u_xlat4 = u_xlat8 * u_xlat4.xxxx + u_xlat5; u_xlat5.xyz = u_xlat1.yzw; u_xlat5.w = 1.0; u_xlat8.x = dot(u_xlat6, u_xlat5); u_xlat8.y = dot(u_xlat7, u_xlat5); u_xlat8.z = dot(u_xlat4, u_xlat5); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat6.xyz, u_xlat1.xyz); u_xlat5.x = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat5.y = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat3.zw = u_xlat2.zw; u_xlat5.z = dot(u_xlat6.zxy, u_xlat3.xzw); u_xlat5.w = dot(u_xlat7.zxy, u_xlat3.xzw); u_xlat3.x = dot(u_xlat4.zxy, u_xlat3.xzw); outVertices0_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat8.x)); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat8.y)); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat8.z)); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat8.w)); outVertices0_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat5.x)); outVertices0_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat5.y)); outVertices0_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat5.z)); outVertices0_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat5.w)); outVertices0_buf[u_xlatu0].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat3.x)); outVertices0_buf[u_xlatu0].value[(32 >> 2) + 1] = uint(floatBitsToUint(u_xlat3.y)); } } } } } } return; } @A batchMainComputeSkinCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4inSkin0inSkin1inSkin2inSkin3inSkin4 inMatrices  outVertices0 outVertices1 outVertices2 outVertices3 outVertices49#version 310 es #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif UNITY_BINDING(0) uniform ComputeSkinCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; uvec4 g_PoseOffsets[2]; uint g_poseBufferMaxIndex; }; struct inVertices0_type { uint[3] value; }; layout(std430, binding = 5) readonly buffer inVertices0 { inVertices0_type inVertices0_buf[]; }; struct inVertices1_type { uint[3] value; }; layout(std430, binding = 6) readonly buffer inVertices1 { inVertices1_type inVertices1_buf[]; }; struct inVertices2_type { uint[3] value; }; layout(std430, binding = 7) readonly buffer inVertices2 { inVertices2_type inVertices2_buf[]; }; struct inVertices3_type { uint[3] value; }; layout(std430, binding = 8) readonly buffer inVertices3 { inVertices3_type inVertices3_buf[]; }; struct inVertices4_type { uint[3] value; }; layout(std430, binding = 9) readonly buffer inVertices4 { inVertices4_type inVertices4_buf[]; }; struct inSkin0_type { uint[8] value; }; layout(std430, binding = 10) readonly buffer inSkin0 { inSkin0_type inSkin0_buf[]; }; struct inSkin1_type { uint[8] value; }; layout(std430, binding = 11) readonly buffer inSkin1 { inSkin1_type inSkin1_buf[]; }; struct inSkin2_type { uint[8] value; }; layout(std430, binding = 12) readonly buffer inSkin2 { inSkin2_type inSkin2_buf[]; }; struct inSkin3_type { uint[8] value; }; layout(std430, binding = 13) readonly buffer inSkin3 { inSkin3_type inSkin3_buf[]; }; struct inSkin4_type { uint[8] value; }; layout(std430, binding = 14) readonly buffer inSkin4 { inSkin4_type inSkin4_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 15) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct outVertices0_type { uint[3] value; }; layout(std430, binding = 0) buffer outVertices0 { outVertices0_type outVertices0_buf[]; }; struct outVertices1_type { uint[3] value; }; layout(std430, binding = 1) buffer outVertices1 { outVertices1_type outVertices1_buf[]; }; struct outVertices2_type { uint[3] value; }; layout(std430, binding = 2) buffer outVertices2 { outVertices2_type outVertices2_buf[]; }; struct outVertices3_type { uint[3] value; }; layout(std430, binding = 3) buffer outVertices3 { outVertices3_type outVertices3_buf[]; }; struct outVertices4_type { uint[3] value; }; layout(std430, binding = 4) buffer outVertices4 { outVertices4_type outVertices4_buf[]; }; uint u_xlatu0; bool u_xlatb0; vec4 u_xlat1; vec4 u_xlat2; vec4 u_xlat3; ivec4 u_xlati3; vec4 u_xlat4; vec4 u_xlat5; vec4 u_xlat6; vec4 u_xlat7; vec4 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; vec4 u_xlat11; vec3 u_xlat12; bool u_xlatb12; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati3 = ivec4(int(inSkin4_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin4_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin4_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin4_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati3 = u_xlati3 + ivec4(g_PoseOffsets[1].xxxx); u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat12.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.x = u_xlat12.y; u_xlat8.y = u_xlat4.y; u_xlat8.z = u_xlat5.y; u_xlat8.w = u_xlat6.y; u_xlat6.x = u_xlat12.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat12.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat10 = u_xlat2.yyyy * u_xlat10; u_xlat11.x = u_xlat12.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat11 = u_xlat2.yyyy * u_xlat11; u_xlat9.x = u_xlat12.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat4 = u_xlat2.yyyy * u_xlat9; u_xlat5 = u_xlat7 * u_xlat2.xxxx + u_xlat10; u_xlat7 = u_xlat8 * u_xlat2.xxxx + u_xlat11; u_xlat4 = u_xlat6 * u_xlat2.xxxx + u_xlat4; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat12.x; u_xlat10.y = u_xlat6.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat12.y; u_xlat11.y = u_xlat6.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat12.z; u_xlat9.y = u_xlat6.z; u_xlat9.z = u_xlat8.z; u_xlat5 = u_xlat10 * u_xlat2.zzzz + u_xlat5; u_xlat6 = u_xlat11 * u_xlat2.zzzz + u_xlat7; u_xlat4 = u_xlat9 * u_xlat2.zzzz + u_xlat4; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 2])); u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat12.x; u_xlat8.y = u_xlat2.x; u_xlat8.z = u_xlat3.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat12.y; u_xlat9.y = u_xlat2.y; u_xlat9.z = u_xlat3.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat12.z; u_xlat7.y = u_xlat2.z; u_xlat7.z = u_xlat3.z; u_xlat3 = u_xlat8 * u_xlat2.wwww + u_xlat5; u_xlat5 = u_xlat9 * u_xlat2.wwww + u_xlat6; u_xlat2 = u_xlat7 * u_xlat2.wwww + u_xlat4; u_xlat1.w = 1.0; u_xlat3.x = dot(u_xlat3, u_xlat1); u_xlat3.y = dot(u_xlat5, u_xlat1); u_xlat3.z = dot(u_xlat2, u_xlat1); outVertices4_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat3.x)); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat3.y)); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat3.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati3 = ivec4(int(inSkin3_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin3_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin3_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin3_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati3 = u_xlati3 + ivec4(g_PoseOffsets[0].wwww); u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat12.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.x = u_xlat12.y; u_xlat8.y = u_xlat4.y; u_xlat8.z = u_xlat5.y; u_xlat8.w = u_xlat6.y; u_xlat6.x = u_xlat12.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat12.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat10 = u_xlat2.yyyy * u_xlat10; u_xlat11.x = u_xlat12.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat11 = u_xlat2.yyyy * u_xlat11; u_xlat9.x = u_xlat12.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat4 = u_xlat2.yyyy * u_xlat9; u_xlat5 = u_xlat7 * u_xlat2.xxxx + u_xlat10; u_xlat7 = u_xlat8 * u_xlat2.xxxx + u_xlat11; u_xlat4 = u_xlat6 * u_xlat2.xxxx + u_xlat4; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat12.x; u_xlat10.y = u_xlat6.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat12.y; u_xlat11.y = u_xlat6.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat12.z; u_xlat9.y = u_xlat6.z; u_xlat9.z = u_xlat8.z; u_xlat5 = u_xlat10 * u_xlat2.zzzz + u_xlat5; u_xlat6 = u_xlat11 * u_xlat2.zzzz + u_xlat7; u_xlat4 = u_xlat9 * u_xlat2.zzzz + u_xlat4; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 2])); u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat12.x; u_xlat8.y = u_xlat2.x; u_xlat8.z = u_xlat3.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat12.y; u_xlat9.y = u_xlat2.y; u_xlat9.z = u_xlat3.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat12.z; u_xlat7.y = u_xlat2.z; u_xlat7.z = u_xlat3.z; u_xlat3 = u_xlat8 * u_xlat2.wwww + u_xlat5; u_xlat5 = u_xlat9 * u_xlat2.wwww + u_xlat6; u_xlat2 = u_xlat7 * u_xlat2.wwww + u_xlat4; u_xlat1.w = 1.0; u_xlat3.x = dot(u_xlat3, u_xlat1); u_xlat3.y = dot(u_xlat5, u_xlat1); u_xlat3.z = dot(u_xlat2, u_xlat1); outVertices3_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat3.x)); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat3.y)); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat3.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati3 = ivec4(int(inSkin2_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin2_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin2_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin2_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati3 = u_xlati3 + ivec4(g_PoseOffsets[0].zzzz); u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat12.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.x = u_xlat12.y; u_xlat8.y = u_xlat4.y; u_xlat8.z = u_xlat5.y; u_xlat8.w = u_xlat6.y; u_xlat6.x = u_xlat12.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat12.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat10 = u_xlat2.yyyy * u_xlat10; u_xlat11.x = u_xlat12.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat11 = u_xlat2.yyyy * u_xlat11; u_xlat9.x = u_xlat12.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat4 = u_xlat2.yyyy * u_xlat9; u_xlat5 = u_xlat7 * u_xlat2.xxxx + u_xlat10; u_xlat7 = u_xlat8 * u_xlat2.xxxx + u_xlat11; u_xlat4 = u_xlat6 * u_xlat2.xxxx + u_xlat4; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat12.x; u_xlat10.y = u_xlat6.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat12.y; u_xlat11.y = u_xlat6.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat12.z; u_xlat9.y = u_xlat6.z; u_xlat9.z = u_xlat8.z; u_xlat5 = u_xlat10 * u_xlat2.zzzz + u_xlat5; u_xlat6 = u_xlat11 * u_xlat2.zzzz + u_xlat7; u_xlat4 = u_xlat9 * u_xlat2.zzzz + u_xlat4; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 2])); u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat12.x; u_xlat8.y = u_xlat2.x; u_xlat8.z = u_xlat3.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat12.y; u_xlat9.y = u_xlat2.y; u_xlat9.z = u_xlat3.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat12.z; u_xlat7.y = u_xlat2.z; u_xlat7.z = u_xlat3.z; u_xlat3 = u_xlat8 * u_xlat2.wwww + u_xlat5; u_xlat5 = u_xlat9 * u_xlat2.wwww + u_xlat6; u_xlat2 = u_xlat7 * u_xlat2.wwww + u_xlat4; u_xlat1.w = 1.0; u_xlat3.x = dot(u_xlat3, u_xlat1); u_xlat3.y = dot(u_xlat5, u_xlat1); u_xlat3.z = dot(u_xlat2, u_xlat1); outVertices2_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat3.x)); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat3.y)); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat3.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati3 = ivec4(int(inSkin1_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin1_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin1_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin1_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati3 = u_xlati3 + ivec4(g_PoseOffsets[0].yyyy); u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat12.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.x = u_xlat12.y; u_xlat8.y = u_xlat4.y; u_xlat8.z = u_xlat5.y; u_xlat8.w = u_xlat6.y; u_xlat6.x = u_xlat12.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat12.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat10 = u_xlat2.yyyy * u_xlat10; u_xlat11.x = u_xlat12.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat11 = u_xlat2.yyyy * u_xlat11; u_xlat9.x = u_xlat12.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat4 = u_xlat2.yyyy * u_xlat9; u_xlat5 = u_xlat7 * u_xlat2.xxxx + u_xlat10; u_xlat7 = u_xlat8 * u_xlat2.xxxx + u_xlat11; u_xlat4 = u_xlat6 * u_xlat2.xxxx + u_xlat4; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat12.x; u_xlat10.y = u_xlat6.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat12.y; u_xlat11.y = u_xlat6.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat12.z; u_xlat9.y = u_xlat6.z; u_xlat9.z = u_xlat8.z; u_xlat5 = u_xlat10 * u_xlat2.zzzz + u_xlat5; u_xlat6 = u_xlat11 * u_xlat2.zzzz + u_xlat7; u_xlat4 = u_xlat9 * u_xlat2.zzzz + u_xlat4; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 2])); u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat12.x; u_xlat8.y = u_xlat2.x; u_xlat8.z = u_xlat3.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat12.y; u_xlat9.y = u_xlat2.y; u_xlat9.z = u_xlat3.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat12.z; u_xlat7.y = u_xlat2.z; u_xlat7.z = u_xlat3.z; u_xlat3 = u_xlat8 * u_xlat2.wwww + u_xlat5; u_xlat5 = u_xlat9 * u_xlat2.wwww + u_xlat6; u_xlat2 = u_xlat7 * u_xlat2.wwww + u_xlat4; u_xlat1.w = 1.0; u_xlat3.x = dot(u_xlat3, u_xlat1); u_xlat3.y = dot(u_xlat5, u_xlat1); u_xlat3.z = dot(u_xlat2, u_xlat1); outVertices1_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat3.x)); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat3.y)); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat3.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati3 = ivec4(int(inSkin0_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin0_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin0_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin0_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati3 = u_xlati3 + ivec4(g_PoseOffsets[0].xxxx); u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat12.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.x = u_xlat12.y; u_xlat8.y = u_xlat4.y; u_xlat8.z = u_xlat5.y; u_xlat8.w = u_xlat6.y; u_xlat6.x = u_xlat12.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat12.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat10 = u_xlat2.yyyy * u_xlat10; u_xlat11.x = u_xlat12.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat11 = u_xlat2.yyyy * u_xlat11; u_xlat9.x = u_xlat12.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat4 = u_xlat2.yyyy * u_xlat9; u_xlat5 = u_xlat7 * u_xlat2.xxxx + u_xlat10; u_xlat7 = u_xlat8 * u_xlat2.xxxx + u_xlat11; u_xlat4 = u_xlat6 * u_xlat2.xxxx + u_xlat4; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat12.x; u_xlat10.y = u_xlat6.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat12.y; u_xlat11.y = u_xlat6.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat12.z; u_xlat9.y = u_xlat6.z; u_xlat9.z = u_xlat8.z; u_xlat5 = u_xlat10 * u_xlat2.zzzz + u_xlat5; u_xlat6 = u_xlat11 * u_xlat2.zzzz + u_xlat7; u_xlat4 = u_xlat9 * u_xlat2.zzzz + u_xlat4; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 2])); u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat12.x; u_xlat8.y = u_xlat2.x; u_xlat8.z = u_xlat3.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat12.y; u_xlat9.y = u_xlat2.y; u_xlat9.z = u_xlat3.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat12.z; u_xlat7.y = u_xlat2.z; u_xlat7.z = u_xlat3.z; u_xlat3 = u_xlat8 * u_xlat2.wwww + u_xlat5; u_xlat5 = u_xlat9 * u_xlat2.wwww + u_xlat6; u_xlat2 = u_xlat7 * u_xlat2.wwww + u_xlat4; u_xlat1.w = 1.0; u_xlat3.x = dot(u_xlat3, u_xlat1); u_xlat3.y = dot(u_xlat5, u_xlat1); u_xlat3.z = dot(u_xlat2, u_xlat1); outVertices0_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat3.x)); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat3.y)); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat3.z)); } } } } } } return; } @A batchMainComputeSkinCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4inSkin0inSkin1inSkin2inSkin3inSkin4 inMatrices  outVertices0 outVertices1 outVertices2 outVertices3 outVertices4#version 310 es #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif UNITY_BINDING(0) uniform ComputeSkinCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; uvec4 g_PoseOffsets[2]; uint g_poseBufferMaxIndex; }; struct inVertices0_type { uint[6] value; }; layout(std430, binding = 5) readonly buffer inVertices0 { inVertices0_type inVertices0_buf[]; }; struct inVertices1_type { uint[6] value; }; layout(std430, binding = 6) readonly buffer inVertices1 { inVertices1_type inVertices1_buf[]; }; struct inVertices2_type { uint[6] value; }; layout(std430, binding = 7) readonly buffer inVertices2 { inVertices2_type inVertices2_buf[]; }; struct inVertices3_type { uint[6] value; }; layout(std430, binding = 8) readonly buffer inVertices3 { inVertices3_type inVertices3_buf[]; }; struct inVertices4_type { uint[6] value; }; layout(std430, binding = 9) readonly buffer inVertices4 { inVertices4_type inVertices4_buf[]; }; struct inSkin0_type { uint[8] value; }; layout(std430, binding = 10) readonly buffer inSkin0 { inSkin0_type inSkin0_buf[]; }; struct inSkin1_type { uint[8] value; }; layout(std430, binding = 11) readonly buffer inSkin1 { inSkin1_type inSkin1_buf[]; }; struct inSkin2_type { uint[8] value; }; layout(std430, binding = 12) readonly buffer inSkin2 { inSkin2_type inSkin2_buf[]; }; struct inSkin3_type { uint[8] value; }; layout(std430, binding = 13) readonly buffer inSkin3 { inSkin3_type inSkin3_buf[]; }; struct inSkin4_type { uint[8] value; }; layout(std430, binding = 14) readonly buffer inSkin4 { inSkin4_type inSkin4_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 15) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct outVertices0_type { uint[6] value; }; layout(std430, binding = 0) buffer outVertices0 { outVertices0_type outVertices0_buf[]; }; struct outVertices1_type { uint[6] value; }; layout(std430, binding = 1) buffer outVertices1 { outVertices1_type outVertices1_buf[]; }; struct outVertices2_type { uint[6] value; }; layout(std430, binding = 2) buffer outVertices2 { outVertices2_type outVertices2_buf[]; }; struct outVertices3_type { uint[6] value; }; layout(std430, binding = 3) buffer outVertices3 { outVertices3_type outVertices3_buf[]; }; struct outVertices4_type { uint[6] value; }; layout(std430, binding = 4) buffer outVertices4 { outVertices4_type outVertices4_buf[]; }; uint u_xlatu0; bool u_xlatb0; vec4 u_xlat1; vec3 u_xlat2; vec4 u_xlat3; vec4 u_xlat4; ivec4 u_xlati4; vec4 u_xlat5; vec4 u_xlat6; vec4 u_xlat7; vec4 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; vec4 u_xlat11; vec4 u_xlat12; vec3 u_xlat13; bool u_xlatb13; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb13 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati4 = ivec4(int(inSkin4_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin4_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin4_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin4_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati4 = u_xlati4 + ivec4(g_PoseOffsets[1].xxxx); u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat13.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat13.y; u_xlat9.y = u_xlat5.y; u_xlat9.z = u_xlat6.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat13.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat13.x; u_xlat11.y = u_xlat5.x; u_xlat11.z = u_xlat6.x; u_xlat11.w = u_xlat10.x; u_xlat11 = u_xlat3.yyyy * u_xlat11; u_xlat12.x = u_xlat13.y; u_xlat12.y = u_xlat5.y; u_xlat12.z = u_xlat6.y; u_xlat12.w = u_xlat10.y; u_xlat12 = u_xlat3.yyyy * u_xlat12; u_xlat10.x = u_xlat13.z; u_xlat10.y = u_xlat5.z; u_xlat10.z = u_xlat6.z; u_xlat5 = u_xlat3.yyyy * u_xlat10; u_xlat6 = u_xlat8 * u_xlat3.xxxx + u_xlat11; u_xlat8 = u_xlat9 * u_xlat3.xxxx + u_xlat12; u_xlat5 = u_xlat7 * u_xlat3.xxxx + u_xlat5; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 2])); u_xlat9.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat13.x; u_xlat11.y = u_xlat7.x; u_xlat11.z = u_xlat9.x; u_xlat11.w = u_xlat10.x; u_xlat12.x = u_xlat13.y; u_xlat12.y = u_xlat7.y; u_xlat12.z = u_xlat9.y; u_xlat12.w = u_xlat10.y; u_xlat10.x = u_xlat13.z; u_xlat10.y = u_xlat7.z; u_xlat10.z = u_xlat9.z; u_xlat6 = u_xlat11 * u_xlat3.zzzz + u_xlat6; u_xlat7 = u_xlat12 * u_xlat3.zzzz + u_xlat8; u_xlat5 = u_xlat10 * u_xlat3.zzzz + u_xlat5; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat13.x; u_xlat9.y = u_xlat3.x; u_xlat9.z = u_xlat4.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat13.y; u_xlat10.y = u_xlat3.y; u_xlat10.z = u_xlat4.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat13.z; u_xlat8.y = u_xlat3.z; u_xlat8.z = u_xlat4.z; u_xlat4 = u_xlat9 * u_xlat3.wwww + u_xlat6; u_xlat6 = u_xlat10 * u_xlat3.wwww + u_xlat7; u_xlat3 = u_xlat8 * u_xlat3.wwww + u_xlat5; u_xlat5.xyz = u_xlat1.xyz; u_xlat5.w = 1.0; u_xlat7.x = dot(u_xlat4, u_xlat5); u_xlat7.y = dot(u_xlat6, u_xlat5); u_xlat7.z = dot(u_xlat3, u_xlat5); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat4.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat6.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat3.yzx, u_xlat2.xyz); outVertices4_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat7.x)); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat7.y)); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat7.z)); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat7.w)); outVertices4_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat1.x)); outVertices4_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat1.y)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb13 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati4 = ivec4(int(inSkin3_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin3_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin3_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin3_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati4 = u_xlati4 + ivec4(g_PoseOffsets[0].wwww); u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat13.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat13.y; u_xlat9.y = u_xlat5.y; u_xlat9.z = u_xlat6.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat13.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat13.x; u_xlat11.y = u_xlat5.x; u_xlat11.z = u_xlat6.x; u_xlat11.w = u_xlat10.x; u_xlat11 = u_xlat3.yyyy * u_xlat11; u_xlat12.x = u_xlat13.y; u_xlat12.y = u_xlat5.y; u_xlat12.z = u_xlat6.y; u_xlat12.w = u_xlat10.y; u_xlat12 = u_xlat3.yyyy * u_xlat12; u_xlat10.x = u_xlat13.z; u_xlat10.y = u_xlat5.z; u_xlat10.z = u_xlat6.z; u_xlat5 = u_xlat3.yyyy * u_xlat10; u_xlat6 = u_xlat8 * u_xlat3.xxxx + u_xlat11; u_xlat8 = u_xlat9 * u_xlat3.xxxx + u_xlat12; u_xlat5 = u_xlat7 * u_xlat3.xxxx + u_xlat5; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 2])); u_xlat9.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat13.x; u_xlat11.y = u_xlat7.x; u_xlat11.z = u_xlat9.x; u_xlat11.w = u_xlat10.x; u_xlat12.x = u_xlat13.y; u_xlat12.y = u_xlat7.y; u_xlat12.z = u_xlat9.y; u_xlat12.w = u_xlat10.y; u_xlat10.x = u_xlat13.z; u_xlat10.y = u_xlat7.z; u_xlat10.z = u_xlat9.z; u_xlat6 = u_xlat11 * u_xlat3.zzzz + u_xlat6; u_xlat7 = u_xlat12 * u_xlat3.zzzz + u_xlat8; u_xlat5 = u_xlat10 * u_xlat3.zzzz + u_xlat5; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat13.x; u_xlat9.y = u_xlat3.x; u_xlat9.z = u_xlat4.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat13.y; u_xlat10.y = u_xlat3.y; u_xlat10.z = u_xlat4.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat13.z; u_xlat8.y = u_xlat3.z; u_xlat8.z = u_xlat4.z; u_xlat4 = u_xlat9 * u_xlat3.wwww + u_xlat6; u_xlat6 = u_xlat10 * u_xlat3.wwww + u_xlat7; u_xlat3 = u_xlat8 * u_xlat3.wwww + u_xlat5; u_xlat5.xyz = u_xlat1.xyz; u_xlat5.w = 1.0; u_xlat7.x = dot(u_xlat4, u_xlat5); u_xlat7.y = dot(u_xlat6, u_xlat5); u_xlat7.z = dot(u_xlat3, u_xlat5); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat4.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat6.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat3.yzx, u_xlat2.xyz); outVertices3_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat7.x)); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat7.y)); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat7.z)); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat7.w)); outVertices3_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat1.x)); outVertices3_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat1.y)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb13 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati4 = ivec4(int(inSkin2_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin2_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin2_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin2_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati4 = u_xlati4 + ivec4(g_PoseOffsets[0].zzzz); u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat13.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat13.y; u_xlat9.y = u_xlat5.y; u_xlat9.z = u_xlat6.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat13.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat13.x; u_xlat11.y = u_xlat5.x; u_xlat11.z = u_xlat6.x; u_xlat11.w = u_xlat10.x; u_xlat11 = u_xlat3.yyyy * u_xlat11; u_xlat12.x = u_xlat13.y; u_xlat12.y = u_xlat5.y; u_xlat12.z = u_xlat6.y; u_xlat12.w = u_xlat10.y; u_xlat12 = u_xlat3.yyyy * u_xlat12; u_xlat10.x = u_xlat13.z; u_xlat10.y = u_xlat5.z; u_xlat10.z = u_xlat6.z; u_xlat5 = u_xlat3.yyyy * u_xlat10; u_xlat6 = u_xlat8 * u_xlat3.xxxx + u_xlat11; u_xlat8 = u_xlat9 * u_xlat3.xxxx + u_xlat12; u_xlat5 = u_xlat7 * u_xlat3.xxxx + u_xlat5; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 2])); u_xlat9.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat13.x; u_xlat11.y = u_xlat7.x; u_xlat11.z = u_xlat9.x; u_xlat11.w = u_xlat10.x; u_xlat12.x = u_xlat13.y; u_xlat12.y = u_xlat7.y; u_xlat12.z = u_xlat9.y; u_xlat12.w = u_xlat10.y; u_xlat10.x = u_xlat13.z; u_xlat10.y = u_xlat7.z; u_xlat10.z = u_xlat9.z; u_xlat6 = u_xlat11 * u_xlat3.zzzz + u_xlat6; u_xlat7 = u_xlat12 * u_xlat3.zzzz + u_xlat8; u_xlat5 = u_xlat10 * u_xlat3.zzzz + u_xlat5; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat13.x; u_xlat9.y = u_xlat3.x; u_xlat9.z = u_xlat4.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat13.y; u_xlat10.y = u_xlat3.y; u_xlat10.z = u_xlat4.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat13.z; u_xlat8.y = u_xlat3.z; u_xlat8.z = u_xlat4.z; u_xlat4 = u_xlat9 * u_xlat3.wwww + u_xlat6; u_xlat6 = u_xlat10 * u_xlat3.wwww + u_xlat7; u_xlat3 = u_xlat8 * u_xlat3.wwww + u_xlat5; u_xlat5.xyz = u_xlat1.xyz; u_xlat5.w = 1.0; u_xlat7.x = dot(u_xlat4, u_xlat5); u_xlat7.y = dot(u_xlat6, u_xlat5); u_xlat7.z = dot(u_xlat3, u_xlat5); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat4.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat6.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat3.yzx, u_xlat2.xyz); outVertices2_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat7.x)); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat7.y)); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat7.z)); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat7.w)); outVertices2_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat1.x)); outVertices2_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat1.y)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb13 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati4 = ivec4(int(inSkin1_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin1_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin1_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin1_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati4 = u_xlati4 + ivec4(g_PoseOffsets[0].yyyy); u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat13.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat13.y; u_xlat9.y = u_xlat5.y; u_xlat9.z = u_xlat6.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat13.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat13.x; u_xlat11.y = u_xlat5.x; u_xlat11.z = u_xlat6.x; u_xlat11.w = u_xlat10.x; u_xlat11 = u_xlat3.yyyy * u_xlat11; u_xlat12.x = u_xlat13.y; u_xlat12.y = u_xlat5.y; u_xlat12.z = u_xlat6.y; u_xlat12.w = u_xlat10.y; u_xlat12 = u_xlat3.yyyy * u_xlat12; u_xlat10.x = u_xlat13.z; u_xlat10.y = u_xlat5.z; u_xlat10.z = u_xlat6.z; u_xlat5 = u_xlat3.yyyy * u_xlat10; u_xlat6 = u_xlat8 * u_xlat3.xxxx + u_xlat11; u_xlat8 = u_xlat9 * u_xlat3.xxxx + u_xlat12; u_xlat5 = u_xlat7 * u_xlat3.xxxx + u_xlat5; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 2])); u_xlat9.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat13.x; u_xlat11.y = u_xlat7.x; u_xlat11.z = u_xlat9.x; u_xlat11.w = u_xlat10.x; u_xlat12.x = u_xlat13.y; u_xlat12.y = u_xlat7.y; u_xlat12.z = u_xlat9.y; u_xlat12.w = u_xlat10.y; u_xlat10.x = u_xlat13.z; u_xlat10.y = u_xlat7.z; u_xlat10.z = u_xlat9.z; u_xlat6 = u_xlat11 * u_xlat3.zzzz + u_xlat6; u_xlat7 = u_xlat12 * u_xlat3.zzzz + u_xlat8; u_xlat5 = u_xlat10 * u_xlat3.zzzz + u_xlat5; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat13.x; u_xlat9.y = u_xlat3.x; u_xlat9.z = u_xlat4.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat13.y; u_xlat10.y = u_xlat3.y; u_xlat10.z = u_xlat4.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat13.z; u_xlat8.y = u_xlat3.z; u_xlat8.z = u_xlat4.z; u_xlat4 = u_xlat9 * u_xlat3.wwww + u_xlat6; u_xlat6 = u_xlat10 * u_xlat3.wwww + u_xlat7; u_xlat3 = u_xlat8 * u_xlat3.wwww + u_xlat5; u_xlat5.xyz = u_xlat1.xyz; u_xlat5.w = 1.0; u_xlat7.x = dot(u_xlat4, u_xlat5); u_xlat7.y = dot(u_xlat6, u_xlat5); u_xlat7.z = dot(u_xlat3, u_xlat5); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat4.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat6.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat3.yzx, u_xlat2.xyz); outVertices1_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat7.x)); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat7.y)); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat7.z)); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat7.w)); outVertices1_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat1.x)); outVertices1_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat1.y)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb13 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati4 = ivec4(int(inSkin0_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin0_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin0_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin0_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati4 = u_xlati4 + ivec4(g_PoseOffsets[0].xxxx); u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat13.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat13.y; u_xlat9.y = u_xlat5.y; u_xlat9.z = u_xlat6.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat13.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat13.x; u_xlat11.y = u_xlat5.x; u_xlat11.z = u_xlat6.x; u_xlat11.w = u_xlat10.x; u_xlat11 = u_xlat3.yyyy * u_xlat11; u_xlat12.x = u_xlat13.y; u_xlat12.y = u_xlat5.y; u_xlat12.z = u_xlat6.y; u_xlat12.w = u_xlat10.y; u_xlat12 = u_xlat3.yyyy * u_xlat12; u_xlat10.x = u_xlat13.z; u_xlat10.y = u_xlat5.z; u_xlat10.z = u_xlat6.z; u_xlat5 = u_xlat3.yyyy * u_xlat10; u_xlat6 = u_xlat8 * u_xlat3.xxxx + u_xlat11; u_xlat8 = u_xlat9 * u_xlat3.xxxx + u_xlat12; u_xlat5 = u_xlat7 * u_xlat3.xxxx + u_xlat5; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 2])); u_xlat9.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat13.x; u_xlat11.y = u_xlat7.x; u_xlat11.z = u_xlat9.x; u_xlat11.w = u_xlat10.x; u_xlat12.x = u_xlat13.y; u_xlat12.y = u_xlat7.y; u_xlat12.z = u_xlat9.y; u_xlat12.w = u_xlat10.y; u_xlat10.x = u_xlat13.z; u_xlat10.y = u_xlat7.z; u_xlat10.z = u_xlat9.z; u_xlat6 = u_xlat11 * u_xlat3.zzzz + u_xlat6; u_xlat7 = u_xlat12 * u_xlat3.zzzz + u_xlat8; u_xlat5 = u_xlat10 * u_xlat3.zzzz + u_xlat5; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat13.x; u_xlat9.y = u_xlat3.x; u_xlat9.z = u_xlat4.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat13.y; u_xlat10.y = u_xlat3.y; u_xlat10.z = u_xlat4.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat13.z; u_xlat8.y = u_xlat3.z; u_xlat8.z = u_xlat4.z; u_xlat4 = u_xlat9 * u_xlat3.wwww + u_xlat6; u_xlat6 = u_xlat10 * u_xlat3.wwww + u_xlat7; u_xlat3 = u_xlat8 * u_xlat3.wwww + u_xlat5; u_xlat5.xyz = u_xlat1.xyz; u_xlat5.w = 1.0; u_xlat7.x = dot(u_xlat4, u_xlat5); u_xlat7.y = dot(u_xlat6, u_xlat5); u_xlat7.z = dot(u_xlat3, u_xlat5); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat4.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat6.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat3.yzx, u_xlat2.xyz); outVertices0_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat7.x)); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat7.y)); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat7.z)); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat7.w)); outVertices0_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat1.x)); outVertices0_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat1.y)); } } } } } } return; } @A batchMainComputeSkinCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4inSkin0inSkin1inSkin2inSkin3inSkin4 inMatrices  outVertices0 outVertices1 outVertices2 outVertices3 outVertices4a#version 310 es #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif UNITY_BINDING(0) uniform ComputeSkinCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; uvec4 g_PoseOffsets[2]; uint g_poseBufferMaxIndex; }; struct inVertices0_type { uint[10] value; }; layout(std430, binding = 5) readonly buffer inVertices0 { inVertices0_type inVertices0_buf[]; }; struct inVertices1_type { uint[10] value; }; layout(std430, binding = 6) readonly buffer inVertices1 { inVertices1_type inVertices1_buf[]; }; struct inVertices2_type { uint[10] value; }; layout(std430, binding = 7) readonly buffer inVertices2 { inVertices2_type inVertices2_buf[]; }; struct inVertices3_type { uint[10] value; }; layout(std430, binding = 8) readonly buffer inVertices3 { inVertices3_type inVertices3_buf[]; }; struct inVertices4_type { uint[10] value; }; layout(std430, binding = 9) readonly buffer inVertices4 { inVertices4_type inVertices4_buf[]; }; struct inSkin0_type { uint[8] value; }; layout(std430, binding = 10) readonly buffer inSkin0 { inSkin0_type inSkin0_buf[]; }; struct inSkin1_type { uint[8] value; }; layout(std430, binding = 11) readonly buffer inSkin1 { inSkin1_type inSkin1_buf[]; }; struct inSkin2_type { uint[8] value; }; layout(std430, binding = 12) readonly buffer inSkin2 { inSkin2_type inSkin2_buf[]; }; struct inSkin3_type { uint[8] value; }; layout(std430, binding = 13) readonly buffer inSkin3 { inSkin3_type inSkin3_buf[]; }; struct inSkin4_type { uint[8] value; }; layout(std430, binding = 14) readonly buffer inSkin4 { inSkin4_type inSkin4_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 15) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct outVertices0_type { uint[10] value; }; layout(std430, binding = 0) buffer outVertices0 { outVertices0_type outVertices0_buf[]; }; struct outVertices1_type { uint[10] value; }; layout(std430, binding = 1) buffer outVertices1 { outVertices1_type outVertices1_buf[]; }; struct outVertices2_type { uint[10] value; }; layout(std430, binding = 2) buffer outVertices2 { outVertices2_type outVertices2_buf[]; }; struct outVertices3_type { uint[10] value; }; layout(std430, binding = 3) buffer outVertices3 { outVertices3_type outVertices3_buf[]; }; struct outVertices4_type { uint[10] value; }; layout(std430, binding = 4) buffer outVertices4 { outVertices4_type outVertices4_buf[]; }; uint u_xlatu0; bool u_xlatb0; vec4 u_xlat1; vec4 u_xlat2; vec4 u_xlat3; vec4 u_xlat4; vec4 u_xlat5; ivec4 u_xlati5; vec4 u_xlat6; vec4 u_xlat7; vec4 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; vec4 u_xlat11; vec4 u_xlat12; vec4 u_xlat13; vec3 u_xlat14; bool u_xlatb14; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb14 = u_xlatu0> 2) + 3]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.xy = vec2(uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(32 >> 2) + 0]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(32 >> 2) + 1])); u_xlat4 = vec4(uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati5 = ivec4(int(inSkin4_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin4_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin4_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin4_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati5 = u_xlati5 + ivec4(g_PoseOffsets[1].xxxx); u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat14.x; u_xlat9.y = u_xlat6.x; u_xlat9.z = u_xlat7.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat14.y; u_xlat10.y = u_xlat6.y; u_xlat10.z = u_xlat7.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat14.z; u_xlat8.y = u_xlat6.z; u_xlat8.z = u_xlat7.z; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat14.x; u_xlat12.y = u_xlat6.x; u_xlat12.z = u_xlat7.x; u_xlat12.w = u_xlat11.x; u_xlat12 = u_xlat4.yyyy * u_xlat12; u_xlat13.x = u_xlat14.y; u_xlat13.y = u_xlat6.y; u_xlat13.z = u_xlat7.y; u_xlat13.w = u_xlat11.y; u_xlat13 = u_xlat4.yyyy * u_xlat13; u_xlat11.x = u_xlat14.z; u_xlat11.y = u_xlat6.z; u_xlat11.z = u_xlat7.z; u_xlat6 = u_xlat4.yyyy * u_xlat11; u_xlat7 = u_xlat9 * u_xlat4.xxxx + u_xlat12; u_xlat9 = u_xlat10 * u_xlat4.xxxx + u_xlat13; u_xlat6 = u_xlat8 * u_xlat4.xxxx + u_xlat6; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 2])); u_xlat10.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat14.x; u_xlat12.y = u_xlat8.x; u_xlat12.z = u_xlat10.x; u_xlat12.w = u_xlat11.x; u_xlat13.x = u_xlat14.y; u_xlat13.y = u_xlat8.y; u_xlat13.z = u_xlat10.y; u_xlat13.w = u_xlat11.y; u_xlat11.x = u_xlat14.z; u_xlat11.y = u_xlat8.z; u_xlat11.z = u_xlat10.z; u_xlat7 = u_xlat12 * u_xlat4.zzzz + u_xlat7; u_xlat8 = u_xlat13 * u_xlat4.zzzz + u_xlat9; u_xlat6 = u_xlat11 * u_xlat4.zzzz + u_xlat6; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat14.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat14.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat14.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat5 = u_xlat10 * u_xlat4.wwww + u_xlat7; u_xlat7 = u_xlat11 * u_xlat4.wwww + u_xlat8; u_xlat4 = u_xlat9 * u_xlat4.wwww + u_xlat6; u_xlat6.xyz = u_xlat1.yzw; u_xlat6.w = 1.0; u_xlat8.x = dot(u_xlat5, u_xlat6); u_xlat8.y = dot(u_xlat7, u_xlat6); u_xlat8.z = dot(u_xlat4, u_xlat6); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat5.xyz, u_xlat1.xyz); u_xlat6.x = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat6.y = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat3.zw = u_xlat2.zw; u_xlat6.z = dot(u_xlat5.zxy, u_xlat3.xzw); u_xlat6.w = dot(u_xlat7.zxy, u_xlat3.xzw); u_xlat3.x = dot(u_xlat4.zxy, u_xlat3.xzw); outVertices4_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat8.x)); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat8.y)); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat8.z)); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat8.w)); outVertices4_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat6.x)); outVertices4_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat6.y)); outVertices4_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat6.z)); outVertices4_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat6.w)); outVertices4_buf[u_xlatu0].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat3.x)); outVertices4_buf[u_xlatu0].value[(32 >> 2) + 1] = uint(floatBitsToUint(u_xlat3.y)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb14 = u_xlatu0> 2) + 3]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.xy = vec2(uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(32 >> 2) + 0]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(32 >> 2) + 1])); u_xlat4 = vec4(uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati5 = ivec4(int(inSkin3_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin3_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin3_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin3_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati5 = u_xlati5 + ivec4(g_PoseOffsets[0].wwww); u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat14.x; u_xlat9.y = u_xlat6.x; u_xlat9.z = u_xlat7.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat14.y; u_xlat10.y = u_xlat6.y; u_xlat10.z = u_xlat7.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat14.z; u_xlat8.y = u_xlat6.z; u_xlat8.z = u_xlat7.z; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat14.x; u_xlat12.y = u_xlat6.x; u_xlat12.z = u_xlat7.x; u_xlat12.w = u_xlat11.x; u_xlat12 = u_xlat4.yyyy * u_xlat12; u_xlat13.x = u_xlat14.y; u_xlat13.y = u_xlat6.y; u_xlat13.z = u_xlat7.y; u_xlat13.w = u_xlat11.y; u_xlat13 = u_xlat4.yyyy * u_xlat13; u_xlat11.x = u_xlat14.z; u_xlat11.y = u_xlat6.z; u_xlat11.z = u_xlat7.z; u_xlat6 = u_xlat4.yyyy * u_xlat11; u_xlat7 = u_xlat9 * u_xlat4.xxxx + u_xlat12; u_xlat9 = u_xlat10 * u_xlat4.xxxx + u_xlat13; u_xlat6 = u_xlat8 * u_xlat4.xxxx + u_xlat6; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 2])); u_xlat10.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat14.x; u_xlat12.y = u_xlat8.x; u_xlat12.z = u_xlat10.x; u_xlat12.w = u_xlat11.x; u_xlat13.x = u_xlat14.y; u_xlat13.y = u_xlat8.y; u_xlat13.z = u_xlat10.y; u_xlat13.w = u_xlat11.y; u_xlat11.x = u_xlat14.z; u_xlat11.y = u_xlat8.z; u_xlat11.z = u_xlat10.z; u_xlat7 = u_xlat12 * u_xlat4.zzzz + u_xlat7; u_xlat8 = u_xlat13 * u_xlat4.zzzz + u_xlat9; u_xlat6 = u_xlat11 * u_xlat4.zzzz + u_xlat6; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat14.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat14.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat14.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat5 = u_xlat10 * u_xlat4.wwww + u_xlat7; u_xlat7 = u_xlat11 * u_xlat4.wwww + u_xlat8; u_xlat4 = u_xlat9 * u_xlat4.wwww + u_xlat6; u_xlat6.xyz = u_xlat1.yzw; u_xlat6.w = 1.0; u_xlat8.x = dot(u_xlat5, u_xlat6); u_xlat8.y = dot(u_xlat7, u_xlat6); u_xlat8.z = dot(u_xlat4, u_xlat6); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat5.xyz, u_xlat1.xyz); u_xlat6.x = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat6.y = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat3.zw = u_xlat2.zw; u_xlat6.z = dot(u_xlat5.zxy, u_xlat3.xzw); u_xlat6.w = dot(u_xlat7.zxy, u_xlat3.xzw); u_xlat3.x = dot(u_xlat4.zxy, u_xlat3.xzw); outVertices3_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat8.x)); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat8.y)); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat8.z)); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat8.w)); outVertices3_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat6.x)); outVertices3_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat6.y)); outVertices3_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat6.z)); outVertices3_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat6.w)); outVertices3_buf[u_xlatu0].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat3.x)); outVertices3_buf[u_xlatu0].value[(32 >> 2) + 1] = uint(floatBitsToUint(u_xlat3.y)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb14 = u_xlatu0> 2) + 3]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.xy = vec2(uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(32 >> 2) + 0]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(32 >> 2) + 1])); u_xlat4 = vec4(uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati5 = ivec4(int(inSkin2_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin2_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin2_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin2_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati5 = u_xlati5 + ivec4(g_PoseOffsets[0].zzzz); u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat14.x; u_xlat9.y = u_xlat6.x; u_xlat9.z = u_xlat7.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat14.y; u_xlat10.y = u_xlat6.y; u_xlat10.z = u_xlat7.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat14.z; u_xlat8.y = u_xlat6.z; u_xlat8.z = u_xlat7.z; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat14.x; u_xlat12.y = u_xlat6.x; u_xlat12.z = u_xlat7.x; u_xlat12.w = u_xlat11.x; u_xlat12 = u_xlat4.yyyy * u_xlat12; u_xlat13.x = u_xlat14.y; u_xlat13.y = u_xlat6.y; u_xlat13.z = u_xlat7.y; u_xlat13.w = u_xlat11.y; u_xlat13 = u_xlat4.yyyy * u_xlat13; u_xlat11.x = u_xlat14.z; u_xlat11.y = u_xlat6.z; u_xlat11.z = u_xlat7.z; u_xlat6 = u_xlat4.yyyy * u_xlat11; u_xlat7 = u_xlat9 * u_xlat4.xxxx + u_xlat12; u_xlat9 = u_xlat10 * u_xlat4.xxxx + u_xlat13; u_xlat6 = u_xlat8 * u_xlat4.xxxx + u_xlat6; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 2])); u_xlat10.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat14.x; u_xlat12.y = u_xlat8.x; u_xlat12.z = u_xlat10.x; u_xlat12.w = u_xlat11.x; u_xlat13.x = u_xlat14.y; u_xlat13.y = u_xlat8.y; u_xlat13.z = u_xlat10.y; u_xlat13.w = u_xlat11.y; u_xlat11.x = u_xlat14.z; u_xlat11.y = u_xlat8.z; u_xlat11.z = u_xlat10.z; u_xlat7 = u_xlat12 * u_xlat4.zzzz + u_xlat7; u_xlat8 = u_xlat13 * u_xlat4.zzzz + u_xlat9; u_xlat6 = u_xlat11 * u_xlat4.zzzz + u_xlat6; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat14.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat14.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat14.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat5 = u_xlat10 * u_xlat4.wwww + u_xlat7; u_xlat7 = u_xlat11 * u_xlat4.wwww + u_xlat8; u_xlat4 = u_xlat9 * u_xlat4.wwww + u_xlat6; u_xlat6.xyz = u_xlat1.yzw; u_xlat6.w = 1.0; u_xlat8.x = dot(u_xlat5, u_xlat6); u_xlat8.y = dot(u_xlat7, u_xlat6); u_xlat8.z = dot(u_xlat4, u_xlat6); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat5.xyz, u_xlat1.xyz); u_xlat6.x = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat6.y = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat3.zw = u_xlat2.zw; u_xlat6.z = dot(u_xlat5.zxy, u_xlat3.xzw); u_xlat6.w = dot(u_xlat7.zxy, u_xlat3.xzw); u_xlat3.x = dot(u_xlat4.zxy, u_xlat3.xzw); outVertices2_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat8.x)); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat8.y)); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat8.z)); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat8.w)); outVertices2_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat6.x)); outVertices2_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat6.y)); outVertices2_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat6.z)); outVertices2_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat6.w)); outVertices2_buf[u_xlatu0].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat3.x)); outVertices2_buf[u_xlatu0].value[(32 >> 2) + 1] = uint(floatBitsToUint(u_xlat3.y)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb14 = u_xlatu0> 2) + 3]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.xy = vec2(uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(32 >> 2) + 0]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(32 >> 2) + 1])); u_xlat4 = vec4(uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati5 = ivec4(int(inSkin1_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin1_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin1_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin1_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati5 = u_xlati5 + ivec4(g_PoseOffsets[0].yyyy); u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat14.x; u_xlat9.y = u_xlat6.x; u_xlat9.z = u_xlat7.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat14.y; u_xlat10.y = u_xlat6.y; u_xlat10.z = u_xlat7.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat14.z; u_xlat8.y = u_xlat6.z; u_xlat8.z = u_xlat7.z; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat14.x; u_xlat12.y = u_xlat6.x; u_xlat12.z = u_xlat7.x; u_xlat12.w = u_xlat11.x; u_xlat12 = u_xlat4.yyyy * u_xlat12; u_xlat13.x = u_xlat14.y; u_xlat13.y = u_xlat6.y; u_xlat13.z = u_xlat7.y; u_xlat13.w = u_xlat11.y; u_xlat13 = u_xlat4.yyyy * u_xlat13; u_xlat11.x = u_xlat14.z; u_xlat11.y = u_xlat6.z; u_xlat11.z = u_xlat7.z; u_xlat6 = u_xlat4.yyyy * u_xlat11; u_xlat7 = u_xlat9 * u_xlat4.xxxx + u_xlat12; u_xlat9 = u_xlat10 * u_xlat4.xxxx + u_xlat13; u_xlat6 = u_xlat8 * u_xlat4.xxxx + u_xlat6; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 2])); u_xlat10.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat14.x; u_xlat12.y = u_xlat8.x; u_xlat12.z = u_xlat10.x; u_xlat12.w = u_xlat11.x; u_xlat13.x = u_xlat14.y; u_xlat13.y = u_xlat8.y; u_xlat13.z = u_xlat10.y; u_xlat13.w = u_xlat11.y; u_xlat11.x = u_xlat14.z; u_xlat11.y = u_xlat8.z; u_xlat11.z = u_xlat10.z; u_xlat7 = u_xlat12 * u_xlat4.zzzz + u_xlat7; u_xlat8 = u_xlat13 * u_xlat4.zzzz + u_xlat9; u_xlat6 = u_xlat11 * u_xlat4.zzzz + u_xlat6; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat14.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat14.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat14.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat5 = u_xlat10 * u_xlat4.wwww + u_xlat7; u_xlat7 = u_xlat11 * u_xlat4.wwww + u_xlat8; u_xlat4 = u_xlat9 * u_xlat4.wwww + u_xlat6; u_xlat6.xyz = u_xlat1.yzw; u_xlat6.w = 1.0; u_xlat8.x = dot(u_xlat5, u_xlat6); u_xlat8.y = dot(u_xlat7, u_xlat6); u_xlat8.z = dot(u_xlat4, u_xlat6); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat5.xyz, u_xlat1.xyz); u_xlat6.x = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat6.y = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat3.zw = u_xlat2.zw; u_xlat6.z = dot(u_xlat5.zxy, u_xlat3.xzw); u_xlat6.w = dot(u_xlat7.zxy, u_xlat3.xzw); u_xlat3.x = dot(u_xlat4.zxy, u_xlat3.xzw); outVertices1_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat8.x)); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat8.y)); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat8.z)); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat8.w)); outVertices1_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat6.x)); outVertices1_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat6.y)); outVertices1_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat6.z)); outVertices1_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat6.w)); outVertices1_buf[u_xlatu0].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat3.x)); outVertices1_buf[u_xlatu0].value[(32 >> 2) + 1] = uint(floatBitsToUint(u_xlat3.y)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb14 = u_xlatu0> 2) + 3]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.xy = vec2(uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(32 >> 2) + 0]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(32 >> 2) + 1])); u_xlat4 = vec4(uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati5 = ivec4(int(inSkin0_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin0_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin0_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin0_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati5 = u_xlati5 + ivec4(g_PoseOffsets[0].xxxx); u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat14.x; u_xlat9.y = u_xlat6.x; u_xlat9.z = u_xlat7.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat14.y; u_xlat10.y = u_xlat6.y; u_xlat10.z = u_xlat7.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat14.z; u_xlat8.y = u_xlat6.z; u_xlat8.z = u_xlat7.z; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat14.x; u_xlat12.y = u_xlat6.x; u_xlat12.z = u_xlat7.x; u_xlat12.w = u_xlat11.x; u_xlat12 = u_xlat4.yyyy * u_xlat12; u_xlat13.x = u_xlat14.y; u_xlat13.y = u_xlat6.y; u_xlat13.z = u_xlat7.y; u_xlat13.w = u_xlat11.y; u_xlat13 = u_xlat4.yyyy * u_xlat13; u_xlat11.x = u_xlat14.z; u_xlat11.y = u_xlat6.z; u_xlat11.z = u_xlat7.z; u_xlat6 = u_xlat4.yyyy * u_xlat11; u_xlat7 = u_xlat9 * u_xlat4.xxxx + u_xlat12; u_xlat9 = u_xlat10 * u_xlat4.xxxx + u_xlat13; u_xlat6 = u_xlat8 * u_xlat4.xxxx + u_xlat6; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 2])); u_xlat10.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat14.x; u_xlat12.y = u_xlat8.x; u_xlat12.z = u_xlat10.x; u_xlat12.w = u_xlat11.x; u_xlat13.x = u_xlat14.y; u_xlat13.y = u_xlat8.y; u_xlat13.z = u_xlat10.y; u_xlat13.w = u_xlat11.y; u_xlat11.x = u_xlat14.z; u_xlat11.y = u_xlat8.z; u_xlat11.z = u_xlat10.z; u_xlat7 = u_xlat12 * u_xlat4.zzzz + u_xlat7; u_xlat8 = u_xlat13 * u_xlat4.zzzz + u_xlat9; u_xlat6 = u_xlat11 * u_xlat4.zzzz + u_xlat6; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat14.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat14.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat14.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat5 = u_xlat10 * u_xlat4.wwww + u_xlat7; u_xlat7 = u_xlat11 * u_xlat4.wwww + u_xlat8; u_xlat4 = u_xlat9 * u_xlat4.wwww + u_xlat6; u_xlat6.xyz = u_xlat1.yzw; u_xlat6.w = 1.0; u_xlat8.x = dot(u_xlat5, u_xlat6); u_xlat8.y = dot(u_xlat7, u_xlat6); u_xlat8.z = dot(u_xlat4, u_xlat6); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat5.xyz, u_xlat1.xyz); u_xlat6.x = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat6.y = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat3.zw = u_xlat2.zw; u_xlat6.z = dot(u_xlat5.zxy, u_xlat3.xzw); u_xlat6.w = dot(u_xlat7.zxy, u_xlat3.xzw); u_xlat3.x = dot(u_xlat4.zxy, u_xlat3.xzw); outVertices0_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat8.x)); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat8.y)); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat8.z)); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat8.w)); outVertices0_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat6.x)); outVertices0_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat6.y)); outVertices0_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat6.z)); outVertices0_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat6.w)); outVertices0_buf[u_xlatu0].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat3.x)); outVertices0_buf[u_xlatu0].value[(32 >> 2) + 1] = uint(floatBitsToUint(u_xlat3.y)); } } } } } } return; } @AbatchMainInPlaceComputeSkinInPlaceCBufferinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6 inMatricesinOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices6#version 310 es #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif UNITY_BINDING(0) uniform ComputeSkinInPlaceCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; uvec4 g_PoseOffsets[2]; uint g_poseBufferMaxIndex; }; struct inSkin0_type { uint[1] value; }; layout(std430, binding = 7) readonly buffer inSkin0 { inSkin0_type inSkin0_buf[]; }; struct inSkin1_type { uint[1] value; }; layout(std430, binding = 8) readonly buffer inSkin1 { inSkin1_type inSkin1_buf[]; }; struct inSkin2_type { uint[1] value; }; layout(std430, binding = 9) readonly buffer inSkin2 { inSkin2_type inSkin2_buf[]; }; struct inSkin3_type { uint[1] value; }; layout(std430, binding = 10) readonly buffer inSkin3 { inSkin3_type inSkin3_buf[]; }; struct inSkin4_type { uint[1] value; }; layout(std430, binding = 11) readonly buffer inSkin4 { inSkin4_type inSkin4_buf[]; }; struct inSkin5_type { uint[1] value; }; layout(std430, binding = 12) readonly buffer inSkin5 { inSkin5_type inSkin5_buf[]; }; struct inSkin6_type { uint[1] value; }; layout(std430, binding = 13) readonly buffer inSkin6 { inSkin6_type inSkin6_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 14) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct inOutVertices0_type { uint[3] value; }; layout(std430, binding = 0) buffer inOutVertices0 { inOutVertices0_type inOutVertices0_buf[]; }; struct inOutVertices1_type { uint[3] value; }; layout(std430, binding = 1) buffer inOutVertices1 { inOutVertices1_type inOutVertices1_buf[]; }; struct inOutVertices2_type { uint[3] value; }; layout(std430, binding = 2) buffer inOutVertices2 { inOutVertices2_type inOutVertices2_buf[]; }; struct inOutVertices3_type { uint[3] value; }; layout(std430, binding = 3) buffer inOutVertices3 { inOutVertices3_type inOutVertices3_buf[]; }; struct inOutVertices4_type { uint[3] value; }; layout(std430, binding = 4) buffer inOutVertices4 { inOutVertices4_type inOutVertices4_buf[]; }; struct inOutVertices5_type { uint[3] value; }; layout(std430, binding = 5) buffer inOutVertices5 { inOutVertices5_type inOutVertices5_buf[]; }; struct inOutVertices6_type { uint[3] value; }; layout(std430, binding = 6) buffer inOutVertices6 { inOutVertices6_type inOutVertices6_buf[]; }; uint u_xlatu0; bool u_xlatb0; vec4 u_xlat1; vec4 u_xlat2; vec4 u_xlat3; vec4 u_xlat4; int u_xlati5; uint u_xlatu5; bool u_xlatb5; vec3 u_xlat6; vec3 u_xlat7; vec3 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; vec4 u_xlat11; uint u_xlatu12; bool u_xlatb12; float u_xlat17; uint u_xlatu17; int u_xlati24; uint u_xlatu24; uint u_xlatu36; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].z); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlatu12 = inSkin6_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati24 = int(u_xlatu0) + 1; u_xlatu24 = inSkin6_buf[u_xlati24].value[(0 >> 2) + 0]; u_xlat2.x = float(0.0); u_xlat2.y = float(0.0); u_xlat2.z = float(0.0); u_xlat2.w = float(0.0); u_xlat3.x = float(0.0); u_xlat3.y = float(0.0); u_xlat3.z = float(0.0); u_xlat3.w = float(0.0); u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); for(uint u_xlatu_loop_1 = u_xlatu12 ; u_xlatu_loop_1> 2) + 0]; u_xlatu17 = u_xlatu5 >> (16u & uint(0x1F)); u_xlat17 = float(u_xlatu17); u_xlat17 = u_xlat17 * 1.52590219e-05; u_xlati5 = int(u_xlatu5 & 65535u); u_xlati5 = u_xlati5 + int(g_PoseOffsets[1].z); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat6.x; u_xlat10.y = u_xlat7.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat6.y; u_xlat11.y = u_xlat7.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat6.z; u_xlat9.y = u_xlat7.z; u_xlat9.z = u_xlat8.z; u_xlat2 = u_xlat10 * vec4(u_xlat17) + u_xlat2; u_xlat3 = u_xlat11 * vec4(u_xlat17) + u_xlat3; u_xlat4 = u_xlat9 * vec4(u_xlat17) + u_xlat4; } u_xlat1.w = 1.0; u_xlat2.x = dot(u_xlat2, u_xlat1); u_xlat2.y = dot(u_xlat3, u_xlat1); u_xlat2.z = dot(u_xlat4, u_xlat1); inOutVertices6_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat2.x)); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat2.y)); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat2.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].y); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlatu12 = inSkin5_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati24 = int(u_xlatu0) + 1; u_xlatu24 = inSkin5_buf[u_xlati24].value[(0 >> 2) + 0]; u_xlat2.x = float(0.0); u_xlat2.y = float(0.0); u_xlat2.z = float(0.0); u_xlat2.w = float(0.0); u_xlat3.x = float(0.0); u_xlat3.y = float(0.0); u_xlat3.z = float(0.0); u_xlat3.w = float(0.0); u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); for(uint u_xlatu_loop_2 = u_xlatu12 ; u_xlatu_loop_2> 2) + 0]; u_xlatu17 = u_xlatu5 >> (16u & uint(0x1F)); u_xlat17 = float(u_xlatu17); u_xlat17 = u_xlat17 * 1.52590219e-05; u_xlati5 = int(u_xlatu5 & 65535u); u_xlati5 = u_xlati5 + int(g_PoseOffsets[1].y); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat6.x; u_xlat10.y = u_xlat7.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat6.y; u_xlat11.y = u_xlat7.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat6.z; u_xlat9.y = u_xlat7.z; u_xlat9.z = u_xlat8.z; u_xlat2 = u_xlat10 * vec4(u_xlat17) + u_xlat2; u_xlat3 = u_xlat11 * vec4(u_xlat17) + u_xlat3; u_xlat4 = u_xlat9 * vec4(u_xlat17) + u_xlat4; } u_xlat1.w = 1.0; u_xlat2.x = dot(u_xlat2, u_xlat1); u_xlat2.y = dot(u_xlat3, u_xlat1); u_xlat2.z = dot(u_xlat4, u_xlat1); inOutVertices5_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat2.x)); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat2.y)); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat2.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlatu12 = inSkin4_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati24 = int(u_xlatu0) + 1; u_xlatu24 = inSkin4_buf[u_xlati24].value[(0 >> 2) + 0]; u_xlat2.x = float(0.0); u_xlat2.y = float(0.0); u_xlat2.z = float(0.0); u_xlat2.w = float(0.0); u_xlat3.x = float(0.0); u_xlat3.y = float(0.0); u_xlat3.z = float(0.0); u_xlat3.w = float(0.0); u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); for(uint u_xlatu_loop_3 = u_xlatu12 ; u_xlatu_loop_3> 2) + 0]; u_xlatu17 = u_xlatu5 >> (16u & uint(0x1F)); u_xlat17 = float(u_xlatu17); u_xlat17 = u_xlat17 * 1.52590219e-05; u_xlati5 = int(u_xlatu5 & 65535u); u_xlati5 = u_xlati5 + int(g_PoseOffsets[1].x); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat6.x; u_xlat10.y = u_xlat7.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat6.y; u_xlat11.y = u_xlat7.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat6.z; u_xlat9.y = u_xlat7.z; u_xlat9.z = u_xlat8.z; u_xlat2 = u_xlat10 * vec4(u_xlat17) + u_xlat2; u_xlat3 = u_xlat11 * vec4(u_xlat17) + u_xlat3; u_xlat4 = u_xlat9 * vec4(u_xlat17) + u_xlat4; } u_xlat1.w = 1.0; u_xlat2.x = dot(u_xlat2, u_xlat1); u_xlat2.y = dot(u_xlat3, u_xlat1); u_xlat2.z = dot(u_xlat4, u_xlat1); inOutVertices4_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat2.x)); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat2.y)); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat2.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlatu12 = inSkin3_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati24 = int(u_xlatu0) + 1; u_xlatu24 = inSkin3_buf[u_xlati24].value[(0 >> 2) + 0]; u_xlat2.x = float(0.0); u_xlat2.y = float(0.0); u_xlat2.z = float(0.0); u_xlat2.w = float(0.0); u_xlat3.x = float(0.0); u_xlat3.y = float(0.0); u_xlat3.z = float(0.0); u_xlat3.w = float(0.0); u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); for(uint u_xlatu_loop_4 = u_xlatu12 ; u_xlatu_loop_4> 2) + 0]; u_xlatu17 = u_xlatu5 >> (16u & uint(0x1F)); u_xlat17 = float(u_xlatu17); u_xlat17 = u_xlat17 * 1.52590219e-05; u_xlati5 = int(u_xlatu5 & 65535u); u_xlati5 = u_xlati5 + int(g_PoseOffsets[0].w); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat6.x; u_xlat10.y = u_xlat7.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat6.y; u_xlat11.y = u_xlat7.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat6.z; u_xlat9.y = u_xlat7.z; u_xlat9.z = u_xlat8.z; u_xlat2 = u_xlat10 * vec4(u_xlat17) + u_xlat2; u_xlat3 = u_xlat11 * vec4(u_xlat17) + u_xlat3; u_xlat4 = u_xlat9 * vec4(u_xlat17) + u_xlat4; } u_xlat1.w = 1.0; u_xlat2.x = dot(u_xlat2, u_xlat1); u_xlat2.y = dot(u_xlat3, u_xlat1); u_xlat2.z = dot(u_xlat4, u_xlat1); inOutVertices3_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat2.x)); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat2.y)); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat2.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlatu12 = inSkin2_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati24 = int(u_xlatu0) + 1; u_xlatu24 = inSkin2_buf[u_xlati24].value[(0 >> 2) + 0]; u_xlat2.x = float(0.0); u_xlat2.y = float(0.0); u_xlat2.z = float(0.0); u_xlat2.w = float(0.0); u_xlat3.x = float(0.0); u_xlat3.y = float(0.0); u_xlat3.z = float(0.0); u_xlat3.w = float(0.0); u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); for(uint u_xlatu_loop_5 = u_xlatu12 ; u_xlatu_loop_5> 2) + 0]; u_xlatu17 = u_xlatu5 >> (16u & uint(0x1F)); u_xlat17 = float(u_xlatu17); u_xlat17 = u_xlat17 * 1.52590219e-05; u_xlati5 = int(u_xlatu5 & 65535u); u_xlati5 = u_xlati5 + int(g_PoseOffsets[0].z); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat6.x; u_xlat10.y = u_xlat7.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat6.y; u_xlat11.y = u_xlat7.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat6.z; u_xlat9.y = u_xlat7.z; u_xlat9.z = u_xlat8.z; u_xlat2 = u_xlat10 * vec4(u_xlat17) + u_xlat2; u_xlat3 = u_xlat11 * vec4(u_xlat17) + u_xlat3; u_xlat4 = u_xlat9 * vec4(u_xlat17) + u_xlat4; } u_xlat1.w = 1.0; u_xlat2.x = dot(u_xlat2, u_xlat1); u_xlat2.y = dot(u_xlat3, u_xlat1); u_xlat2.z = dot(u_xlat4, u_xlat1); inOutVertices2_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat2.x)); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat2.y)); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat2.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlatu12 = inSkin1_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati24 = int(u_xlatu0) + 1; u_xlatu24 = inSkin1_buf[u_xlati24].value[(0 >> 2) + 0]; u_xlat2.x = float(0.0); u_xlat2.y = float(0.0); u_xlat2.z = float(0.0); u_xlat2.w = float(0.0); u_xlat3.x = float(0.0); u_xlat3.y = float(0.0); u_xlat3.z = float(0.0); u_xlat3.w = float(0.0); u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); for(uint u_xlatu_loop_6 = u_xlatu12 ; u_xlatu_loop_6> 2) + 0]; u_xlatu17 = u_xlatu5 >> (16u & uint(0x1F)); u_xlat17 = float(u_xlatu17); u_xlat17 = u_xlat17 * 1.52590219e-05; u_xlati5 = int(u_xlatu5 & 65535u); u_xlati5 = u_xlati5 + int(g_PoseOffsets[0].y); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat6.x; u_xlat10.y = u_xlat7.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat6.y; u_xlat11.y = u_xlat7.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat6.z; u_xlat9.y = u_xlat7.z; u_xlat9.z = u_xlat8.z; u_xlat2 = u_xlat10 * vec4(u_xlat17) + u_xlat2; u_xlat3 = u_xlat11 * vec4(u_xlat17) + u_xlat3; u_xlat4 = u_xlat9 * vec4(u_xlat17) + u_xlat4; } u_xlat1.w = 1.0; u_xlat2.x = dot(u_xlat2, u_xlat1); u_xlat2.y = dot(u_xlat3, u_xlat1); u_xlat2.z = dot(u_xlat4, u_xlat1); inOutVertices1_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat2.x)); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat2.y)); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat2.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlatu12 = inSkin0_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati24 = int(u_xlatu0) + 1; u_xlatu24 = inSkin0_buf[u_xlati24].value[(0 >> 2) + 0]; u_xlat2.x = float(0.0); u_xlat2.y = float(0.0); u_xlat2.z = float(0.0); u_xlat2.w = float(0.0); u_xlat3.x = float(0.0); u_xlat3.y = float(0.0); u_xlat3.z = float(0.0); u_xlat3.w = float(0.0); u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); for(uint u_xlatu_loop_7 = u_xlatu12 ; u_xlatu_loop_7> 2) + 0]; u_xlatu17 = u_xlatu5 >> (16u & uint(0x1F)); u_xlat17 = float(u_xlatu17); u_xlat17 = u_xlat17 * 1.52590219e-05; u_xlati5 = int(u_xlatu5 & 65535u); u_xlati5 = u_xlati5 + int(g_PoseOffsets[0].x); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat6.x; u_xlat10.y = u_xlat7.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat6.y; u_xlat11.y = u_xlat7.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat6.z; u_xlat9.y = u_xlat7.z; u_xlat9.z = u_xlat8.z; u_xlat2 = u_xlat10 * vec4(u_xlat17) + u_xlat2; u_xlat3 = u_xlat11 * vec4(u_xlat17) + u_xlat3; u_xlat4 = u_xlat9 * vec4(u_xlat17) + u_xlat4; } u_xlat1.w = 1.0; u_xlat2.x = dot(u_xlat2, u_xlat1); u_xlat2.y = dot(u_xlat3, u_xlat1); u_xlat2.z = dot(u_xlat4, u_xlat1); inOutVertices0_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat2.x)); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat2.y)); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat2.z)); } } } } } } } } return; } @AbatchMainInPlaceComputeSkinInPlaceCBufferinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6 inMatricesinOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices6M#version 310 es #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif UNITY_BINDING(0) uniform ComputeSkinInPlaceCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; uvec4 g_PoseOffsets[2]; uint g_poseBufferMaxIndex; }; struct inSkin0_type { uint[1] value; }; layout(std430, binding = 7) readonly buffer inSkin0 { inSkin0_type inSkin0_buf[]; }; struct inSkin1_type { uint[1] value; }; layout(std430, binding = 8) readonly buffer inSkin1 { inSkin1_type inSkin1_buf[]; }; struct inSkin2_type { uint[1] value; }; layout(std430, binding = 9) readonly buffer inSkin2 { inSkin2_type inSkin2_buf[]; }; struct inSkin3_type { uint[1] value; }; layout(std430, binding = 10) readonly buffer inSkin3 { inSkin3_type inSkin3_buf[]; }; struct inSkin4_type { uint[1] value; }; layout(std430, binding = 11) readonly buffer inSkin4 { inSkin4_type inSkin4_buf[]; }; struct inSkin5_type { uint[1] value; }; layout(std430, binding = 12) readonly buffer inSkin5 { inSkin5_type inSkin5_buf[]; }; struct inSkin6_type { uint[1] value; }; layout(std430, binding = 13) readonly buffer inSkin6 { inSkin6_type inSkin6_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 14) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct inOutVertices0_type { uint[6] value; }; layout(std430, binding = 0) buffer inOutVertices0 { inOutVertices0_type inOutVertices0_buf[]; }; struct inOutVertices1_type { uint[6] value; }; layout(std430, binding = 1) buffer inOutVertices1 { inOutVertices1_type inOutVertices1_buf[]; }; struct inOutVertices2_type { uint[6] value; }; layout(std430, binding = 2) buffer inOutVertices2 { inOutVertices2_type inOutVertices2_buf[]; }; struct inOutVertices3_type { uint[6] value; }; layout(std430, binding = 3) buffer inOutVertices3 { inOutVertices3_type inOutVertices3_buf[]; }; struct inOutVertices4_type { uint[6] value; }; layout(std430, binding = 4) buffer inOutVertices4 { inOutVertices4_type inOutVertices4_buf[]; }; struct inOutVertices5_type { uint[6] value; }; layout(std430, binding = 5) buffer inOutVertices5 { inOutVertices5_type inOutVertices5_buf[]; }; struct inOutVertices6_type { uint[6] value; }; layout(std430, binding = 6) buffer inOutVertices6 { inOutVertices6_type inOutVertices6_buf[]; }; uint u_xlatu0; bool u_xlatb0; vec4 u_xlat1; vec3 u_xlat2; vec4 u_xlat3; vec4 u_xlat4; vec4 u_xlat5; vec4 u_xlat6; uint u_xlatu6; vec4 u_xlat7; vec3 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; vec4 u_xlat11; uint u_xlatu12; bool u_xlatb12; vec3 u_xlat18; int u_xlati24; uint u_xlatu24; uint u_xlatu36; int u_xlati38; uint u_xlatu38; bool u_xlatb38; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].z); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlatu12 = inSkin6_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati24 = int(u_xlatu0) + 1; u_xlatu24 = inSkin6_buf[u_xlati24].value[(0 >> 2) + 0]; u_xlat3.x = float(0.0); u_xlat3.y = float(0.0); u_xlat3.z = float(0.0); u_xlat3.w = float(0.0); u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlat5.x = float(0.0); u_xlat5.y = float(0.0); u_xlat5.z = float(0.0); u_xlat5.w = float(0.0); for(uint u_xlatu_loop_1 = u_xlatu12 ; u_xlatu_loop_1> 2) + 0]; u_xlatu6 = u_xlatu38 >> (16u & uint(0x1F)); u_xlat6.x = float(u_xlatu6); u_xlat6.x = u_xlat6.x * 1.52590219e-05; u_xlati38 = int(u_xlatu38 & 65535u); u_xlati38 = u_xlati38 + int(g_PoseOffsets[1].z); u_xlat18.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat18.x; u_xlat10.y = u_xlat7.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat18.y; u_xlat11.y = u_xlat7.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat18.z; u_xlat9.y = u_xlat7.z; u_xlat9.z = u_xlat8.z; u_xlat3 = u_xlat10 * u_xlat6.xxxx + u_xlat3; u_xlat4 = u_xlat11 * u_xlat6.xxxx + u_xlat4; u_xlat5 = u_xlat9 * u_xlat6.xxxx + u_xlat5; } u_xlat6.xyz = u_xlat1.xyz; u_xlat6.w = 1.0; u_xlat7.x = dot(u_xlat3, u_xlat6); u_xlat7.y = dot(u_xlat4, u_xlat6); u_xlat7.z = dot(u_xlat5, u_xlat6); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat3.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat4.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat5.yzx, u_xlat2.xyz); inOutVertices6_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat7.x)); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat7.y)); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat7.z)); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat7.w)); inOutVertices6_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat1.x)); inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat1.y)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].y); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlatu12 = inSkin5_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati24 = int(u_xlatu0) + 1; u_xlatu24 = inSkin5_buf[u_xlati24].value[(0 >> 2) + 0]; u_xlat3.x = float(0.0); u_xlat3.y = float(0.0); u_xlat3.z = float(0.0); u_xlat3.w = float(0.0); u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlat5.x = float(0.0); u_xlat5.y = float(0.0); u_xlat5.z = float(0.0); u_xlat5.w = float(0.0); for(uint u_xlatu_loop_2 = u_xlatu12 ; u_xlatu_loop_2> 2) + 0]; u_xlatu6 = u_xlatu38 >> (16u & uint(0x1F)); u_xlat6.x = float(u_xlatu6); u_xlat6.x = u_xlat6.x * 1.52590219e-05; u_xlati38 = int(u_xlatu38 & 65535u); u_xlati38 = u_xlati38 + int(g_PoseOffsets[1].y); u_xlat18.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat18.x; u_xlat10.y = u_xlat7.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat18.y; u_xlat11.y = u_xlat7.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat18.z; u_xlat9.y = u_xlat7.z; u_xlat9.z = u_xlat8.z; u_xlat3 = u_xlat10 * u_xlat6.xxxx + u_xlat3; u_xlat4 = u_xlat11 * u_xlat6.xxxx + u_xlat4; u_xlat5 = u_xlat9 * u_xlat6.xxxx + u_xlat5; } u_xlat6.xyz = u_xlat1.xyz; u_xlat6.w = 1.0; u_xlat7.x = dot(u_xlat3, u_xlat6); u_xlat7.y = dot(u_xlat4, u_xlat6); u_xlat7.z = dot(u_xlat5, u_xlat6); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat3.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat4.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat5.yzx, u_xlat2.xyz); inOutVertices5_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat7.x)); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat7.y)); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat7.z)); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat7.w)); inOutVertices5_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat1.x)); inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat1.y)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlatu12 = inSkin4_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati24 = int(u_xlatu0) + 1; u_xlatu24 = inSkin4_buf[u_xlati24].value[(0 >> 2) + 0]; u_xlat3.x = float(0.0); u_xlat3.y = float(0.0); u_xlat3.z = float(0.0); u_xlat3.w = float(0.0); u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlat5.x = float(0.0); u_xlat5.y = float(0.0); u_xlat5.z = float(0.0); u_xlat5.w = float(0.0); for(uint u_xlatu_loop_3 = u_xlatu12 ; u_xlatu_loop_3> 2) + 0]; u_xlatu6 = u_xlatu38 >> (16u & uint(0x1F)); u_xlat6.x = float(u_xlatu6); u_xlat6.x = u_xlat6.x * 1.52590219e-05; u_xlati38 = int(u_xlatu38 & 65535u); u_xlati38 = u_xlati38 + int(g_PoseOffsets[1].x); u_xlat18.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat18.x; u_xlat10.y = u_xlat7.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat18.y; u_xlat11.y = u_xlat7.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat18.z; u_xlat9.y = u_xlat7.z; u_xlat9.z = u_xlat8.z; u_xlat3 = u_xlat10 * u_xlat6.xxxx + u_xlat3; u_xlat4 = u_xlat11 * u_xlat6.xxxx + u_xlat4; u_xlat5 = u_xlat9 * u_xlat6.xxxx + u_xlat5; } u_xlat6.xyz = u_xlat1.xyz; u_xlat6.w = 1.0; u_xlat7.x = dot(u_xlat3, u_xlat6); u_xlat7.y = dot(u_xlat4, u_xlat6); u_xlat7.z = dot(u_xlat5, u_xlat6); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat3.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat4.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat5.yzx, u_xlat2.xyz); inOutVertices4_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat7.x)); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat7.y)); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat7.z)); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat7.w)); inOutVertices4_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat1.x)); inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat1.y)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlatu12 = inSkin3_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati24 = int(u_xlatu0) + 1; u_xlatu24 = inSkin3_buf[u_xlati24].value[(0 >> 2) + 0]; u_xlat3.x = float(0.0); u_xlat3.y = float(0.0); u_xlat3.z = float(0.0); u_xlat3.w = float(0.0); u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlat5.x = float(0.0); u_xlat5.y = float(0.0); u_xlat5.z = float(0.0); u_xlat5.w = float(0.0); for(uint u_xlatu_loop_4 = u_xlatu12 ; u_xlatu_loop_4> 2) + 0]; u_xlatu6 = u_xlatu38 >> (16u & uint(0x1F)); u_xlat6.x = float(u_xlatu6); u_xlat6.x = u_xlat6.x * 1.52590219e-05; u_xlati38 = int(u_xlatu38 & 65535u); u_xlati38 = u_xlati38 + int(g_PoseOffsets[0].w); u_xlat18.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat18.x; u_xlat10.y = u_xlat7.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat18.y; u_xlat11.y = u_xlat7.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat18.z; u_xlat9.y = u_xlat7.z; u_xlat9.z = u_xlat8.z; u_xlat3 = u_xlat10 * u_xlat6.xxxx + u_xlat3; u_xlat4 = u_xlat11 * u_xlat6.xxxx + u_xlat4; u_xlat5 = u_xlat9 * u_xlat6.xxxx + u_xlat5; } u_xlat6.xyz = u_xlat1.xyz; u_xlat6.w = 1.0; u_xlat7.x = dot(u_xlat3, u_xlat6); u_xlat7.y = dot(u_xlat4, u_xlat6); u_xlat7.z = dot(u_xlat5, u_xlat6); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat3.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat4.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat5.yzx, u_xlat2.xyz); inOutVertices3_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat7.x)); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat7.y)); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat7.z)); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat7.w)); inOutVertices3_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat1.x)); inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat1.y)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlatu12 = inSkin2_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati24 = int(u_xlatu0) + 1; u_xlatu24 = inSkin2_buf[u_xlati24].value[(0 >> 2) + 0]; u_xlat3.x = float(0.0); u_xlat3.y = float(0.0); u_xlat3.z = float(0.0); u_xlat3.w = float(0.0); u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlat5.x = float(0.0); u_xlat5.y = float(0.0); u_xlat5.z = float(0.0); u_xlat5.w = float(0.0); for(uint u_xlatu_loop_5 = u_xlatu12 ; u_xlatu_loop_5> 2) + 0]; u_xlatu6 = u_xlatu38 >> (16u & uint(0x1F)); u_xlat6.x = float(u_xlatu6); u_xlat6.x = u_xlat6.x * 1.52590219e-05; u_xlati38 = int(u_xlatu38 & 65535u); u_xlati38 = u_xlati38 + int(g_PoseOffsets[0].z); u_xlat18.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat18.x; u_xlat10.y = u_xlat7.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat18.y; u_xlat11.y = u_xlat7.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat18.z; u_xlat9.y = u_xlat7.z; u_xlat9.z = u_xlat8.z; u_xlat3 = u_xlat10 * u_xlat6.xxxx + u_xlat3; u_xlat4 = u_xlat11 * u_xlat6.xxxx + u_xlat4; u_xlat5 = u_xlat9 * u_xlat6.xxxx + u_xlat5; } u_xlat6.xyz = u_xlat1.xyz; u_xlat6.w = 1.0; u_xlat7.x = dot(u_xlat3, u_xlat6); u_xlat7.y = dot(u_xlat4, u_xlat6); u_xlat7.z = dot(u_xlat5, u_xlat6); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat3.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat4.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat5.yzx, u_xlat2.xyz); inOutVertices2_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat7.x)); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat7.y)); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat7.z)); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat7.w)); inOutVertices2_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat1.x)); inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat1.y)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlatu12 = inSkin1_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati24 = int(u_xlatu0) + 1; u_xlatu24 = inSkin1_buf[u_xlati24].value[(0 >> 2) + 0]; u_xlat3.x = float(0.0); u_xlat3.y = float(0.0); u_xlat3.z = float(0.0); u_xlat3.w = float(0.0); u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlat5.x = float(0.0); u_xlat5.y = float(0.0); u_xlat5.z = float(0.0); u_xlat5.w = float(0.0); for(uint u_xlatu_loop_6 = u_xlatu12 ; u_xlatu_loop_6> 2) + 0]; u_xlatu6 = u_xlatu38 >> (16u & uint(0x1F)); u_xlat6.x = float(u_xlatu6); u_xlat6.x = u_xlat6.x * 1.52590219e-05; u_xlati38 = int(u_xlatu38 & 65535u); u_xlati38 = u_xlati38 + int(g_PoseOffsets[0].y); u_xlat18.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat18.x; u_xlat10.y = u_xlat7.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat18.y; u_xlat11.y = u_xlat7.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat18.z; u_xlat9.y = u_xlat7.z; u_xlat9.z = u_xlat8.z; u_xlat3 = u_xlat10 * u_xlat6.xxxx + u_xlat3; u_xlat4 = u_xlat11 * u_xlat6.xxxx + u_xlat4; u_xlat5 = u_xlat9 * u_xlat6.xxxx + u_xlat5; } u_xlat6.xyz = u_xlat1.xyz; u_xlat6.w = 1.0; u_xlat7.x = dot(u_xlat3, u_xlat6); u_xlat7.y = dot(u_xlat4, u_xlat6); u_xlat7.z = dot(u_xlat5, u_xlat6); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat3.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat4.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat5.yzx, u_xlat2.xyz); inOutVertices1_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat7.x)); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat7.y)); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat7.z)); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat7.w)); inOutVertices1_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat1.x)); inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat1.y)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlatu12 = inSkin0_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati24 = int(u_xlatu0) + 1; u_xlatu24 = inSkin0_buf[u_xlati24].value[(0 >> 2) + 0]; u_xlat3.x = float(0.0); u_xlat3.y = float(0.0); u_xlat3.z = float(0.0); u_xlat3.w = float(0.0); u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlat5.x = float(0.0); u_xlat5.y = float(0.0); u_xlat5.z = float(0.0); u_xlat5.w = float(0.0); for(uint u_xlatu_loop_7 = u_xlatu12 ; u_xlatu_loop_7> 2) + 0]; u_xlatu6 = u_xlatu38 >> (16u & uint(0x1F)); u_xlat6.x = float(u_xlatu6); u_xlat6.x = u_xlat6.x * 1.52590219e-05; u_xlati38 = int(u_xlatu38 & 65535u); u_xlati38 = u_xlati38 + int(g_PoseOffsets[0].x); u_xlat18.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat18.x; u_xlat10.y = u_xlat7.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat18.y; u_xlat11.y = u_xlat7.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat18.z; u_xlat9.y = u_xlat7.z; u_xlat9.z = u_xlat8.z; u_xlat3 = u_xlat10 * u_xlat6.xxxx + u_xlat3; u_xlat4 = u_xlat11 * u_xlat6.xxxx + u_xlat4; u_xlat5 = u_xlat9 * u_xlat6.xxxx + u_xlat5; } u_xlat6.xyz = u_xlat1.xyz; u_xlat6.w = 1.0; u_xlat7.x = dot(u_xlat3, u_xlat6); u_xlat7.y = dot(u_xlat4, u_xlat6); u_xlat7.z = dot(u_xlat5, u_xlat6); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat3.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat4.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat5.yzx, u_xlat2.xyz); inOutVertices0_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat7.x)); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat7.y)); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat7.z)); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat7.w)); inOutVertices0_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat1.x)); inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat1.y)); } } } } } } } } return; } @AbatchMainInPlaceComputeSkinInPlaceCBufferinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6 inMatricesinOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices6߮#version 310 es #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif UNITY_BINDING(0) uniform ComputeSkinInPlaceCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; uvec4 g_PoseOffsets[2]; uint g_poseBufferMaxIndex; }; struct inSkin0_type { uint[1] value; }; layout(std430, binding = 7) readonly buffer inSkin0 { inSkin0_type inSkin0_buf[]; }; struct inSkin1_type { uint[1] value; }; layout(std430, binding = 8) readonly buffer inSkin1 { inSkin1_type inSkin1_buf[]; }; struct inSkin2_type { uint[1] value; }; layout(std430, binding = 9) readonly buffer inSkin2 { inSkin2_type inSkin2_buf[]; }; struct inSkin3_type { uint[1] value; }; layout(std430, binding = 10) readonly buffer inSkin3 { inSkin3_type inSkin3_buf[]; }; struct inSkin4_type { uint[1] value; }; layout(std430, binding = 11) readonly buffer inSkin4 { inSkin4_type inSkin4_buf[]; }; struct inSkin5_type { uint[1] value; }; layout(std430, binding = 12) readonly buffer inSkin5 { inSkin5_type inSkin5_buf[]; }; struct inSkin6_type { uint[1] value; }; layout(std430, binding = 13) readonly buffer inSkin6 { inSkin6_type inSkin6_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 14) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct inOutVertices0_type { uint[10] value; }; layout(std430, binding = 0) buffer inOutVertices0 { inOutVertices0_type inOutVertices0_buf[]; }; struct inOutVertices1_type { uint[10] value; }; layout(std430, binding = 1) buffer inOutVertices1 { inOutVertices1_type inOutVertices1_buf[]; }; struct inOutVertices2_type { uint[10] value; }; layout(std430, binding = 2) buffer inOutVertices2 { inOutVertices2_type inOutVertices2_buf[]; }; struct inOutVertices3_type { uint[10] value; }; layout(std430, binding = 3) buffer inOutVertices3 { inOutVertices3_type inOutVertices3_buf[]; }; struct inOutVertices4_type { uint[10] value; }; layout(std430, binding = 4) buffer inOutVertices4 { inOutVertices4_type inOutVertices4_buf[]; }; struct inOutVertices5_type { uint[10] value; }; layout(std430, binding = 5) buffer inOutVertices5 { inOutVertices5_type inOutVertices5_buf[]; }; struct inOutVertices6_type { uint[10] value; }; layout(std430, binding = 6) buffer inOutVertices6 { inOutVertices6_type inOutVertices6_buf[]; }; uint u_xlatu0; bool u_xlatb0; vec4 u_xlat1; vec4 u_xlat2; vec3 u_xlat3; vec4 u_xlat4; vec4 u_xlat5; vec4 u_xlat6; vec4 u_xlat7; uint u_xlatu7; vec4 u_xlat8; vec3 u_xlat9; vec4 u_xlat10; vec4 u_xlat11; vec4 u_xlat12; float u_xlat13; uint u_xlatu13; bool u_xlatb13; vec3 u_xlat20; int u_xlati26; uint u_xlatu26; uint u_xlatu39; int u_xlati42; uint u_xlatu42; bool u_xlatb42; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].z); u_xlatb13 = u_xlatu0> 2) + 3]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.z = uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(32 >> 2) + 0]); u_xlatu13 = inSkin6_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati26 = int(u_xlatu0) + 1; u_xlatu26 = inSkin6_buf[u_xlati26].value[(0 >> 2) + 0]; u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlat5.x = float(0.0); u_xlat5.y = float(0.0); u_xlat5.z = float(0.0); u_xlat5.w = float(0.0); u_xlat6.x = float(0.0); u_xlat6.y = float(0.0); u_xlat6.z = float(0.0); u_xlat6.w = float(0.0); for(uint u_xlatu_loop_1 = u_xlatu13 ; u_xlatu_loop_1> 2) + 0]; u_xlatu7 = u_xlatu42 >> (16u & uint(0x1F)); u_xlat7.x = float(u_xlatu7); u_xlat7.x = u_xlat7.x * 1.52590219e-05; u_xlati42 = int(u_xlatu42 & 65535u); u_xlati42 = u_xlati42 + int(g_PoseOffsets[1].z); u_xlat20.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(0 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(16 >> 2) + 2])); u_xlat9.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat20.x; u_xlat11.y = u_xlat8.x; u_xlat11.z = u_xlat9.x; u_xlat11.w = u_xlat10.x; u_xlat12.x = u_xlat20.y; u_xlat12.y = u_xlat8.y; u_xlat12.z = u_xlat9.y; u_xlat12.w = u_xlat10.y; u_xlat10.x = u_xlat20.z; u_xlat10.y = u_xlat8.z; u_xlat10.z = u_xlat9.z; u_xlat4 = u_xlat11 * u_xlat7.xxxx + u_xlat4; u_xlat5 = u_xlat12 * u_xlat7.xxxx + u_xlat5; u_xlat6 = u_xlat10 * u_xlat7.xxxx + u_xlat6; } u_xlat7.xyz = u_xlat1.yzw; u_xlat7.w = 1.0; u_xlat8.x = dot(u_xlat4, u_xlat7); u_xlat8.y = dot(u_xlat5, u_xlat7); u_xlat8.z = dot(u_xlat6, u_xlat7); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat7.x = dot(u_xlat5.xyz, u_xlat1.xyz); u_xlat7.y = dot(u_xlat6.xyz, u_xlat1.xyz); u_xlat3.xy = u_xlat2.zw; u_xlat7.z = dot(u_xlat4.xyz, u_xlat3.xyz); u_xlat7.w = dot(u_xlat5.xyz, u_xlat3.xyz); u_xlat13 = dot(u_xlat6.xyz, u_xlat3.xyz); inOutVertices6_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat8.x)); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat8.y)); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat8.z)); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat8.w)); inOutVertices6_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat7.x)); inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat7.y)); inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat7.z)); inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat7.w)); inOutVertices6_buf[u_xlatu0].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat13)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].y); u_xlatb13 = u_xlatu0> 2) + 3]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.z = uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(32 >> 2) + 0]); u_xlatu13 = inSkin5_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati26 = int(u_xlatu0) + 1; u_xlatu26 = inSkin5_buf[u_xlati26].value[(0 >> 2) + 0]; u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlat5.x = float(0.0); u_xlat5.y = float(0.0); u_xlat5.z = float(0.0); u_xlat5.w = float(0.0); u_xlat6.x = float(0.0); u_xlat6.y = float(0.0); u_xlat6.z = float(0.0); u_xlat6.w = float(0.0); for(uint u_xlatu_loop_2 = u_xlatu13 ; u_xlatu_loop_2> 2) + 0]; u_xlatu7 = u_xlatu42 >> (16u & uint(0x1F)); u_xlat7.x = float(u_xlatu7); u_xlat7.x = u_xlat7.x * 1.52590219e-05; u_xlati42 = int(u_xlatu42 & 65535u); u_xlati42 = u_xlati42 + int(g_PoseOffsets[1].y); u_xlat20.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(0 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(16 >> 2) + 2])); u_xlat9.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat20.x; u_xlat11.y = u_xlat8.x; u_xlat11.z = u_xlat9.x; u_xlat11.w = u_xlat10.x; u_xlat12.x = u_xlat20.y; u_xlat12.y = u_xlat8.y; u_xlat12.z = u_xlat9.y; u_xlat12.w = u_xlat10.y; u_xlat10.x = u_xlat20.z; u_xlat10.y = u_xlat8.z; u_xlat10.z = u_xlat9.z; u_xlat4 = u_xlat11 * u_xlat7.xxxx + u_xlat4; u_xlat5 = u_xlat12 * u_xlat7.xxxx + u_xlat5; u_xlat6 = u_xlat10 * u_xlat7.xxxx + u_xlat6; } u_xlat7.xyz = u_xlat1.yzw; u_xlat7.w = 1.0; u_xlat8.x = dot(u_xlat4, u_xlat7); u_xlat8.y = dot(u_xlat5, u_xlat7); u_xlat8.z = dot(u_xlat6, u_xlat7); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat7.x = dot(u_xlat5.xyz, u_xlat1.xyz); u_xlat7.y = dot(u_xlat6.xyz, u_xlat1.xyz); u_xlat3.xy = u_xlat2.zw; u_xlat7.z = dot(u_xlat4.xyz, u_xlat3.xyz); u_xlat7.w = dot(u_xlat5.xyz, u_xlat3.xyz); u_xlat13 = dot(u_xlat6.xyz, u_xlat3.xyz); inOutVertices5_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat8.x)); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat8.y)); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat8.z)); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat8.w)); inOutVertices5_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat7.x)); inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat7.y)); inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat7.z)); inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat7.w)); inOutVertices5_buf[u_xlatu0].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat13)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb13 = u_xlatu0> 2) + 3]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.z = uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(32 >> 2) + 0]); u_xlatu13 = inSkin4_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati26 = int(u_xlatu0) + 1; u_xlatu26 = inSkin4_buf[u_xlati26].value[(0 >> 2) + 0]; u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlat5.x = float(0.0); u_xlat5.y = float(0.0); u_xlat5.z = float(0.0); u_xlat5.w = float(0.0); u_xlat6.x = float(0.0); u_xlat6.y = float(0.0); u_xlat6.z = float(0.0); u_xlat6.w = float(0.0); for(uint u_xlatu_loop_3 = u_xlatu13 ; u_xlatu_loop_3> 2) + 0]; u_xlatu7 = u_xlatu42 >> (16u & uint(0x1F)); u_xlat7.x = float(u_xlatu7); u_xlat7.x = u_xlat7.x * 1.52590219e-05; u_xlati42 = int(u_xlatu42 & 65535u); u_xlati42 = u_xlati42 + int(g_PoseOffsets[1].x); u_xlat20.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(0 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(16 >> 2) + 2])); u_xlat9.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat20.x; u_xlat11.y = u_xlat8.x; u_xlat11.z = u_xlat9.x; u_xlat11.w = u_xlat10.x; u_xlat12.x = u_xlat20.y; u_xlat12.y = u_xlat8.y; u_xlat12.z = u_xlat9.y; u_xlat12.w = u_xlat10.y; u_xlat10.x = u_xlat20.z; u_xlat10.y = u_xlat8.z; u_xlat10.z = u_xlat9.z; u_xlat4 = u_xlat11 * u_xlat7.xxxx + u_xlat4; u_xlat5 = u_xlat12 * u_xlat7.xxxx + u_xlat5; u_xlat6 = u_xlat10 * u_xlat7.xxxx + u_xlat6; } u_xlat7.xyz = u_xlat1.yzw; u_xlat7.w = 1.0; u_xlat8.x = dot(u_xlat4, u_xlat7); u_xlat8.y = dot(u_xlat5, u_xlat7); u_xlat8.z = dot(u_xlat6, u_xlat7); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat7.x = dot(u_xlat5.xyz, u_xlat1.xyz); u_xlat7.y = dot(u_xlat6.xyz, u_xlat1.xyz); u_xlat3.xy = u_xlat2.zw; u_xlat7.z = dot(u_xlat4.xyz, u_xlat3.xyz); u_xlat7.w = dot(u_xlat5.xyz, u_xlat3.xyz); u_xlat13 = dot(u_xlat6.xyz, u_xlat3.xyz); inOutVertices4_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat8.x)); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat8.y)); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat8.z)); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat8.w)); inOutVertices4_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat7.x)); inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat7.y)); inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat7.z)); inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat7.w)); inOutVertices4_buf[u_xlatu0].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat13)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb13 = u_xlatu0> 2) + 3]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.z = uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(32 >> 2) + 0]); u_xlatu13 = inSkin3_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati26 = int(u_xlatu0) + 1; u_xlatu26 = inSkin3_buf[u_xlati26].value[(0 >> 2) + 0]; u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlat5.x = float(0.0); u_xlat5.y = float(0.0); u_xlat5.z = float(0.0); u_xlat5.w = float(0.0); u_xlat6.x = float(0.0); u_xlat6.y = float(0.0); u_xlat6.z = float(0.0); u_xlat6.w = float(0.0); for(uint u_xlatu_loop_4 = u_xlatu13 ; u_xlatu_loop_4> 2) + 0]; u_xlatu7 = u_xlatu42 >> (16u & uint(0x1F)); u_xlat7.x = float(u_xlatu7); u_xlat7.x = u_xlat7.x * 1.52590219e-05; u_xlati42 = int(u_xlatu42 & 65535u); u_xlati42 = u_xlati42 + int(g_PoseOffsets[0].w); u_xlat20.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(0 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(16 >> 2) + 2])); u_xlat9.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat20.x; u_xlat11.y = u_xlat8.x; u_xlat11.z = u_xlat9.x; u_xlat11.w = u_xlat10.x; u_xlat12.x = u_xlat20.y; u_xlat12.y = u_xlat8.y; u_xlat12.z = u_xlat9.y; u_xlat12.w = u_xlat10.y; u_xlat10.x = u_xlat20.z; u_xlat10.y = u_xlat8.z; u_xlat10.z = u_xlat9.z; u_xlat4 = u_xlat11 * u_xlat7.xxxx + u_xlat4; u_xlat5 = u_xlat12 * u_xlat7.xxxx + u_xlat5; u_xlat6 = u_xlat10 * u_xlat7.xxxx + u_xlat6; } u_xlat7.xyz = u_xlat1.yzw; u_xlat7.w = 1.0; u_xlat8.x = dot(u_xlat4, u_xlat7); u_xlat8.y = dot(u_xlat5, u_xlat7); u_xlat8.z = dot(u_xlat6, u_xlat7); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat7.x = dot(u_xlat5.xyz, u_xlat1.xyz); u_xlat7.y = dot(u_xlat6.xyz, u_xlat1.xyz); u_xlat3.xy = u_xlat2.zw; u_xlat7.z = dot(u_xlat4.xyz, u_xlat3.xyz); u_xlat7.w = dot(u_xlat5.xyz, u_xlat3.xyz); u_xlat13 = dot(u_xlat6.xyz, u_xlat3.xyz); inOutVertices3_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat8.x)); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat8.y)); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat8.z)); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat8.w)); inOutVertices3_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat7.x)); inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat7.y)); inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat7.z)); inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat7.w)); inOutVertices3_buf[u_xlatu0].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat13)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb13 = u_xlatu0> 2) + 3]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.z = uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(32 >> 2) + 0]); u_xlatu13 = inSkin2_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati26 = int(u_xlatu0) + 1; u_xlatu26 = inSkin2_buf[u_xlati26].value[(0 >> 2) + 0]; u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlat5.x = float(0.0); u_xlat5.y = float(0.0); u_xlat5.z = float(0.0); u_xlat5.w = float(0.0); u_xlat6.x = float(0.0); u_xlat6.y = float(0.0); u_xlat6.z = float(0.0); u_xlat6.w = float(0.0); for(uint u_xlatu_loop_5 = u_xlatu13 ; u_xlatu_loop_5> 2) + 0]; u_xlatu7 = u_xlatu42 >> (16u & uint(0x1F)); u_xlat7.x = float(u_xlatu7); u_xlat7.x = u_xlat7.x * 1.52590219e-05; u_xlati42 = int(u_xlatu42 & 65535u); u_xlati42 = u_xlati42 + int(g_PoseOffsets[0].z); u_xlat20.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(0 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(16 >> 2) + 2])); u_xlat9.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat20.x; u_xlat11.y = u_xlat8.x; u_xlat11.z = u_xlat9.x; u_xlat11.w = u_xlat10.x; u_xlat12.x = u_xlat20.y; u_xlat12.y = u_xlat8.y; u_xlat12.z = u_xlat9.y; u_xlat12.w = u_xlat10.y; u_xlat10.x = u_xlat20.z; u_xlat10.y = u_xlat8.z; u_xlat10.z = u_xlat9.z; u_xlat4 = u_xlat11 * u_xlat7.xxxx + u_xlat4; u_xlat5 = u_xlat12 * u_xlat7.xxxx + u_xlat5; u_xlat6 = u_xlat10 * u_xlat7.xxxx + u_xlat6; } u_xlat7.xyz = u_xlat1.yzw; u_xlat7.w = 1.0; u_xlat8.x = dot(u_xlat4, u_xlat7); u_xlat8.y = dot(u_xlat5, u_xlat7); u_xlat8.z = dot(u_xlat6, u_xlat7); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat7.x = dot(u_xlat5.xyz, u_xlat1.xyz); u_xlat7.y = dot(u_xlat6.xyz, u_xlat1.xyz); u_xlat3.xy = u_xlat2.zw; u_xlat7.z = dot(u_xlat4.xyz, u_xlat3.xyz); u_xlat7.w = dot(u_xlat5.xyz, u_xlat3.xyz); u_xlat13 = dot(u_xlat6.xyz, u_xlat3.xyz); inOutVertices2_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat8.x)); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat8.y)); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat8.z)); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat8.w)); inOutVertices2_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat7.x)); inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat7.y)); inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat7.z)); inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat7.w)); inOutVertices2_buf[u_xlatu0].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat13)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb13 = u_xlatu0> 2) + 3]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.z = uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(32 >> 2) + 0]); u_xlatu13 = inSkin1_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati26 = int(u_xlatu0) + 1; u_xlatu26 = inSkin1_buf[u_xlati26].value[(0 >> 2) + 0]; u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlat5.x = float(0.0); u_xlat5.y = float(0.0); u_xlat5.z = float(0.0); u_xlat5.w = float(0.0); u_xlat6.x = float(0.0); u_xlat6.y = float(0.0); u_xlat6.z = float(0.0); u_xlat6.w = float(0.0); for(uint u_xlatu_loop_6 = u_xlatu13 ; u_xlatu_loop_6> 2) + 0]; u_xlatu7 = u_xlatu42 >> (16u & uint(0x1F)); u_xlat7.x = float(u_xlatu7); u_xlat7.x = u_xlat7.x * 1.52590219e-05; u_xlati42 = int(u_xlatu42 & 65535u); u_xlati42 = u_xlati42 + int(g_PoseOffsets[0].y); u_xlat20.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(0 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(16 >> 2) + 2])); u_xlat9.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat20.x; u_xlat11.y = u_xlat8.x; u_xlat11.z = u_xlat9.x; u_xlat11.w = u_xlat10.x; u_xlat12.x = u_xlat20.y; u_xlat12.y = u_xlat8.y; u_xlat12.z = u_xlat9.y; u_xlat12.w = u_xlat10.y; u_xlat10.x = u_xlat20.z; u_xlat10.y = u_xlat8.z; u_xlat10.z = u_xlat9.z; u_xlat4 = u_xlat11 * u_xlat7.xxxx + u_xlat4; u_xlat5 = u_xlat12 * u_xlat7.xxxx + u_xlat5; u_xlat6 = u_xlat10 * u_xlat7.xxxx + u_xlat6; } u_xlat7.xyz = u_xlat1.yzw; u_xlat7.w = 1.0; u_xlat8.x = dot(u_xlat4, u_xlat7); u_xlat8.y = dot(u_xlat5, u_xlat7); u_xlat8.z = dot(u_xlat6, u_xlat7); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat7.x = dot(u_xlat5.xyz, u_xlat1.xyz); u_xlat7.y = dot(u_xlat6.xyz, u_xlat1.xyz); u_xlat3.xy = u_xlat2.zw; u_xlat7.z = dot(u_xlat4.xyz, u_xlat3.xyz); u_xlat7.w = dot(u_xlat5.xyz, u_xlat3.xyz); u_xlat13 = dot(u_xlat6.xyz, u_xlat3.xyz); inOutVertices1_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat8.x)); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat8.y)); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat8.z)); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat8.w)); inOutVertices1_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat7.x)); inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat7.y)); inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat7.z)); inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat7.w)); inOutVertices1_buf[u_xlatu0].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat13)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb13 = u_xlatu0> 2) + 3]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.z = uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(32 >> 2) + 0]); u_xlatu13 = inSkin0_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati26 = int(u_xlatu0) + 1; u_xlatu26 = inSkin0_buf[u_xlati26].value[(0 >> 2) + 0]; u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlat5.x = float(0.0); u_xlat5.y = float(0.0); u_xlat5.z = float(0.0); u_xlat5.w = float(0.0); u_xlat6.x = float(0.0); u_xlat6.y = float(0.0); u_xlat6.z = float(0.0); u_xlat6.w = float(0.0); for(uint u_xlatu_loop_7 = u_xlatu13 ; u_xlatu_loop_7> 2) + 0]; u_xlatu7 = u_xlatu42 >> (16u & uint(0x1F)); u_xlat7.x = float(u_xlatu7); u_xlat7.x = u_xlat7.x * 1.52590219e-05; u_xlati42 = int(u_xlatu42 & 65535u); u_xlati42 = u_xlati42 + int(g_PoseOffsets[0].x); u_xlat20.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(0 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(16 >> 2) + 2])); u_xlat9.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat20.x; u_xlat11.y = u_xlat8.x; u_xlat11.z = u_xlat9.x; u_xlat11.w = u_xlat10.x; u_xlat12.x = u_xlat20.y; u_xlat12.y = u_xlat8.y; u_xlat12.z = u_xlat9.y; u_xlat12.w = u_xlat10.y; u_xlat10.x = u_xlat20.z; u_xlat10.y = u_xlat8.z; u_xlat10.z = u_xlat9.z; u_xlat4 = u_xlat11 * u_xlat7.xxxx + u_xlat4; u_xlat5 = u_xlat12 * u_xlat7.xxxx + u_xlat5; u_xlat6 = u_xlat10 * u_xlat7.xxxx + u_xlat6; } u_xlat7.xyz = u_xlat1.yzw; u_xlat7.w = 1.0; u_xlat8.x = dot(u_xlat4, u_xlat7); u_xlat8.y = dot(u_xlat5, u_xlat7); u_xlat8.z = dot(u_xlat6, u_xlat7); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat7.x = dot(u_xlat5.xyz, u_xlat1.xyz); u_xlat7.y = dot(u_xlat6.xyz, u_xlat1.xyz); u_xlat3.xy = u_xlat2.zw; u_xlat7.z = dot(u_xlat4.xyz, u_xlat3.xyz); u_xlat7.w = dot(u_xlat5.xyz, u_xlat3.xyz); u_xlat13 = dot(u_xlat6.xyz, u_xlat3.xyz); inOutVertices0_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat8.x)); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat8.y)); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat8.z)); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat8.w)); inOutVertices0_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat7.x)); inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat7.y)); inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat7.z)); inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat7.w)); inOutVertices0_buf[u_xlatu0].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat13)); } } } } } } } } return; } @AbatchMainInPlaceComputeSkinInPlaceCBufferinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6 inMatricesinOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices6%V#version 310 es #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif UNITY_BINDING(0) uniform ComputeSkinInPlaceCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; uvec4 g_PoseOffsets[2]; uint g_poseBufferMaxIndex; }; struct inSkin0_type { uint[1] value; }; layout(std430, binding = 7) readonly buffer inSkin0 { inSkin0_type inSkin0_buf[]; }; struct inSkin1_type { uint[1] value; }; layout(std430, binding = 8) readonly buffer inSkin1 { inSkin1_type inSkin1_buf[]; }; struct inSkin2_type { uint[1] value; }; layout(std430, binding = 9) readonly buffer inSkin2 { inSkin2_type inSkin2_buf[]; }; struct inSkin3_type { uint[1] value; }; layout(std430, binding = 10) readonly buffer inSkin3 { inSkin3_type inSkin3_buf[]; }; struct inSkin4_type { uint[1] value; }; layout(std430, binding = 11) readonly buffer inSkin4 { inSkin4_type inSkin4_buf[]; }; struct inSkin5_type { uint[1] value; }; layout(std430, binding = 12) readonly buffer inSkin5 { inSkin5_type inSkin5_buf[]; }; struct inSkin6_type { uint[1] value; }; layout(std430, binding = 13) readonly buffer inSkin6 { inSkin6_type inSkin6_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 14) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct inOutVertices0_type { uint[3] value; }; layout(std430, binding = 0) buffer inOutVertices0 { inOutVertices0_type inOutVertices0_buf[]; }; struct inOutVertices1_type { uint[3] value; }; layout(std430, binding = 1) buffer inOutVertices1 { inOutVertices1_type inOutVertices1_buf[]; }; struct inOutVertices2_type { uint[3] value; }; layout(std430, binding = 2) buffer inOutVertices2 { inOutVertices2_type inOutVertices2_buf[]; }; struct inOutVertices3_type { uint[3] value; }; layout(std430, binding = 3) buffer inOutVertices3 { inOutVertices3_type inOutVertices3_buf[]; }; struct inOutVertices4_type { uint[3] value; }; layout(std430, binding = 4) buffer inOutVertices4 { inOutVertices4_type inOutVertices4_buf[]; }; struct inOutVertices5_type { uint[3] value; }; layout(std430, binding = 5) buffer inOutVertices5 { inOutVertices5_type inOutVertices5_buf[]; }; struct inOutVertices6_type { uint[3] value; }; layout(std430, binding = 6) buffer inOutVertices6 { inOutVertices6_type inOutVertices6_buf[]; }; uint u_xlatu0; bool u_xlatb0; vec4 u_xlat1; vec3 u_xlat2; vec3 u_xlat3; vec3 u_xlat4; vec4 u_xlat5; vec4 u_xlat6; vec4 u_xlat7; int u_xlati8; bool u_xlatb8; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].z); u_xlatb8 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlati8 = int(inSkin6_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati8 = u_xlati8 + int(g_PoseOffsets[1].z); u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 2])); u_xlat5.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 2])); u_xlat6.x = u_xlat2.x; u_xlat6.y = u_xlat3.x; u_xlat6.z = u_xlat4.x; u_xlat6.w = u_xlat5.x; u_xlat1.w = 1.0; u_xlat6.x = dot(u_xlat6, u_xlat1); u_xlat7.x = u_xlat2.y; u_xlat7.y = u_xlat3.y; u_xlat7.z = u_xlat4.y; u_xlat7.w = u_xlat5.y; u_xlat6.y = dot(u_xlat7, u_xlat1); u_xlat5.x = u_xlat2.z; u_xlat5.y = u_xlat3.z; u_xlat5.z = u_xlat4.z; u_xlat6.z = dot(u_xlat5, u_xlat1); inOutVertices6_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat6.x)); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat6.y)); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat6.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].y); u_xlatb8 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlati8 = int(inSkin5_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati8 = u_xlati8 + int(g_PoseOffsets[1].y); u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 2])); u_xlat5.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 2])); u_xlat6.x = u_xlat2.x; u_xlat6.y = u_xlat3.x; u_xlat6.z = u_xlat4.x; u_xlat6.w = u_xlat5.x; u_xlat1.w = 1.0; u_xlat6.x = dot(u_xlat6, u_xlat1); u_xlat7.x = u_xlat2.y; u_xlat7.y = u_xlat3.y; u_xlat7.z = u_xlat4.y; u_xlat7.w = u_xlat5.y; u_xlat6.y = dot(u_xlat7, u_xlat1); u_xlat5.x = u_xlat2.z; u_xlat5.y = u_xlat3.z; u_xlat5.z = u_xlat4.z; u_xlat6.z = dot(u_xlat5, u_xlat1); inOutVertices5_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat6.x)); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat6.y)); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat6.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb8 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlati8 = int(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati8 = u_xlati8 + int(g_PoseOffsets[1].x); u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 2])); u_xlat5.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 2])); u_xlat6.x = u_xlat2.x; u_xlat6.y = u_xlat3.x; u_xlat6.z = u_xlat4.x; u_xlat6.w = u_xlat5.x; u_xlat1.w = 1.0; u_xlat6.x = dot(u_xlat6, u_xlat1); u_xlat7.x = u_xlat2.y; u_xlat7.y = u_xlat3.y; u_xlat7.z = u_xlat4.y; u_xlat7.w = u_xlat5.y; u_xlat6.y = dot(u_xlat7, u_xlat1); u_xlat5.x = u_xlat2.z; u_xlat5.y = u_xlat3.z; u_xlat5.z = u_xlat4.z; u_xlat6.z = dot(u_xlat5, u_xlat1); inOutVertices4_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat6.x)); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat6.y)); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat6.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb8 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlati8 = int(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati8 = u_xlati8 + int(g_PoseOffsets[0].w); u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 2])); u_xlat5.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 2])); u_xlat6.x = u_xlat2.x; u_xlat6.y = u_xlat3.x; u_xlat6.z = u_xlat4.x; u_xlat6.w = u_xlat5.x; u_xlat1.w = 1.0; u_xlat6.x = dot(u_xlat6, u_xlat1); u_xlat7.x = u_xlat2.y; u_xlat7.y = u_xlat3.y; u_xlat7.z = u_xlat4.y; u_xlat7.w = u_xlat5.y; u_xlat6.y = dot(u_xlat7, u_xlat1); u_xlat5.x = u_xlat2.z; u_xlat5.y = u_xlat3.z; u_xlat5.z = u_xlat4.z; u_xlat6.z = dot(u_xlat5, u_xlat1); inOutVertices3_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat6.x)); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat6.y)); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat6.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb8 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlati8 = int(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati8 = u_xlati8 + int(g_PoseOffsets[0].z); u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 2])); u_xlat5.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 2])); u_xlat6.x = u_xlat2.x; u_xlat6.y = u_xlat3.x; u_xlat6.z = u_xlat4.x; u_xlat6.w = u_xlat5.x; u_xlat1.w = 1.0; u_xlat6.x = dot(u_xlat6, u_xlat1); u_xlat7.x = u_xlat2.y; u_xlat7.y = u_xlat3.y; u_xlat7.z = u_xlat4.y; u_xlat7.w = u_xlat5.y; u_xlat6.y = dot(u_xlat7, u_xlat1); u_xlat5.x = u_xlat2.z; u_xlat5.y = u_xlat3.z; u_xlat5.z = u_xlat4.z; u_xlat6.z = dot(u_xlat5, u_xlat1); inOutVertices2_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat6.x)); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat6.y)); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat6.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb8 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlati8 = int(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati8 = u_xlati8 + int(g_PoseOffsets[0].y); u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 2])); u_xlat5.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 2])); u_xlat6.x = u_xlat2.x; u_xlat6.y = u_xlat3.x; u_xlat6.z = u_xlat4.x; u_xlat6.w = u_xlat5.x; u_xlat1.w = 1.0; u_xlat6.x = dot(u_xlat6, u_xlat1); u_xlat7.x = u_xlat2.y; u_xlat7.y = u_xlat3.y; u_xlat7.z = u_xlat4.y; u_xlat7.w = u_xlat5.y; u_xlat6.y = dot(u_xlat7, u_xlat1); u_xlat5.x = u_xlat2.z; u_xlat5.y = u_xlat3.z; u_xlat5.z = u_xlat4.z; u_xlat6.z = dot(u_xlat5, u_xlat1); inOutVertices1_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat6.x)); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat6.y)); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat6.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb8 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlati8 = int(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati8 = u_xlati8 + int(g_PoseOffsets[0].x); u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 2])); u_xlat5.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 2])); u_xlat6.x = u_xlat2.x; u_xlat6.y = u_xlat3.x; u_xlat6.z = u_xlat4.x; u_xlat6.w = u_xlat5.x; u_xlat1.w = 1.0; u_xlat6.x = dot(u_xlat6, u_xlat1); u_xlat7.x = u_xlat2.y; u_xlat7.y = u_xlat3.y; u_xlat7.z = u_xlat4.y; u_xlat7.w = u_xlat5.y; u_xlat6.y = dot(u_xlat7, u_xlat1); u_xlat5.x = u_xlat2.z; u_xlat5.y = u_xlat3.z; u_xlat5.z = u_xlat4.z; u_xlat6.z = dot(u_xlat5, u_xlat1); inOutVertices0_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat6.x)); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat6.y)); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat6.z)); } } } } } } } } return; } @AbatchMainInPlaceComputeSkinInPlaceCBufferinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6 inMatricesinOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices6n#version 310 es #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif UNITY_BINDING(0) uniform ComputeSkinInPlaceCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; uvec4 g_PoseOffsets[2]; uint g_poseBufferMaxIndex; }; struct inSkin0_type { uint[1] value; }; layout(std430, binding = 7) readonly buffer inSkin0 { inSkin0_type inSkin0_buf[]; }; struct inSkin1_type { uint[1] value; }; layout(std430, binding = 8) readonly buffer inSkin1 { inSkin1_type inSkin1_buf[]; }; struct inSkin2_type { uint[1] value; }; layout(std430, binding = 9) readonly buffer inSkin2 { inSkin2_type inSkin2_buf[]; }; struct inSkin3_type { uint[1] value; }; layout(std430, binding = 10) readonly buffer inSkin3 { inSkin3_type inSkin3_buf[]; }; struct inSkin4_type { uint[1] value; }; layout(std430, binding = 11) readonly buffer inSkin4 { inSkin4_type inSkin4_buf[]; }; struct inSkin5_type { uint[1] value; }; layout(std430, binding = 12) readonly buffer inSkin5 { inSkin5_type inSkin5_buf[]; }; struct inSkin6_type { uint[1] value; }; layout(std430, binding = 13) readonly buffer inSkin6 { inSkin6_type inSkin6_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 14) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct inOutVertices0_type { uint[6] value; }; layout(std430, binding = 0) buffer inOutVertices0 { inOutVertices0_type inOutVertices0_buf[]; }; struct inOutVertices1_type { uint[6] value; }; layout(std430, binding = 1) buffer inOutVertices1 { inOutVertices1_type inOutVertices1_buf[]; }; struct inOutVertices2_type { uint[6] value; }; layout(std430, binding = 2) buffer inOutVertices2 { inOutVertices2_type inOutVertices2_buf[]; }; struct inOutVertices3_type { uint[6] value; }; layout(std430, binding = 3) buffer inOutVertices3 { inOutVertices3_type inOutVertices3_buf[]; }; struct inOutVertices4_type { uint[6] value; }; layout(std430, binding = 4) buffer inOutVertices4 { inOutVertices4_type inOutVertices4_buf[]; }; struct inOutVertices5_type { uint[6] value; }; layout(std430, binding = 5) buffer inOutVertices5 { inOutVertices5_type inOutVertices5_buf[]; }; struct inOutVertices6_type { uint[6] value; }; layout(std430, binding = 6) buffer inOutVertices6 { inOutVertices6_type inOutVertices6_buf[]; }; uint u_xlatu0; bool u_xlatb0; vec4 u_xlat1; vec3 u_xlat2; vec3 u_xlat3; vec3 u_xlat4; vec3 u_xlat5; vec4 u_xlat6; vec4 u_xlat7; vec4 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; int u_xlati11; bool u_xlatb11; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].z); u_xlatb11 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlati11 = int(inSkin6_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati11 = u_xlati11 + int(g_PoseOffsets[1].z); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat3.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.xyz = u_xlat1.xyz; u_xlat8.w = 1.0; u_xlat9.x = dot(u_xlat7, u_xlat8); u_xlat10.x = u_xlat3.y; u_xlat10.y = u_xlat4.y; u_xlat10.z = u_xlat5.y; u_xlat10.w = u_xlat6.y; u_xlat9.y = dot(u_xlat10, u_xlat8); u_xlat6.x = u_xlat3.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat9.z = dot(u_xlat6, u_xlat8); u_xlat2.z = u_xlat1.w; u_xlat9.w = dot(u_xlat7.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat10.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat6.yzx, u_xlat2.xyz); inOutVertices6_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat9.x)); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat9.y)); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat9.z)); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat9.w)); inOutVertices6_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat1.x)); inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat1.y)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].y); u_xlatb11 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlati11 = int(inSkin5_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati11 = u_xlati11 + int(g_PoseOffsets[1].y); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat3.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.xyz = u_xlat1.xyz; u_xlat8.w = 1.0; u_xlat9.x = dot(u_xlat7, u_xlat8); u_xlat10.x = u_xlat3.y; u_xlat10.y = u_xlat4.y; u_xlat10.z = u_xlat5.y; u_xlat10.w = u_xlat6.y; u_xlat9.y = dot(u_xlat10, u_xlat8); u_xlat6.x = u_xlat3.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat9.z = dot(u_xlat6, u_xlat8); u_xlat2.z = u_xlat1.w; u_xlat9.w = dot(u_xlat7.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat10.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat6.yzx, u_xlat2.xyz); inOutVertices5_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat9.x)); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat9.y)); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat9.z)); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat9.w)); inOutVertices5_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat1.x)); inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat1.y)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb11 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlati11 = int(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati11 = u_xlati11 + int(g_PoseOffsets[1].x); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat3.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.xyz = u_xlat1.xyz; u_xlat8.w = 1.0; u_xlat9.x = dot(u_xlat7, u_xlat8); u_xlat10.x = u_xlat3.y; u_xlat10.y = u_xlat4.y; u_xlat10.z = u_xlat5.y; u_xlat10.w = u_xlat6.y; u_xlat9.y = dot(u_xlat10, u_xlat8); u_xlat6.x = u_xlat3.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat9.z = dot(u_xlat6, u_xlat8); u_xlat2.z = u_xlat1.w; u_xlat9.w = dot(u_xlat7.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat10.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat6.yzx, u_xlat2.xyz); inOutVertices4_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat9.x)); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat9.y)); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat9.z)); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat9.w)); inOutVertices4_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat1.x)); inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat1.y)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb11 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlati11 = int(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati11 = u_xlati11 + int(g_PoseOffsets[0].w); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat3.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.xyz = u_xlat1.xyz; u_xlat8.w = 1.0; u_xlat9.x = dot(u_xlat7, u_xlat8); u_xlat10.x = u_xlat3.y; u_xlat10.y = u_xlat4.y; u_xlat10.z = u_xlat5.y; u_xlat10.w = u_xlat6.y; u_xlat9.y = dot(u_xlat10, u_xlat8); u_xlat6.x = u_xlat3.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat9.z = dot(u_xlat6, u_xlat8); u_xlat2.z = u_xlat1.w; u_xlat9.w = dot(u_xlat7.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat10.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat6.yzx, u_xlat2.xyz); inOutVertices3_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat9.x)); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat9.y)); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat9.z)); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat9.w)); inOutVertices3_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat1.x)); inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat1.y)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb11 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlati11 = int(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati11 = u_xlati11 + int(g_PoseOffsets[0].z); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat3.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.xyz = u_xlat1.xyz; u_xlat8.w = 1.0; u_xlat9.x = dot(u_xlat7, u_xlat8); u_xlat10.x = u_xlat3.y; u_xlat10.y = u_xlat4.y; u_xlat10.z = u_xlat5.y; u_xlat10.w = u_xlat6.y; u_xlat9.y = dot(u_xlat10, u_xlat8); u_xlat6.x = u_xlat3.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat9.z = dot(u_xlat6, u_xlat8); u_xlat2.z = u_xlat1.w; u_xlat9.w = dot(u_xlat7.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat10.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat6.yzx, u_xlat2.xyz); inOutVertices2_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat9.x)); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat9.y)); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat9.z)); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat9.w)); inOutVertices2_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat1.x)); inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat1.y)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb11 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlati11 = int(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati11 = u_xlati11 + int(g_PoseOffsets[0].y); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat3.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.xyz = u_xlat1.xyz; u_xlat8.w = 1.0; u_xlat9.x = dot(u_xlat7, u_xlat8); u_xlat10.x = u_xlat3.y; u_xlat10.y = u_xlat4.y; u_xlat10.z = u_xlat5.y; u_xlat10.w = u_xlat6.y; u_xlat9.y = dot(u_xlat10, u_xlat8); u_xlat6.x = u_xlat3.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat9.z = dot(u_xlat6, u_xlat8); u_xlat2.z = u_xlat1.w; u_xlat9.w = dot(u_xlat7.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat10.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat6.yzx, u_xlat2.xyz); inOutVertices1_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat9.x)); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat9.y)); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat9.z)); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat9.w)); inOutVertices1_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat1.x)); inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat1.y)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb11 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlati11 = int(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati11 = u_xlati11 + int(g_PoseOffsets[0].x); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat3.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.xyz = u_xlat1.xyz; u_xlat8.w = 1.0; u_xlat9.x = dot(u_xlat7, u_xlat8); u_xlat10.x = u_xlat3.y; u_xlat10.y = u_xlat4.y; u_xlat10.z = u_xlat5.y; u_xlat10.w = u_xlat6.y; u_xlat9.y = dot(u_xlat10, u_xlat8); u_xlat6.x = u_xlat3.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat9.z = dot(u_xlat6, u_xlat8); u_xlat2.z = u_xlat1.w; u_xlat9.w = dot(u_xlat7.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat10.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat6.yzx, u_xlat2.xyz); inOutVertices0_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat9.x)); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat9.y)); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat9.z)); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat9.w)); inOutVertices0_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat1.x)); inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat1.y)); } } } } } } } } return; } @AbatchMainInPlaceComputeSkinInPlaceCBufferinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6 inMatricesinOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices6A#version 310 es #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif UNITY_BINDING(0) uniform ComputeSkinInPlaceCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; uvec4 g_PoseOffsets[2]; uint g_poseBufferMaxIndex; }; struct inSkin0_type { uint[1] value; }; layout(std430, binding = 7) readonly buffer inSkin0 { inSkin0_type inSkin0_buf[]; }; struct inSkin1_type { uint[1] value; }; layout(std430, binding = 8) readonly buffer inSkin1 { inSkin1_type inSkin1_buf[]; }; struct inSkin2_type { uint[1] value; }; layout(std430, binding = 9) readonly buffer inSkin2 { inSkin2_type inSkin2_buf[]; }; struct inSkin3_type { uint[1] value; }; layout(std430, binding = 10) readonly buffer inSkin3 { inSkin3_type inSkin3_buf[]; }; struct inSkin4_type { uint[1] value; }; layout(std430, binding = 11) readonly buffer inSkin4 { inSkin4_type inSkin4_buf[]; }; struct inSkin5_type { uint[1] value; }; layout(std430, binding = 12) readonly buffer inSkin5 { inSkin5_type inSkin5_buf[]; }; struct inSkin6_type { uint[1] value; }; layout(std430, binding = 13) readonly buffer inSkin6 { inSkin6_type inSkin6_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 14) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct inOutVertices0_type { uint[10] value; }; layout(std430, binding = 0) buffer inOutVertices0 { inOutVertices0_type inOutVertices0_buf[]; }; struct inOutVertices1_type { uint[10] value; }; layout(std430, binding = 1) buffer inOutVertices1 { inOutVertices1_type inOutVertices1_buf[]; }; struct inOutVertices2_type { uint[10] value; }; layout(std430, binding = 2) buffer inOutVertices2 { inOutVertices2_type inOutVertices2_buf[]; }; struct inOutVertices3_type { uint[10] value; }; layout(std430, binding = 3) buffer inOutVertices3 { inOutVertices3_type inOutVertices3_buf[]; }; struct inOutVertices4_type { uint[10] value; }; layout(std430, binding = 4) buffer inOutVertices4 { inOutVertices4_type inOutVertices4_buf[]; }; struct inOutVertices5_type { uint[10] value; }; layout(std430, binding = 5) buffer inOutVertices5 { inOutVertices5_type inOutVertices5_buf[]; }; struct inOutVertices6_type { uint[10] value; }; layout(std430, binding = 6) buffer inOutVertices6 { inOutVertices6_type inOutVertices6_buf[]; }; uint u_xlatu0; bool u_xlatb0; vec4 u_xlat1; vec4 u_xlat2; vec3 u_xlat3; vec4 u_xlat4; vec3 u_xlat5; vec3 u_xlat6; vec4 u_xlat7; vec4 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; vec4 u_xlat11; float u_xlat12; int u_xlati12; bool u_xlatb12; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].z); u_xlatb12 = u_xlatu0> 2) + 3]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.z = uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(32 >> 2) + 0]); u_xlati12 = int(inSkin6_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati12 = u_xlati12 + int(g_PoseOffsets[1].z); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat4.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.xyz = u_xlat1.yzw; u_xlat9.w = 1.0; u_xlat10.x = dot(u_xlat8, u_xlat9); u_xlat11.x = u_xlat4.y; u_xlat11.y = u_xlat5.y; u_xlat11.z = u_xlat6.y; u_xlat11.w = u_xlat7.y; u_xlat10.y = dot(u_xlat11, u_xlat9); u_xlat7.x = u_xlat4.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat10.z = dot(u_xlat7, u_xlat9); u_xlat1.yz = u_xlat2.xy; u_xlat10.w = dot(u_xlat8.xyz, u_xlat1.xyz); u_xlat4.x = dot(u_xlat11.xyz, u_xlat1.xyz); u_xlat4.y = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat3.xy = u_xlat2.zw; u_xlat4.z = dot(u_xlat8.xyz, u_xlat3.xyz); u_xlat4.w = dot(u_xlat11.xyz, u_xlat3.xyz); u_xlat12 = dot(u_xlat7.xyz, u_xlat3.xyz); inOutVertices6_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat10.x)); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat10.y)); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat10.z)); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat10.w)); inOutVertices6_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat4.x)); inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat4.y)); inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat4.z)); inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat4.w)); inOutVertices6_buf[u_xlatu0].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat12)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].y); u_xlatb12 = u_xlatu0> 2) + 3]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.z = uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(32 >> 2) + 0]); u_xlati12 = int(inSkin5_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati12 = u_xlati12 + int(g_PoseOffsets[1].y); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat4.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.xyz = u_xlat1.yzw; u_xlat9.w = 1.0; u_xlat10.x = dot(u_xlat8, u_xlat9); u_xlat11.x = u_xlat4.y; u_xlat11.y = u_xlat5.y; u_xlat11.z = u_xlat6.y; u_xlat11.w = u_xlat7.y; u_xlat10.y = dot(u_xlat11, u_xlat9); u_xlat7.x = u_xlat4.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat10.z = dot(u_xlat7, u_xlat9); u_xlat1.yz = u_xlat2.xy; u_xlat10.w = dot(u_xlat8.xyz, u_xlat1.xyz); u_xlat4.x = dot(u_xlat11.xyz, u_xlat1.xyz); u_xlat4.y = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat3.xy = u_xlat2.zw; u_xlat4.z = dot(u_xlat8.xyz, u_xlat3.xyz); u_xlat4.w = dot(u_xlat11.xyz, u_xlat3.xyz); u_xlat12 = dot(u_xlat7.xyz, u_xlat3.xyz); inOutVertices5_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat10.x)); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat10.y)); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat10.z)); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat10.w)); inOutVertices5_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat4.x)); inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat4.y)); inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat4.z)); inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat4.w)); inOutVertices5_buf[u_xlatu0].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat12)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb12 = u_xlatu0> 2) + 3]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.z = uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(32 >> 2) + 0]); u_xlati12 = int(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati12 = u_xlati12 + int(g_PoseOffsets[1].x); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat4.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.xyz = u_xlat1.yzw; u_xlat9.w = 1.0; u_xlat10.x = dot(u_xlat8, u_xlat9); u_xlat11.x = u_xlat4.y; u_xlat11.y = u_xlat5.y; u_xlat11.z = u_xlat6.y; u_xlat11.w = u_xlat7.y; u_xlat10.y = dot(u_xlat11, u_xlat9); u_xlat7.x = u_xlat4.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat10.z = dot(u_xlat7, u_xlat9); u_xlat1.yz = u_xlat2.xy; u_xlat10.w = dot(u_xlat8.xyz, u_xlat1.xyz); u_xlat4.x = dot(u_xlat11.xyz, u_xlat1.xyz); u_xlat4.y = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat3.xy = u_xlat2.zw; u_xlat4.z = dot(u_xlat8.xyz, u_xlat3.xyz); u_xlat4.w = dot(u_xlat11.xyz, u_xlat3.xyz); u_xlat12 = dot(u_xlat7.xyz, u_xlat3.xyz); inOutVertices4_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat10.x)); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat10.y)); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat10.z)); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat10.w)); inOutVertices4_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat4.x)); inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat4.y)); inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat4.z)); inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat4.w)); inOutVertices4_buf[u_xlatu0].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat12)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb12 = u_xlatu0> 2) + 3]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.z = uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(32 >> 2) + 0]); u_xlati12 = int(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati12 = u_xlati12 + int(g_PoseOffsets[0].w); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat4.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.xyz = u_xlat1.yzw; u_xlat9.w = 1.0; u_xlat10.x = dot(u_xlat8, u_xlat9); u_xlat11.x = u_xlat4.y; u_xlat11.y = u_xlat5.y; u_xlat11.z = u_xlat6.y; u_xlat11.w = u_xlat7.y; u_xlat10.y = dot(u_xlat11, u_xlat9); u_xlat7.x = u_xlat4.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat10.z = dot(u_xlat7, u_xlat9); u_xlat1.yz = u_xlat2.xy; u_xlat10.w = dot(u_xlat8.xyz, u_xlat1.xyz); u_xlat4.x = dot(u_xlat11.xyz, u_xlat1.xyz); u_xlat4.y = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat3.xy = u_xlat2.zw; u_xlat4.z = dot(u_xlat8.xyz, u_xlat3.xyz); u_xlat4.w = dot(u_xlat11.xyz, u_xlat3.xyz); u_xlat12 = dot(u_xlat7.xyz, u_xlat3.xyz); inOutVertices3_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat10.x)); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat10.y)); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat10.z)); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat10.w)); inOutVertices3_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat4.x)); inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat4.y)); inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat4.z)); inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat4.w)); inOutVertices3_buf[u_xlatu0].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat12)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb12 = u_xlatu0> 2) + 3]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.z = uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(32 >> 2) + 0]); u_xlati12 = int(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati12 = u_xlati12 + int(g_PoseOffsets[0].z); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat4.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.xyz = u_xlat1.yzw; u_xlat9.w = 1.0; u_xlat10.x = dot(u_xlat8, u_xlat9); u_xlat11.x = u_xlat4.y; u_xlat11.y = u_xlat5.y; u_xlat11.z = u_xlat6.y; u_xlat11.w = u_xlat7.y; u_xlat10.y = dot(u_xlat11, u_xlat9); u_xlat7.x = u_xlat4.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat10.z = dot(u_xlat7, u_xlat9); u_xlat1.yz = u_xlat2.xy; u_xlat10.w = dot(u_xlat8.xyz, u_xlat1.xyz); u_xlat4.x = dot(u_xlat11.xyz, u_xlat1.xyz); u_xlat4.y = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat3.xy = u_xlat2.zw; u_xlat4.z = dot(u_xlat8.xyz, u_xlat3.xyz); u_xlat4.w = dot(u_xlat11.xyz, u_xlat3.xyz); u_xlat12 = dot(u_xlat7.xyz, u_xlat3.xyz); inOutVertices2_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat10.x)); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat10.y)); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat10.z)); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat10.w)); inOutVertices2_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat4.x)); inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat4.y)); inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat4.z)); inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat4.w)); inOutVertices2_buf[u_xlatu0].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat12)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb12 = u_xlatu0> 2) + 3]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.z = uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(32 >> 2) + 0]); u_xlati12 = int(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati12 = u_xlati12 + int(g_PoseOffsets[0].y); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat4.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.xyz = u_xlat1.yzw; u_xlat9.w = 1.0; u_xlat10.x = dot(u_xlat8, u_xlat9); u_xlat11.x = u_xlat4.y; u_xlat11.y = u_xlat5.y; u_xlat11.z = u_xlat6.y; u_xlat11.w = u_xlat7.y; u_xlat10.y = dot(u_xlat11, u_xlat9); u_xlat7.x = u_xlat4.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat10.z = dot(u_xlat7, u_xlat9); u_xlat1.yz = u_xlat2.xy; u_xlat10.w = dot(u_xlat8.xyz, u_xlat1.xyz); u_xlat4.x = dot(u_xlat11.xyz, u_xlat1.xyz); u_xlat4.y = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat3.xy = u_xlat2.zw; u_xlat4.z = dot(u_xlat8.xyz, u_xlat3.xyz); u_xlat4.w = dot(u_xlat11.xyz, u_xlat3.xyz); u_xlat12 = dot(u_xlat7.xyz, u_xlat3.xyz); inOutVertices1_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat10.x)); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat10.y)); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat10.z)); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat10.w)); inOutVertices1_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat4.x)); inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat4.y)); inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat4.z)); inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat4.w)); inOutVertices1_buf[u_xlatu0].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat12)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb12 = u_xlatu0> 2) + 3]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.z = uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(32 >> 2) + 0]); u_xlati12 = int(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati12 = u_xlati12 + int(g_PoseOffsets[0].x); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat4.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.xyz = u_xlat1.yzw; u_xlat9.w = 1.0; u_xlat10.x = dot(u_xlat8, u_xlat9); u_xlat11.x = u_xlat4.y; u_xlat11.y = u_xlat5.y; u_xlat11.z = u_xlat6.y; u_xlat11.w = u_xlat7.y; u_xlat10.y = dot(u_xlat11, u_xlat9); u_xlat7.x = u_xlat4.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat10.z = dot(u_xlat7, u_xlat9); u_xlat1.yz = u_xlat2.xy; u_xlat10.w = dot(u_xlat8.xyz, u_xlat1.xyz); u_xlat4.x = dot(u_xlat11.xyz, u_xlat1.xyz); u_xlat4.y = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat3.xy = u_xlat2.zw; u_xlat4.z = dot(u_xlat8.xyz, u_xlat3.xyz); u_xlat4.w = dot(u_xlat11.xyz, u_xlat3.xyz); u_xlat12 = dot(u_xlat7.xyz, u_xlat3.xyz); inOutVertices0_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat10.x)); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat10.y)); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat10.z)); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat10.w)); inOutVertices0_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat4.x)); inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat4.y)); inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat4.z)); inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat4.w)); inOutVertices0_buf[u_xlatu0].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat12)); } } } } } } } } return; } @AbatchMainInPlaceComputeSkinInPlaceCBufferinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6 inMatricesinOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices6#version 310 es #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif UNITY_BINDING(0) uniform ComputeSkinInPlaceCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; uvec4 g_PoseOffsets[2]; uint g_poseBufferMaxIndex; }; struct inSkin0_type { uint[4] value; }; layout(std430, binding = 7) readonly buffer inSkin0 { inSkin0_type inSkin0_buf[]; }; struct inSkin1_type { uint[4] value; }; layout(std430, binding = 8) readonly buffer inSkin1 { inSkin1_type inSkin1_buf[]; }; struct inSkin2_type { uint[4] value; }; layout(std430, binding = 9) readonly buffer inSkin2 { inSkin2_type inSkin2_buf[]; }; struct inSkin3_type { uint[4] value; }; layout(std430, binding = 10) readonly buffer inSkin3 { inSkin3_type inSkin3_buf[]; }; struct inSkin4_type { uint[4] value; }; layout(std430, binding = 11) readonly buffer inSkin4 { inSkin4_type inSkin4_buf[]; }; struct inSkin5_type { uint[4] value; }; layout(std430, binding = 12) readonly buffer inSkin5 { inSkin5_type inSkin5_buf[]; }; struct inSkin6_type { uint[4] value; }; layout(std430, binding = 13) readonly buffer inSkin6 { inSkin6_type inSkin6_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 14) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct inOutVertices0_type { uint[3] value; }; layout(std430, binding = 0) buffer inOutVertices0 { inOutVertices0_type inOutVertices0_buf[]; }; struct inOutVertices1_type { uint[3] value; }; layout(std430, binding = 1) buffer inOutVertices1 { inOutVertices1_type inOutVertices1_buf[]; }; struct inOutVertices2_type { uint[3] value; }; layout(std430, binding = 2) buffer inOutVertices2 { inOutVertices2_type inOutVertices2_buf[]; }; struct inOutVertices3_type { uint[3] value; }; layout(std430, binding = 3) buffer inOutVertices3 { inOutVertices3_type inOutVertices3_buf[]; }; struct inOutVertices4_type { uint[3] value; }; layout(std430, binding = 4) buffer inOutVertices4 { inOutVertices4_type inOutVertices4_buf[]; }; struct inOutVertices5_type { uint[3] value; }; layout(std430, binding = 5) buffer inOutVertices5 { inOutVertices5_type inOutVertices5_buf[]; }; struct inOutVertices6_type { uint[3] value; }; layout(std430, binding = 6) buffer inOutVertices6 { inOutVertices6_type inOutVertices6_buf[]; }; uint u_xlatu0; bool u_xlatb0; vec4 u_xlat1; vec4 u_xlat2; vec4 u_xlat3; vec4 u_xlat4; vec4 u_xlat5; vec4 u_xlat6; vec4 u_xlat7; vec4 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; vec4 u_xlat11; ivec2 u_xlati12; bool u_xlatb12; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].z); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inSkin6_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin6_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin6_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin6_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati12.xy = floatBitsToInt(u_xlat2.zw) + ivec2(g_PoseOffsets[1].zz); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat3.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.x = u_xlat3.y; u_xlat8.y = u_xlat4.y; u_xlat8.z = u_xlat5.y; u_xlat8.w = u_xlat6.y; u_xlat6.x = u_xlat3.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat3.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat10 = u_xlat2.yyyy * u_xlat10; u_xlat11.x = u_xlat3.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat11 = u_xlat2.yyyy * u_xlat11; u_xlat9.x = u_xlat3.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat3 = u_xlat2.yyyy * u_xlat9; u_xlat4 = u_xlat7 * u_xlat2.xxxx + u_xlat10; u_xlat5 = u_xlat8 * u_xlat2.xxxx + u_xlat11; u_xlat2 = u_xlat6 * u_xlat2.xxxx + u_xlat3; u_xlat1.w = 1.0; u_xlat3.x = dot(u_xlat4, u_xlat1); u_xlat3.y = dot(u_xlat5, u_xlat1); u_xlat3.z = dot(u_xlat2, u_xlat1); inOutVertices6_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat3.x)); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat3.y)); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat3.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].y); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inSkin5_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin5_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin5_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin5_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati12.xy = floatBitsToInt(u_xlat2.zw) + ivec2(g_PoseOffsets[1].yy); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat3.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.x = u_xlat3.y; u_xlat8.y = u_xlat4.y; u_xlat8.z = u_xlat5.y; u_xlat8.w = u_xlat6.y; u_xlat6.x = u_xlat3.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat3.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat10 = u_xlat2.yyyy * u_xlat10; u_xlat11.x = u_xlat3.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat11 = u_xlat2.yyyy * u_xlat11; u_xlat9.x = u_xlat3.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat3 = u_xlat2.yyyy * u_xlat9; u_xlat4 = u_xlat7 * u_xlat2.xxxx + u_xlat10; u_xlat5 = u_xlat8 * u_xlat2.xxxx + u_xlat11; u_xlat2 = u_xlat6 * u_xlat2.xxxx + u_xlat3; u_xlat1.w = 1.0; u_xlat3.x = dot(u_xlat4, u_xlat1); u_xlat3.y = dot(u_xlat5, u_xlat1); u_xlat3.z = dot(u_xlat2, u_xlat1); inOutVertices5_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat3.x)); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat3.y)); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat3.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati12.xy = floatBitsToInt(u_xlat2.zw) + ivec2(g_PoseOffsets[1].xx); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat3.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.x = u_xlat3.y; u_xlat8.y = u_xlat4.y; u_xlat8.z = u_xlat5.y; u_xlat8.w = u_xlat6.y; u_xlat6.x = u_xlat3.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat3.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat10 = u_xlat2.yyyy * u_xlat10; u_xlat11.x = u_xlat3.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat11 = u_xlat2.yyyy * u_xlat11; u_xlat9.x = u_xlat3.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat3 = u_xlat2.yyyy * u_xlat9; u_xlat4 = u_xlat7 * u_xlat2.xxxx + u_xlat10; u_xlat5 = u_xlat8 * u_xlat2.xxxx + u_xlat11; u_xlat2 = u_xlat6 * u_xlat2.xxxx + u_xlat3; u_xlat1.w = 1.0; u_xlat3.x = dot(u_xlat4, u_xlat1); u_xlat3.y = dot(u_xlat5, u_xlat1); u_xlat3.z = dot(u_xlat2, u_xlat1); inOutVertices4_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat3.x)); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat3.y)); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat3.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati12.xy = floatBitsToInt(u_xlat2.zw) + ivec2(g_PoseOffsets[0].ww); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat3.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.x = u_xlat3.y; u_xlat8.y = u_xlat4.y; u_xlat8.z = u_xlat5.y; u_xlat8.w = u_xlat6.y; u_xlat6.x = u_xlat3.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat3.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat10 = u_xlat2.yyyy * u_xlat10; u_xlat11.x = u_xlat3.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat11 = u_xlat2.yyyy * u_xlat11; u_xlat9.x = u_xlat3.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat3 = u_xlat2.yyyy * u_xlat9; u_xlat4 = u_xlat7 * u_xlat2.xxxx + u_xlat10; u_xlat5 = u_xlat8 * u_xlat2.xxxx + u_xlat11; u_xlat2 = u_xlat6 * u_xlat2.xxxx + u_xlat3; u_xlat1.w = 1.0; u_xlat3.x = dot(u_xlat4, u_xlat1); u_xlat3.y = dot(u_xlat5, u_xlat1); u_xlat3.z = dot(u_xlat2, u_xlat1); inOutVertices3_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat3.x)); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat3.y)); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat3.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati12.xy = floatBitsToInt(u_xlat2.zw) + ivec2(g_PoseOffsets[0].zz); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat3.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.x = u_xlat3.y; u_xlat8.y = u_xlat4.y; u_xlat8.z = u_xlat5.y; u_xlat8.w = u_xlat6.y; u_xlat6.x = u_xlat3.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat3.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat10 = u_xlat2.yyyy * u_xlat10; u_xlat11.x = u_xlat3.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat11 = u_xlat2.yyyy * u_xlat11; u_xlat9.x = u_xlat3.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat3 = u_xlat2.yyyy * u_xlat9; u_xlat4 = u_xlat7 * u_xlat2.xxxx + u_xlat10; u_xlat5 = u_xlat8 * u_xlat2.xxxx + u_xlat11; u_xlat2 = u_xlat6 * u_xlat2.xxxx + u_xlat3; u_xlat1.w = 1.0; u_xlat3.x = dot(u_xlat4, u_xlat1); u_xlat3.y = dot(u_xlat5, u_xlat1); u_xlat3.z = dot(u_xlat2, u_xlat1); inOutVertices2_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat3.x)); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat3.y)); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat3.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati12.xy = floatBitsToInt(u_xlat2.zw) + ivec2(g_PoseOffsets[0].yy); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat3.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.x = u_xlat3.y; u_xlat8.y = u_xlat4.y; u_xlat8.z = u_xlat5.y; u_xlat8.w = u_xlat6.y; u_xlat6.x = u_xlat3.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat3.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat10 = u_xlat2.yyyy * u_xlat10; u_xlat11.x = u_xlat3.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat11 = u_xlat2.yyyy * u_xlat11; u_xlat9.x = u_xlat3.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat3 = u_xlat2.yyyy * u_xlat9; u_xlat4 = u_xlat7 * u_xlat2.xxxx + u_xlat10; u_xlat5 = u_xlat8 * u_xlat2.xxxx + u_xlat11; u_xlat2 = u_xlat6 * u_xlat2.xxxx + u_xlat3; u_xlat1.w = 1.0; u_xlat3.x = dot(u_xlat4, u_xlat1); u_xlat3.y = dot(u_xlat5, u_xlat1); u_xlat3.z = dot(u_xlat2, u_xlat1); inOutVertices1_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat3.x)); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat3.y)); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat3.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati12.xy = floatBitsToInt(u_xlat2.zw) + ivec2(g_PoseOffsets[0].xx); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat3.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.x = u_xlat3.y; u_xlat8.y = u_xlat4.y; u_xlat8.z = u_xlat5.y; u_xlat8.w = u_xlat6.y; u_xlat6.x = u_xlat3.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat3.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat10 = u_xlat2.yyyy * u_xlat10; u_xlat11.x = u_xlat3.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat11 = u_xlat2.yyyy * u_xlat11; u_xlat9.x = u_xlat3.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat3 = u_xlat2.yyyy * u_xlat9; u_xlat4 = u_xlat7 * u_xlat2.xxxx + u_xlat10; u_xlat5 = u_xlat8 * u_xlat2.xxxx + u_xlat11; u_xlat2 = u_xlat6 * u_xlat2.xxxx + u_xlat3; u_xlat1.w = 1.0; u_xlat3.x = dot(u_xlat4, u_xlat1); u_xlat3.y = dot(u_xlat5, u_xlat1); u_xlat3.z = dot(u_xlat2, u_xlat1); inOutVertices0_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat3.x)); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat3.y)); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat3.z)); } } } } } } } } return; } @AbatchMainInPlaceComputeSkinInPlaceCBufferinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6 inMatricesinOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices6#version 310 es #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif UNITY_BINDING(0) uniform ComputeSkinInPlaceCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; uvec4 g_PoseOffsets[2]; uint g_poseBufferMaxIndex; }; struct inSkin0_type { uint[4] value; }; layout(std430, binding = 7) readonly buffer inSkin0 { inSkin0_type inSkin0_buf[]; }; struct inSkin1_type { uint[4] value; }; layout(std430, binding = 8) readonly buffer inSkin1 { inSkin1_type inSkin1_buf[]; }; struct inSkin2_type { uint[4] value; }; layout(std430, binding = 9) readonly buffer inSkin2 { inSkin2_type inSkin2_buf[]; }; struct inSkin3_type { uint[4] value; }; layout(std430, binding = 10) readonly buffer inSkin3 { inSkin3_type inSkin3_buf[]; }; struct inSkin4_type { uint[4] value; }; layout(std430, binding = 11) readonly buffer inSkin4 { inSkin4_type inSkin4_buf[]; }; struct inSkin5_type { uint[4] value; }; layout(std430, binding = 12) readonly buffer inSkin5 { inSkin5_type inSkin5_buf[]; }; struct inSkin6_type { uint[4] value; }; layout(std430, binding = 13) readonly buffer inSkin6 { inSkin6_type inSkin6_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 14) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct inOutVertices0_type { uint[6] value; }; layout(std430, binding = 0) buffer inOutVertices0 { inOutVertices0_type inOutVertices0_buf[]; }; struct inOutVertices1_type { uint[6] value; }; layout(std430, binding = 1) buffer inOutVertices1 { inOutVertices1_type inOutVertices1_buf[]; }; struct inOutVertices2_type { uint[6] value; }; layout(std430, binding = 2) buffer inOutVertices2 { inOutVertices2_type inOutVertices2_buf[]; }; struct inOutVertices3_type { uint[6] value; }; layout(std430, binding = 3) buffer inOutVertices3 { inOutVertices3_type inOutVertices3_buf[]; }; struct inOutVertices4_type { uint[6] value; }; layout(std430, binding = 4) buffer inOutVertices4 { inOutVertices4_type inOutVertices4_buf[]; }; struct inOutVertices5_type { uint[6] value; }; layout(std430, binding = 5) buffer inOutVertices5 { inOutVertices5_type inOutVertices5_buf[]; }; struct inOutVertices6_type { uint[6] value; }; layout(std430, binding = 6) buffer inOutVertices6 { inOutVertices6_type inOutVertices6_buf[]; }; uint u_xlatu0; bool u_xlatb0; vec4 u_xlat1; vec3 u_xlat2; vec4 u_xlat3; vec4 u_xlat4; vec4 u_xlat5; vec4 u_xlat6; vec4 u_xlat7; vec4 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; vec4 u_xlat11; vec4 u_xlat12; ivec2 u_xlati13; bool u_xlatb13; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].z); u_xlatb13 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inSkin6_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin6_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin6_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin6_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati13.xy = floatBitsToInt(u_xlat3.zw) + ivec2(g_PoseOffsets[1].zz); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat4.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat4.y; u_xlat9.y = u_xlat5.y; u_xlat9.z = u_xlat6.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat4.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat4.x; u_xlat11.y = u_xlat5.x; u_xlat11.z = u_xlat6.x; u_xlat11.w = u_xlat10.x; u_xlat11 = u_xlat3.yyyy * u_xlat11; u_xlat12.x = u_xlat4.y; u_xlat12.y = u_xlat5.y; u_xlat12.z = u_xlat6.y; u_xlat12.w = u_xlat10.y; u_xlat12 = u_xlat3.yyyy * u_xlat12; u_xlat10.x = u_xlat4.z; u_xlat10.y = u_xlat5.z; u_xlat10.z = u_xlat6.z; u_xlat4 = u_xlat3.yyyy * u_xlat10; u_xlat5 = u_xlat8 * u_xlat3.xxxx + u_xlat11; u_xlat6 = u_xlat9 * u_xlat3.xxxx + u_xlat12; u_xlat3 = u_xlat7 * u_xlat3.xxxx + u_xlat4; u_xlat4.xyz = u_xlat1.xyz; u_xlat4.w = 1.0; u_xlat7.x = dot(u_xlat5, u_xlat4); u_xlat7.y = dot(u_xlat6, u_xlat4); u_xlat7.z = dot(u_xlat3, u_xlat4); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat5.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat6.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat3.yzx, u_xlat2.xyz); inOutVertices6_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat7.x)); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat7.y)); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat7.z)); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat7.w)); inOutVertices6_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat1.x)); inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat1.y)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].y); u_xlatb13 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inSkin5_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin5_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin5_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin5_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati13.xy = floatBitsToInt(u_xlat3.zw) + ivec2(g_PoseOffsets[1].yy); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat4.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat4.y; u_xlat9.y = u_xlat5.y; u_xlat9.z = u_xlat6.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat4.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat4.x; u_xlat11.y = u_xlat5.x; u_xlat11.z = u_xlat6.x; u_xlat11.w = u_xlat10.x; u_xlat11 = u_xlat3.yyyy * u_xlat11; u_xlat12.x = u_xlat4.y; u_xlat12.y = u_xlat5.y; u_xlat12.z = u_xlat6.y; u_xlat12.w = u_xlat10.y; u_xlat12 = u_xlat3.yyyy * u_xlat12; u_xlat10.x = u_xlat4.z; u_xlat10.y = u_xlat5.z; u_xlat10.z = u_xlat6.z; u_xlat4 = u_xlat3.yyyy * u_xlat10; u_xlat5 = u_xlat8 * u_xlat3.xxxx + u_xlat11; u_xlat6 = u_xlat9 * u_xlat3.xxxx + u_xlat12; u_xlat3 = u_xlat7 * u_xlat3.xxxx + u_xlat4; u_xlat4.xyz = u_xlat1.xyz; u_xlat4.w = 1.0; u_xlat7.x = dot(u_xlat5, u_xlat4); u_xlat7.y = dot(u_xlat6, u_xlat4); u_xlat7.z = dot(u_xlat3, u_xlat4); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat5.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat6.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat3.yzx, u_xlat2.xyz); inOutVertices5_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat7.x)); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat7.y)); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat7.z)); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat7.w)); inOutVertices5_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat1.x)); inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat1.y)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb13 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati13.xy = floatBitsToInt(u_xlat3.zw) + ivec2(g_PoseOffsets[1].xx); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat4.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat4.y; u_xlat9.y = u_xlat5.y; u_xlat9.z = u_xlat6.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat4.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat4.x; u_xlat11.y = u_xlat5.x; u_xlat11.z = u_xlat6.x; u_xlat11.w = u_xlat10.x; u_xlat11 = u_xlat3.yyyy * u_xlat11; u_xlat12.x = u_xlat4.y; u_xlat12.y = u_xlat5.y; u_xlat12.z = u_xlat6.y; u_xlat12.w = u_xlat10.y; u_xlat12 = u_xlat3.yyyy * u_xlat12; u_xlat10.x = u_xlat4.z; u_xlat10.y = u_xlat5.z; u_xlat10.z = u_xlat6.z; u_xlat4 = u_xlat3.yyyy * u_xlat10; u_xlat5 = u_xlat8 * u_xlat3.xxxx + u_xlat11; u_xlat6 = u_xlat9 * u_xlat3.xxxx + u_xlat12; u_xlat3 = u_xlat7 * u_xlat3.xxxx + u_xlat4; u_xlat4.xyz = u_xlat1.xyz; u_xlat4.w = 1.0; u_xlat7.x = dot(u_xlat5, u_xlat4); u_xlat7.y = dot(u_xlat6, u_xlat4); u_xlat7.z = dot(u_xlat3, u_xlat4); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat5.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat6.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat3.yzx, u_xlat2.xyz); inOutVertices4_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat7.x)); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat7.y)); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat7.z)); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat7.w)); inOutVertices4_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat1.x)); inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat1.y)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb13 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati13.xy = floatBitsToInt(u_xlat3.zw) + ivec2(g_PoseOffsets[0].ww); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat4.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat4.y; u_xlat9.y = u_xlat5.y; u_xlat9.z = u_xlat6.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat4.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat4.x; u_xlat11.y = u_xlat5.x; u_xlat11.z = u_xlat6.x; u_xlat11.w = u_xlat10.x; u_xlat11 = u_xlat3.yyyy * u_xlat11; u_xlat12.x = u_xlat4.y; u_xlat12.y = u_xlat5.y; u_xlat12.z = u_xlat6.y; u_xlat12.w = u_xlat10.y; u_xlat12 = u_xlat3.yyyy * u_xlat12; u_xlat10.x = u_xlat4.z; u_xlat10.y = u_xlat5.z; u_xlat10.z = u_xlat6.z; u_xlat4 = u_xlat3.yyyy * u_xlat10; u_xlat5 = u_xlat8 * u_xlat3.xxxx + u_xlat11; u_xlat6 = u_xlat9 * u_xlat3.xxxx + u_xlat12; u_xlat3 = u_xlat7 * u_xlat3.xxxx + u_xlat4; u_xlat4.xyz = u_xlat1.xyz; u_xlat4.w = 1.0; u_xlat7.x = dot(u_xlat5, u_xlat4); u_xlat7.y = dot(u_xlat6, u_xlat4); u_xlat7.z = dot(u_xlat3, u_xlat4); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat5.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat6.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat3.yzx, u_xlat2.xyz); inOutVertices3_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat7.x)); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat7.y)); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat7.z)); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat7.w)); inOutVertices3_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat1.x)); inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat1.y)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb13 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati13.xy = floatBitsToInt(u_xlat3.zw) + ivec2(g_PoseOffsets[0].zz); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat4.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat4.y; u_xlat9.y = u_xlat5.y; u_xlat9.z = u_xlat6.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat4.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat4.x; u_xlat11.y = u_xlat5.x; u_xlat11.z = u_xlat6.x; u_xlat11.w = u_xlat10.x; u_xlat11 = u_xlat3.yyyy * u_xlat11; u_xlat12.x = u_xlat4.y; u_xlat12.y = u_xlat5.y; u_xlat12.z = u_xlat6.y; u_xlat12.w = u_xlat10.y; u_xlat12 = u_xlat3.yyyy * u_xlat12; u_xlat10.x = u_xlat4.z; u_xlat10.y = u_xlat5.z; u_xlat10.z = u_xlat6.z; u_xlat4 = u_xlat3.yyyy * u_xlat10; u_xlat5 = u_xlat8 * u_xlat3.xxxx + u_xlat11; u_xlat6 = u_xlat9 * u_xlat3.xxxx + u_xlat12; u_xlat3 = u_xlat7 * u_xlat3.xxxx + u_xlat4; u_xlat4.xyz = u_xlat1.xyz; u_xlat4.w = 1.0; u_xlat7.x = dot(u_xlat5, u_xlat4); u_xlat7.y = dot(u_xlat6, u_xlat4); u_xlat7.z = dot(u_xlat3, u_xlat4); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat5.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat6.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat3.yzx, u_xlat2.xyz); inOutVertices2_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat7.x)); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat7.y)); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat7.z)); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat7.w)); inOutVertices2_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat1.x)); inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat1.y)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb13 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati13.xy = floatBitsToInt(u_xlat3.zw) + ivec2(g_PoseOffsets[0].yy); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat4.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat4.y; u_xlat9.y = u_xlat5.y; u_xlat9.z = u_xlat6.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat4.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat4.x; u_xlat11.y = u_xlat5.x; u_xlat11.z = u_xlat6.x; u_xlat11.w = u_xlat10.x; u_xlat11 = u_xlat3.yyyy * u_xlat11; u_xlat12.x = u_xlat4.y; u_xlat12.y = u_xlat5.y; u_xlat12.z = u_xlat6.y; u_xlat12.w = u_xlat10.y; u_xlat12 = u_xlat3.yyyy * u_xlat12; u_xlat10.x = u_xlat4.z; u_xlat10.y = u_xlat5.z; u_xlat10.z = u_xlat6.z; u_xlat4 = u_xlat3.yyyy * u_xlat10; u_xlat5 = u_xlat8 * u_xlat3.xxxx + u_xlat11; u_xlat6 = u_xlat9 * u_xlat3.xxxx + u_xlat12; u_xlat3 = u_xlat7 * u_xlat3.xxxx + u_xlat4; u_xlat4.xyz = u_xlat1.xyz; u_xlat4.w = 1.0; u_xlat7.x = dot(u_xlat5, u_xlat4); u_xlat7.y = dot(u_xlat6, u_xlat4); u_xlat7.z = dot(u_xlat3, u_xlat4); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat5.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat6.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat3.yzx, u_xlat2.xyz); inOutVertices1_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat7.x)); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat7.y)); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat7.z)); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat7.w)); inOutVertices1_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat1.x)); inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat1.y)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb13 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati13.xy = floatBitsToInt(u_xlat3.zw) + ivec2(g_PoseOffsets[0].xx); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat4.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat4.y; u_xlat9.y = u_xlat5.y; u_xlat9.z = u_xlat6.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat4.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat4.x; u_xlat11.y = u_xlat5.x; u_xlat11.z = u_xlat6.x; u_xlat11.w = u_xlat10.x; u_xlat11 = u_xlat3.yyyy * u_xlat11; u_xlat12.x = u_xlat4.y; u_xlat12.y = u_xlat5.y; u_xlat12.z = u_xlat6.y; u_xlat12.w = u_xlat10.y; u_xlat12 = u_xlat3.yyyy * u_xlat12; u_xlat10.x = u_xlat4.z; u_xlat10.y = u_xlat5.z; u_xlat10.z = u_xlat6.z; u_xlat4 = u_xlat3.yyyy * u_xlat10; u_xlat5 = u_xlat8 * u_xlat3.xxxx + u_xlat11; u_xlat6 = u_xlat9 * u_xlat3.xxxx + u_xlat12; u_xlat3 = u_xlat7 * u_xlat3.xxxx + u_xlat4; u_xlat4.xyz = u_xlat1.xyz; u_xlat4.w = 1.0; u_xlat7.x = dot(u_xlat5, u_xlat4); u_xlat7.y = dot(u_xlat6, u_xlat4); u_xlat7.z = dot(u_xlat3, u_xlat4); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat5.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat6.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat3.yzx, u_xlat2.xyz); inOutVertices0_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat7.x)); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat7.y)); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat7.z)); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat7.w)); inOutVertices0_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat1.x)); inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat1.y)); } } } } } } } } return; } @AbatchMainInPlaceComputeSkinInPlaceCBufferinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6 inMatricesinOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices6#version 310 es #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif UNITY_BINDING(0) uniform ComputeSkinInPlaceCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; uvec4 g_PoseOffsets[2]; uint g_poseBufferMaxIndex; }; struct inSkin0_type { uint[4] value; }; layout(std430, binding = 7) readonly buffer inSkin0 { inSkin0_type inSkin0_buf[]; }; struct inSkin1_type { uint[4] value; }; layout(std430, binding = 8) readonly buffer inSkin1 { inSkin1_type inSkin1_buf[]; }; struct inSkin2_type { uint[4] value; }; layout(std430, binding = 9) readonly buffer inSkin2 { inSkin2_type inSkin2_buf[]; }; struct inSkin3_type { uint[4] value; }; layout(std430, binding = 10) readonly buffer inSkin3 { inSkin3_type inSkin3_buf[]; }; struct inSkin4_type { uint[4] value; }; layout(std430, binding = 11) readonly buffer inSkin4 { inSkin4_type inSkin4_buf[]; }; struct inSkin5_type { uint[4] value; }; layout(std430, binding = 12) readonly buffer inSkin5 { inSkin5_type inSkin5_buf[]; }; struct inSkin6_type { uint[4] value; }; layout(std430, binding = 13) readonly buffer inSkin6 { inSkin6_type inSkin6_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 14) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct inOutVertices0_type { uint[10] value; }; layout(std430, binding = 0) buffer inOutVertices0 { inOutVertices0_type inOutVertices0_buf[]; }; struct inOutVertices1_type { uint[10] value; }; layout(std430, binding = 1) buffer inOutVertices1 { inOutVertices1_type inOutVertices1_buf[]; }; struct inOutVertices2_type { uint[10] value; }; layout(std430, binding = 2) buffer inOutVertices2 { inOutVertices2_type inOutVertices2_buf[]; }; struct inOutVertices3_type { uint[10] value; }; layout(std430, binding = 3) buffer inOutVertices3 { inOutVertices3_type inOutVertices3_buf[]; }; struct inOutVertices4_type { uint[10] value; }; layout(std430, binding = 4) buffer inOutVertices4 { inOutVertices4_type inOutVertices4_buf[]; }; struct inOutVertices5_type { uint[10] value; }; layout(std430, binding = 5) buffer inOutVertices5 { inOutVertices5_type inOutVertices5_buf[]; }; struct inOutVertices6_type { uint[10] value; }; layout(std430, binding = 6) buffer inOutVertices6 { inOutVertices6_type inOutVertices6_buf[]; }; uint u_xlatu0; bool u_xlatb0; vec4 u_xlat1; vec4 u_xlat2; vec3 u_xlat3; vec4 u_xlat4; vec4 u_xlat5; vec4 u_xlat6; vec4 u_xlat7; vec4 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; vec4 u_xlat11; vec4 u_xlat12; vec4 u_xlat13; float u_xlat14; ivec2 u_xlati14; bool u_xlatb14; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].z); u_xlatb14 = u_xlatu0> 2) + 3]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.z = uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(32 >> 2) + 0]); u_xlat4 = vec4(uintBitsToFloat(inSkin6_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin6_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin6_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin6_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati14.xy = floatBitsToInt(u_xlat4.zw) + ivec2(g_PoseOffsets[1].zz); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat5.x; u_xlat9.y = u_xlat6.x; u_xlat9.z = u_xlat7.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat5.y; u_xlat10.y = u_xlat6.y; u_xlat10.z = u_xlat7.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat5.z; u_xlat8.y = u_xlat6.z; u_xlat8.z = u_xlat7.z; u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat5.x; u_xlat12.y = u_xlat6.x; u_xlat12.z = u_xlat7.x; u_xlat12.w = u_xlat11.x; u_xlat12 = u_xlat4.yyyy * u_xlat12; u_xlat13.x = u_xlat5.y; u_xlat13.y = u_xlat6.y; u_xlat13.z = u_xlat7.y; u_xlat13.w = u_xlat11.y; u_xlat13 = u_xlat4.yyyy * u_xlat13; u_xlat11.x = u_xlat5.z; u_xlat11.y = u_xlat6.z; u_xlat11.z = u_xlat7.z; u_xlat5 = u_xlat4.yyyy * u_xlat11; u_xlat6 = u_xlat9 * u_xlat4.xxxx + u_xlat12; u_xlat7 = u_xlat10 * u_xlat4.xxxx + u_xlat13; u_xlat4 = u_xlat8 * u_xlat4.xxxx + u_xlat5; u_xlat5.xyz = u_xlat1.yzw; u_xlat5.w = 1.0; u_xlat8.x = dot(u_xlat6, u_xlat5); u_xlat8.y = dot(u_xlat7, u_xlat5); u_xlat8.z = dot(u_xlat4, u_xlat5); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat6.xyz, u_xlat1.xyz); u_xlat5.x = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat5.y = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat3.xy = u_xlat2.zw; u_xlat5.z = dot(u_xlat6.xyz, u_xlat3.xyz); u_xlat5.w = dot(u_xlat7.xyz, u_xlat3.xyz); u_xlat14 = dot(u_xlat4.xyz, u_xlat3.xyz); inOutVertices6_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat8.x)); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat8.y)); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat8.z)); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat8.w)); inOutVertices6_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat5.x)); inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat5.y)); inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat5.z)); inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat5.w)); inOutVertices6_buf[u_xlatu0].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat14)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].y); u_xlatb14 = u_xlatu0> 2) + 3]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.z = uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(32 >> 2) + 0]); u_xlat4 = vec4(uintBitsToFloat(inSkin5_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin5_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin5_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin5_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati14.xy = floatBitsToInt(u_xlat4.zw) + ivec2(g_PoseOffsets[1].yy); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat5.x; u_xlat9.y = u_xlat6.x; u_xlat9.z = u_xlat7.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat5.y; u_xlat10.y = u_xlat6.y; u_xlat10.z = u_xlat7.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat5.z; u_xlat8.y = u_xlat6.z; u_xlat8.z = u_xlat7.z; u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat5.x; u_xlat12.y = u_xlat6.x; u_xlat12.z = u_xlat7.x; u_xlat12.w = u_xlat11.x; u_xlat12 = u_xlat4.yyyy * u_xlat12; u_xlat13.x = u_xlat5.y; u_xlat13.y = u_xlat6.y; u_xlat13.z = u_xlat7.y; u_xlat13.w = u_xlat11.y; u_xlat13 = u_xlat4.yyyy * u_xlat13; u_xlat11.x = u_xlat5.z; u_xlat11.y = u_xlat6.z; u_xlat11.z = u_xlat7.z; u_xlat5 = u_xlat4.yyyy * u_xlat11; u_xlat6 = u_xlat9 * u_xlat4.xxxx + u_xlat12; u_xlat7 = u_xlat10 * u_xlat4.xxxx + u_xlat13; u_xlat4 = u_xlat8 * u_xlat4.xxxx + u_xlat5; u_xlat5.xyz = u_xlat1.yzw; u_xlat5.w = 1.0; u_xlat8.x = dot(u_xlat6, u_xlat5); u_xlat8.y = dot(u_xlat7, u_xlat5); u_xlat8.z = dot(u_xlat4, u_xlat5); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat6.xyz, u_xlat1.xyz); u_xlat5.x = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat5.y = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat3.xy = u_xlat2.zw; u_xlat5.z = dot(u_xlat6.xyz, u_xlat3.xyz); u_xlat5.w = dot(u_xlat7.xyz, u_xlat3.xyz); u_xlat14 = dot(u_xlat4.xyz, u_xlat3.xyz); inOutVertices5_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat8.x)); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat8.y)); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat8.z)); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat8.w)); inOutVertices5_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat5.x)); inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat5.y)); inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat5.z)); inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat5.w)); inOutVertices5_buf[u_xlatu0].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat14)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb14 = u_xlatu0> 2) + 3]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.z = uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(32 >> 2) + 0]); u_xlat4 = vec4(uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati14.xy = floatBitsToInt(u_xlat4.zw) + ivec2(g_PoseOffsets[1].xx); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat5.x; u_xlat9.y = u_xlat6.x; u_xlat9.z = u_xlat7.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat5.y; u_xlat10.y = u_xlat6.y; u_xlat10.z = u_xlat7.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat5.z; u_xlat8.y = u_xlat6.z; u_xlat8.z = u_xlat7.z; u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat5.x; u_xlat12.y = u_xlat6.x; u_xlat12.z = u_xlat7.x; u_xlat12.w = u_xlat11.x; u_xlat12 = u_xlat4.yyyy * u_xlat12; u_xlat13.x = u_xlat5.y; u_xlat13.y = u_xlat6.y; u_xlat13.z = u_xlat7.y; u_xlat13.w = u_xlat11.y; u_xlat13 = u_xlat4.yyyy * u_xlat13; u_xlat11.x = u_xlat5.z; u_xlat11.y = u_xlat6.z; u_xlat11.z = u_xlat7.z; u_xlat5 = u_xlat4.yyyy * u_xlat11; u_xlat6 = u_xlat9 * u_xlat4.xxxx + u_xlat12; u_xlat7 = u_xlat10 * u_xlat4.xxxx + u_xlat13; u_xlat4 = u_xlat8 * u_xlat4.xxxx + u_xlat5; u_xlat5.xyz = u_xlat1.yzw; u_xlat5.w = 1.0; u_xlat8.x = dot(u_xlat6, u_xlat5); u_xlat8.y = dot(u_xlat7, u_xlat5); u_xlat8.z = dot(u_xlat4, u_xlat5); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat6.xyz, u_xlat1.xyz); u_xlat5.x = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat5.y = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat3.xy = u_xlat2.zw; u_xlat5.z = dot(u_xlat6.xyz, u_xlat3.xyz); u_xlat5.w = dot(u_xlat7.xyz, u_xlat3.xyz); u_xlat14 = dot(u_xlat4.xyz, u_xlat3.xyz); inOutVertices4_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat8.x)); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat8.y)); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat8.z)); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat8.w)); inOutVertices4_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat5.x)); inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat5.y)); inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat5.z)); inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat5.w)); inOutVertices4_buf[u_xlatu0].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat14)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb14 = u_xlatu0> 2) + 3]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.z = uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(32 >> 2) + 0]); u_xlat4 = vec4(uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati14.xy = floatBitsToInt(u_xlat4.zw) + ivec2(g_PoseOffsets[0].ww); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat5.x; u_xlat9.y = u_xlat6.x; u_xlat9.z = u_xlat7.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat5.y; u_xlat10.y = u_xlat6.y; u_xlat10.z = u_xlat7.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat5.z; u_xlat8.y = u_xlat6.z; u_xlat8.z = u_xlat7.z; u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat5.x; u_xlat12.y = u_xlat6.x; u_xlat12.z = u_xlat7.x; u_xlat12.w = u_xlat11.x; u_xlat12 = u_xlat4.yyyy * u_xlat12; u_xlat13.x = u_xlat5.y; u_xlat13.y = u_xlat6.y; u_xlat13.z = u_xlat7.y; u_xlat13.w = u_xlat11.y; u_xlat13 = u_xlat4.yyyy * u_xlat13; u_xlat11.x = u_xlat5.z; u_xlat11.y = u_xlat6.z; u_xlat11.z = u_xlat7.z; u_xlat5 = u_xlat4.yyyy * u_xlat11; u_xlat6 = u_xlat9 * u_xlat4.xxxx + u_xlat12; u_xlat7 = u_xlat10 * u_xlat4.xxxx + u_xlat13; u_xlat4 = u_xlat8 * u_xlat4.xxxx + u_xlat5; u_xlat5.xyz = u_xlat1.yzw; u_xlat5.w = 1.0; u_xlat8.x = dot(u_xlat6, u_xlat5); u_xlat8.y = dot(u_xlat7, u_xlat5); u_xlat8.z = dot(u_xlat4, u_xlat5); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat6.xyz, u_xlat1.xyz); u_xlat5.x = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat5.y = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat3.xy = u_xlat2.zw; u_xlat5.z = dot(u_xlat6.xyz, u_xlat3.xyz); u_xlat5.w = dot(u_xlat7.xyz, u_xlat3.xyz); u_xlat14 = dot(u_xlat4.xyz, u_xlat3.xyz); inOutVertices3_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat8.x)); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat8.y)); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat8.z)); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat8.w)); inOutVertices3_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat5.x)); inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat5.y)); inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat5.z)); inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat5.w)); inOutVertices3_buf[u_xlatu0].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat14)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb14 = u_xlatu0> 2) + 3]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.z = uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(32 >> 2) + 0]); u_xlat4 = vec4(uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati14.xy = floatBitsToInt(u_xlat4.zw) + ivec2(g_PoseOffsets[0].zz); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat5.x; u_xlat9.y = u_xlat6.x; u_xlat9.z = u_xlat7.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat5.y; u_xlat10.y = u_xlat6.y; u_xlat10.z = u_xlat7.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat5.z; u_xlat8.y = u_xlat6.z; u_xlat8.z = u_xlat7.z; u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat5.x; u_xlat12.y = u_xlat6.x; u_xlat12.z = u_xlat7.x; u_xlat12.w = u_xlat11.x; u_xlat12 = u_xlat4.yyyy * u_xlat12; u_xlat13.x = u_xlat5.y; u_xlat13.y = u_xlat6.y; u_xlat13.z = u_xlat7.y; u_xlat13.w = u_xlat11.y; u_xlat13 = u_xlat4.yyyy * u_xlat13; u_xlat11.x = u_xlat5.z; u_xlat11.y = u_xlat6.z; u_xlat11.z = u_xlat7.z; u_xlat5 = u_xlat4.yyyy * u_xlat11; u_xlat6 = u_xlat9 * u_xlat4.xxxx + u_xlat12; u_xlat7 = u_xlat10 * u_xlat4.xxxx + u_xlat13; u_xlat4 = u_xlat8 * u_xlat4.xxxx + u_xlat5; u_xlat5.xyz = u_xlat1.yzw; u_xlat5.w = 1.0; u_xlat8.x = dot(u_xlat6, u_xlat5); u_xlat8.y = dot(u_xlat7, u_xlat5); u_xlat8.z = dot(u_xlat4, u_xlat5); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat6.xyz, u_xlat1.xyz); u_xlat5.x = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat5.y = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat3.xy = u_xlat2.zw; u_xlat5.z = dot(u_xlat6.xyz, u_xlat3.xyz); u_xlat5.w = dot(u_xlat7.xyz, u_xlat3.xyz); u_xlat14 = dot(u_xlat4.xyz, u_xlat3.xyz); inOutVertices2_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat8.x)); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat8.y)); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat8.z)); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat8.w)); inOutVertices2_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat5.x)); inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat5.y)); inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat5.z)); inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat5.w)); inOutVertices2_buf[u_xlatu0].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat14)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb14 = u_xlatu0> 2) + 3]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.z = uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(32 >> 2) + 0]); u_xlat4 = vec4(uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati14.xy = floatBitsToInt(u_xlat4.zw) + ivec2(g_PoseOffsets[0].yy); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat5.x; u_xlat9.y = u_xlat6.x; u_xlat9.z = u_xlat7.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat5.y; u_xlat10.y = u_xlat6.y; u_xlat10.z = u_xlat7.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat5.z; u_xlat8.y = u_xlat6.z; u_xlat8.z = u_xlat7.z; u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat5.x; u_xlat12.y = u_xlat6.x; u_xlat12.z = u_xlat7.x; u_xlat12.w = u_xlat11.x; u_xlat12 = u_xlat4.yyyy * u_xlat12; u_xlat13.x = u_xlat5.y; u_xlat13.y = u_xlat6.y; u_xlat13.z = u_xlat7.y; u_xlat13.w = u_xlat11.y; u_xlat13 = u_xlat4.yyyy * u_xlat13; u_xlat11.x = u_xlat5.z; u_xlat11.y = u_xlat6.z; u_xlat11.z = u_xlat7.z; u_xlat5 = u_xlat4.yyyy * u_xlat11; u_xlat6 = u_xlat9 * u_xlat4.xxxx + u_xlat12; u_xlat7 = u_xlat10 * u_xlat4.xxxx + u_xlat13; u_xlat4 = u_xlat8 * u_xlat4.xxxx + u_xlat5; u_xlat5.xyz = u_xlat1.yzw; u_xlat5.w = 1.0; u_xlat8.x = dot(u_xlat6, u_xlat5); u_xlat8.y = dot(u_xlat7, u_xlat5); u_xlat8.z = dot(u_xlat4, u_xlat5); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat6.xyz, u_xlat1.xyz); u_xlat5.x = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat5.y = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat3.xy = u_xlat2.zw; u_xlat5.z = dot(u_xlat6.xyz, u_xlat3.xyz); u_xlat5.w = dot(u_xlat7.xyz, u_xlat3.xyz); u_xlat14 = dot(u_xlat4.xyz, u_xlat3.xyz); inOutVertices1_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat8.x)); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat8.y)); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat8.z)); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat8.w)); inOutVertices1_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat5.x)); inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat5.y)); inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat5.z)); inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat5.w)); inOutVertices1_buf[u_xlatu0].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat14)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb14 = u_xlatu0> 2) + 3]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.z = uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(32 >> 2) + 0]); u_xlat4 = vec4(uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati14.xy = floatBitsToInt(u_xlat4.zw) + ivec2(g_PoseOffsets[0].xx); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat5.x; u_xlat9.y = u_xlat6.x; u_xlat9.z = u_xlat7.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat5.y; u_xlat10.y = u_xlat6.y; u_xlat10.z = u_xlat7.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat5.z; u_xlat8.y = u_xlat6.z; u_xlat8.z = u_xlat7.z; u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat5.x; u_xlat12.y = u_xlat6.x; u_xlat12.z = u_xlat7.x; u_xlat12.w = u_xlat11.x; u_xlat12 = u_xlat4.yyyy * u_xlat12; u_xlat13.x = u_xlat5.y; u_xlat13.y = u_xlat6.y; u_xlat13.z = u_xlat7.y; u_xlat13.w = u_xlat11.y; u_xlat13 = u_xlat4.yyyy * u_xlat13; u_xlat11.x = u_xlat5.z; u_xlat11.y = u_xlat6.z; u_xlat11.z = u_xlat7.z; u_xlat5 = u_xlat4.yyyy * u_xlat11; u_xlat6 = u_xlat9 * u_xlat4.xxxx + u_xlat12; u_xlat7 = u_xlat10 * u_xlat4.xxxx + u_xlat13; u_xlat4 = u_xlat8 * u_xlat4.xxxx + u_xlat5; u_xlat5.xyz = u_xlat1.yzw; u_xlat5.w = 1.0; u_xlat8.x = dot(u_xlat6, u_xlat5); u_xlat8.y = dot(u_xlat7, u_xlat5); u_xlat8.z = dot(u_xlat4, u_xlat5); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat6.xyz, u_xlat1.xyz); u_xlat5.x = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat5.y = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat3.xy = u_xlat2.zw; u_xlat5.z = dot(u_xlat6.xyz, u_xlat3.xyz); u_xlat5.w = dot(u_xlat7.xyz, u_xlat3.xyz); u_xlat14 = dot(u_xlat4.xyz, u_xlat3.xyz); inOutVertices0_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat8.x)); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat8.y)); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat8.z)); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat8.w)); inOutVertices0_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat5.x)); inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat5.y)); inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat5.z)); inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat5.w)); inOutVertices0_buf[u_xlatu0].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat14)); } } } } } } } } return; } @AbatchMainInPlaceComputeSkinInPlaceCBufferinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6 inMatricesinOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices6W#version 310 es #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif UNITY_BINDING(0) uniform ComputeSkinInPlaceCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; uvec4 g_PoseOffsets[2]; uint g_poseBufferMaxIndex; }; struct inSkin0_type { uint[8] value; }; layout(std430, binding = 7) readonly buffer inSkin0 { inSkin0_type inSkin0_buf[]; }; struct inSkin1_type { uint[8] value; }; layout(std430, binding = 8) readonly buffer inSkin1 { inSkin1_type inSkin1_buf[]; }; struct inSkin2_type { uint[8] value; }; layout(std430, binding = 9) readonly buffer inSkin2 { inSkin2_type inSkin2_buf[]; }; struct inSkin3_type { uint[8] value; }; layout(std430, binding = 10) readonly buffer inSkin3 { inSkin3_type inSkin3_buf[]; }; struct inSkin4_type { uint[8] value; }; layout(std430, binding = 11) readonly buffer inSkin4 { inSkin4_type inSkin4_buf[]; }; struct inSkin5_type { uint[8] value; }; layout(std430, binding = 12) readonly buffer inSkin5 { inSkin5_type inSkin5_buf[]; }; struct inSkin6_type { uint[8] value; }; layout(std430, binding = 13) readonly buffer inSkin6 { inSkin6_type inSkin6_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 14) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct inOutVertices0_type { uint[3] value; }; layout(std430, binding = 0) buffer inOutVertices0 { inOutVertices0_type inOutVertices0_buf[]; }; struct inOutVertices1_type { uint[3] value; }; layout(std430, binding = 1) buffer inOutVertices1 { inOutVertices1_type inOutVertices1_buf[]; }; struct inOutVertices2_type { uint[3] value; }; layout(std430, binding = 2) buffer inOutVertices2 { inOutVertices2_type inOutVertices2_buf[]; }; struct inOutVertices3_type { uint[3] value; }; layout(std430, binding = 3) buffer inOutVertices3 { inOutVertices3_type inOutVertices3_buf[]; }; struct inOutVertices4_type { uint[3] value; }; layout(std430, binding = 4) buffer inOutVertices4 { inOutVertices4_type inOutVertices4_buf[]; }; struct inOutVertices5_type { uint[3] value; }; layout(std430, binding = 5) buffer inOutVertices5 { inOutVertices5_type inOutVertices5_buf[]; }; struct inOutVertices6_type { uint[3] value; }; layout(std430, binding = 6) buffer inOutVertices6 { inOutVertices6_type inOutVertices6_buf[]; }; uint u_xlatu0; bool u_xlatb0; vec4 u_xlat1; vec4 u_xlat2; vec4 u_xlat3; ivec4 u_xlati3; vec4 u_xlat4; vec4 u_xlat5; vec4 u_xlat6; vec4 u_xlat7; vec4 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; vec4 u_xlat11; vec3 u_xlat12; bool u_xlatb12; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].z); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inSkin6_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin6_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin6_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin6_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati3 = ivec4(int(inSkin6_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin6_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin6_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin6_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati3 = u_xlati3 + ivec4(g_PoseOffsets[1].zzzz); u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat12.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.x = u_xlat12.y; u_xlat8.y = u_xlat4.y; u_xlat8.z = u_xlat5.y; u_xlat8.w = u_xlat6.y; u_xlat6.x = u_xlat12.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat12.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat10 = u_xlat2.yyyy * u_xlat10; u_xlat11.x = u_xlat12.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat11 = u_xlat2.yyyy * u_xlat11; u_xlat9.x = u_xlat12.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat4 = u_xlat2.yyyy * u_xlat9; u_xlat5 = u_xlat7 * u_xlat2.xxxx + u_xlat10; u_xlat7 = u_xlat8 * u_xlat2.xxxx + u_xlat11; u_xlat4 = u_xlat6 * u_xlat2.xxxx + u_xlat4; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat12.x; u_xlat10.y = u_xlat6.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat12.y; u_xlat11.y = u_xlat6.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat12.z; u_xlat9.y = u_xlat6.z; u_xlat9.z = u_xlat8.z; u_xlat5 = u_xlat10 * u_xlat2.zzzz + u_xlat5; u_xlat6 = u_xlat11 * u_xlat2.zzzz + u_xlat7; u_xlat4 = u_xlat9 * u_xlat2.zzzz + u_xlat4; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 2])); u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat12.x; u_xlat8.y = u_xlat2.x; u_xlat8.z = u_xlat3.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat12.y; u_xlat9.y = u_xlat2.y; u_xlat9.z = u_xlat3.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat12.z; u_xlat7.y = u_xlat2.z; u_xlat7.z = u_xlat3.z; u_xlat3 = u_xlat8 * u_xlat2.wwww + u_xlat5; u_xlat5 = u_xlat9 * u_xlat2.wwww + u_xlat6; u_xlat2 = u_xlat7 * u_xlat2.wwww + u_xlat4; u_xlat1.w = 1.0; u_xlat3.x = dot(u_xlat3, u_xlat1); u_xlat3.y = dot(u_xlat5, u_xlat1); u_xlat3.z = dot(u_xlat2, u_xlat1); inOutVertices6_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat3.x)); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat3.y)); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat3.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].y); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inSkin5_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin5_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin5_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin5_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati3 = ivec4(int(inSkin5_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin5_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin5_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin5_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati3 = u_xlati3 + ivec4(g_PoseOffsets[1].yyyy); u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat12.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.x = u_xlat12.y; u_xlat8.y = u_xlat4.y; u_xlat8.z = u_xlat5.y; u_xlat8.w = u_xlat6.y; u_xlat6.x = u_xlat12.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat12.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat10 = u_xlat2.yyyy * u_xlat10; u_xlat11.x = u_xlat12.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat11 = u_xlat2.yyyy * u_xlat11; u_xlat9.x = u_xlat12.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat4 = u_xlat2.yyyy * u_xlat9; u_xlat5 = u_xlat7 * u_xlat2.xxxx + u_xlat10; u_xlat7 = u_xlat8 * u_xlat2.xxxx + u_xlat11; u_xlat4 = u_xlat6 * u_xlat2.xxxx + u_xlat4; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat12.x; u_xlat10.y = u_xlat6.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat12.y; u_xlat11.y = u_xlat6.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat12.z; u_xlat9.y = u_xlat6.z; u_xlat9.z = u_xlat8.z; u_xlat5 = u_xlat10 * u_xlat2.zzzz + u_xlat5; u_xlat6 = u_xlat11 * u_xlat2.zzzz + u_xlat7; u_xlat4 = u_xlat9 * u_xlat2.zzzz + u_xlat4; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 2])); u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat12.x; u_xlat8.y = u_xlat2.x; u_xlat8.z = u_xlat3.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat12.y; u_xlat9.y = u_xlat2.y; u_xlat9.z = u_xlat3.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat12.z; u_xlat7.y = u_xlat2.z; u_xlat7.z = u_xlat3.z; u_xlat3 = u_xlat8 * u_xlat2.wwww + u_xlat5; u_xlat5 = u_xlat9 * u_xlat2.wwww + u_xlat6; u_xlat2 = u_xlat7 * u_xlat2.wwww + u_xlat4; u_xlat1.w = 1.0; u_xlat3.x = dot(u_xlat3, u_xlat1); u_xlat3.y = dot(u_xlat5, u_xlat1); u_xlat3.z = dot(u_xlat2, u_xlat1); inOutVertices5_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat3.x)); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat3.y)); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat3.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati3 = ivec4(int(inSkin4_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin4_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin4_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin4_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati3 = u_xlati3 + ivec4(g_PoseOffsets[1].xxxx); u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat12.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.x = u_xlat12.y; u_xlat8.y = u_xlat4.y; u_xlat8.z = u_xlat5.y; u_xlat8.w = u_xlat6.y; u_xlat6.x = u_xlat12.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat12.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat10 = u_xlat2.yyyy * u_xlat10; u_xlat11.x = u_xlat12.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat11 = u_xlat2.yyyy * u_xlat11; u_xlat9.x = u_xlat12.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat4 = u_xlat2.yyyy * u_xlat9; u_xlat5 = u_xlat7 * u_xlat2.xxxx + u_xlat10; u_xlat7 = u_xlat8 * u_xlat2.xxxx + u_xlat11; u_xlat4 = u_xlat6 * u_xlat2.xxxx + u_xlat4; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat12.x; u_xlat10.y = u_xlat6.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat12.y; u_xlat11.y = u_xlat6.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat12.z; u_xlat9.y = u_xlat6.z; u_xlat9.z = u_xlat8.z; u_xlat5 = u_xlat10 * u_xlat2.zzzz + u_xlat5; u_xlat6 = u_xlat11 * u_xlat2.zzzz + u_xlat7; u_xlat4 = u_xlat9 * u_xlat2.zzzz + u_xlat4; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 2])); u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat12.x; u_xlat8.y = u_xlat2.x; u_xlat8.z = u_xlat3.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat12.y; u_xlat9.y = u_xlat2.y; u_xlat9.z = u_xlat3.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat12.z; u_xlat7.y = u_xlat2.z; u_xlat7.z = u_xlat3.z; u_xlat3 = u_xlat8 * u_xlat2.wwww + u_xlat5; u_xlat5 = u_xlat9 * u_xlat2.wwww + u_xlat6; u_xlat2 = u_xlat7 * u_xlat2.wwww + u_xlat4; u_xlat1.w = 1.0; u_xlat3.x = dot(u_xlat3, u_xlat1); u_xlat3.y = dot(u_xlat5, u_xlat1); u_xlat3.z = dot(u_xlat2, u_xlat1); inOutVertices4_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat3.x)); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat3.y)); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat3.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati3 = ivec4(int(inSkin3_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin3_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin3_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin3_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati3 = u_xlati3 + ivec4(g_PoseOffsets[0].wwww); u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat12.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.x = u_xlat12.y; u_xlat8.y = u_xlat4.y; u_xlat8.z = u_xlat5.y; u_xlat8.w = u_xlat6.y; u_xlat6.x = u_xlat12.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat12.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat10 = u_xlat2.yyyy * u_xlat10; u_xlat11.x = u_xlat12.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat11 = u_xlat2.yyyy * u_xlat11; u_xlat9.x = u_xlat12.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat4 = u_xlat2.yyyy * u_xlat9; u_xlat5 = u_xlat7 * u_xlat2.xxxx + u_xlat10; u_xlat7 = u_xlat8 * u_xlat2.xxxx + u_xlat11; u_xlat4 = u_xlat6 * u_xlat2.xxxx + u_xlat4; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat12.x; u_xlat10.y = u_xlat6.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat12.y; u_xlat11.y = u_xlat6.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat12.z; u_xlat9.y = u_xlat6.z; u_xlat9.z = u_xlat8.z; u_xlat5 = u_xlat10 * u_xlat2.zzzz + u_xlat5; u_xlat6 = u_xlat11 * u_xlat2.zzzz + u_xlat7; u_xlat4 = u_xlat9 * u_xlat2.zzzz + u_xlat4; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 2])); u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat12.x; u_xlat8.y = u_xlat2.x; u_xlat8.z = u_xlat3.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat12.y; u_xlat9.y = u_xlat2.y; u_xlat9.z = u_xlat3.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat12.z; u_xlat7.y = u_xlat2.z; u_xlat7.z = u_xlat3.z; u_xlat3 = u_xlat8 * u_xlat2.wwww + u_xlat5; u_xlat5 = u_xlat9 * u_xlat2.wwww + u_xlat6; u_xlat2 = u_xlat7 * u_xlat2.wwww + u_xlat4; u_xlat1.w = 1.0; u_xlat3.x = dot(u_xlat3, u_xlat1); u_xlat3.y = dot(u_xlat5, u_xlat1); u_xlat3.z = dot(u_xlat2, u_xlat1); inOutVertices3_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat3.x)); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat3.y)); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat3.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati3 = ivec4(int(inSkin2_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin2_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin2_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin2_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati3 = u_xlati3 + ivec4(g_PoseOffsets[0].zzzz); u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat12.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.x = u_xlat12.y; u_xlat8.y = u_xlat4.y; u_xlat8.z = u_xlat5.y; u_xlat8.w = u_xlat6.y; u_xlat6.x = u_xlat12.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat12.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat10 = u_xlat2.yyyy * u_xlat10; u_xlat11.x = u_xlat12.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat11 = u_xlat2.yyyy * u_xlat11; u_xlat9.x = u_xlat12.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat4 = u_xlat2.yyyy * u_xlat9; u_xlat5 = u_xlat7 * u_xlat2.xxxx + u_xlat10; u_xlat7 = u_xlat8 * u_xlat2.xxxx + u_xlat11; u_xlat4 = u_xlat6 * u_xlat2.xxxx + u_xlat4; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat12.x; u_xlat10.y = u_xlat6.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat12.y; u_xlat11.y = u_xlat6.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat12.z; u_xlat9.y = u_xlat6.z; u_xlat9.z = u_xlat8.z; u_xlat5 = u_xlat10 * u_xlat2.zzzz + u_xlat5; u_xlat6 = u_xlat11 * u_xlat2.zzzz + u_xlat7; u_xlat4 = u_xlat9 * u_xlat2.zzzz + u_xlat4; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 2])); u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat12.x; u_xlat8.y = u_xlat2.x; u_xlat8.z = u_xlat3.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat12.y; u_xlat9.y = u_xlat2.y; u_xlat9.z = u_xlat3.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat12.z; u_xlat7.y = u_xlat2.z; u_xlat7.z = u_xlat3.z; u_xlat3 = u_xlat8 * u_xlat2.wwww + u_xlat5; u_xlat5 = u_xlat9 * u_xlat2.wwww + u_xlat6; u_xlat2 = u_xlat7 * u_xlat2.wwww + u_xlat4; u_xlat1.w = 1.0; u_xlat3.x = dot(u_xlat3, u_xlat1); u_xlat3.y = dot(u_xlat5, u_xlat1); u_xlat3.z = dot(u_xlat2, u_xlat1); inOutVertices2_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat3.x)); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat3.y)); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat3.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati3 = ivec4(int(inSkin1_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin1_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin1_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin1_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati3 = u_xlati3 + ivec4(g_PoseOffsets[0].yyyy); u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat12.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.x = u_xlat12.y; u_xlat8.y = u_xlat4.y; u_xlat8.z = u_xlat5.y; u_xlat8.w = u_xlat6.y; u_xlat6.x = u_xlat12.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat12.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat10 = u_xlat2.yyyy * u_xlat10; u_xlat11.x = u_xlat12.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat11 = u_xlat2.yyyy * u_xlat11; u_xlat9.x = u_xlat12.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat4 = u_xlat2.yyyy * u_xlat9; u_xlat5 = u_xlat7 * u_xlat2.xxxx + u_xlat10; u_xlat7 = u_xlat8 * u_xlat2.xxxx + u_xlat11; u_xlat4 = u_xlat6 * u_xlat2.xxxx + u_xlat4; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat12.x; u_xlat10.y = u_xlat6.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat12.y; u_xlat11.y = u_xlat6.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat12.z; u_xlat9.y = u_xlat6.z; u_xlat9.z = u_xlat8.z; u_xlat5 = u_xlat10 * u_xlat2.zzzz + u_xlat5; u_xlat6 = u_xlat11 * u_xlat2.zzzz + u_xlat7; u_xlat4 = u_xlat9 * u_xlat2.zzzz + u_xlat4; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 2])); u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat12.x; u_xlat8.y = u_xlat2.x; u_xlat8.z = u_xlat3.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat12.y; u_xlat9.y = u_xlat2.y; u_xlat9.z = u_xlat3.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat12.z; u_xlat7.y = u_xlat2.z; u_xlat7.z = u_xlat3.z; u_xlat3 = u_xlat8 * u_xlat2.wwww + u_xlat5; u_xlat5 = u_xlat9 * u_xlat2.wwww + u_xlat6; u_xlat2 = u_xlat7 * u_xlat2.wwww + u_xlat4; u_xlat1.w = 1.0; u_xlat3.x = dot(u_xlat3, u_xlat1); u_xlat3.y = dot(u_xlat5, u_xlat1); u_xlat3.z = dot(u_xlat2, u_xlat1); inOutVertices1_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat3.x)); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat3.y)); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat3.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati3 = ivec4(int(inSkin0_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin0_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin0_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin0_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati3 = u_xlati3 + ivec4(g_PoseOffsets[0].xxxx); u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat12.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.x = u_xlat12.y; u_xlat8.y = u_xlat4.y; u_xlat8.z = u_xlat5.y; u_xlat8.w = u_xlat6.y; u_xlat6.x = u_xlat12.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat12.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat10 = u_xlat2.yyyy * u_xlat10; u_xlat11.x = u_xlat12.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat11 = u_xlat2.yyyy * u_xlat11; u_xlat9.x = u_xlat12.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat4 = u_xlat2.yyyy * u_xlat9; u_xlat5 = u_xlat7 * u_xlat2.xxxx + u_xlat10; u_xlat7 = u_xlat8 * u_xlat2.xxxx + u_xlat11; u_xlat4 = u_xlat6 * u_xlat2.xxxx + u_xlat4; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat12.x; u_xlat10.y = u_xlat6.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat12.y; u_xlat11.y = u_xlat6.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat12.z; u_xlat9.y = u_xlat6.z; u_xlat9.z = u_xlat8.z; u_xlat5 = u_xlat10 * u_xlat2.zzzz + u_xlat5; u_xlat6 = u_xlat11 * u_xlat2.zzzz + u_xlat7; u_xlat4 = u_xlat9 * u_xlat2.zzzz + u_xlat4; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 2])); u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat12.x; u_xlat8.y = u_xlat2.x; u_xlat8.z = u_xlat3.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat12.y; u_xlat9.y = u_xlat2.y; u_xlat9.z = u_xlat3.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat12.z; u_xlat7.y = u_xlat2.z; u_xlat7.z = u_xlat3.z; u_xlat3 = u_xlat8 * u_xlat2.wwww + u_xlat5; u_xlat5 = u_xlat9 * u_xlat2.wwww + u_xlat6; u_xlat2 = u_xlat7 * u_xlat2.wwww + u_xlat4; u_xlat1.w = 1.0; u_xlat3.x = dot(u_xlat3, u_xlat1); u_xlat3.y = dot(u_xlat5, u_xlat1); u_xlat3.z = dot(u_xlat2, u_xlat1); inOutVertices0_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat3.x)); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat3.y)); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat3.z)); } } } } } } } } return; } @AbatchMainInPlaceComputeSkinInPlaceCBufferinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6 inMatricesinOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices6 #version 310 es #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif UNITY_BINDING(0) uniform ComputeSkinInPlaceCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; uvec4 g_PoseOffsets[2]; uint g_poseBufferMaxIndex; }; struct inSkin0_type { uint[8] value; }; layout(std430, binding = 7) readonly buffer inSkin0 { inSkin0_type inSkin0_buf[]; }; struct inSkin1_type { uint[8] value; }; layout(std430, binding = 8) readonly buffer inSkin1 { inSkin1_type inSkin1_buf[]; }; struct inSkin2_type { uint[8] value; }; layout(std430, binding = 9) readonly buffer inSkin2 { inSkin2_type inSkin2_buf[]; }; struct inSkin3_type { uint[8] value; }; layout(std430, binding = 10) readonly buffer inSkin3 { inSkin3_type inSkin3_buf[]; }; struct inSkin4_type { uint[8] value; }; layout(std430, binding = 11) readonly buffer inSkin4 { inSkin4_type inSkin4_buf[]; }; struct inSkin5_type { uint[8] value; }; layout(std430, binding = 12) readonly buffer inSkin5 { inSkin5_type inSkin5_buf[]; }; struct inSkin6_type { uint[8] value; }; layout(std430, binding = 13) readonly buffer inSkin6 { inSkin6_type inSkin6_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 14) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct inOutVertices0_type { uint[6] value; }; layout(std430, binding = 0) buffer inOutVertices0 { inOutVertices0_type inOutVertices0_buf[]; }; struct inOutVertices1_type { uint[6] value; }; layout(std430, binding = 1) buffer inOutVertices1 { inOutVertices1_type inOutVertices1_buf[]; }; struct inOutVertices2_type { uint[6] value; }; layout(std430, binding = 2) buffer inOutVertices2 { inOutVertices2_type inOutVertices2_buf[]; }; struct inOutVertices3_type { uint[6] value; }; layout(std430, binding = 3) buffer inOutVertices3 { inOutVertices3_type inOutVertices3_buf[]; }; struct inOutVertices4_type { uint[6] value; }; layout(std430, binding = 4) buffer inOutVertices4 { inOutVertices4_type inOutVertices4_buf[]; }; struct inOutVertices5_type { uint[6] value; }; layout(std430, binding = 5) buffer inOutVertices5 { inOutVertices5_type inOutVertices5_buf[]; }; struct inOutVertices6_type { uint[6] value; }; layout(std430, binding = 6) buffer inOutVertices6 { inOutVertices6_type inOutVertices6_buf[]; }; uint u_xlatu0; bool u_xlatb0; vec4 u_xlat1; vec3 u_xlat2; vec4 u_xlat3; vec4 u_xlat4; ivec4 u_xlati4; vec4 u_xlat5; vec4 u_xlat6; vec4 u_xlat7; vec4 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; vec4 u_xlat11; vec4 u_xlat12; vec3 u_xlat13; bool u_xlatb13; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].z); u_xlatb13 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inSkin6_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin6_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin6_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin6_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati4 = ivec4(int(inSkin6_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin6_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin6_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin6_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati4 = u_xlati4 + ivec4(g_PoseOffsets[1].zzzz); u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat13.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat13.y; u_xlat9.y = u_xlat5.y; u_xlat9.z = u_xlat6.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat13.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat13.x; u_xlat11.y = u_xlat5.x; u_xlat11.z = u_xlat6.x; u_xlat11.w = u_xlat10.x; u_xlat11 = u_xlat3.yyyy * u_xlat11; u_xlat12.x = u_xlat13.y; u_xlat12.y = u_xlat5.y; u_xlat12.z = u_xlat6.y; u_xlat12.w = u_xlat10.y; u_xlat12 = u_xlat3.yyyy * u_xlat12; u_xlat10.x = u_xlat13.z; u_xlat10.y = u_xlat5.z; u_xlat10.z = u_xlat6.z; u_xlat5 = u_xlat3.yyyy * u_xlat10; u_xlat6 = u_xlat8 * u_xlat3.xxxx + u_xlat11; u_xlat8 = u_xlat9 * u_xlat3.xxxx + u_xlat12; u_xlat5 = u_xlat7 * u_xlat3.xxxx + u_xlat5; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 2])); u_xlat9.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat13.x; u_xlat11.y = u_xlat7.x; u_xlat11.z = u_xlat9.x; u_xlat11.w = u_xlat10.x; u_xlat12.x = u_xlat13.y; u_xlat12.y = u_xlat7.y; u_xlat12.z = u_xlat9.y; u_xlat12.w = u_xlat10.y; u_xlat10.x = u_xlat13.z; u_xlat10.y = u_xlat7.z; u_xlat10.z = u_xlat9.z; u_xlat6 = u_xlat11 * u_xlat3.zzzz + u_xlat6; u_xlat7 = u_xlat12 * u_xlat3.zzzz + u_xlat8; u_xlat5 = u_xlat10 * u_xlat3.zzzz + u_xlat5; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat13.x; u_xlat9.y = u_xlat3.x; u_xlat9.z = u_xlat4.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat13.y; u_xlat10.y = u_xlat3.y; u_xlat10.z = u_xlat4.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat13.z; u_xlat8.y = u_xlat3.z; u_xlat8.z = u_xlat4.z; u_xlat4 = u_xlat9 * u_xlat3.wwww + u_xlat6; u_xlat6 = u_xlat10 * u_xlat3.wwww + u_xlat7; u_xlat3 = u_xlat8 * u_xlat3.wwww + u_xlat5; u_xlat5.xyz = u_xlat1.xyz; u_xlat5.w = 1.0; u_xlat7.x = dot(u_xlat4, u_xlat5); u_xlat7.y = dot(u_xlat6, u_xlat5); u_xlat7.z = dot(u_xlat3, u_xlat5); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat4.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat6.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat3.yzx, u_xlat2.xyz); inOutVertices6_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat7.x)); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat7.y)); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat7.z)); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat7.w)); inOutVertices6_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat1.x)); inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat1.y)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].y); u_xlatb13 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inSkin5_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin5_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin5_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin5_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati4 = ivec4(int(inSkin5_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin5_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin5_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin5_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati4 = u_xlati4 + ivec4(g_PoseOffsets[1].yyyy); u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat13.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat13.y; u_xlat9.y = u_xlat5.y; u_xlat9.z = u_xlat6.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat13.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat13.x; u_xlat11.y = u_xlat5.x; u_xlat11.z = u_xlat6.x; u_xlat11.w = u_xlat10.x; u_xlat11 = u_xlat3.yyyy * u_xlat11; u_xlat12.x = u_xlat13.y; u_xlat12.y = u_xlat5.y; u_xlat12.z = u_xlat6.y; u_xlat12.w = u_xlat10.y; u_xlat12 = u_xlat3.yyyy * u_xlat12; u_xlat10.x = u_xlat13.z; u_xlat10.y = u_xlat5.z; u_xlat10.z = u_xlat6.z; u_xlat5 = u_xlat3.yyyy * u_xlat10; u_xlat6 = u_xlat8 * u_xlat3.xxxx + u_xlat11; u_xlat8 = u_xlat9 * u_xlat3.xxxx + u_xlat12; u_xlat5 = u_xlat7 * u_xlat3.xxxx + u_xlat5; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 2])); u_xlat9.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat13.x; u_xlat11.y = u_xlat7.x; u_xlat11.z = u_xlat9.x; u_xlat11.w = u_xlat10.x; u_xlat12.x = u_xlat13.y; u_xlat12.y = u_xlat7.y; u_xlat12.z = u_xlat9.y; u_xlat12.w = u_xlat10.y; u_xlat10.x = u_xlat13.z; u_xlat10.y = u_xlat7.z; u_xlat10.z = u_xlat9.z; u_xlat6 = u_xlat11 * u_xlat3.zzzz + u_xlat6; u_xlat7 = u_xlat12 * u_xlat3.zzzz + u_xlat8; u_xlat5 = u_xlat10 * u_xlat3.zzzz + u_xlat5; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat13.x; u_xlat9.y = u_xlat3.x; u_xlat9.z = u_xlat4.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat13.y; u_xlat10.y = u_xlat3.y; u_xlat10.z = u_xlat4.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat13.z; u_xlat8.y = u_xlat3.z; u_xlat8.z = u_xlat4.z; u_xlat4 = u_xlat9 * u_xlat3.wwww + u_xlat6; u_xlat6 = u_xlat10 * u_xlat3.wwww + u_xlat7; u_xlat3 = u_xlat8 * u_xlat3.wwww + u_xlat5; u_xlat5.xyz = u_xlat1.xyz; u_xlat5.w = 1.0; u_xlat7.x = dot(u_xlat4, u_xlat5); u_xlat7.y = dot(u_xlat6, u_xlat5); u_xlat7.z = dot(u_xlat3, u_xlat5); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat4.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat6.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat3.yzx, u_xlat2.xyz); inOutVertices5_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat7.x)); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat7.y)); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat7.z)); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat7.w)); inOutVertices5_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat1.x)); inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat1.y)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb13 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati4 = ivec4(int(inSkin4_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin4_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin4_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin4_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati4 = u_xlati4 + ivec4(g_PoseOffsets[1].xxxx); u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat13.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat13.y; u_xlat9.y = u_xlat5.y; u_xlat9.z = u_xlat6.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat13.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat13.x; u_xlat11.y = u_xlat5.x; u_xlat11.z = u_xlat6.x; u_xlat11.w = u_xlat10.x; u_xlat11 = u_xlat3.yyyy * u_xlat11; u_xlat12.x = u_xlat13.y; u_xlat12.y = u_xlat5.y; u_xlat12.z = u_xlat6.y; u_xlat12.w = u_xlat10.y; u_xlat12 = u_xlat3.yyyy * u_xlat12; u_xlat10.x = u_xlat13.z; u_xlat10.y = u_xlat5.z; u_xlat10.z = u_xlat6.z; u_xlat5 = u_xlat3.yyyy * u_xlat10; u_xlat6 = u_xlat8 * u_xlat3.xxxx + u_xlat11; u_xlat8 = u_xlat9 * u_xlat3.xxxx + u_xlat12; u_xlat5 = u_xlat7 * u_xlat3.xxxx + u_xlat5; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 2])); u_xlat9.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat13.x; u_xlat11.y = u_xlat7.x; u_xlat11.z = u_xlat9.x; u_xlat11.w = u_xlat10.x; u_xlat12.x = u_xlat13.y; u_xlat12.y = u_xlat7.y; u_xlat12.z = u_xlat9.y; u_xlat12.w = u_xlat10.y; u_xlat10.x = u_xlat13.z; u_xlat10.y = u_xlat7.z; u_xlat10.z = u_xlat9.z; u_xlat6 = u_xlat11 * u_xlat3.zzzz + u_xlat6; u_xlat7 = u_xlat12 * u_xlat3.zzzz + u_xlat8; u_xlat5 = u_xlat10 * u_xlat3.zzzz + u_xlat5; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat13.x; u_xlat9.y = u_xlat3.x; u_xlat9.z = u_xlat4.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat13.y; u_xlat10.y = u_xlat3.y; u_xlat10.z = u_xlat4.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat13.z; u_xlat8.y = u_xlat3.z; u_xlat8.z = u_xlat4.z; u_xlat4 = u_xlat9 * u_xlat3.wwww + u_xlat6; u_xlat6 = u_xlat10 * u_xlat3.wwww + u_xlat7; u_xlat3 = u_xlat8 * u_xlat3.wwww + u_xlat5; u_xlat5.xyz = u_xlat1.xyz; u_xlat5.w = 1.0; u_xlat7.x = dot(u_xlat4, u_xlat5); u_xlat7.y = dot(u_xlat6, u_xlat5); u_xlat7.z = dot(u_xlat3, u_xlat5); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat4.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat6.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat3.yzx, u_xlat2.xyz); inOutVertices4_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat7.x)); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat7.y)); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat7.z)); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat7.w)); inOutVertices4_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat1.x)); inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat1.y)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb13 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati4 = ivec4(int(inSkin3_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin3_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin3_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin3_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati4 = u_xlati4 + ivec4(g_PoseOffsets[0].wwww); u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat13.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat13.y; u_xlat9.y = u_xlat5.y; u_xlat9.z = u_xlat6.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat13.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat13.x; u_xlat11.y = u_xlat5.x; u_xlat11.z = u_xlat6.x; u_xlat11.w = u_xlat10.x; u_xlat11 = u_xlat3.yyyy * u_xlat11; u_xlat12.x = u_xlat13.y; u_xlat12.y = u_xlat5.y; u_xlat12.z = u_xlat6.y; u_xlat12.w = u_xlat10.y; u_xlat12 = u_xlat3.yyyy * u_xlat12; u_xlat10.x = u_xlat13.z; u_xlat10.y = u_xlat5.z; u_xlat10.z = u_xlat6.z; u_xlat5 = u_xlat3.yyyy * u_xlat10; u_xlat6 = u_xlat8 * u_xlat3.xxxx + u_xlat11; u_xlat8 = u_xlat9 * u_xlat3.xxxx + u_xlat12; u_xlat5 = u_xlat7 * u_xlat3.xxxx + u_xlat5; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 2])); u_xlat9.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat13.x; u_xlat11.y = u_xlat7.x; u_xlat11.z = u_xlat9.x; u_xlat11.w = u_xlat10.x; u_xlat12.x = u_xlat13.y; u_xlat12.y = u_xlat7.y; u_xlat12.z = u_xlat9.y; u_xlat12.w = u_xlat10.y; u_xlat10.x = u_xlat13.z; u_xlat10.y = u_xlat7.z; u_xlat10.z = u_xlat9.z; u_xlat6 = u_xlat11 * u_xlat3.zzzz + u_xlat6; u_xlat7 = u_xlat12 * u_xlat3.zzzz + u_xlat8; u_xlat5 = u_xlat10 * u_xlat3.zzzz + u_xlat5; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat13.x; u_xlat9.y = u_xlat3.x; u_xlat9.z = u_xlat4.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat13.y; u_xlat10.y = u_xlat3.y; u_xlat10.z = u_xlat4.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat13.z; u_xlat8.y = u_xlat3.z; u_xlat8.z = u_xlat4.z; u_xlat4 = u_xlat9 * u_xlat3.wwww + u_xlat6; u_xlat6 = u_xlat10 * u_xlat3.wwww + u_xlat7; u_xlat3 = u_xlat8 * u_xlat3.wwww + u_xlat5; u_xlat5.xyz = u_xlat1.xyz; u_xlat5.w = 1.0; u_xlat7.x = dot(u_xlat4, u_xlat5); u_xlat7.y = dot(u_xlat6, u_xlat5); u_xlat7.z = dot(u_xlat3, u_xlat5); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat4.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat6.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat3.yzx, u_xlat2.xyz); inOutVertices3_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat7.x)); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat7.y)); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat7.z)); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat7.w)); inOutVertices3_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat1.x)); inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat1.y)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb13 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati4 = ivec4(int(inSkin2_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin2_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin2_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin2_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati4 = u_xlati4 + ivec4(g_PoseOffsets[0].zzzz); u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat13.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat13.y; u_xlat9.y = u_xlat5.y; u_xlat9.z = u_xlat6.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat13.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat13.x; u_xlat11.y = u_xlat5.x; u_xlat11.z = u_xlat6.x; u_xlat11.w = u_xlat10.x; u_xlat11 = u_xlat3.yyyy * u_xlat11; u_xlat12.x = u_xlat13.y; u_xlat12.y = u_xlat5.y; u_xlat12.z = u_xlat6.y; u_xlat12.w = u_xlat10.y; u_xlat12 = u_xlat3.yyyy * u_xlat12; u_xlat10.x = u_xlat13.z; u_xlat10.y = u_xlat5.z; u_xlat10.z = u_xlat6.z; u_xlat5 = u_xlat3.yyyy * u_xlat10; u_xlat6 = u_xlat8 * u_xlat3.xxxx + u_xlat11; u_xlat8 = u_xlat9 * u_xlat3.xxxx + u_xlat12; u_xlat5 = u_xlat7 * u_xlat3.xxxx + u_xlat5; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 2])); u_xlat9.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat13.x; u_xlat11.y = u_xlat7.x; u_xlat11.z = u_xlat9.x; u_xlat11.w = u_xlat10.x; u_xlat12.x = u_xlat13.y; u_xlat12.y = u_xlat7.y; u_xlat12.z = u_xlat9.y; u_xlat12.w = u_xlat10.y; u_xlat10.x = u_xlat13.z; u_xlat10.y = u_xlat7.z; u_xlat10.z = u_xlat9.z; u_xlat6 = u_xlat11 * u_xlat3.zzzz + u_xlat6; u_xlat7 = u_xlat12 * u_xlat3.zzzz + u_xlat8; u_xlat5 = u_xlat10 * u_xlat3.zzzz + u_xlat5; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat13.x; u_xlat9.y = u_xlat3.x; u_xlat9.z = u_xlat4.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat13.y; u_xlat10.y = u_xlat3.y; u_xlat10.z = u_xlat4.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat13.z; u_xlat8.y = u_xlat3.z; u_xlat8.z = u_xlat4.z; u_xlat4 = u_xlat9 * u_xlat3.wwww + u_xlat6; u_xlat6 = u_xlat10 * u_xlat3.wwww + u_xlat7; u_xlat3 = u_xlat8 * u_xlat3.wwww + u_xlat5; u_xlat5.xyz = u_xlat1.xyz; u_xlat5.w = 1.0; u_xlat7.x = dot(u_xlat4, u_xlat5); u_xlat7.y = dot(u_xlat6, u_xlat5); u_xlat7.z = dot(u_xlat3, u_xlat5); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat4.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat6.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat3.yzx, u_xlat2.xyz); inOutVertices2_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat7.x)); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat7.y)); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat7.z)); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat7.w)); inOutVertices2_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat1.x)); inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat1.y)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb13 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati4 = ivec4(int(inSkin1_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin1_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin1_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin1_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati4 = u_xlati4 + ivec4(g_PoseOffsets[0].yyyy); u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat13.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat13.y; u_xlat9.y = u_xlat5.y; u_xlat9.z = u_xlat6.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat13.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat13.x; u_xlat11.y = u_xlat5.x; u_xlat11.z = u_xlat6.x; u_xlat11.w = u_xlat10.x; u_xlat11 = u_xlat3.yyyy * u_xlat11; u_xlat12.x = u_xlat13.y; u_xlat12.y = u_xlat5.y; u_xlat12.z = u_xlat6.y; u_xlat12.w = u_xlat10.y; u_xlat12 = u_xlat3.yyyy * u_xlat12; u_xlat10.x = u_xlat13.z; u_xlat10.y = u_xlat5.z; u_xlat10.z = u_xlat6.z; u_xlat5 = u_xlat3.yyyy * u_xlat10; u_xlat6 = u_xlat8 * u_xlat3.xxxx + u_xlat11; u_xlat8 = u_xlat9 * u_xlat3.xxxx + u_xlat12; u_xlat5 = u_xlat7 * u_xlat3.xxxx + u_xlat5; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 2])); u_xlat9.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat13.x; u_xlat11.y = u_xlat7.x; u_xlat11.z = u_xlat9.x; u_xlat11.w = u_xlat10.x; u_xlat12.x = u_xlat13.y; u_xlat12.y = u_xlat7.y; u_xlat12.z = u_xlat9.y; u_xlat12.w = u_xlat10.y; u_xlat10.x = u_xlat13.z; u_xlat10.y = u_xlat7.z; u_xlat10.z = u_xlat9.z; u_xlat6 = u_xlat11 * u_xlat3.zzzz + u_xlat6; u_xlat7 = u_xlat12 * u_xlat3.zzzz + u_xlat8; u_xlat5 = u_xlat10 * u_xlat3.zzzz + u_xlat5; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat13.x; u_xlat9.y = u_xlat3.x; u_xlat9.z = u_xlat4.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat13.y; u_xlat10.y = u_xlat3.y; u_xlat10.z = u_xlat4.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat13.z; u_xlat8.y = u_xlat3.z; u_xlat8.z = u_xlat4.z; u_xlat4 = u_xlat9 * u_xlat3.wwww + u_xlat6; u_xlat6 = u_xlat10 * u_xlat3.wwww + u_xlat7; u_xlat3 = u_xlat8 * u_xlat3.wwww + u_xlat5; u_xlat5.xyz = u_xlat1.xyz; u_xlat5.w = 1.0; u_xlat7.x = dot(u_xlat4, u_xlat5); u_xlat7.y = dot(u_xlat6, u_xlat5); u_xlat7.z = dot(u_xlat3, u_xlat5); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat4.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat6.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat3.yzx, u_xlat2.xyz); inOutVertices1_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat7.x)); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat7.y)); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat7.z)); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat7.w)); inOutVertices1_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat1.x)); inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat1.y)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb13 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati4 = ivec4(int(inSkin0_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin0_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin0_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin0_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati4 = u_xlati4 + ivec4(g_PoseOffsets[0].xxxx); u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat13.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat13.y; u_xlat9.y = u_xlat5.y; u_xlat9.z = u_xlat6.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat13.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat13.x; u_xlat11.y = u_xlat5.x; u_xlat11.z = u_xlat6.x; u_xlat11.w = u_xlat10.x; u_xlat11 = u_xlat3.yyyy * u_xlat11; u_xlat12.x = u_xlat13.y; u_xlat12.y = u_xlat5.y; u_xlat12.z = u_xlat6.y; u_xlat12.w = u_xlat10.y; u_xlat12 = u_xlat3.yyyy * u_xlat12; u_xlat10.x = u_xlat13.z; u_xlat10.y = u_xlat5.z; u_xlat10.z = u_xlat6.z; u_xlat5 = u_xlat3.yyyy * u_xlat10; u_xlat6 = u_xlat8 * u_xlat3.xxxx + u_xlat11; u_xlat8 = u_xlat9 * u_xlat3.xxxx + u_xlat12; u_xlat5 = u_xlat7 * u_xlat3.xxxx + u_xlat5; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 2])); u_xlat9.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat13.x; u_xlat11.y = u_xlat7.x; u_xlat11.z = u_xlat9.x; u_xlat11.w = u_xlat10.x; u_xlat12.x = u_xlat13.y; u_xlat12.y = u_xlat7.y; u_xlat12.z = u_xlat9.y; u_xlat12.w = u_xlat10.y; u_xlat10.x = u_xlat13.z; u_xlat10.y = u_xlat7.z; u_xlat10.z = u_xlat9.z; u_xlat6 = u_xlat11 * u_xlat3.zzzz + u_xlat6; u_xlat7 = u_xlat12 * u_xlat3.zzzz + u_xlat8; u_xlat5 = u_xlat10 * u_xlat3.zzzz + u_xlat5; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat13.x; u_xlat9.y = u_xlat3.x; u_xlat9.z = u_xlat4.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat13.y; u_xlat10.y = u_xlat3.y; u_xlat10.z = u_xlat4.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat13.z; u_xlat8.y = u_xlat3.z; u_xlat8.z = u_xlat4.z; u_xlat4 = u_xlat9 * u_xlat3.wwww + u_xlat6; u_xlat6 = u_xlat10 * u_xlat3.wwww + u_xlat7; u_xlat3 = u_xlat8 * u_xlat3.wwww + u_xlat5; u_xlat5.xyz = u_xlat1.xyz; u_xlat5.w = 1.0; u_xlat7.x = dot(u_xlat4, u_xlat5); u_xlat7.y = dot(u_xlat6, u_xlat5); u_xlat7.z = dot(u_xlat3, u_xlat5); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat4.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat6.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat3.yzx, u_xlat2.xyz); inOutVertices0_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat7.x)); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat7.y)); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat7.z)); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat7.w)); inOutVertices0_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat1.x)); inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat1.y)); } } } } } } } } return; } @AbatchMainInPlaceComputeSkinInPlaceCBufferinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6 inMatricesinOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices6h"#version 310 es #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif UNITY_BINDING(0) uniform ComputeSkinInPlaceCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; uvec4 g_PoseOffsets[2]; uint g_poseBufferMaxIndex; }; struct inSkin0_type { uint[8] value; }; layout(std430, binding = 7) readonly buffer inSkin0 { inSkin0_type inSkin0_buf[]; }; struct inSkin1_type { uint[8] value; }; layout(std430, binding = 8) readonly buffer inSkin1 { inSkin1_type inSkin1_buf[]; }; struct inSkin2_type { uint[8] value; }; layout(std430, binding = 9) readonly buffer inSkin2 { inSkin2_type inSkin2_buf[]; }; struct inSkin3_type { uint[8] value; }; layout(std430, binding = 10) readonly buffer inSkin3 { inSkin3_type inSkin3_buf[]; }; struct inSkin4_type { uint[8] value; }; layout(std430, binding = 11) readonly buffer inSkin4 { inSkin4_type inSkin4_buf[]; }; struct inSkin5_type { uint[8] value; }; layout(std430, binding = 12) readonly buffer inSkin5 { inSkin5_type inSkin5_buf[]; }; struct inSkin6_type { uint[8] value; }; layout(std430, binding = 13) readonly buffer inSkin6 { inSkin6_type inSkin6_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 14) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct inOutVertices0_type { uint[10] value; }; layout(std430, binding = 0) buffer inOutVertices0 { inOutVertices0_type inOutVertices0_buf[]; }; struct inOutVertices1_type { uint[10] value; }; layout(std430, binding = 1) buffer inOutVertices1 { inOutVertices1_type inOutVertices1_buf[]; }; struct inOutVertices2_type { uint[10] value; }; layout(std430, binding = 2) buffer inOutVertices2 { inOutVertices2_type inOutVertices2_buf[]; }; struct inOutVertices3_type { uint[10] value; }; layout(std430, binding = 3) buffer inOutVertices3 { inOutVertices3_type inOutVertices3_buf[]; }; struct inOutVertices4_type { uint[10] value; }; layout(std430, binding = 4) buffer inOutVertices4 { inOutVertices4_type inOutVertices4_buf[]; }; struct inOutVertices5_type { uint[10] value; }; layout(std430, binding = 5) buffer inOutVertices5 { inOutVertices5_type inOutVertices5_buf[]; }; struct inOutVertices6_type { uint[10] value; }; layout(std430, binding = 6) buffer inOutVertices6 { inOutVertices6_type inOutVertices6_buf[]; }; uint u_xlatu0; bool u_xlatb0; vec4 u_xlat1; vec4 u_xlat2; vec3 u_xlat3; vec4 u_xlat4; vec4 u_xlat5; ivec4 u_xlati5; vec4 u_xlat6; vec4 u_xlat7; vec4 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; vec4 u_xlat11; vec4 u_xlat12; vec4 u_xlat13; vec3 u_xlat14; bool u_xlatb14; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].z); u_xlatb14 = u_xlatu0> 2) + 3]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.z = uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(32 >> 2) + 0]); u_xlat4 = vec4(uintBitsToFloat(inSkin6_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin6_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin6_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin6_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati5 = ivec4(int(inSkin6_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin6_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin6_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin6_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati5 = u_xlati5 + ivec4(g_PoseOffsets[1].zzzz); u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat14.x; u_xlat9.y = u_xlat6.x; u_xlat9.z = u_xlat7.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat14.y; u_xlat10.y = u_xlat6.y; u_xlat10.z = u_xlat7.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat14.z; u_xlat8.y = u_xlat6.z; u_xlat8.z = u_xlat7.z; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat14.x; u_xlat12.y = u_xlat6.x; u_xlat12.z = u_xlat7.x; u_xlat12.w = u_xlat11.x; u_xlat12 = u_xlat4.yyyy * u_xlat12; u_xlat13.x = u_xlat14.y; u_xlat13.y = u_xlat6.y; u_xlat13.z = u_xlat7.y; u_xlat13.w = u_xlat11.y; u_xlat13 = u_xlat4.yyyy * u_xlat13; u_xlat11.x = u_xlat14.z; u_xlat11.y = u_xlat6.z; u_xlat11.z = u_xlat7.z; u_xlat6 = u_xlat4.yyyy * u_xlat11; u_xlat7 = u_xlat9 * u_xlat4.xxxx + u_xlat12; u_xlat9 = u_xlat10 * u_xlat4.xxxx + u_xlat13; u_xlat6 = u_xlat8 * u_xlat4.xxxx + u_xlat6; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 2])); u_xlat10.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat14.x; u_xlat12.y = u_xlat8.x; u_xlat12.z = u_xlat10.x; u_xlat12.w = u_xlat11.x; u_xlat13.x = u_xlat14.y; u_xlat13.y = u_xlat8.y; u_xlat13.z = u_xlat10.y; u_xlat13.w = u_xlat11.y; u_xlat11.x = u_xlat14.z; u_xlat11.y = u_xlat8.z; u_xlat11.z = u_xlat10.z; u_xlat7 = u_xlat12 * u_xlat4.zzzz + u_xlat7; u_xlat8 = u_xlat13 * u_xlat4.zzzz + u_xlat9; u_xlat6 = u_xlat11 * u_xlat4.zzzz + u_xlat6; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat14.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat14.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat14.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat5 = u_xlat10 * u_xlat4.wwww + u_xlat7; u_xlat7 = u_xlat11 * u_xlat4.wwww + u_xlat8; u_xlat4 = u_xlat9 * u_xlat4.wwww + u_xlat6; u_xlat6.xyz = u_xlat1.yzw; u_xlat6.w = 1.0; u_xlat8.x = dot(u_xlat5, u_xlat6); u_xlat8.y = dot(u_xlat7, u_xlat6); u_xlat8.z = dot(u_xlat4, u_xlat6); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat5.xyz, u_xlat1.xyz); u_xlat6.x = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat6.y = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat3.xy = u_xlat2.zw; u_xlat6.z = dot(u_xlat5.xyz, u_xlat3.xyz); u_xlat6.w = dot(u_xlat7.xyz, u_xlat3.xyz); u_xlat14.x = dot(u_xlat4.xyz, u_xlat3.xyz); inOutVertices6_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat8.x)); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat8.y)); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat8.z)); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat8.w)); inOutVertices6_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat6.x)); inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat6.y)); inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat6.z)); inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat6.w)); inOutVertices6_buf[u_xlatu0].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat14.x)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].y); u_xlatb14 = u_xlatu0> 2) + 3]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.z = uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(32 >> 2) + 0]); u_xlat4 = vec4(uintBitsToFloat(inSkin5_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin5_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin5_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin5_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati5 = ivec4(int(inSkin5_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin5_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin5_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin5_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati5 = u_xlati5 + ivec4(g_PoseOffsets[1].yyyy); u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat14.x; u_xlat9.y = u_xlat6.x; u_xlat9.z = u_xlat7.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat14.y; u_xlat10.y = u_xlat6.y; u_xlat10.z = u_xlat7.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat14.z; u_xlat8.y = u_xlat6.z; u_xlat8.z = u_xlat7.z; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat14.x; u_xlat12.y = u_xlat6.x; u_xlat12.z = u_xlat7.x; u_xlat12.w = u_xlat11.x; u_xlat12 = u_xlat4.yyyy * u_xlat12; u_xlat13.x = u_xlat14.y; u_xlat13.y = u_xlat6.y; u_xlat13.z = u_xlat7.y; u_xlat13.w = u_xlat11.y; u_xlat13 = u_xlat4.yyyy * u_xlat13; u_xlat11.x = u_xlat14.z; u_xlat11.y = u_xlat6.z; u_xlat11.z = u_xlat7.z; u_xlat6 = u_xlat4.yyyy * u_xlat11; u_xlat7 = u_xlat9 * u_xlat4.xxxx + u_xlat12; u_xlat9 = u_xlat10 * u_xlat4.xxxx + u_xlat13; u_xlat6 = u_xlat8 * u_xlat4.xxxx + u_xlat6; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 2])); u_xlat10.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat14.x; u_xlat12.y = u_xlat8.x; u_xlat12.z = u_xlat10.x; u_xlat12.w = u_xlat11.x; u_xlat13.x = u_xlat14.y; u_xlat13.y = u_xlat8.y; u_xlat13.z = u_xlat10.y; u_xlat13.w = u_xlat11.y; u_xlat11.x = u_xlat14.z; u_xlat11.y = u_xlat8.z; u_xlat11.z = u_xlat10.z; u_xlat7 = u_xlat12 * u_xlat4.zzzz + u_xlat7; u_xlat8 = u_xlat13 * u_xlat4.zzzz + u_xlat9; u_xlat6 = u_xlat11 * u_xlat4.zzzz + u_xlat6; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat14.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat14.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat14.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat5 = u_xlat10 * u_xlat4.wwww + u_xlat7; u_xlat7 = u_xlat11 * u_xlat4.wwww + u_xlat8; u_xlat4 = u_xlat9 * u_xlat4.wwww + u_xlat6; u_xlat6.xyz = u_xlat1.yzw; u_xlat6.w = 1.0; u_xlat8.x = dot(u_xlat5, u_xlat6); u_xlat8.y = dot(u_xlat7, u_xlat6); u_xlat8.z = dot(u_xlat4, u_xlat6); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat5.xyz, u_xlat1.xyz); u_xlat6.x = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat6.y = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat3.xy = u_xlat2.zw; u_xlat6.z = dot(u_xlat5.xyz, u_xlat3.xyz); u_xlat6.w = dot(u_xlat7.xyz, u_xlat3.xyz); u_xlat14.x = dot(u_xlat4.xyz, u_xlat3.xyz); inOutVertices5_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat8.x)); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat8.y)); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat8.z)); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat8.w)); inOutVertices5_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat6.x)); inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat6.y)); inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat6.z)); inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat6.w)); inOutVertices5_buf[u_xlatu0].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat14.x)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb14 = u_xlatu0> 2) + 3]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.z = uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(32 >> 2) + 0]); u_xlat4 = vec4(uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati5 = ivec4(int(inSkin4_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin4_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin4_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin4_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati5 = u_xlati5 + ivec4(g_PoseOffsets[1].xxxx); u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat14.x; u_xlat9.y = u_xlat6.x; u_xlat9.z = u_xlat7.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat14.y; u_xlat10.y = u_xlat6.y; u_xlat10.z = u_xlat7.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat14.z; u_xlat8.y = u_xlat6.z; u_xlat8.z = u_xlat7.z; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat14.x; u_xlat12.y = u_xlat6.x; u_xlat12.z = u_xlat7.x; u_xlat12.w = u_xlat11.x; u_xlat12 = u_xlat4.yyyy * u_xlat12; u_xlat13.x = u_xlat14.y; u_xlat13.y = u_xlat6.y; u_xlat13.z = u_xlat7.y; u_xlat13.w = u_xlat11.y; u_xlat13 = u_xlat4.yyyy * u_xlat13; u_xlat11.x = u_xlat14.z; u_xlat11.y = u_xlat6.z; u_xlat11.z = u_xlat7.z; u_xlat6 = u_xlat4.yyyy * u_xlat11; u_xlat7 = u_xlat9 * u_xlat4.xxxx + u_xlat12; u_xlat9 = u_xlat10 * u_xlat4.xxxx + u_xlat13; u_xlat6 = u_xlat8 * u_xlat4.xxxx + u_xlat6; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 2])); u_xlat10.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat14.x; u_xlat12.y = u_xlat8.x; u_xlat12.z = u_xlat10.x; u_xlat12.w = u_xlat11.x; u_xlat13.x = u_xlat14.y; u_xlat13.y = u_xlat8.y; u_xlat13.z = u_xlat10.y; u_xlat13.w = u_xlat11.y; u_xlat11.x = u_xlat14.z; u_xlat11.y = u_xlat8.z; u_xlat11.z = u_xlat10.z; u_xlat7 = u_xlat12 * u_xlat4.zzzz + u_xlat7; u_xlat8 = u_xlat13 * u_xlat4.zzzz + u_xlat9; u_xlat6 = u_xlat11 * u_xlat4.zzzz + u_xlat6; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat14.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat14.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat14.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat5 = u_xlat10 * u_xlat4.wwww + u_xlat7; u_xlat7 = u_xlat11 * u_xlat4.wwww + u_xlat8; u_xlat4 = u_xlat9 * u_xlat4.wwww + u_xlat6; u_xlat6.xyz = u_xlat1.yzw; u_xlat6.w = 1.0; u_xlat8.x = dot(u_xlat5, u_xlat6); u_xlat8.y = dot(u_xlat7, u_xlat6); u_xlat8.z = dot(u_xlat4, u_xlat6); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat5.xyz, u_xlat1.xyz); u_xlat6.x = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat6.y = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat3.xy = u_xlat2.zw; u_xlat6.z = dot(u_xlat5.xyz, u_xlat3.xyz); u_xlat6.w = dot(u_xlat7.xyz, u_xlat3.xyz); u_xlat14.x = dot(u_xlat4.xyz, u_xlat3.xyz); inOutVertices4_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat8.x)); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat8.y)); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat8.z)); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat8.w)); inOutVertices4_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat6.x)); inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat6.y)); inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat6.z)); inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat6.w)); inOutVertices4_buf[u_xlatu0].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat14.x)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb14 = u_xlatu0> 2) + 3]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.z = uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(32 >> 2) + 0]); u_xlat4 = vec4(uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati5 = ivec4(int(inSkin3_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin3_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin3_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin3_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati5 = u_xlati5 + ivec4(g_PoseOffsets[0].wwww); u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat14.x; u_xlat9.y = u_xlat6.x; u_xlat9.z = u_xlat7.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat14.y; u_xlat10.y = u_xlat6.y; u_xlat10.z = u_xlat7.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat14.z; u_xlat8.y = u_xlat6.z; u_xlat8.z = u_xlat7.z; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat14.x; u_xlat12.y = u_xlat6.x; u_xlat12.z = u_xlat7.x; u_xlat12.w = u_xlat11.x; u_xlat12 = u_xlat4.yyyy * u_xlat12; u_xlat13.x = u_xlat14.y; u_xlat13.y = u_xlat6.y; u_xlat13.z = u_xlat7.y; u_xlat13.w = u_xlat11.y; u_xlat13 = u_xlat4.yyyy * u_xlat13; u_xlat11.x = u_xlat14.z; u_xlat11.y = u_xlat6.z; u_xlat11.z = u_xlat7.z; u_xlat6 = u_xlat4.yyyy * u_xlat11; u_xlat7 = u_xlat9 * u_xlat4.xxxx + u_xlat12; u_xlat9 = u_xlat10 * u_xlat4.xxxx + u_xlat13; u_xlat6 = u_xlat8 * u_xlat4.xxxx + u_xlat6; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 2])); u_xlat10.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat14.x; u_xlat12.y = u_xlat8.x; u_xlat12.z = u_xlat10.x; u_xlat12.w = u_xlat11.x; u_xlat13.x = u_xlat14.y; u_xlat13.y = u_xlat8.y; u_xlat13.z = u_xlat10.y; u_xlat13.w = u_xlat11.y; u_xlat11.x = u_xlat14.z; u_xlat11.y = u_xlat8.z; u_xlat11.z = u_xlat10.z; u_xlat7 = u_xlat12 * u_xlat4.zzzz + u_xlat7; u_xlat8 = u_xlat13 * u_xlat4.zzzz + u_xlat9; u_xlat6 = u_xlat11 * u_xlat4.zzzz + u_xlat6; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat14.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat14.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat14.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat5 = u_xlat10 * u_xlat4.wwww + u_xlat7; u_xlat7 = u_xlat11 * u_xlat4.wwww + u_xlat8; u_xlat4 = u_xlat9 * u_xlat4.wwww + u_xlat6; u_xlat6.xyz = u_xlat1.yzw; u_xlat6.w = 1.0; u_xlat8.x = dot(u_xlat5, u_xlat6); u_xlat8.y = dot(u_xlat7, u_xlat6); u_xlat8.z = dot(u_xlat4, u_xlat6); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat5.xyz, u_xlat1.xyz); u_xlat6.x = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat6.y = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat3.xy = u_xlat2.zw; u_xlat6.z = dot(u_xlat5.xyz, u_xlat3.xyz); u_xlat6.w = dot(u_xlat7.xyz, u_xlat3.xyz); u_xlat14.x = dot(u_xlat4.xyz, u_xlat3.xyz); inOutVertices3_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat8.x)); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat8.y)); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat8.z)); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat8.w)); inOutVertices3_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat6.x)); inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat6.y)); inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat6.z)); inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat6.w)); inOutVertices3_buf[u_xlatu0].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat14.x)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb14 = u_xlatu0> 2) + 3]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.z = uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(32 >> 2) + 0]); u_xlat4 = vec4(uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati5 = ivec4(int(inSkin2_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin2_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin2_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin2_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati5 = u_xlati5 + ivec4(g_PoseOffsets[0].zzzz); u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat14.x; u_xlat9.y = u_xlat6.x; u_xlat9.z = u_xlat7.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat14.y; u_xlat10.y = u_xlat6.y; u_xlat10.z = u_xlat7.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat14.z; u_xlat8.y = u_xlat6.z; u_xlat8.z = u_xlat7.z; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat14.x; u_xlat12.y = u_xlat6.x; u_xlat12.z = u_xlat7.x; u_xlat12.w = u_xlat11.x; u_xlat12 = u_xlat4.yyyy * u_xlat12; u_xlat13.x = u_xlat14.y; u_xlat13.y = u_xlat6.y; u_xlat13.z = u_xlat7.y; u_xlat13.w = u_xlat11.y; u_xlat13 = u_xlat4.yyyy * u_xlat13; u_xlat11.x = u_xlat14.z; u_xlat11.y = u_xlat6.z; u_xlat11.z = u_xlat7.z; u_xlat6 = u_xlat4.yyyy * u_xlat11; u_xlat7 = u_xlat9 * u_xlat4.xxxx + u_xlat12; u_xlat9 = u_xlat10 * u_xlat4.xxxx + u_xlat13; u_xlat6 = u_xlat8 * u_xlat4.xxxx + u_xlat6; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 2])); u_xlat10.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat14.x; u_xlat12.y = u_xlat8.x; u_xlat12.z = u_xlat10.x; u_xlat12.w = u_xlat11.x; u_xlat13.x = u_xlat14.y; u_xlat13.y = u_xlat8.y; u_xlat13.z = u_xlat10.y; u_xlat13.w = u_xlat11.y; u_xlat11.x = u_xlat14.z; u_xlat11.y = u_xlat8.z; u_xlat11.z = u_xlat10.z; u_xlat7 = u_xlat12 * u_xlat4.zzzz + u_xlat7; u_xlat8 = u_xlat13 * u_xlat4.zzzz + u_xlat9; u_xlat6 = u_xlat11 * u_xlat4.zzzz + u_xlat6; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat14.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat14.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat14.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat5 = u_xlat10 * u_xlat4.wwww + u_xlat7; u_xlat7 = u_xlat11 * u_xlat4.wwww + u_xlat8; u_xlat4 = u_xlat9 * u_xlat4.wwww + u_xlat6; u_xlat6.xyz = u_xlat1.yzw; u_xlat6.w = 1.0; u_xlat8.x = dot(u_xlat5, u_xlat6); u_xlat8.y = dot(u_xlat7, u_xlat6); u_xlat8.z = dot(u_xlat4, u_xlat6); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat5.xyz, u_xlat1.xyz); u_xlat6.x = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat6.y = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat3.xy = u_xlat2.zw; u_xlat6.z = dot(u_xlat5.xyz, u_xlat3.xyz); u_xlat6.w = dot(u_xlat7.xyz, u_xlat3.xyz); u_xlat14.x = dot(u_xlat4.xyz, u_xlat3.xyz); inOutVertices2_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat8.x)); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat8.y)); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat8.z)); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat8.w)); inOutVertices2_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat6.x)); inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat6.y)); inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat6.z)); inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat6.w)); inOutVertices2_buf[u_xlatu0].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat14.x)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb14 = u_xlatu0> 2) + 3]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.z = uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(32 >> 2) + 0]); u_xlat4 = vec4(uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati5 = ivec4(int(inSkin1_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin1_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin1_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin1_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati5 = u_xlati5 + ivec4(g_PoseOffsets[0].yyyy); u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat14.x; u_xlat9.y = u_xlat6.x; u_xlat9.z = u_xlat7.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat14.y; u_xlat10.y = u_xlat6.y; u_xlat10.z = u_xlat7.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat14.z; u_xlat8.y = u_xlat6.z; u_xlat8.z = u_xlat7.z; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat14.x; u_xlat12.y = u_xlat6.x; u_xlat12.z = u_xlat7.x; u_xlat12.w = u_xlat11.x; u_xlat12 = u_xlat4.yyyy * u_xlat12; u_xlat13.x = u_xlat14.y; u_xlat13.y = u_xlat6.y; u_xlat13.z = u_xlat7.y; u_xlat13.w = u_xlat11.y; u_xlat13 = u_xlat4.yyyy * u_xlat13; u_xlat11.x = u_xlat14.z; u_xlat11.y = u_xlat6.z; u_xlat11.z = u_xlat7.z; u_xlat6 = u_xlat4.yyyy * u_xlat11; u_xlat7 = u_xlat9 * u_xlat4.xxxx + u_xlat12; u_xlat9 = u_xlat10 * u_xlat4.xxxx + u_xlat13; u_xlat6 = u_xlat8 * u_xlat4.xxxx + u_xlat6; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 2])); u_xlat10.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat14.x; u_xlat12.y = u_xlat8.x; u_xlat12.z = u_xlat10.x; u_xlat12.w = u_xlat11.x; u_xlat13.x = u_xlat14.y; u_xlat13.y = u_xlat8.y; u_xlat13.z = u_xlat10.y; u_xlat13.w = u_xlat11.y; u_xlat11.x = u_xlat14.z; u_xlat11.y = u_xlat8.z; u_xlat11.z = u_xlat10.z; u_xlat7 = u_xlat12 * u_xlat4.zzzz + u_xlat7; u_xlat8 = u_xlat13 * u_xlat4.zzzz + u_xlat9; u_xlat6 = u_xlat11 * u_xlat4.zzzz + u_xlat6; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat14.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat14.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat14.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat5 = u_xlat10 * u_xlat4.wwww + u_xlat7; u_xlat7 = u_xlat11 * u_xlat4.wwww + u_xlat8; u_xlat4 = u_xlat9 * u_xlat4.wwww + u_xlat6; u_xlat6.xyz = u_xlat1.yzw; u_xlat6.w = 1.0; u_xlat8.x = dot(u_xlat5, u_xlat6); u_xlat8.y = dot(u_xlat7, u_xlat6); u_xlat8.z = dot(u_xlat4, u_xlat6); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat5.xyz, u_xlat1.xyz); u_xlat6.x = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat6.y = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat3.xy = u_xlat2.zw; u_xlat6.z = dot(u_xlat5.xyz, u_xlat3.xyz); u_xlat6.w = dot(u_xlat7.xyz, u_xlat3.xyz); u_xlat14.x = dot(u_xlat4.xyz, u_xlat3.xyz); inOutVertices1_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat8.x)); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat8.y)); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat8.z)); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat8.w)); inOutVertices1_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat6.x)); inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat6.y)); inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat6.z)); inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat6.w)); inOutVertices1_buf[u_xlatu0].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat14.x)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb14 = u_xlatu0> 2) + 3]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.z = uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(32 >> 2) + 0]); u_xlat4 = vec4(uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati5 = ivec4(int(inSkin0_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin0_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin0_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin0_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati5 = u_xlati5 + ivec4(g_PoseOffsets[0].xxxx); u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat14.x; u_xlat9.y = u_xlat6.x; u_xlat9.z = u_xlat7.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat14.y; u_xlat10.y = u_xlat6.y; u_xlat10.z = u_xlat7.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat14.z; u_xlat8.y = u_xlat6.z; u_xlat8.z = u_xlat7.z; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat14.x; u_xlat12.y = u_xlat6.x; u_xlat12.z = u_xlat7.x; u_xlat12.w = u_xlat11.x; u_xlat12 = u_xlat4.yyyy * u_xlat12; u_xlat13.x = u_xlat14.y; u_xlat13.y = u_xlat6.y; u_xlat13.z = u_xlat7.y; u_xlat13.w = u_xlat11.y; u_xlat13 = u_xlat4.yyyy * u_xlat13; u_xlat11.x = u_xlat14.z; u_xlat11.y = u_xlat6.z; u_xlat11.z = u_xlat7.z; u_xlat6 = u_xlat4.yyyy * u_xlat11; u_xlat7 = u_xlat9 * u_xlat4.xxxx + u_xlat12; u_xlat9 = u_xlat10 * u_xlat4.xxxx + u_xlat13; u_xlat6 = u_xlat8 * u_xlat4.xxxx + u_xlat6; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 2])); u_xlat10.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat14.x; u_xlat12.y = u_xlat8.x; u_xlat12.z = u_xlat10.x; u_xlat12.w = u_xlat11.x; u_xlat13.x = u_xlat14.y; u_xlat13.y = u_xlat8.y; u_xlat13.z = u_xlat10.y; u_xlat13.w = u_xlat11.y; u_xlat11.x = u_xlat14.z; u_xlat11.y = u_xlat8.z; u_xlat11.z = u_xlat10.z; u_xlat7 = u_xlat12 * u_xlat4.zzzz + u_xlat7; u_xlat8 = u_xlat13 * u_xlat4.zzzz + u_xlat9; u_xlat6 = u_xlat11 * u_xlat4.zzzz + u_xlat6; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat14.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat14.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat14.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat5 = u_xlat10 * u_xlat4.wwww + u_xlat7; u_xlat7 = u_xlat11 * u_xlat4.wwww + u_xlat8; u_xlat4 = u_xlat9 * u_xlat4.wwww + u_xlat6; u_xlat6.xyz = u_xlat1.yzw; u_xlat6.w = 1.0; u_xlat8.x = dot(u_xlat5, u_xlat6); u_xlat8.y = dot(u_xlat7, u_xlat6); u_xlat8.z = dot(u_xlat4, u_xlat6); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat5.xyz, u_xlat1.xyz); u_xlat6.x = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat6.y = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat3.xy = u_xlat2.zw; u_xlat6.z = dot(u_xlat5.xyz, u_xlat3.xyz); u_xlat6.w = dot(u_xlat7.xyz, u_xlat3.xyz); u_xlat14.x = dot(u_xlat4.xyz, u_xlat3.xyz); inOutVertices0_buf[u_xlatu0].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat8.x)); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat8.y)); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat8.z)); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat8.w)); inOutVertices0_buf[u_xlatu0].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat6.x)); inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat6.y)); inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat6.z)); inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat6.w)); inOutVertices0_buf[u_xlatu0].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat14.x)); } } } } } } } } return; } @A$Globals g_VertCountComputeSkinCBufferp g_VertCountsg_BatchOffsets  g_PoseOffsets@ComputeSkinInPlaceCBufferp g_VertCountsg_BatchOffsets  g_PoseOffsets@ (main$Globals inVerticesinSkin inMatrices outVertices#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform CGlobals { uint g_VertCount; }; struct inVertices_type { uint[3] value; }; layout(std430, binding = 1) readonly buffer inVertices { inVertices_type inVertices_buf[]; }; struct inSkin_type { uint[1] value; }; layout(std430, binding = 2) readonly buffer inSkin { inSkin_type inSkin_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 3) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct outVertices_type { uint[3] value; }; layout(std430, binding = 0) buffer outVertices { outVertices_type outVertices_buf[]; }; vec4 u_xlat0; bool u_xlatb0; vec3 u_xlat1; uint u_xlatu1; vec4 u_xlat2; vec4 u_xlat3; vec4 u_xlat4; float u_xlat5; uint u_xlatu5; vec3 u_xlat6; vec3 u_xlat7; vec4 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; int u_xlati12; uint u_xlatu12; vec3 u_xlat16; uint u_xlatu23; int u_xlati34; uint u_xlatu34; bool u_xlatb34; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2])); u_xlatu1 = inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 0]; u_xlati12 = int(gl_GlobalInvocationID.x) + 1; u_xlatu12 = inSkin_buf[u_xlati12].value[(0 >> 2) + 0]; u_xlat2.x = float(0.0); u_xlat2.y = float(0.0); u_xlat2.z = float(0.0); u_xlat2.w = float(0.0); u_xlat3.x = float(0.0); u_xlat3.y = float(0.0); u_xlat3.z = float(0.0); u_xlat3.w = float(0.0); u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlatu23 = u_xlatu1; while(true){ u_xlatb34 = u_xlatu23>=u_xlatu12; if(u_xlatb34){break;} u_xlatu34 = inSkin_buf[u_xlatu23].value[(0 >> 2) + 0]; u_xlatu5 = u_xlatu34 >> (16u & uint(0x1F)); u_xlat5 = float(u_xlatu5); u_xlat5 = u_xlat5 * 1.52590219e-05; u_xlati34 = int(u_xlatu34 & 65535u); u_xlat16.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati34].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati34].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati34].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati34].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati34].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati34].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati34].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati34].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati34].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati34].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati34].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati34].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat16.x; u_xlat9.y = u_xlat6.x; u_xlat9.z = u_xlat7.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat16.y; u_xlat10.y = u_xlat6.y; u_xlat10.z = u_xlat7.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat16.z; u_xlat8.y = u_xlat6.z; u_xlat8.z = u_xlat7.z; u_xlat2 = u_xlat9 * vec4(u_xlat5) + u_xlat2; u_xlat3 = u_xlat10 * vec4(u_xlat5) + u_xlat3; u_xlat4 = u_xlat8 * vec4(u_xlat5) + u_xlat4; u_xlatu23 = u_xlatu23 + 1u; } u_xlat0.w = 1.0; u_xlat1.x = dot(u_xlat2, u_xlat0); u_xlat1.y = dot(u_xlat3, u_xlat0); u_xlat1.z = dot(u_xlat4, u_xlat0); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2)] = floatBitsToUint(u_xlat1.x); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat1.y); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat1.z); } return; } @Amain$Globals inVerticesinSkin inMatrices outVertices/#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform CGlobals { uint g_VertCount; }; struct inVertices_type { uint[6] value; }; layout(std430, binding = 1) readonly buffer inVertices { inVertices_type inVertices_buf[]; }; struct inSkin_type { uint[1] value; }; layout(std430, binding = 2) readonly buffer inSkin { inSkin_type inSkin_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 3) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct outVertices_type { uint[6] value; }; layout(std430, binding = 0) buffer outVertices { outVertices_type outVertices_buf[]; }; vec4 u_xlat0; bool u_xlatb0; vec3 u_xlat1; vec4 u_xlat2; int u_xlati2; uint u_xlatu2; vec4 u_xlat3; vec4 u_xlat4; vec4 u_xlat5; vec4 u_xlat6; vec3 u_xlat7; vec3 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; vec4 u_xlat11; uint u_xlatu14; int u_xlati26; uint u_xlatu26; bool u_xlatb26; uint u_xlatu37; float u_xlat38; uint u_xlatu38; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 3])); u_xlat1.xy = vec2(uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 1])); u_xlatu37 = inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 0]; u_xlati2 = int(gl_GlobalInvocationID.x) + 1; u_xlatu2 = inSkin_buf[u_xlati2].value[(0 >> 2) + 0]; u_xlat3.x = float(0.0); u_xlat3.y = float(0.0); u_xlat3.z = float(0.0); u_xlat3.w = float(0.0); u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlat5.x = float(0.0); u_xlat5.y = float(0.0); u_xlat5.z = float(0.0); u_xlat5.w = float(0.0); u_xlatu14 = u_xlatu37; while(true){ u_xlatb26 = u_xlatu14>=u_xlatu2; if(u_xlatb26){break;} u_xlatu26 = inSkin_buf[u_xlatu14].value[(0 >> 2) + 0]; u_xlatu38 = u_xlatu26 >> (16u & uint(0x1F)); u_xlat38 = float(u_xlatu38); u_xlat38 = u_xlat38 * 1.52590219e-05; u_xlati26 = int(u_xlatu26 & 65535u); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati26].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati26].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati26].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati26].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati26].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati26].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati26].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati26].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati26].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati26].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati26].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati26].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat6.x; u_xlat10.y = u_xlat7.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat6.y; u_xlat11.y = u_xlat7.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat6.z; u_xlat9.y = u_xlat7.z; u_xlat9.z = u_xlat8.z; u_xlat3 = u_xlat10 * vec4(u_xlat38) + u_xlat3; u_xlat4 = u_xlat11 * vec4(u_xlat38) + u_xlat4; u_xlat5 = u_xlat9 * vec4(u_xlat38) + u_xlat5; u_xlatu14 = u_xlatu14 + 1u; } u_xlat2.xyz = u_xlat0.xyz; u_xlat2.w = 1.0; u_xlat6.x = dot(u_xlat3, u_xlat2); u_xlat6.y = dot(u_xlat4, u_xlat2); u_xlat6.z = dot(u_xlat5, u_xlat2); u_xlat1.z = u_xlat0.w; u_xlat6.w = dot(u_xlat3.yzx, u_xlat1.xyz); u_xlat0.x = dot(u_xlat4.yzx, u_xlat1.xyz); u_xlat0.y = dot(u_xlat5.yzx, u_xlat1.xyz); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2)] = floatBitsToUint(u_xlat6.x); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat6.y); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat6.z); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat6.w); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2)] = floatBitsToUint(u_xlat0.x); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat0.y); } return; } @Amain$Globals inVerticesinSkin inMatrices outVertices#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform CGlobals { uint g_VertCount; }; struct inVertices_type { uint[7] value; }; layout(std430, binding = 1) readonly buffer inVertices { inVertices_type inVertices_buf[]; }; struct inSkin_type { uint[1] value; }; layout(std430, binding = 2) readonly buffer inSkin { inSkin_type inSkin_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 3) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct outVertices_type { uint[7] value; }; layout(std430, binding = 0) buffer outVertices { outVertices_type outVertices_buf[]; }; vec4 u_xlat0; bool u_xlatb0; vec4 u_xlat1; vec4 u_xlat2; uint u_xlatu2; vec4 u_xlat3; vec4 u_xlat4; vec4 u_xlat5; vec4 u_xlat6; uint u_xlatu6; vec3 u_xlat7; vec3 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; vec4 u_xlat11; int u_xlati14; uint u_xlatu14; vec3 u_xlat18; uint u_xlatu26; int u_xlati38; uint u_xlatu38; bool u_xlatb38; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 3])); u_xlat1.xyz = vec3(uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 1]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 2])); u_xlatu2 = inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 0]; u_xlati14 = int(gl_GlobalInvocationID.x) + 1; u_xlatu14 = inSkin_buf[u_xlati14].value[(0 >> 2) + 0]; u_xlat3.x = float(0.0); u_xlat3.y = float(0.0); u_xlat3.z = float(0.0); u_xlat3.w = float(0.0); u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlat5.x = float(0.0); u_xlat5.y = float(0.0); u_xlat5.z = float(0.0); u_xlat5.w = float(0.0); u_xlatu26 = u_xlatu2; while(true){ u_xlatb38 = u_xlatu26>=u_xlatu14; if(u_xlatb38){break;} u_xlatu38 = inSkin_buf[u_xlatu26].value[(0 >> 2) + 0]; u_xlatu6 = u_xlatu38 >> (16u & uint(0x1F)); u_xlat6.x = float(u_xlatu6); u_xlat6.x = u_xlat6.x * 1.52590219e-05; u_xlati38 = int(u_xlatu38 & 65535u); u_xlat18.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat18.x; u_xlat10.y = u_xlat7.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat18.y; u_xlat11.y = u_xlat7.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat18.z; u_xlat9.y = u_xlat7.z; u_xlat9.z = u_xlat8.z; u_xlat3 = u_xlat10 * u_xlat6.xxxx + u_xlat3; u_xlat4 = u_xlat11 * u_xlat6.xxxx + u_xlat4; u_xlat5 = u_xlat9 * u_xlat6.xxxx + u_xlat5; u_xlatu26 = u_xlatu26 + 1u; } u_xlat2.xyz = u_xlat0.xyz; u_xlat2.w = 1.0; u_xlat6.x = dot(u_xlat3, u_xlat2); u_xlat6.y = dot(u_xlat4, u_xlat2); u_xlat6.z = dot(u_xlat5, u_xlat2); u_xlat1.w = u_xlat0.w; u_xlat6.w = dot(u_xlat3.yzx, u_xlat1.xyw); u_xlat0.x = dot(u_xlat4.yzx, u_xlat1.xyw); u_xlat0.y = dot(u_xlat5.yzx, u_xlat1.xyw); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2)] = floatBitsToUint(u_xlat6.x); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat6.y); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat6.z); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat6.w); u_xlat0.z = u_xlat1.z; outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2)] = floatBitsToUint(u_xlat0.x); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat0.y); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat0.z); } return; } @Amain$Globals inVerticesinSkin inMatrices outVertices#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform CGlobals { uint g_VertCount; }; struct inVertices_type { uint[10] value; }; layout(std430, binding = 1) readonly buffer inVertices { inVertices_type inVertices_buf[]; }; struct inSkin_type { uint[1] value; }; layout(std430, binding = 2) readonly buffer inSkin { inSkin_type inSkin_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 3) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct outVertices_type { uint[10] value; }; layout(std430, binding = 0) buffer outVertices { outVertices_type outVertices_buf[]; }; vec4 u_xlat0; bool u_xlatb0; vec4 u_xlat1; vec4 u_xlat2; vec4 u_xlat3; uint u_xlatu3; vec4 u_xlat4; vec4 u_xlat5; vec4 u_xlat6; vec4 u_xlat7; uint u_xlatu7; vec3 u_xlat8; vec3 u_xlat9; vec4 u_xlat10; vec4 u_xlat11; vec4 u_xlat12; int u_xlati16; uint u_xlatu16; vec3 u_xlat20; uint u_xlatu29; int u_xlati42; uint u_xlatu42; bool u_xlatb42; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x> 2) + 3]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2])); u_xlat1 = vec4(uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 1]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 2]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(32 >> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(32 >> 2) + 1])); u_xlatu3 = inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 0]; u_xlati16 = int(gl_GlobalInvocationID.x) + 1; u_xlatu16 = inSkin_buf[u_xlati16].value[(0 >> 2) + 0]; u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlat5.x = float(0.0); u_xlat5.y = float(0.0); u_xlat5.z = float(0.0); u_xlat5.w = float(0.0); u_xlat6.x = float(0.0); u_xlat6.y = float(0.0); u_xlat6.z = float(0.0); u_xlat6.w = float(0.0); u_xlatu29 = u_xlatu3; while(true){ u_xlatb42 = u_xlatu29>=u_xlatu16; if(u_xlatb42){break;} u_xlatu42 = inSkin_buf[u_xlatu29].value[(0 >> 2) + 0]; u_xlatu7 = u_xlatu42 >> (16u & uint(0x1F)); u_xlat7.x = float(u_xlatu7); u_xlat7.x = u_xlat7.x * 1.52590219e-05; u_xlati42 = int(u_xlatu42 & 65535u); u_xlat20.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(0 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(16 >> 2) + 2])); u_xlat9.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat20.x; u_xlat11.y = u_xlat8.x; u_xlat11.z = u_xlat9.x; u_xlat11.w = u_xlat10.x; u_xlat12.x = u_xlat20.y; u_xlat12.y = u_xlat8.y; u_xlat12.z = u_xlat9.y; u_xlat12.w = u_xlat10.y; u_xlat10.x = u_xlat20.z; u_xlat10.y = u_xlat8.z; u_xlat10.z = u_xlat9.z; u_xlat4 = u_xlat11 * u_xlat7.xxxx + u_xlat4; u_xlat5 = u_xlat12 * u_xlat7.xxxx + u_xlat5; u_xlat6 = u_xlat10 * u_xlat7.xxxx + u_xlat6; u_xlatu29 = u_xlatu29 + 1u; } u_xlat3.xyz = u_xlat0.yzw; u_xlat3.w = 1.0; u_xlat7.x = dot(u_xlat4, u_xlat3); u_xlat7.y = dot(u_xlat5, u_xlat3); u_xlat7.z = dot(u_xlat6, u_xlat3); u_xlat0.yz = u_xlat1.xy; u_xlat7.w = dot(u_xlat4.xyz, u_xlat0.xyz); u_xlat3.x = dot(u_xlat5.xyz, u_xlat0.xyz); u_xlat3.y = dot(u_xlat6.xyz, u_xlat0.xyz); u_xlat2.zw = u_xlat1.zw; u_xlat3.z = dot(u_xlat4.zxy, u_xlat2.xzw); u_xlat3.w = dot(u_xlat5.zxy, u_xlat2.xzw); u_xlat2.x = dot(u_xlat6.zxy, u_xlat2.xzw); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2)] = floatBitsToUint(u_xlat7.x); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat7.y); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat7.z); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat7.w); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2)] = floatBitsToUint(u_xlat3.x); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat3.y); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat3.z); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat3.w); outVertices_buf[gl_GlobalInvocationID.x].value[(32 >> 2)] = floatBitsToUint(u_xlat2.x); outVertices_buf[gl_GlobalInvocationID.x].value[(32 >> 2) + 1] = floatBitsToUint(u_xlat2.y); } return; } @Amain$Globals inVerticesinSkin inMatrices outVertices #version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform CGlobals { uint g_VertCount; }; struct inVertices_type { uint[3] value; }; layout(std430, binding = 1) readonly buffer inVertices { inVertices_type inVertices_buf[]; }; struct inSkin_type { uint[1] value; }; layout(std430, binding = 2) readonly buffer inSkin { inSkin_type inSkin_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 3) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct outVertices_type { uint[3] value; }; layout(std430, binding = 0) buffer outVertices { outVertices_type outVertices_buf[]; }; vec4 u_xlat0; bool u_xlatb0; int u_xlati1; vec3 u_xlat2; vec3 u_xlat3; vec4 u_xlat4; vec4 u_xlat5; vec4 u_xlat6; vec3 u_xlat8; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2])); u_xlati1 = int(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 0]); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati1].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati1].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati1].value[(0 >> 2) + 2])); u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati1].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati1].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati1].value[(16 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati1].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati1].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati1].value[(32 >> 2) + 2])); u_xlat4.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati1].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati1].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati1].value[(48 >> 2) + 2])); u_xlat5.x = u_xlat8.x; u_xlat5.y = u_xlat2.x; u_xlat5.z = u_xlat3.x; u_xlat5.w = u_xlat4.x; u_xlat0.w = 1.0; u_xlat5.x = dot(u_xlat5, u_xlat0); u_xlat6.x = u_xlat8.y; u_xlat6.y = u_xlat2.y; u_xlat6.z = u_xlat3.y; u_xlat6.w = u_xlat4.y; u_xlat5.y = dot(u_xlat6, u_xlat0); u_xlat4.x = u_xlat8.z; u_xlat4.y = u_xlat2.z; u_xlat4.z = u_xlat3.z; u_xlat5.z = dot(u_xlat4, u_xlat0); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2)] = floatBitsToUint(u_xlat5.x); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat5.y); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat5.z); } return; } @Amain$Globals inVerticesinSkin inMatrices outVertices#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform CGlobals { uint g_VertCount; }; struct inVertices_type { uint[6] value; }; layout(std430, binding = 1) readonly buffer inVertices { inVertices_type inVertices_buf[]; }; struct inSkin_type { uint[1] value; }; layout(std430, binding = 2) readonly buffer inSkin { inSkin_type inSkin_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 3) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct outVertices_type { uint[6] value; }; layout(std430, binding = 0) buffer outVertices { outVertices_type outVertices_buf[]; }; vec4 u_xlat0; bool u_xlatb0; vec3 u_xlat1; vec3 u_xlat2; vec3 u_xlat3; vec3 u_xlat4; vec4 u_xlat5; vec4 u_xlat6; vec4 u_xlat7; vec4 u_xlat8; vec4 u_xlat9; int u_xlati31; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 3])); u_xlat1.xy = vec2(uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 1])); u_xlati31 = int(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 0]); u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati31].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati31].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati31].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati31].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati31].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati31].value[(16 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati31].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati31].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati31].value[(32 >> 2) + 2])); u_xlat5.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati31].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati31].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati31].value[(48 >> 2) + 2])); u_xlat6.x = u_xlat2.x; u_xlat6.y = u_xlat3.x; u_xlat6.z = u_xlat4.x; u_xlat6.w = u_xlat5.x; u_xlat7.xyz = u_xlat0.xyz; u_xlat7.w = 1.0; u_xlat8.x = dot(u_xlat6, u_xlat7); u_xlat9.x = u_xlat2.y; u_xlat9.y = u_xlat3.y; u_xlat9.z = u_xlat4.y; u_xlat9.w = u_xlat5.y; u_xlat8.y = dot(u_xlat9, u_xlat7); u_xlat5.x = u_xlat2.z; u_xlat5.y = u_xlat3.z; u_xlat5.z = u_xlat4.z; u_xlat8.z = dot(u_xlat5, u_xlat7); u_xlat1.z = u_xlat0.w; u_xlat8.w = dot(u_xlat6.yzx, u_xlat1.xyz); u_xlat0.x = dot(u_xlat9.yzx, u_xlat1.xyz); u_xlat0.y = dot(u_xlat5.yzx, u_xlat1.xyz); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2)] = floatBitsToUint(u_xlat8.x); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat8.y); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat8.z); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat8.w); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2)] = floatBitsToUint(u_xlat0.x); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat0.y); } return; } @Amain$Globals inVerticesinSkin inMatrices outVertices#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform CGlobals { uint g_VertCount; }; struct inVertices_type { uint[7] value; }; layout(std430, binding = 1) readonly buffer inVertices { inVertices_type inVertices_buf[]; }; struct inSkin_type { uint[1] value; }; layout(std430, binding = 2) readonly buffer inSkin { inSkin_type inSkin_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 3) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct outVertices_type { uint[7] value; }; layout(std430, binding = 0) buffer outVertices { outVertices_type outVertices_buf[]; }; vec4 u_xlat0; bool u_xlatb0; vec4 u_xlat1; int u_xlati2; vec3 u_xlat3; vec3 u_xlat4; vec4 u_xlat5; vec4 u_xlat6; vec4 u_xlat7; vec4 u_xlat8; vec4 u_xlat9; vec3 u_xlat12; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 3])); u_xlat1.xyz = vec3(uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 1]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 2])); u_xlati2 = int(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 0]); u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati2].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati2].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati2].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati2].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati2].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati2].value[(16 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati2].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati2].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati2].value[(32 >> 2) + 2])); u_xlat5.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati2].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati2].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati2].value[(48 >> 2) + 2])); u_xlat6.x = u_xlat12.x; u_xlat6.y = u_xlat3.x; u_xlat6.z = u_xlat4.x; u_xlat6.w = u_xlat5.x; u_xlat7.xyz = u_xlat0.xyz; u_xlat7.w = 1.0; u_xlat8.x = dot(u_xlat6, u_xlat7); u_xlat9.x = u_xlat12.y; u_xlat9.y = u_xlat3.y; u_xlat9.z = u_xlat4.y; u_xlat9.w = u_xlat5.y; u_xlat8.y = dot(u_xlat9, u_xlat7); u_xlat5.x = u_xlat12.z; u_xlat5.y = u_xlat3.z; u_xlat5.z = u_xlat4.z; u_xlat8.z = dot(u_xlat5, u_xlat7); u_xlat1.w = u_xlat0.w; u_xlat8.w = dot(u_xlat6.yzx, u_xlat1.xyw); u_xlat0.x = dot(u_xlat9.yzx, u_xlat1.xyw); u_xlat0.y = dot(u_xlat5.yzx, u_xlat1.xyw); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2)] = floatBitsToUint(u_xlat8.x); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat8.y); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat8.z); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat8.w); u_xlat0.z = u_xlat1.z; outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2)] = floatBitsToUint(u_xlat0.x); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat0.y); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat0.z); } return; } @Amain$Globals inVerticesinSkin inMatrices outVertices#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform CGlobals { uint g_VertCount; }; struct inVertices_type { uint[10] value; }; layout(std430, binding = 1) readonly buffer inVertices { inVertices_type inVertices_buf[]; }; struct inSkin_type { uint[1] value; }; layout(std430, binding = 2) readonly buffer inSkin { inSkin_type inSkin_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 3) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct outVertices_type { uint[10] value; }; layout(std430, binding = 0) buffer outVertices { outVertices_type outVertices_buf[]; }; vec4 u_xlat0; bool u_xlatb0; vec4 u_xlat1; vec4 u_xlat2; vec4 u_xlat3; int u_xlati3; vec3 u_xlat4; vec3 u_xlat5; vec4 u_xlat6; vec4 u_xlat7; vec4 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; vec3 u_xlat14; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x> 2) + 3]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2])); u_xlat1 = vec4(uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 1]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 2]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(32 >> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(32 >> 2) + 1])); u_xlati3 = int(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 0]); u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat14.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.xyz = u_xlat0.yzw; u_xlat8.w = 1.0; u_xlat9.x = dot(u_xlat7, u_xlat8); u_xlat10.x = u_xlat14.y; u_xlat10.y = u_xlat4.y; u_xlat10.z = u_xlat5.y; u_xlat10.w = u_xlat6.y; u_xlat9.y = dot(u_xlat10, u_xlat8); u_xlat6.x = u_xlat14.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat9.z = dot(u_xlat6, u_xlat8); u_xlat0.yz = u_xlat1.xy; u_xlat9.w = dot(u_xlat7.xyz, u_xlat0.xyz); u_xlat3.x = dot(u_xlat10.xyz, u_xlat0.xyz); u_xlat3.y = dot(u_xlat6.xyz, u_xlat0.xyz); u_xlat2.zw = u_xlat1.zw; u_xlat3.z = dot(u_xlat7.zxy, u_xlat2.xzw); u_xlat3.w = dot(u_xlat10.zxy, u_xlat2.xzw); u_xlat2.x = dot(u_xlat6.zxy, u_xlat2.xzw); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2)] = floatBitsToUint(u_xlat9.x); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat9.y); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat9.z); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat9.w); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2)] = floatBitsToUint(u_xlat3.x); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat3.y); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat3.z); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat3.w); outVertices_buf[gl_GlobalInvocationID.x].value[(32 >> 2)] = floatBitsToUint(u_xlat2.x); outVertices_buf[gl_GlobalInvocationID.x].value[(32 >> 2) + 1] = floatBitsToUint(u_xlat2.y); } return; } @Amain$Globals inVerticesinSkin inMatrices outVerticesN#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform CGlobals { uint g_VertCount; }; struct inVertices_type { uint[3] value; }; layout(std430, binding = 1) readonly buffer inVertices { inVertices_type inVertices_buf[]; }; struct inSkin_type { uint[4] value; }; layout(std430, binding = 2) readonly buffer inSkin { inSkin_type inSkin_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 3) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct outVertices_type { uint[3] value; }; layout(std430, binding = 0) buffer outVertices { outVertices_type outVertices_buf[]; }; vec4 u_xlat0; bool u_xlatb0; vec4 u_xlat1; vec4 u_xlat2; vec4 u_xlat3; vec4 u_xlat4; vec4 u_xlat5; vec4 u_xlat6; vec4 u_xlat7; vec4 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2])); u_xlat1 = vec4(uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 3])); u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat1.z)].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat1.z)].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat1.z)].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat1.z)].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat1.z)].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat1.z)].value[(16 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat1.z)].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat1.z)].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat1.z)].value[(32 >> 2) + 2])); u_xlat5.xyw = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat1.z)].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat1.z)].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat1.z)].value[(48 >> 2) + 2])); u_xlat6.x = u_xlat2.x; u_xlat6.y = u_xlat3.x; u_xlat6.z = u_xlat4.x; u_xlat6.w = u_xlat5.x; u_xlat7.x = u_xlat2.y; u_xlat7.y = u_xlat3.y; u_xlat7.z = u_xlat4.y; u_xlat7.w = u_xlat5.y; u_xlat5.x = u_xlat2.z; u_xlat5.y = u_xlat3.z; u_xlat5.z = u_xlat4.z; u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat1.w)].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat1.w)].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat1.w)].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat1.w)].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat1.w)].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat1.w)].value[(16 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat1.w)].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat1.w)].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat1.w)].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat1.w)].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat1.w)].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat1.w)].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat2.x; u_xlat9.y = u_xlat3.x; u_xlat9.z = u_xlat4.x; u_xlat9.w = u_xlat8.x; u_xlat9 = u_xlat1.yyyy * u_xlat9; u_xlat10.x = u_xlat2.y; u_xlat10.y = u_xlat3.y; u_xlat10.z = u_xlat4.y; u_xlat10.w = u_xlat8.y; u_xlat10 = u_xlat1.yyyy * u_xlat10; u_xlat8.x = u_xlat2.z; u_xlat8.y = u_xlat3.z; u_xlat8.z = u_xlat4.z; u_xlat2 = u_xlat1.yyyy * u_xlat8; u_xlat3 = u_xlat6 * u_xlat1.xxxx + u_xlat9; u_xlat4 = u_xlat7 * u_xlat1.xxxx + u_xlat10; u_xlat1 = u_xlat5 * u_xlat1.xxxx + u_xlat2; u_xlat0.w = 1.0; u_xlat2.x = dot(u_xlat3, u_xlat0); u_xlat2.y = dot(u_xlat4, u_xlat0); u_xlat2.z = dot(u_xlat1, u_xlat0); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2)] = floatBitsToUint(u_xlat2.x); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat2.y); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat2.z); } return; } @Amain$Globals inVerticesinSkin inMatrices outVerticesi#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform CGlobals { uint g_VertCount; }; struct inVertices_type { uint[6] value; }; layout(std430, binding = 1) readonly buffer inVertices { inVertices_type inVertices_buf[]; }; struct inSkin_type { uint[4] value; }; layout(std430, binding = 2) readonly buffer inSkin { inSkin_type inSkin_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 3) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct outVertices_type { uint[6] value; }; layout(std430, binding = 0) buffer outVertices { outVertices_type outVertices_buf[]; }; vec4 u_xlat0; bool u_xlatb0; vec3 u_xlat1; vec4 u_xlat2; vec4 u_xlat3; vec4 u_xlat4; vec4 u_xlat5; vec4 u_xlat6; vec4 u_xlat7; vec4 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; vec4 u_xlat11; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 3])); u_xlat1.xy = vec2(uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 1])); u_xlat2 = vec4(uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 3])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.z)].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.z)].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.z)].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.z)].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.z)].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.z)].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.z)].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.z)].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.z)].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.z)].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.z)].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.z)].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat3.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.x = u_xlat3.y; u_xlat8.y = u_xlat4.y; u_xlat8.z = u_xlat5.y; u_xlat8.w = u_xlat6.y; u_xlat6.x = u_xlat3.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.w)].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.w)].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.w)].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.w)].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.w)].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.w)].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.w)].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.w)].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.w)].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.w)].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.w)].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.w)].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat3.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat10 = u_xlat2.yyyy * u_xlat10; u_xlat11.x = u_xlat3.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat11 = u_xlat2.yyyy * u_xlat11; u_xlat9.x = u_xlat3.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat3 = u_xlat2.yyyy * u_xlat9; u_xlat4 = u_xlat7 * u_xlat2.xxxx + u_xlat10; u_xlat5 = u_xlat8 * u_xlat2.xxxx + u_xlat11; u_xlat2 = u_xlat6 * u_xlat2.xxxx + u_xlat3; u_xlat3.xyz = u_xlat0.xyz; u_xlat3.w = 1.0; u_xlat6.x = dot(u_xlat4, u_xlat3); u_xlat6.y = dot(u_xlat5, u_xlat3); u_xlat6.z = dot(u_xlat2, u_xlat3); u_xlat1.z = u_xlat0.w; u_xlat6.w = dot(u_xlat4.yzx, u_xlat1.xyz); u_xlat0.x = dot(u_xlat5.yzx, u_xlat1.xyz); u_xlat0.y = dot(u_xlat2.yzx, u_xlat1.xyz); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2)] = floatBitsToUint(u_xlat6.x); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat6.y); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat6.z); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat6.w); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2)] = floatBitsToUint(u_xlat0.x); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat0.y); } return; } @Amain$Globals inVerticesinSkin inMatrices outVertices<#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform CGlobals { uint g_VertCount; }; struct inVertices_type { uint[7] value; }; layout(std430, binding = 1) readonly buffer inVertices { inVertices_type inVertices_buf[]; }; struct inSkin_type { uint[4] value; }; layout(std430, binding = 2) readonly buffer inSkin { inSkin_type inSkin_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 3) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct outVertices_type { uint[7] value; }; layout(std430, binding = 0) buffer outVertices { outVertices_type outVertices_buf[]; }; vec4 u_xlat0; bool u_xlatb0; vec4 u_xlat1; vec4 u_xlat2; vec4 u_xlat3; vec4 u_xlat4; vec4 u_xlat5; vec4 u_xlat6; vec4 u_xlat7; vec4 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; vec4 u_xlat11; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 3])); u_xlat1.xyz = vec3(uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 1]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 3])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.z)].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.z)].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.z)].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.z)].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.z)].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.z)].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.z)].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.z)].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.z)].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.z)].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.z)].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.z)].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat3.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.x = u_xlat3.y; u_xlat8.y = u_xlat4.y; u_xlat8.z = u_xlat5.y; u_xlat8.w = u_xlat6.y; u_xlat6.x = u_xlat3.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.w)].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.w)].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.w)].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.w)].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.w)].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.w)].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.w)].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.w)].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.w)].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.w)].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.w)].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat2.w)].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat3.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat10 = u_xlat2.yyyy * u_xlat10; u_xlat11.x = u_xlat3.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat11 = u_xlat2.yyyy * u_xlat11; u_xlat9.x = u_xlat3.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat3 = u_xlat2.yyyy * u_xlat9; u_xlat4 = u_xlat7 * u_xlat2.xxxx + u_xlat10; u_xlat5 = u_xlat8 * u_xlat2.xxxx + u_xlat11; u_xlat2 = u_xlat6 * u_xlat2.xxxx + u_xlat3; u_xlat3.xyz = u_xlat0.xyz; u_xlat3.w = 1.0; u_xlat6.x = dot(u_xlat4, u_xlat3); u_xlat6.y = dot(u_xlat5, u_xlat3); u_xlat6.z = dot(u_xlat2, u_xlat3); u_xlat1.w = u_xlat0.w; u_xlat6.w = dot(u_xlat4.yzx, u_xlat1.xyw); u_xlat0.x = dot(u_xlat5.yzx, u_xlat1.xyw); u_xlat0.y = dot(u_xlat2.yzx, u_xlat1.xyw); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2)] = floatBitsToUint(u_xlat6.x); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat6.y); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat6.z); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat6.w); u_xlat0.z = u_xlat1.z; outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2)] = floatBitsToUint(u_xlat0.x); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat0.y); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat0.z); } return; } @Amain$Globals inVerticesinSkin inMatrices outVertices#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform CGlobals { uint g_VertCount; }; struct inVertices_type { uint[10] value; }; layout(std430, binding = 1) readonly buffer inVertices { inVertices_type inVertices_buf[]; }; struct inSkin_type { uint[4] value; }; layout(std430, binding = 2) readonly buffer inSkin { inSkin_type inSkin_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 3) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct outVertices_type { uint[10] value; }; layout(std430, binding = 0) buffer outVertices { outVertices_type outVertices_buf[]; }; vec4 u_xlat0; bool u_xlatb0; vec4 u_xlat1; vec4 u_xlat2; vec4 u_xlat3; vec4 u_xlat4; vec4 u_xlat5; vec4 u_xlat6; vec4 u_xlat7; vec4 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; vec4 u_xlat11; vec4 u_xlat12; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x> 2) + 3]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2])); u_xlat1 = vec4(uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 1]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 2]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(32 >> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(32 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 3])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat3.z)].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat3.z)].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat3.z)].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat3.z)].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat3.z)].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat3.z)].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat3.z)].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat3.z)].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat3.z)].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat3.z)].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat3.z)].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat3.z)].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat4.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat4.y; u_xlat9.y = u_xlat5.y; u_xlat9.z = u_xlat6.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat4.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat3.w)].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat3.w)].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat3.w)].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat3.w)].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat3.w)].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat3.w)].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat3.w)].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat3.w)].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat3.w)].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat3.w)].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat3.w)].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[floatBitsToInt(u_xlat3.w)].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat4.x; u_xlat11.y = u_xlat5.x; u_xlat11.z = u_xlat6.x; u_xlat11.w = u_xlat10.x; u_xlat11 = u_xlat3.yyyy * u_xlat11; u_xlat12.x = u_xlat4.y; u_xlat12.y = u_xlat5.y; u_xlat12.z = u_xlat6.y; u_xlat12.w = u_xlat10.y; u_xlat12 = u_xlat3.yyyy * u_xlat12; u_xlat10.x = u_xlat4.z; u_xlat10.y = u_xlat5.z; u_xlat10.z = u_xlat6.z; u_xlat4 = u_xlat3.yyyy * u_xlat10; u_xlat5 = u_xlat8 * u_xlat3.xxxx + u_xlat11; u_xlat6 = u_xlat9 * u_xlat3.xxxx + u_xlat12; u_xlat3 = u_xlat7 * u_xlat3.xxxx + u_xlat4; u_xlat4.xyz = u_xlat0.yzw; u_xlat4.w = 1.0; u_xlat7.x = dot(u_xlat5, u_xlat4); u_xlat7.y = dot(u_xlat6, u_xlat4); u_xlat7.z = dot(u_xlat3, u_xlat4); u_xlat0.yz = u_xlat1.xy; u_xlat7.w = dot(u_xlat5.xyz, u_xlat0.xyz); u_xlat4.x = dot(u_xlat6.xyz, u_xlat0.xyz); u_xlat4.y = dot(u_xlat3.xyz, u_xlat0.xyz); u_xlat2.zw = u_xlat1.zw; u_xlat4.z = dot(u_xlat5.zxy, u_xlat2.xzw); u_xlat4.w = dot(u_xlat6.zxy, u_xlat2.xzw); u_xlat2.x = dot(u_xlat3.zxy, u_xlat2.xzw); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2)] = floatBitsToUint(u_xlat7.x); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat7.y); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat7.z); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat7.w); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2)] = floatBitsToUint(u_xlat4.x); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat4.y); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat4.z); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat4.w); outVertices_buf[gl_GlobalInvocationID.x].value[(32 >> 2)] = floatBitsToUint(u_xlat2.x); outVertices_buf[gl_GlobalInvocationID.x].value[(32 >> 2) + 1] = floatBitsToUint(u_xlat2.y); } return; } @Amain$Globals inVerticesinSkin inMatrices outVertices!#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform CGlobals { uint g_VertCount; }; struct inVertices_type { uint[3] value; }; layout(std430, binding = 1) readonly buffer inVertices { inVertices_type inVertices_buf[]; }; struct inSkin_type { uint[8] value; }; layout(std430, binding = 2) readonly buffer inSkin { inSkin_type inSkin_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 3) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct outVertices_type { uint[3] value; }; layout(std430, binding = 0) buffer outVertices { outVertices_type outVertices_buf[]; }; vec4 u_xlat0; bool u_xlatb0; vec4 u_xlat1; vec4 u_xlat2; ivec4 u_xlati2; vec4 u_xlat3; vec4 u_xlat4; vec4 u_xlat5; vec4 u_xlat6; vec4 u_xlat7; vec4 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; vec4 u_xlat11; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2])); u_xlat1 = vec4(uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 3])); u_xlati2 = ivec4(int(inSkin_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 0]), int(inSkin_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 1]), int(inSkin_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 2]), int(inSkin_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 3])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati2.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati2.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati2.x].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati2.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati2.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati2.x].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati2.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati2.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati2.x].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati2.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati2.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati2.x].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat3.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.x = u_xlat3.y; u_xlat8.y = u_xlat4.y; u_xlat8.z = u_xlat5.y; u_xlat8.w = u_xlat6.y; u_xlat6.x = u_xlat3.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati2.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati2.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati2.y].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati2.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati2.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati2.y].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati2.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati2.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati2.y].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati2.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati2.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati2.y].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat3.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat10 = u_xlat1.yyyy * u_xlat10; u_xlat11.x = u_xlat3.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat11 = u_xlat1.yyyy * u_xlat11; u_xlat9.x = u_xlat3.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat3 = u_xlat1.yyyy * u_xlat9; u_xlat4 = u_xlat7 * u_xlat1.xxxx + u_xlat10; u_xlat5 = u_xlat8 * u_xlat1.xxxx + u_xlat11; u_xlat3 = u_xlat6 * u_xlat1.xxxx + u_xlat3; u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati2.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati2.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati2.z].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati2.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati2.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati2.z].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati2.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati2.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati2.z].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati2.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati2.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati2.z].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat6.x; u_xlat10.y = u_xlat7.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat6.y; u_xlat11.y = u_xlat7.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat6.z; u_xlat9.y = u_xlat7.z; u_xlat9.z = u_xlat8.z; u_xlat4 = u_xlat10 * u_xlat1.zzzz + u_xlat4; u_xlat5 = u_xlat11 * u_xlat1.zzzz + u_xlat5; u_xlat3 = u_xlat9 * u_xlat1.zzzz + u_xlat3; u_xlat1.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati2.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati2.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati2.w].value[(0 >> 2) + 2])); u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati2.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati2.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati2.w].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati2.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati2.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati2.w].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati2.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati2.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati2.w].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat1.x; u_xlat8.y = u_xlat2.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat1.y; u_xlat9.y = u_xlat2.y; u_xlat9.z = u_xlat6.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat1.z; u_xlat7.y = u_xlat2.z; u_xlat7.z = u_xlat6.z; u_xlat2 = u_xlat8 * u_xlat1.wwww + u_xlat4; u_xlat4 = u_xlat9 * u_xlat1.wwww + u_xlat5; u_xlat1 = u_xlat7 * u_xlat1.wwww + u_xlat3; u_xlat0.w = 1.0; u_xlat2.x = dot(u_xlat2, u_xlat0); u_xlat2.y = dot(u_xlat4, u_xlat0); u_xlat2.z = dot(u_xlat1, u_xlat0); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2)] = floatBitsToUint(u_xlat2.x); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat2.y); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat2.z); } return; } @Amain$Globals inVerticesinSkin inMatrices outVertices?$#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform CGlobals { uint g_VertCount; }; struct inVertices_type { uint[6] value; }; layout(std430, binding = 1) readonly buffer inVertices { inVertices_type inVertices_buf[]; }; struct inSkin_type { uint[8] value; }; layout(std430, binding = 2) readonly buffer inSkin { inSkin_type inSkin_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 3) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct outVertices_type { uint[6] value; }; layout(std430, binding = 0) buffer outVertices { outVertices_type outVertices_buf[]; }; vec4 u_xlat0; bool u_xlatb0; vec3 u_xlat1; vec4 u_xlat2; vec4 u_xlat3; ivec4 u_xlati3; vec4 u_xlat4; vec4 u_xlat5; vec4 u_xlat6; vec4 u_xlat7; vec4 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; vec4 u_xlat11; vec4 u_xlat12; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 3])); u_xlat1.xy = vec2(uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 1])); u_xlat2 = vec4(uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 3])); u_xlati3 = ivec4(int(inSkin_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 0]), int(inSkin_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 1]), int(inSkin_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 2]), int(inSkin_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 3])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat4.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat4.y; u_xlat9.y = u_xlat5.y; u_xlat9.z = u_xlat6.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat4.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat4.x; u_xlat11.y = u_xlat5.x; u_xlat11.z = u_xlat6.x; u_xlat11.w = u_xlat10.x; u_xlat11 = u_xlat2.yyyy * u_xlat11; u_xlat12.x = u_xlat4.y; u_xlat12.y = u_xlat5.y; u_xlat12.z = u_xlat6.y; u_xlat12.w = u_xlat10.y; u_xlat12 = u_xlat2.yyyy * u_xlat12; u_xlat10.x = u_xlat4.z; u_xlat10.y = u_xlat5.z; u_xlat10.z = u_xlat6.z; u_xlat4 = u_xlat2.yyyy * u_xlat10; u_xlat5 = u_xlat8 * u_xlat2.xxxx + u_xlat11; u_xlat6 = u_xlat9 * u_xlat2.xxxx + u_xlat12; u_xlat4 = u_xlat7 * u_xlat2.xxxx + u_xlat4; u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 2])); u_xlat9.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat7.x; u_xlat11.y = u_xlat8.x; u_xlat11.z = u_xlat9.x; u_xlat11.w = u_xlat10.x; u_xlat12.x = u_xlat7.y; u_xlat12.y = u_xlat8.y; u_xlat12.z = u_xlat9.y; u_xlat12.w = u_xlat10.y; u_xlat10.x = u_xlat7.z; u_xlat10.y = u_xlat8.z; u_xlat10.z = u_xlat9.z; u_xlat5 = u_xlat11 * u_xlat2.zzzz + u_xlat5; u_xlat6 = u_xlat12 * u_xlat2.zzzz + u_xlat6; u_xlat4 = u_xlat10 * u_xlat2.zzzz + u_xlat4; u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat2.x; u_xlat9.y = u_xlat3.x; u_xlat9.z = u_xlat7.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat2.y; u_xlat10.y = u_xlat3.y; u_xlat10.z = u_xlat7.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat2.z; u_xlat8.y = u_xlat3.z; u_xlat8.z = u_xlat7.z; u_xlat3 = u_xlat9 * u_xlat2.wwww + u_xlat5; u_xlat5 = u_xlat10 * u_xlat2.wwww + u_xlat6; u_xlat2 = u_xlat8 * u_xlat2.wwww + u_xlat4; u_xlat4.xyz = u_xlat0.xyz; u_xlat4.w = 1.0; u_xlat6.x = dot(u_xlat3, u_xlat4); u_xlat6.y = dot(u_xlat5, u_xlat4); u_xlat6.z = dot(u_xlat2, u_xlat4); u_xlat1.z = u_xlat0.w; u_xlat6.w = dot(u_xlat3.yzx, u_xlat1.xyz); u_xlat0.x = dot(u_xlat5.yzx, u_xlat1.xyz); u_xlat0.y = dot(u_xlat2.yzx, u_xlat1.xyz); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2)] = floatBitsToUint(u_xlat6.x); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat6.y); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat6.z); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat6.w); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2)] = floatBitsToUint(u_xlat0.x); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat0.y); } return; } @Amain$Globals inVerticesinSkin inMatrices outVertices%#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform CGlobals { uint g_VertCount; }; struct inVertices_type { uint[7] value; }; layout(std430, binding = 1) readonly buffer inVertices { inVertices_type inVertices_buf[]; }; struct inSkin_type { uint[8] value; }; layout(std430, binding = 2) readonly buffer inSkin { inSkin_type inSkin_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 3) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct outVertices_type { uint[7] value; }; layout(std430, binding = 0) buffer outVertices { outVertices_type outVertices_buf[]; }; vec4 u_xlat0; bool u_xlatb0; vec4 u_xlat1; vec4 u_xlat2; vec4 u_xlat3; ivec4 u_xlati3; vec4 u_xlat4; vec4 u_xlat5; vec4 u_xlat6; vec4 u_xlat7; vec4 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; vec4 u_xlat11; vec4 u_xlat12; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 3])); u_xlat1.xyz = vec3(uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 1]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 3])); u_xlati3 = ivec4(int(inSkin_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 0]), int(inSkin_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 1]), int(inSkin_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 2]), int(inSkin_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 3])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat4.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat4.y; u_xlat9.y = u_xlat5.y; u_xlat9.z = u_xlat6.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat4.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat4.x; u_xlat11.y = u_xlat5.x; u_xlat11.z = u_xlat6.x; u_xlat11.w = u_xlat10.x; u_xlat11 = u_xlat2.yyyy * u_xlat11; u_xlat12.x = u_xlat4.y; u_xlat12.y = u_xlat5.y; u_xlat12.z = u_xlat6.y; u_xlat12.w = u_xlat10.y; u_xlat12 = u_xlat2.yyyy * u_xlat12; u_xlat10.x = u_xlat4.z; u_xlat10.y = u_xlat5.z; u_xlat10.z = u_xlat6.z; u_xlat4 = u_xlat2.yyyy * u_xlat10; u_xlat5 = u_xlat8 * u_xlat2.xxxx + u_xlat11; u_xlat6 = u_xlat9 * u_xlat2.xxxx + u_xlat12; u_xlat4 = u_xlat7 * u_xlat2.xxxx + u_xlat4; u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 2])); u_xlat9.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat7.x; u_xlat11.y = u_xlat8.x; u_xlat11.z = u_xlat9.x; u_xlat11.w = u_xlat10.x; u_xlat12.x = u_xlat7.y; u_xlat12.y = u_xlat8.y; u_xlat12.z = u_xlat9.y; u_xlat12.w = u_xlat10.y; u_xlat10.x = u_xlat7.z; u_xlat10.y = u_xlat8.z; u_xlat10.z = u_xlat9.z; u_xlat5 = u_xlat11 * u_xlat2.zzzz + u_xlat5; u_xlat6 = u_xlat12 * u_xlat2.zzzz + u_xlat6; u_xlat4 = u_xlat10 * u_xlat2.zzzz + u_xlat4; u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat2.x; u_xlat9.y = u_xlat3.x; u_xlat9.z = u_xlat7.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat2.y; u_xlat10.y = u_xlat3.y; u_xlat10.z = u_xlat7.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat2.z; u_xlat8.y = u_xlat3.z; u_xlat8.z = u_xlat7.z; u_xlat3 = u_xlat9 * u_xlat2.wwww + u_xlat5; u_xlat5 = u_xlat10 * u_xlat2.wwww + u_xlat6; u_xlat2 = u_xlat8 * u_xlat2.wwww + u_xlat4; u_xlat4.xyz = u_xlat0.xyz; u_xlat4.w = 1.0; u_xlat6.x = dot(u_xlat3, u_xlat4); u_xlat6.y = dot(u_xlat5, u_xlat4); u_xlat6.z = dot(u_xlat2, u_xlat4); u_xlat1.w = u_xlat0.w; u_xlat6.w = dot(u_xlat3.yzx, u_xlat1.xyw); u_xlat0.x = dot(u_xlat5.yzx, u_xlat1.xyw); u_xlat0.y = dot(u_xlat2.yzx, u_xlat1.xyw); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2)] = floatBitsToUint(u_xlat6.x); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat6.y); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat6.z); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat6.w); u_xlat0.z = u_xlat1.z; outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2)] = floatBitsToUint(u_xlat0.x); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat0.y); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat0.z); } return; } @Amain$Globals inVerticesinSkin inMatrices outVertices'#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform CGlobals { uint g_VertCount; }; struct inVertices_type { uint[10] value; }; layout(std430, binding = 1) readonly buffer inVertices { inVertices_type inVertices_buf[]; }; struct inSkin_type { uint[8] value; }; layout(std430, binding = 2) readonly buffer inSkin { inSkin_type inSkin_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 3) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct outVertices_type { uint[10] value; }; layout(std430, binding = 0) buffer outVertices { outVertices_type outVertices_buf[]; }; vec4 u_xlat0; bool u_xlatb0; vec4 u_xlat1; vec4 u_xlat2; vec4 u_xlat3; vec4 u_xlat4; ivec4 u_xlati4; vec4 u_xlat5; vec4 u_xlat6; vec4 u_xlat7; vec4 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; vec4 u_xlat11; vec4 u_xlat12; vec4 u_xlat13; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x> 2) + 3]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2])); u_xlat1 = vec4(uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 1]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 2]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(32 >> 2) + 0]), uintBitsToFloat(inVertices_buf[gl_GlobalInvocationID.x].value[(32 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 3])); u_xlati4 = ivec4(int(inSkin_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 0]), int(inSkin_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 1]), int(inSkin_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 2]), int(inSkin_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 3])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat5.x; u_xlat9.y = u_xlat6.x; u_xlat9.z = u_xlat7.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat5.y; u_xlat10.y = u_xlat6.y; u_xlat10.z = u_xlat7.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat5.z; u_xlat8.y = u_xlat6.z; u_xlat8.z = u_xlat7.z; u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat5.x; u_xlat12.y = u_xlat6.x; u_xlat12.z = u_xlat7.x; u_xlat12.w = u_xlat11.x; u_xlat12 = u_xlat3.yyyy * u_xlat12; u_xlat13.x = u_xlat5.y; u_xlat13.y = u_xlat6.y; u_xlat13.z = u_xlat7.y; u_xlat13.w = u_xlat11.y; u_xlat13 = u_xlat3.yyyy * u_xlat13; u_xlat11.x = u_xlat5.z; u_xlat11.y = u_xlat6.z; u_xlat11.z = u_xlat7.z; u_xlat5 = u_xlat3.yyyy * u_xlat11; u_xlat6 = u_xlat9 * u_xlat3.xxxx + u_xlat12; u_xlat7 = u_xlat10 * u_xlat3.xxxx + u_xlat13; u_xlat5 = u_xlat8 * u_xlat3.xxxx + u_xlat5; u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 2])); u_xlat9.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 2])); u_xlat10.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat8.x; u_xlat12.y = u_xlat9.x; u_xlat12.z = u_xlat10.x; u_xlat12.w = u_xlat11.x; u_xlat13.x = u_xlat8.y; u_xlat13.y = u_xlat9.y; u_xlat13.z = u_xlat10.y; u_xlat13.w = u_xlat11.y; u_xlat11.x = u_xlat8.z; u_xlat11.y = u_xlat9.z; u_xlat11.z = u_xlat10.z; u_xlat6 = u_xlat12 * u_xlat3.zzzz + u_xlat6; u_xlat7 = u_xlat13 * u_xlat3.zzzz + u_xlat7; u_xlat5 = u_xlat11 * u_xlat3.zzzz + u_xlat5; u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat3.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat3.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat3.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat8.z; u_xlat4 = u_xlat10 * u_xlat3.wwww + u_xlat6; u_xlat6 = u_xlat11 * u_xlat3.wwww + u_xlat7; u_xlat3 = u_xlat9 * u_xlat3.wwww + u_xlat5; u_xlat5.xyz = u_xlat0.yzw; u_xlat5.w = 1.0; u_xlat7.x = dot(u_xlat4, u_xlat5); u_xlat7.y = dot(u_xlat6, u_xlat5); u_xlat7.z = dot(u_xlat3, u_xlat5); u_xlat0.yz = u_xlat1.xy; u_xlat7.w = dot(u_xlat4.xyz, u_xlat0.xyz); u_xlat5.x = dot(u_xlat6.xyz, u_xlat0.xyz); u_xlat5.y = dot(u_xlat3.xyz, u_xlat0.xyz); u_xlat2.zw = u_xlat1.zw; u_xlat5.z = dot(u_xlat4.zxy, u_xlat2.xzw); u_xlat5.w = dot(u_xlat6.zxy, u_xlat2.xzw); u_xlat2.x = dot(u_xlat3.zxy, u_xlat2.xzw); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2)] = floatBitsToUint(u_xlat7.x); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat7.y); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat7.z); outVertices_buf[gl_GlobalInvocationID.x].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat7.w); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2)] = floatBitsToUint(u_xlat5.x); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat5.y); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat5.z); outVertices_buf[gl_GlobalInvocationID.x].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat5.w); outVertices_buf[gl_GlobalInvocationID.x].value[(32 >> 2)] = floatBitsToUint(u_xlat2.x); outVertices_buf[gl_GlobalInvocationID.x].value[(32 >> 2) + 1] = floatBitsToUint(u_xlat2.y); } return; } @A batchMainComputeSkinCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4inSkin0inSkin1inSkin2inSkin3inSkin4 inMatrices  outVertices0 outVertices1 outVertices2 outVertices3 outVertices4\#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform ComputeSkinCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; uvec4 g_PoseOffsets[2]; uint g_poseBufferMaxIndex; }; struct inVertices0_type { uint[3] value; }; layout(std430, binding = 5) readonly buffer inVertices0 { inVertices0_type inVertices0_buf[]; }; struct inVertices1_type { uint[3] value; }; layout(std430, binding = 6) readonly buffer inVertices1 { inVertices1_type inVertices1_buf[]; }; struct inVertices2_type { uint[3] value; }; layout(std430, binding = 7) readonly buffer inVertices2 { inVertices2_type inVertices2_buf[]; }; struct inVertices3_type { uint[3] value; }; layout(std430, binding = 8) readonly buffer inVertices3 { inVertices3_type inVertices3_buf[]; }; struct inVertices4_type { uint[3] value; }; layout(std430, binding = 9) readonly buffer inVertices4 { inVertices4_type inVertices4_buf[]; }; struct inSkin0_type { uint[1] value; }; layout(std430, binding = 10) readonly buffer inSkin0 { inSkin0_type inSkin0_buf[]; }; struct inSkin1_type { uint[1] value; }; layout(std430, binding = 11) readonly buffer inSkin1 { inSkin1_type inSkin1_buf[]; }; struct inSkin2_type { uint[1] value; }; layout(std430, binding = 12) readonly buffer inSkin2 { inSkin2_type inSkin2_buf[]; }; struct inSkin3_type { uint[1] value; }; layout(std430, binding = 13) readonly buffer inSkin3 { inSkin3_type inSkin3_buf[]; }; struct inSkin4_type { uint[1] value; }; layout(std430, binding = 14) readonly buffer inSkin4 { inSkin4_type inSkin4_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 15) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct outVertices0_type { uint[3] value; }; layout(std430, binding = 0) buffer outVertices0 { outVertices0_type outVertices0_buf[]; }; struct outVertices1_type { uint[3] value; }; layout(std430, binding = 1) buffer outVertices1 { outVertices1_type outVertices1_buf[]; }; struct outVertices2_type { uint[3] value; }; layout(std430, binding = 2) buffer outVertices2 { outVertices2_type outVertices2_buf[]; }; struct outVertices3_type { uint[3] value; }; layout(std430, binding = 3) buffer outVertices3 { outVertices3_type outVertices3_buf[]; }; struct outVertices4_type { uint[3] value; }; layout(std430, binding = 4) buffer outVertices4 { outVertices4_type outVertices4_buf[]; }; uint u_xlatu0; bool u_xlatb0; vec4 u_xlat1; vec4 u_xlat2; vec4 u_xlat3; vec4 u_xlat4; int u_xlati5; uint u_xlatu5; bool u_xlatb5; vec3 u_xlat6; vec3 u_xlat7; vec3 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; vec4 u_xlat11; uint u_xlatu12; bool u_xlatb12; float u_xlat17; uint u_xlatu17; int u_xlati24; uint u_xlatu24; uint u_xlatu36; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlatu12 = inSkin4_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati24 = int(u_xlatu0) + 1; u_xlatu24 = inSkin4_buf[u_xlati24].value[(0 >> 2) + 0]; u_xlat2.x = float(0.0); u_xlat2.y = float(0.0); u_xlat2.z = float(0.0); u_xlat2.w = float(0.0); u_xlat3.x = float(0.0); u_xlat3.y = float(0.0); u_xlat3.z = float(0.0); u_xlat3.w = float(0.0); u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlatu36 = u_xlatu12; while(true){ u_xlatb5 = u_xlatu36>=u_xlatu24; if(u_xlatb5){break;} u_xlatu5 = inSkin4_buf[u_xlatu36].value[(0 >> 2) + 0]; u_xlatu17 = u_xlatu5 >> (16u & uint(0x1F)); u_xlat17 = float(u_xlatu17); u_xlat17 = u_xlat17 * 1.52590219e-05; u_xlati5 = int(u_xlatu5 & 65535u); u_xlati5 = u_xlati5 + int(g_PoseOffsets[1].x); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat6.x; u_xlat10.y = u_xlat7.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat6.y; u_xlat11.y = u_xlat7.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat6.z; u_xlat9.y = u_xlat7.z; u_xlat9.z = u_xlat8.z; u_xlat2 = u_xlat10 * vec4(u_xlat17) + u_xlat2; u_xlat3 = u_xlat11 * vec4(u_xlat17) + u_xlat3; u_xlat4 = u_xlat9 * vec4(u_xlat17) + u_xlat4; u_xlatu36 = u_xlatu36 + 1u; } u_xlat1.w = 1.0; u_xlat2.x = dot(u_xlat2, u_xlat1); u_xlat2.y = dot(u_xlat3, u_xlat1); u_xlat2.z = dot(u_xlat4, u_xlat1); outVertices4_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat2.x); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat2.y); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat2.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlatu12 = inSkin3_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati24 = int(u_xlatu0) + 1; u_xlatu24 = inSkin3_buf[u_xlati24].value[(0 >> 2) + 0]; u_xlat2.x = float(0.0); u_xlat2.y = float(0.0); u_xlat2.z = float(0.0); u_xlat2.w = float(0.0); u_xlat3.x = float(0.0); u_xlat3.y = float(0.0); u_xlat3.z = float(0.0); u_xlat3.w = float(0.0); u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlatu36 = u_xlatu12; while(true){ u_xlatb5 = u_xlatu36>=u_xlatu24; if(u_xlatb5){break;} u_xlatu5 = inSkin3_buf[u_xlatu36].value[(0 >> 2) + 0]; u_xlatu17 = u_xlatu5 >> (16u & uint(0x1F)); u_xlat17 = float(u_xlatu17); u_xlat17 = u_xlat17 * 1.52590219e-05; u_xlati5 = int(u_xlatu5 & 65535u); u_xlati5 = u_xlati5 + int(g_PoseOffsets[0].w); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat6.x; u_xlat10.y = u_xlat7.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat6.y; u_xlat11.y = u_xlat7.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat6.z; u_xlat9.y = u_xlat7.z; u_xlat9.z = u_xlat8.z; u_xlat2 = u_xlat10 * vec4(u_xlat17) + u_xlat2; u_xlat3 = u_xlat11 * vec4(u_xlat17) + u_xlat3; u_xlat4 = u_xlat9 * vec4(u_xlat17) + u_xlat4; u_xlatu36 = u_xlatu36 + 1u; } u_xlat1.w = 1.0; u_xlat2.x = dot(u_xlat2, u_xlat1); u_xlat2.y = dot(u_xlat3, u_xlat1); u_xlat2.z = dot(u_xlat4, u_xlat1); outVertices3_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat2.x); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat2.y); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat2.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlatu12 = inSkin2_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati24 = int(u_xlatu0) + 1; u_xlatu24 = inSkin2_buf[u_xlati24].value[(0 >> 2) + 0]; u_xlat2.x = float(0.0); u_xlat2.y = float(0.0); u_xlat2.z = float(0.0); u_xlat2.w = float(0.0); u_xlat3.x = float(0.0); u_xlat3.y = float(0.0); u_xlat3.z = float(0.0); u_xlat3.w = float(0.0); u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlatu36 = u_xlatu12; while(true){ u_xlatb5 = u_xlatu36>=u_xlatu24; if(u_xlatb5){break;} u_xlatu5 = inSkin2_buf[u_xlatu36].value[(0 >> 2) + 0]; u_xlatu17 = u_xlatu5 >> (16u & uint(0x1F)); u_xlat17 = float(u_xlatu17); u_xlat17 = u_xlat17 * 1.52590219e-05; u_xlati5 = int(u_xlatu5 & 65535u); u_xlati5 = u_xlati5 + int(g_PoseOffsets[0].z); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat6.x; u_xlat10.y = u_xlat7.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat6.y; u_xlat11.y = u_xlat7.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat6.z; u_xlat9.y = u_xlat7.z; u_xlat9.z = u_xlat8.z; u_xlat2 = u_xlat10 * vec4(u_xlat17) + u_xlat2; u_xlat3 = u_xlat11 * vec4(u_xlat17) + u_xlat3; u_xlat4 = u_xlat9 * vec4(u_xlat17) + u_xlat4; u_xlatu36 = u_xlatu36 + 1u; } u_xlat1.w = 1.0; u_xlat2.x = dot(u_xlat2, u_xlat1); u_xlat2.y = dot(u_xlat3, u_xlat1); u_xlat2.z = dot(u_xlat4, u_xlat1); outVertices2_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat2.x); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat2.y); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat2.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlatu12 = inSkin1_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati24 = int(u_xlatu0) + 1; u_xlatu24 = inSkin1_buf[u_xlati24].value[(0 >> 2) + 0]; u_xlat2.x = float(0.0); u_xlat2.y = float(0.0); u_xlat2.z = float(0.0); u_xlat2.w = float(0.0); u_xlat3.x = float(0.0); u_xlat3.y = float(0.0); u_xlat3.z = float(0.0); u_xlat3.w = float(0.0); u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlatu36 = u_xlatu12; while(true){ u_xlatb5 = u_xlatu36>=u_xlatu24; if(u_xlatb5){break;} u_xlatu5 = inSkin1_buf[u_xlatu36].value[(0 >> 2) + 0]; u_xlatu17 = u_xlatu5 >> (16u & uint(0x1F)); u_xlat17 = float(u_xlatu17); u_xlat17 = u_xlat17 * 1.52590219e-05; u_xlati5 = int(u_xlatu5 & 65535u); u_xlati5 = u_xlati5 + int(g_PoseOffsets[0].y); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat6.x; u_xlat10.y = u_xlat7.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat6.y; u_xlat11.y = u_xlat7.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat6.z; u_xlat9.y = u_xlat7.z; u_xlat9.z = u_xlat8.z; u_xlat2 = u_xlat10 * vec4(u_xlat17) + u_xlat2; u_xlat3 = u_xlat11 * vec4(u_xlat17) + u_xlat3; u_xlat4 = u_xlat9 * vec4(u_xlat17) + u_xlat4; u_xlatu36 = u_xlatu36 + 1u; } u_xlat1.w = 1.0; u_xlat2.x = dot(u_xlat2, u_xlat1); u_xlat2.y = dot(u_xlat3, u_xlat1); u_xlat2.z = dot(u_xlat4, u_xlat1); outVertices1_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat2.x); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat2.y); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat2.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlatu12 = inSkin0_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati24 = int(u_xlatu0) + 1; u_xlatu24 = inSkin0_buf[u_xlati24].value[(0 >> 2) + 0]; u_xlat2.x = float(0.0); u_xlat2.y = float(0.0); u_xlat2.z = float(0.0); u_xlat2.w = float(0.0); u_xlat3.x = float(0.0); u_xlat3.y = float(0.0); u_xlat3.z = float(0.0); u_xlat3.w = float(0.0); u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlatu36 = u_xlatu12; while(true){ u_xlatb5 = u_xlatu36>=u_xlatu24; if(u_xlatb5){break;} u_xlatu5 = inSkin0_buf[u_xlatu36].value[(0 >> 2) + 0]; u_xlatu17 = u_xlatu5 >> (16u & uint(0x1F)); u_xlat17 = float(u_xlatu17); u_xlat17 = u_xlat17 * 1.52590219e-05; u_xlati5 = int(u_xlatu5 & 65535u); u_xlati5 = u_xlati5 + int(g_PoseOffsets[0].x); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat6.x; u_xlat10.y = u_xlat7.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat6.y; u_xlat11.y = u_xlat7.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat6.z; u_xlat9.y = u_xlat7.z; u_xlat9.z = u_xlat8.z; u_xlat2 = u_xlat10 * vec4(u_xlat17) + u_xlat2; u_xlat3 = u_xlat11 * vec4(u_xlat17) + u_xlat3; u_xlat4 = u_xlat9 * vec4(u_xlat17) + u_xlat4; u_xlatu36 = u_xlatu36 + 1u; } u_xlat1.w = 1.0; u_xlat2.x = dot(u_xlat2, u_xlat1); u_xlat2.y = dot(u_xlat3, u_xlat1); u_xlat2.z = dot(u_xlat4, u_xlat1); outVertices0_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat2.x); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat2.y); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat2.z); } } } } } } return; } @A batchMainComputeSkinCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4inSkin0inSkin1inSkin2inSkin3inSkin4 inMatrices  outVertices0 outVertices1 outVertices2 outVertices3 outVertices4l#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform ComputeSkinCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; uvec4 g_PoseOffsets[2]; uint g_poseBufferMaxIndex; }; struct inVertices0_type { uint[6] value; }; layout(std430, binding = 5) readonly buffer inVertices0 { inVertices0_type inVertices0_buf[]; }; struct inVertices1_type { uint[6] value; }; layout(std430, binding = 6) readonly buffer inVertices1 { inVertices1_type inVertices1_buf[]; }; struct inVertices2_type { uint[6] value; }; layout(std430, binding = 7) readonly buffer inVertices2 { inVertices2_type inVertices2_buf[]; }; struct inVertices3_type { uint[6] value; }; layout(std430, binding = 8) readonly buffer inVertices3 { inVertices3_type inVertices3_buf[]; }; struct inVertices4_type { uint[6] value; }; layout(std430, binding = 9) readonly buffer inVertices4 { inVertices4_type inVertices4_buf[]; }; struct inSkin0_type { uint[1] value; }; layout(std430, binding = 10) readonly buffer inSkin0 { inSkin0_type inSkin0_buf[]; }; struct inSkin1_type { uint[1] value; }; layout(std430, binding = 11) readonly buffer inSkin1 { inSkin1_type inSkin1_buf[]; }; struct inSkin2_type { uint[1] value; }; layout(std430, binding = 12) readonly buffer inSkin2 { inSkin2_type inSkin2_buf[]; }; struct inSkin3_type { uint[1] value; }; layout(std430, binding = 13) readonly buffer inSkin3 { inSkin3_type inSkin3_buf[]; }; struct inSkin4_type { uint[1] value; }; layout(std430, binding = 14) readonly buffer inSkin4 { inSkin4_type inSkin4_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 15) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct outVertices0_type { uint[6] value; }; layout(std430, binding = 0) buffer outVertices0 { outVertices0_type outVertices0_buf[]; }; struct outVertices1_type { uint[6] value; }; layout(std430, binding = 1) buffer outVertices1 { outVertices1_type outVertices1_buf[]; }; struct outVertices2_type { uint[6] value; }; layout(std430, binding = 2) buffer outVertices2 { outVertices2_type outVertices2_buf[]; }; struct outVertices3_type { uint[6] value; }; layout(std430, binding = 3) buffer outVertices3 { outVertices3_type outVertices3_buf[]; }; struct outVertices4_type { uint[6] value; }; layout(std430, binding = 4) buffer outVertices4 { outVertices4_type outVertices4_buf[]; }; uint u_xlatu0; bool u_xlatb0; vec4 u_xlat1; vec3 u_xlat2; vec4 u_xlat3; vec4 u_xlat4; vec4 u_xlat5; vec4 u_xlat6; uint u_xlatu6; vec4 u_xlat7; vec3 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; vec4 u_xlat11; uint u_xlatu12; bool u_xlatb12; vec3 u_xlat18; int u_xlati24; uint u_xlatu24; uint u_xlatu36; int u_xlati38; uint u_xlatu38; bool u_xlatb38; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlatu12 = inSkin4_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati24 = int(u_xlatu0) + 1; u_xlatu24 = inSkin4_buf[u_xlati24].value[(0 >> 2) + 0]; u_xlat3.x = float(0.0); u_xlat3.y = float(0.0); u_xlat3.z = float(0.0); u_xlat3.w = float(0.0); u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlat5.x = float(0.0); u_xlat5.y = float(0.0); u_xlat5.z = float(0.0); u_xlat5.w = float(0.0); u_xlatu36 = u_xlatu12; while(true){ u_xlatb38 = u_xlatu36>=u_xlatu24; if(u_xlatb38){break;} u_xlatu38 = inSkin4_buf[u_xlatu36].value[(0 >> 2) + 0]; u_xlatu6 = u_xlatu38 >> (16u & uint(0x1F)); u_xlat6.x = float(u_xlatu6); u_xlat6.x = u_xlat6.x * 1.52590219e-05; u_xlati38 = int(u_xlatu38 & 65535u); u_xlati38 = u_xlati38 + int(g_PoseOffsets[1].x); u_xlat18.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat18.x; u_xlat10.y = u_xlat7.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat18.y; u_xlat11.y = u_xlat7.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat18.z; u_xlat9.y = u_xlat7.z; u_xlat9.z = u_xlat8.z; u_xlat3 = u_xlat10 * u_xlat6.xxxx + u_xlat3; u_xlat4 = u_xlat11 * u_xlat6.xxxx + u_xlat4; u_xlat5 = u_xlat9 * u_xlat6.xxxx + u_xlat5; u_xlatu36 = u_xlatu36 + 1u; } u_xlat6.xyz = u_xlat1.xyz; u_xlat6.w = 1.0; u_xlat7.x = dot(u_xlat3, u_xlat6); u_xlat7.y = dot(u_xlat4, u_xlat6); u_xlat7.z = dot(u_xlat5, u_xlat6); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat3.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat4.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat5.yzx, u_xlat2.xyz); outVertices4_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat7.x); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat7.y); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat7.z); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat7.w); outVertices4_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat1.x); outVertices4_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat1.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlatu12 = inSkin3_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati24 = int(u_xlatu0) + 1; u_xlatu24 = inSkin3_buf[u_xlati24].value[(0 >> 2) + 0]; u_xlat3.x = float(0.0); u_xlat3.y = float(0.0); u_xlat3.z = float(0.0); u_xlat3.w = float(0.0); u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlat5.x = float(0.0); u_xlat5.y = float(0.0); u_xlat5.z = float(0.0); u_xlat5.w = float(0.0); u_xlatu36 = u_xlatu12; while(true){ u_xlatb38 = u_xlatu36>=u_xlatu24; if(u_xlatb38){break;} u_xlatu38 = inSkin3_buf[u_xlatu36].value[(0 >> 2) + 0]; u_xlatu6 = u_xlatu38 >> (16u & uint(0x1F)); u_xlat6.x = float(u_xlatu6); u_xlat6.x = u_xlat6.x * 1.52590219e-05; u_xlati38 = int(u_xlatu38 & 65535u); u_xlati38 = u_xlati38 + int(g_PoseOffsets[0].w); u_xlat18.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat18.x; u_xlat10.y = u_xlat7.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat18.y; u_xlat11.y = u_xlat7.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat18.z; u_xlat9.y = u_xlat7.z; u_xlat9.z = u_xlat8.z; u_xlat3 = u_xlat10 * u_xlat6.xxxx + u_xlat3; u_xlat4 = u_xlat11 * u_xlat6.xxxx + u_xlat4; u_xlat5 = u_xlat9 * u_xlat6.xxxx + u_xlat5; u_xlatu36 = u_xlatu36 + 1u; } u_xlat6.xyz = u_xlat1.xyz; u_xlat6.w = 1.0; u_xlat7.x = dot(u_xlat3, u_xlat6); u_xlat7.y = dot(u_xlat4, u_xlat6); u_xlat7.z = dot(u_xlat5, u_xlat6); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat3.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat4.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat5.yzx, u_xlat2.xyz); outVertices3_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat7.x); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat7.y); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat7.z); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat7.w); outVertices3_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat1.x); outVertices3_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat1.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlatu12 = inSkin2_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati24 = int(u_xlatu0) + 1; u_xlatu24 = inSkin2_buf[u_xlati24].value[(0 >> 2) + 0]; u_xlat3.x = float(0.0); u_xlat3.y = float(0.0); u_xlat3.z = float(0.0); u_xlat3.w = float(0.0); u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlat5.x = float(0.0); u_xlat5.y = float(0.0); u_xlat5.z = float(0.0); u_xlat5.w = float(0.0); u_xlatu36 = u_xlatu12; while(true){ u_xlatb38 = u_xlatu36>=u_xlatu24; if(u_xlatb38){break;} u_xlatu38 = inSkin2_buf[u_xlatu36].value[(0 >> 2) + 0]; u_xlatu6 = u_xlatu38 >> (16u & uint(0x1F)); u_xlat6.x = float(u_xlatu6); u_xlat6.x = u_xlat6.x * 1.52590219e-05; u_xlati38 = int(u_xlatu38 & 65535u); u_xlati38 = u_xlati38 + int(g_PoseOffsets[0].z); u_xlat18.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat18.x; u_xlat10.y = u_xlat7.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat18.y; u_xlat11.y = u_xlat7.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat18.z; u_xlat9.y = u_xlat7.z; u_xlat9.z = u_xlat8.z; u_xlat3 = u_xlat10 * u_xlat6.xxxx + u_xlat3; u_xlat4 = u_xlat11 * u_xlat6.xxxx + u_xlat4; u_xlat5 = u_xlat9 * u_xlat6.xxxx + u_xlat5; u_xlatu36 = u_xlatu36 + 1u; } u_xlat6.xyz = u_xlat1.xyz; u_xlat6.w = 1.0; u_xlat7.x = dot(u_xlat3, u_xlat6); u_xlat7.y = dot(u_xlat4, u_xlat6); u_xlat7.z = dot(u_xlat5, u_xlat6); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat3.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat4.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat5.yzx, u_xlat2.xyz); outVertices2_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat7.x); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat7.y); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat7.z); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat7.w); outVertices2_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat1.x); outVertices2_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat1.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlatu12 = inSkin1_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati24 = int(u_xlatu0) + 1; u_xlatu24 = inSkin1_buf[u_xlati24].value[(0 >> 2) + 0]; u_xlat3.x = float(0.0); u_xlat3.y = float(0.0); u_xlat3.z = float(0.0); u_xlat3.w = float(0.0); u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlat5.x = float(0.0); u_xlat5.y = float(0.0); u_xlat5.z = float(0.0); u_xlat5.w = float(0.0); u_xlatu36 = u_xlatu12; while(true){ u_xlatb38 = u_xlatu36>=u_xlatu24; if(u_xlatb38){break;} u_xlatu38 = inSkin1_buf[u_xlatu36].value[(0 >> 2) + 0]; u_xlatu6 = u_xlatu38 >> (16u & uint(0x1F)); u_xlat6.x = float(u_xlatu6); u_xlat6.x = u_xlat6.x * 1.52590219e-05; u_xlati38 = int(u_xlatu38 & 65535u); u_xlati38 = u_xlati38 + int(g_PoseOffsets[0].y); u_xlat18.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat18.x; u_xlat10.y = u_xlat7.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat18.y; u_xlat11.y = u_xlat7.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat18.z; u_xlat9.y = u_xlat7.z; u_xlat9.z = u_xlat8.z; u_xlat3 = u_xlat10 * u_xlat6.xxxx + u_xlat3; u_xlat4 = u_xlat11 * u_xlat6.xxxx + u_xlat4; u_xlat5 = u_xlat9 * u_xlat6.xxxx + u_xlat5; u_xlatu36 = u_xlatu36 + 1u; } u_xlat6.xyz = u_xlat1.xyz; u_xlat6.w = 1.0; u_xlat7.x = dot(u_xlat3, u_xlat6); u_xlat7.y = dot(u_xlat4, u_xlat6); u_xlat7.z = dot(u_xlat5, u_xlat6); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat3.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat4.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat5.yzx, u_xlat2.xyz); outVertices1_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat7.x); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat7.y); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat7.z); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat7.w); outVertices1_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat1.x); outVertices1_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat1.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlatu12 = inSkin0_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati24 = int(u_xlatu0) + 1; u_xlatu24 = inSkin0_buf[u_xlati24].value[(0 >> 2) + 0]; u_xlat3.x = float(0.0); u_xlat3.y = float(0.0); u_xlat3.z = float(0.0); u_xlat3.w = float(0.0); u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlat5.x = float(0.0); u_xlat5.y = float(0.0); u_xlat5.z = float(0.0); u_xlat5.w = float(0.0); u_xlatu36 = u_xlatu12; while(true){ u_xlatb38 = u_xlatu36>=u_xlatu24; if(u_xlatb38){break;} u_xlatu38 = inSkin0_buf[u_xlatu36].value[(0 >> 2) + 0]; u_xlatu6 = u_xlatu38 >> (16u & uint(0x1F)); u_xlat6.x = float(u_xlatu6); u_xlat6.x = u_xlat6.x * 1.52590219e-05; u_xlati38 = int(u_xlatu38 & 65535u); u_xlati38 = u_xlati38 + int(g_PoseOffsets[0].x); u_xlat18.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat18.x; u_xlat10.y = u_xlat7.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat18.y; u_xlat11.y = u_xlat7.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat18.z; u_xlat9.y = u_xlat7.z; u_xlat9.z = u_xlat8.z; u_xlat3 = u_xlat10 * u_xlat6.xxxx + u_xlat3; u_xlat4 = u_xlat11 * u_xlat6.xxxx + u_xlat4; u_xlat5 = u_xlat9 * u_xlat6.xxxx + u_xlat5; u_xlatu36 = u_xlatu36 + 1u; } u_xlat6.xyz = u_xlat1.xyz; u_xlat6.w = 1.0; u_xlat7.x = dot(u_xlat3, u_xlat6); u_xlat7.y = dot(u_xlat4, u_xlat6); u_xlat7.z = dot(u_xlat5, u_xlat6); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat3.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat4.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat5.yzx, u_xlat2.xyz); outVertices0_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat7.x); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat7.y); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat7.z); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat7.w); outVertices0_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat1.x); outVertices0_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat1.y); } } } } } } return; } @A batchMainComputeSkinCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4inSkin0inSkin1inSkin2inSkin3inSkin4 inMatrices  outVertices0 outVertices1 outVertices2 outVertices3 outVertices4~#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform ComputeSkinCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; uvec4 g_PoseOffsets[2]; uint g_poseBufferMaxIndex; }; struct inVertices0_type { uint[10] value; }; layout(std430, binding = 5) readonly buffer inVertices0 { inVertices0_type inVertices0_buf[]; }; struct inVertices1_type { uint[10] value; }; layout(std430, binding = 6) readonly buffer inVertices1 { inVertices1_type inVertices1_buf[]; }; struct inVertices2_type { uint[10] value; }; layout(std430, binding = 7) readonly buffer inVertices2 { inVertices2_type inVertices2_buf[]; }; struct inVertices3_type { uint[10] value; }; layout(std430, binding = 8) readonly buffer inVertices3 { inVertices3_type inVertices3_buf[]; }; struct inVertices4_type { uint[10] value; }; layout(std430, binding = 9) readonly buffer inVertices4 { inVertices4_type inVertices4_buf[]; }; struct inSkin0_type { uint[1] value; }; layout(std430, binding = 10) readonly buffer inSkin0 { inSkin0_type inSkin0_buf[]; }; struct inSkin1_type { uint[1] value; }; layout(std430, binding = 11) readonly buffer inSkin1 { inSkin1_type inSkin1_buf[]; }; struct inSkin2_type { uint[1] value; }; layout(std430, binding = 12) readonly buffer inSkin2 { inSkin2_type inSkin2_buf[]; }; struct inSkin3_type { uint[1] value; }; layout(std430, binding = 13) readonly buffer inSkin3 { inSkin3_type inSkin3_buf[]; }; struct inSkin4_type { uint[1] value; }; layout(std430, binding = 14) readonly buffer inSkin4 { inSkin4_type inSkin4_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 15) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct outVertices0_type { uint[10] value; }; layout(std430, binding = 0) buffer outVertices0 { outVertices0_type outVertices0_buf[]; }; struct outVertices1_type { uint[10] value; }; layout(std430, binding = 1) buffer outVertices1 { outVertices1_type outVertices1_buf[]; }; struct outVertices2_type { uint[10] value; }; layout(std430, binding = 2) buffer outVertices2 { outVertices2_type outVertices2_buf[]; }; struct outVertices3_type { uint[10] value; }; layout(std430, binding = 3) buffer outVertices3 { outVertices3_type outVertices3_buf[]; }; struct outVertices4_type { uint[10] value; }; layout(std430, binding = 4) buffer outVertices4 { outVertices4_type outVertices4_buf[]; }; uint u_xlatu0; bool u_xlatb0; vec4 u_xlat1; vec4 u_xlat2; vec4 u_xlat3; vec4 u_xlat4; vec4 u_xlat5; vec4 u_xlat6; vec4 u_xlat7; int u_xlati7; uint u_xlatu7; bool u_xlatb7; vec4 u_xlat8; vec3 u_xlat9; vec3 u_xlat10; vec4 u_xlat11; vec4 u_xlat12; vec4 u_xlat13; uint u_xlatu14; bool u_xlatb14; float u_xlat21; uint u_xlatu21; int u_xlati28; uint u_xlatu28; uint u_xlatu42; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb14 = u_xlatu0> 2) + 3]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.xy = vec2(uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(32 >> 2) + 0]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(32 >> 2) + 1])); u_xlatu14 = inSkin4_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati28 = int(u_xlatu0) + 1; u_xlatu28 = inSkin4_buf[u_xlati28].value[(0 >> 2) + 0]; u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlat5.x = float(0.0); u_xlat5.y = float(0.0); u_xlat5.z = float(0.0); u_xlat5.w = float(0.0); u_xlat6.x = float(0.0); u_xlat6.y = float(0.0); u_xlat6.z = float(0.0); u_xlat6.w = float(0.0); u_xlatu42 = u_xlatu14; while(true){ u_xlatb7 = u_xlatu42>=u_xlatu28; if(u_xlatb7){break;} u_xlatu7 = inSkin4_buf[u_xlatu42].value[(0 >> 2) + 0]; u_xlatu21 = u_xlatu7 >> (16u & uint(0x1F)); u_xlat21 = float(u_xlatu21); u_xlat21 = u_xlat21 * 1.52590219e-05; u_xlati7 = int(u_xlatu7 & 65535u); u_xlati7 = u_xlati7 + int(g_PoseOffsets[1].x); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati7].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(0 >> 2) + 2])); u_xlat9.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati7].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(16 >> 2) + 2])); u_xlat10.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati7].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati7].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat8.x; u_xlat12.y = u_xlat9.x; u_xlat12.z = u_xlat10.x; u_xlat12.w = u_xlat11.x; u_xlat13.x = u_xlat8.y; u_xlat13.y = u_xlat9.y; u_xlat13.z = u_xlat10.y; u_xlat13.w = u_xlat11.y; u_xlat11.x = u_xlat8.z; u_xlat11.y = u_xlat9.z; u_xlat11.z = u_xlat10.z; u_xlat4 = u_xlat12 * vec4(u_xlat21) + u_xlat4; u_xlat5 = u_xlat13 * vec4(u_xlat21) + u_xlat5; u_xlat6 = u_xlat11 * vec4(u_xlat21) + u_xlat6; u_xlatu42 = u_xlatu42 + 1u; } u_xlat7.xyz = u_xlat1.yzw; u_xlat7.w = 1.0; u_xlat8.x = dot(u_xlat4, u_xlat7); u_xlat8.y = dot(u_xlat5, u_xlat7); u_xlat8.z = dot(u_xlat6, u_xlat7); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat7.x = dot(u_xlat5.xyz, u_xlat1.xyz); u_xlat7.y = dot(u_xlat6.xyz, u_xlat1.xyz); u_xlat3.zw = u_xlat2.zw; u_xlat7.z = dot(u_xlat4.zxy, u_xlat3.xzw); u_xlat7.w = dot(u_xlat5.zxy, u_xlat3.xzw); u_xlat3.x = dot(u_xlat6.zxy, u_xlat3.xzw); outVertices4_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat8.x); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat8.y); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat8.z); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat8.w); outVertices4_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat7.x); outVertices4_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat7.y); outVertices4_buf[u_xlatu0].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat7.z); outVertices4_buf[u_xlatu0].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat7.w); outVertices4_buf[u_xlatu0].value[(32 >> 2)] = floatBitsToUint(u_xlat3.x); outVertices4_buf[u_xlatu0].value[(32 >> 2) + 1] = floatBitsToUint(u_xlat3.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb14 = u_xlatu0> 2) + 3]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.xy = vec2(uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(32 >> 2) + 0]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(32 >> 2) + 1])); u_xlatu14 = inSkin3_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati28 = int(u_xlatu0) + 1; u_xlatu28 = inSkin3_buf[u_xlati28].value[(0 >> 2) + 0]; u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlat5.x = float(0.0); u_xlat5.y = float(0.0); u_xlat5.z = float(0.0); u_xlat5.w = float(0.0); u_xlat6.x = float(0.0); u_xlat6.y = float(0.0); u_xlat6.z = float(0.0); u_xlat6.w = float(0.0); u_xlatu42 = u_xlatu14; while(true){ u_xlatb7 = u_xlatu42>=u_xlatu28; if(u_xlatb7){break;} u_xlatu7 = inSkin3_buf[u_xlatu42].value[(0 >> 2) + 0]; u_xlatu21 = u_xlatu7 >> (16u & uint(0x1F)); u_xlat21 = float(u_xlatu21); u_xlat21 = u_xlat21 * 1.52590219e-05; u_xlati7 = int(u_xlatu7 & 65535u); u_xlati7 = u_xlati7 + int(g_PoseOffsets[0].w); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati7].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(0 >> 2) + 2])); u_xlat9.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati7].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(16 >> 2) + 2])); u_xlat10.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati7].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati7].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat8.x; u_xlat12.y = u_xlat9.x; u_xlat12.z = u_xlat10.x; u_xlat12.w = u_xlat11.x; u_xlat13.x = u_xlat8.y; u_xlat13.y = u_xlat9.y; u_xlat13.z = u_xlat10.y; u_xlat13.w = u_xlat11.y; u_xlat11.x = u_xlat8.z; u_xlat11.y = u_xlat9.z; u_xlat11.z = u_xlat10.z; u_xlat4 = u_xlat12 * vec4(u_xlat21) + u_xlat4; u_xlat5 = u_xlat13 * vec4(u_xlat21) + u_xlat5; u_xlat6 = u_xlat11 * vec4(u_xlat21) + u_xlat6; u_xlatu42 = u_xlatu42 + 1u; } u_xlat7.xyz = u_xlat1.yzw; u_xlat7.w = 1.0; u_xlat8.x = dot(u_xlat4, u_xlat7); u_xlat8.y = dot(u_xlat5, u_xlat7); u_xlat8.z = dot(u_xlat6, u_xlat7); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat7.x = dot(u_xlat5.xyz, u_xlat1.xyz); u_xlat7.y = dot(u_xlat6.xyz, u_xlat1.xyz); u_xlat3.zw = u_xlat2.zw; u_xlat7.z = dot(u_xlat4.zxy, u_xlat3.xzw); u_xlat7.w = dot(u_xlat5.zxy, u_xlat3.xzw); u_xlat3.x = dot(u_xlat6.zxy, u_xlat3.xzw); outVertices3_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat8.x); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat8.y); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat8.z); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat8.w); outVertices3_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat7.x); outVertices3_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat7.y); outVertices3_buf[u_xlatu0].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat7.z); outVertices3_buf[u_xlatu0].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat7.w); outVertices3_buf[u_xlatu0].value[(32 >> 2)] = floatBitsToUint(u_xlat3.x); outVertices3_buf[u_xlatu0].value[(32 >> 2) + 1] = floatBitsToUint(u_xlat3.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb14 = u_xlatu0> 2) + 3]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.xy = vec2(uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(32 >> 2) + 0]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(32 >> 2) + 1])); u_xlatu14 = inSkin2_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati28 = int(u_xlatu0) + 1; u_xlatu28 = inSkin2_buf[u_xlati28].value[(0 >> 2) + 0]; u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlat5.x = float(0.0); u_xlat5.y = float(0.0); u_xlat5.z = float(0.0); u_xlat5.w = float(0.0); u_xlat6.x = float(0.0); u_xlat6.y = float(0.0); u_xlat6.z = float(0.0); u_xlat6.w = float(0.0); u_xlatu42 = u_xlatu14; while(true){ u_xlatb7 = u_xlatu42>=u_xlatu28; if(u_xlatb7){break;} u_xlatu7 = inSkin2_buf[u_xlatu42].value[(0 >> 2) + 0]; u_xlatu21 = u_xlatu7 >> (16u & uint(0x1F)); u_xlat21 = float(u_xlatu21); u_xlat21 = u_xlat21 * 1.52590219e-05; u_xlati7 = int(u_xlatu7 & 65535u); u_xlati7 = u_xlati7 + int(g_PoseOffsets[0].z); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati7].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(0 >> 2) + 2])); u_xlat9.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati7].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(16 >> 2) + 2])); u_xlat10.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati7].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati7].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat8.x; u_xlat12.y = u_xlat9.x; u_xlat12.z = u_xlat10.x; u_xlat12.w = u_xlat11.x; u_xlat13.x = u_xlat8.y; u_xlat13.y = u_xlat9.y; u_xlat13.z = u_xlat10.y; u_xlat13.w = u_xlat11.y; u_xlat11.x = u_xlat8.z; u_xlat11.y = u_xlat9.z; u_xlat11.z = u_xlat10.z; u_xlat4 = u_xlat12 * vec4(u_xlat21) + u_xlat4; u_xlat5 = u_xlat13 * vec4(u_xlat21) + u_xlat5; u_xlat6 = u_xlat11 * vec4(u_xlat21) + u_xlat6; u_xlatu42 = u_xlatu42 + 1u; } u_xlat7.xyz = u_xlat1.yzw; u_xlat7.w = 1.0; u_xlat8.x = dot(u_xlat4, u_xlat7); u_xlat8.y = dot(u_xlat5, u_xlat7); u_xlat8.z = dot(u_xlat6, u_xlat7); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat7.x = dot(u_xlat5.xyz, u_xlat1.xyz); u_xlat7.y = dot(u_xlat6.xyz, u_xlat1.xyz); u_xlat3.zw = u_xlat2.zw; u_xlat7.z = dot(u_xlat4.zxy, u_xlat3.xzw); u_xlat7.w = dot(u_xlat5.zxy, u_xlat3.xzw); u_xlat3.x = dot(u_xlat6.zxy, u_xlat3.xzw); outVertices2_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat8.x); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat8.y); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat8.z); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat8.w); outVertices2_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat7.x); outVertices2_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat7.y); outVertices2_buf[u_xlatu0].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat7.z); outVertices2_buf[u_xlatu0].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat7.w); outVertices2_buf[u_xlatu0].value[(32 >> 2)] = floatBitsToUint(u_xlat3.x); outVertices2_buf[u_xlatu0].value[(32 >> 2) + 1] = floatBitsToUint(u_xlat3.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb14 = u_xlatu0> 2) + 3]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.xy = vec2(uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(32 >> 2) + 0]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(32 >> 2) + 1])); u_xlatu14 = inSkin1_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati28 = int(u_xlatu0) + 1; u_xlatu28 = inSkin1_buf[u_xlati28].value[(0 >> 2) + 0]; u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlat5.x = float(0.0); u_xlat5.y = float(0.0); u_xlat5.z = float(0.0); u_xlat5.w = float(0.0); u_xlat6.x = float(0.0); u_xlat6.y = float(0.0); u_xlat6.z = float(0.0); u_xlat6.w = float(0.0); u_xlatu42 = u_xlatu14; while(true){ u_xlatb7 = u_xlatu42>=u_xlatu28; if(u_xlatb7){break;} u_xlatu7 = inSkin1_buf[u_xlatu42].value[(0 >> 2) + 0]; u_xlatu21 = u_xlatu7 >> (16u & uint(0x1F)); u_xlat21 = float(u_xlatu21); u_xlat21 = u_xlat21 * 1.52590219e-05; u_xlati7 = int(u_xlatu7 & 65535u); u_xlati7 = u_xlati7 + int(g_PoseOffsets[0].y); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati7].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(0 >> 2) + 2])); u_xlat9.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati7].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(16 >> 2) + 2])); u_xlat10.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati7].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati7].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat8.x; u_xlat12.y = u_xlat9.x; u_xlat12.z = u_xlat10.x; u_xlat12.w = u_xlat11.x; u_xlat13.x = u_xlat8.y; u_xlat13.y = u_xlat9.y; u_xlat13.z = u_xlat10.y; u_xlat13.w = u_xlat11.y; u_xlat11.x = u_xlat8.z; u_xlat11.y = u_xlat9.z; u_xlat11.z = u_xlat10.z; u_xlat4 = u_xlat12 * vec4(u_xlat21) + u_xlat4; u_xlat5 = u_xlat13 * vec4(u_xlat21) + u_xlat5; u_xlat6 = u_xlat11 * vec4(u_xlat21) + u_xlat6; u_xlatu42 = u_xlatu42 + 1u; } u_xlat7.xyz = u_xlat1.yzw; u_xlat7.w = 1.0; u_xlat8.x = dot(u_xlat4, u_xlat7); u_xlat8.y = dot(u_xlat5, u_xlat7); u_xlat8.z = dot(u_xlat6, u_xlat7); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat7.x = dot(u_xlat5.xyz, u_xlat1.xyz); u_xlat7.y = dot(u_xlat6.xyz, u_xlat1.xyz); u_xlat3.zw = u_xlat2.zw; u_xlat7.z = dot(u_xlat4.zxy, u_xlat3.xzw); u_xlat7.w = dot(u_xlat5.zxy, u_xlat3.xzw); u_xlat3.x = dot(u_xlat6.zxy, u_xlat3.xzw); outVertices1_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat8.x); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat8.y); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat8.z); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat8.w); outVertices1_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat7.x); outVertices1_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat7.y); outVertices1_buf[u_xlatu0].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat7.z); outVertices1_buf[u_xlatu0].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat7.w); outVertices1_buf[u_xlatu0].value[(32 >> 2)] = floatBitsToUint(u_xlat3.x); outVertices1_buf[u_xlatu0].value[(32 >> 2) + 1] = floatBitsToUint(u_xlat3.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb14 = u_xlatu0> 2) + 3]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.xy = vec2(uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(32 >> 2) + 0]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(32 >> 2) + 1])); u_xlatu14 = inSkin0_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati28 = int(u_xlatu0) + 1; u_xlatu28 = inSkin0_buf[u_xlati28].value[(0 >> 2) + 0]; u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlat5.x = float(0.0); u_xlat5.y = float(0.0); u_xlat5.z = float(0.0); u_xlat5.w = float(0.0); u_xlat6.x = float(0.0); u_xlat6.y = float(0.0); u_xlat6.z = float(0.0); u_xlat6.w = float(0.0); u_xlatu42 = u_xlatu14; while(true){ u_xlatb7 = u_xlatu42>=u_xlatu28; if(u_xlatb7){break;} u_xlatu7 = inSkin0_buf[u_xlatu42].value[(0 >> 2) + 0]; u_xlatu21 = u_xlatu7 >> (16u & uint(0x1F)); u_xlat21 = float(u_xlatu21); u_xlat21 = u_xlat21 * 1.52590219e-05; u_xlati7 = int(u_xlatu7 & 65535u); u_xlati7 = u_xlati7 + int(g_PoseOffsets[0].x); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati7].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(0 >> 2) + 2])); u_xlat9.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati7].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(16 >> 2) + 2])); u_xlat10.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati7].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati7].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati7].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat8.x; u_xlat12.y = u_xlat9.x; u_xlat12.z = u_xlat10.x; u_xlat12.w = u_xlat11.x; u_xlat13.x = u_xlat8.y; u_xlat13.y = u_xlat9.y; u_xlat13.z = u_xlat10.y; u_xlat13.w = u_xlat11.y; u_xlat11.x = u_xlat8.z; u_xlat11.y = u_xlat9.z; u_xlat11.z = u_xlat10.z; u_xlat4 = u_xlat12 * vec4(u_xlat21) + u_xlat4; u_xlat5 = u_xlat13 * vec4(u_xlat21) + u_xlat5; u_xlat6 = u_xlat11 * vec4(u_xlat21) + u_xlat6; u_xlatu42 = u_xlatu42 + 1u; } u_xlat7.xyz = u_xlat1.yzw; u_xlat7.w = 1.0; u_xlat8.x = dot(u_xlat4, u_xlat7); u_xlat8.y = dot(u_xlat5, u_xlat7); u_xlat8.z = dot(u_xlat6, u_xlat7); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat7.x = dot(u_xlat5.xyz, u_xlat1.xyz); u_xlat7.y = dot(u_xlat6.xyz, u_xlat1.xyz); u_xlat3.zw = u_xlat2.zw; u_xlat7.z = dot(u_xlat4.zxy, u_xlat3.xzw); u_xlat7.w = dot(u_xlat5.zxy, u_xlat3.xzw); u_xlat3.x = dot(u_xlat6.zxy, u_xlat3.xzw); outVertices0_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat8.x); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat8.y); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat8.z); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat8.w); outVertices0_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat7.x); outVertices0_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat7.y); outVertices0_buf[u_xlatu0].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat7.z); outVertices0_buf[u_xlatu0].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat7.w); outVertices0_buf[u_xlatu0].value[(32 >> 2)] = floatBitsToUint(u_xlat3.x); outVertices0_buf[u_xlatu0].value[(32 >> 2) + 1] = floatBitsToUint(u_xlat3.y); } } } } } } return; } @A batchMainComputeSkinCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4inSkin0inSkin1inSkin2inSkin3inSkin4 inMatrices  outVertices0 outVertices1 outVertices2 outVertices3 outVertices4>#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform ComputeSkinCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; uvec4 g_PoseOffsets[2]; uint g_poseBufferMaxIndex; }; struct inVertices0_type { uint[3] value; }; layout(std430, binding = 5) readonly buffer inVertices0 { inVertices0_type inVertices0_buf[]; }; struct inVertices1_type { uint[3] value; }; layout(std430, binding = 6) readonly buffer inVertices1 { inVertices1_type inVertices1_buf[]; }; struct inVertices2_type { uint[3] value; }; layout(std430, binding = 7) readonly buffer inVertices2 { inVertices2_type inVertices2_buf[]; }; struct inVertices3_type { uint[3] value; }; layout(std430, binding = 8) readonly buffer inVertices3 { inVertices3_type inVertices3_buf[]; }; struct inVertices4_type { uint[3] value; }; layout(std430, binding = 9) readonly buffer inVertices4 { inVertices4_type inVertices4_buf[]; }; struct inSkin0_type { uint[1] value; }; layout(std430, binding = 10) readonly buffer inSkin0 { inSkin0_type inSkin0_buf[]; }; struct inSkin1_type { uint[1] value; }; layout(std430, binding = 11) readonly buffer inSkin1 { inSkin1_type inSkin1_buf[]; }; struct inSkin2_type { uint[1] value; }; layout(std430, binding = 12) readonly buffer inSkin2 { inSkin2_type inSkin2_buf[]; }; struct inSkin3_type { uint[1] value; }; layout(std430, binding = 13) readonly buffer inSkin3 { inSkin3_type inSkin3_buf[]; }; struct inSkin4_type { uint[1] value; }; layout(std430, binding = 14) readonly buffer inSkin4 { inSkin4_type inSkin4_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 15) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct outVertices0_type { uint[3] value; }; layout(std430, binding = 0) buffer outVertices0 { outVertices0_type outVertices0_buf[]; }; struct outVertices1_type { uint[3] value; }; layout(std430, binding = 1) buffer outVertices1 { outVertices1_type outVertices1_buf[]; }; struct outVertices2_type { uint[3] value; }; layout(std430, binding = 2) buffer outVertices2 { outVertices2_type outVertices2_buf[]; }; struct outVertices3_type { uint[3] value; }; layout(std430, binding = 3) buffer outVertices3 { outVertices3_type outVertices3_buf[]; }; struct outVertices4_type { uint[3] value; }; layout(std430, binding = 4) buffer outVertices4 { outVertices4_type outVertices4_buf[]; }; uint u_xlatu0; bool u_xlatb0; vec4 u_xlat1; vec3 u_xlat2; vec3 u_xlat3; vec3 u_xlat4; vec4 u_xlat5; vec4 u_xlat6; vec4 u_xlat7; int u_xlati8; bool u_xlatb8; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb8 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlati8 = int(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati8 = u_xlati8 + int(g_PoseOffsets[1].x); u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 2])); u_xlat5.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 2])); u_xlat6.x = u_xlat2.x; u_xlat6.y = u_xlat3.x; u_xlat6.z = u_xlat4.x; u_xlat6.w = u_xlat5.x; u_xlat1.w = 1.0; u_xlat6.x = dot(u_xlat6, u_xlat1); u_xlat7.x = u_xlat2.y; u_xlat7.y = u_xlat3.y; u_xlat7.z = u_xlat4.y; u_xlat7.w = u_xlat5.y; u_xlat6.y = dot(u_xlat7, u_xlat1); u_xlat5.x = u_xlat2.z; u_xlat5.y = u_xlat3.z; u_xlat5.z = u_xlat4.z; u_xlat6.z = dot(u_xlat5, u_xlat1); outVertices4_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat6.x); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat6.y); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat6.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb8 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlati8 = int(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati8 = u_xlati8 + int(g_PoseOffsets[0].w); u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 2])); u_xlat5.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 2])); u_xlat6.x = u_xlat2.x; u_xlat6.y = u_xlat3.x; u_xlat6.z = u_xlat4.x; u_xlat6.w = u_xlat5.x; u_xlat1.w = 1.0; u_xlat6.x = dot(u_xlat6, u_xlat1); u_xlat7.x = u_xlat2.y; u_xlat7.y = u_xlat3.y; u_xlat7.z = u_xlat4.y; u_xlat7.w = u_xlat5.y; u_xlat6.y = dot(u_xlat7, u_xlat1); u_xlat5.x = u_xlat2.z; u_xlat5.y = u_xlat3.z; u_xlat5.z = u_xlat4.z; u_xlat6.z = dot(u_xlat5, u_xlat1); outVertices3_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat6.x); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat6.y); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat6.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb8 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlati8 = int(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati8 = u_xlati8 + int(g_PoseOffsets[0].z); u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 2])); u_xlat5.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 2])); u_xlat6.x = u_xlat2.x; u_xlat6.y = u_xlat3.x; u_xlat6.z = u_xlat4.x; u_xlat6.w = u_xlat5.x; u_xlat1.w = 1.0; u_xlat6.x = dot(u_xlat6, u_xlat1); u_xlat7.x = u_xlat2.y; u_xlat7.y = u_xlat3.y; u_xlat7.z = u_xlat4.y; u_xlat7.w = u_xlat5.y; u_xlat6.y = dot(u_xlat7, u_xlat1); u_xlat5.x = u_xlat2.z; u_xlat5.y = u_xlat3.z; u_xlat5.z = u_xlat4.z; u_xlat6.z = dot(u_xlat5, u_xlat1); outVertices2_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat6.x); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat6.y); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat6.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb8 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlati8 = int(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati8 = u_xlati8 + int(g_PoseOffsets[0].y); u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 2])); u_xlat5.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 2])); u_xlat6.x = u_xlat2.x; u_xlat6.y = u_xlat3.x; u_xlat6.z = u_xlat4.x; u_xlat6.w = u_xlat5.x; u_xlat1.w = 1.0; u_xlat6.x = dot(u_xlat6, u_xlat1); u_xlat7.x = u_xlat2.y; u_xlat7.y = u_xlat3.y; u_xlat7.z = u_xlat4.y; u_xlat7.w = u_xlat5.y; u_xlat6.y = dot(u_xlat7, u_xlat1); u_xlat5.x = u_xlat2.z; u_xlat5.y = u_xlat3.z; u_xlat5.z = u_xlat4.z; u_xlat6.z = dot(u_xlat5, u_xlat1); outVertices1_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat6.x); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat6.y); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat6.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb8 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlati8 = int(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati8 = u_xlati8 + int(g_PoseOffsets[0].x); u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 2])); u_xlat5.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 2])); u_xlat6.x = u_xlat2.x; u_xlat6.y = u_xlat3.x; u_xlat6.z = u_xlat4.x; u_xlat6.w = u_xlat5.x; u_xlat1.w = 1.0; u_xlat6.x = dot(u_xlat6, u_xlat1); u_xlat7.x = u_xlat2.y; u_xlat7.y = u_xlat3.y; u_xlat7.z = u_xlat4.y; u_xlat7.w = u_xlat5.y; u_xlat6.y = dot(u_xlat7, u_xlat1); u_xlat5.x = u_xlat2.z; u_xlat5.y = u_xlat3.z; u_xlat5.z = u_xlat4.z; u_xlat6.z = dot(u_xlat5, u_xlat1); outVertices0_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat6.x); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat6.y); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat6.z); } } } } } } return; } @A batchMainComputeSkinCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4inSkin0inSkin1inSkin2inSkin3inSkin4 inMatrices  outVertices0 outVertices1 outVertices2 outVertices3 outVertices4N#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform ComputeSkinCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; uvec4 g_PoseOffsets[2]; uint g_poseBufferMaxIndex; }; struct inVertices0_type { uint[6] value; }; layout(std430, binding = 5) readonly buffer inVertices0 { inVertices0_type inVertices0_buf[]; }; struct inVertices1_type { uint[6] value; }; layout(std430, binding = 6) readonly buffer inVertices1 { inVertices1_type inVertices1_buf[]; }; struct inVertices2_type { uint[6] value; }; layout(std430, binding = 7) readonly buffer inVertices2 { inVertices2_type inVertices2_buf[]; }; struct inVertices3_type { uint[6] value; }; layout(std430, binding = 8) readonly buffer inVertices3 { inVertices3_type inVertices3_buf[]; }; struct inVertices4_type { uint[6] value; }; layout(std430, binding = 9) readonly buffer inVertices4 { inVertices4_type inVertices4_buf[]; }; struct inSkin0_type { uint[1] value; }; layout(std430, binding = 10) readonly buffer inSkin0 { inSkin0_type inSkin0_buf[]; }; struct inSkin1_type { uint[1] value; }; layout(std430, binding = 11) readonly buffer inSkin1 { inSkin1_type inSkin1_buf[]; }; struct inSkin2_type { uint[1] value; }; layout(std430, binding = 12) readonly buffer inSkin2 { inSkin2_type inSkin2_buf[]; }; struct inSkin3_type { uint[1] value; }; layout(std430, binding = 13) readonly buffer inSkin3 { inSkin3_type inSkin3_buf[]; }; struct inSkin4_type { uint[1] value; }; layout(std430, binding = 14) readonly buffer inSkin4 { inSkin4_type inSkin4_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 15) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct outVertices0_type { uint[6] value; }; layout(std430, binding = 0) buffer outVertices0 { outVertices0_type outVertices0_buf[]; }; struct outVertices1_type { uint[6] value; }; layout(std430, binding = 1) buffer outVertices1 { outVertices1_type outVertices1_buf[]; }; struct outVertices2_type { uint[6] value; }; layout(std430, binding = 2) buffer outVertices2 { outVertices2_type outVertices2_buf[]; }; struct outVertices3_type { uint[6] value; }; layout(std430, binding = 3) buffer outVertices3 { outVertices3_type outVertices3_buf[]; }; struct outVertices4_type { uint[6] value; }; layout(std430, binding = 4) buffer outVertices4 { outVertices4_type outVertices4_buf[]; }; uint u_xlatu0; bool u_xlatb0; vec4 u_xlat1; vec3 u_xlat2; vec3 u_xlat3; vec3 u_xlat4; vec3 u_xlat5; vec4 u_xlat6; vec4 u_xlat7; vec4 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; int u_xlati11; bool u_xlatb11; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb11 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlati11 = int(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati11 = u_xlati11 + int(g_PoseOffsets[1].x); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat3.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.xyz = u_xlat1.xyz; u_xlat8.w = 1.0; u_xlat9.x = dot(u_xlat7, u_xlat8); u_xlat10.x = u_xlat3.y; u_xlat10.y = u_xlat4.y; u_xlat10.z = u_xlat5.y; u_xlat10.w = u_xlat6.y; u_xlat9.y = dot(u_xlat10, u_xlat8); u_xlat6.x = u_xlat3.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat9.z = dot(u_xlat6, u_xlat8); u_xlat2.z = u_xlat1.w; u_xlat9.w = dot(u_xlat7.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat10.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat6.yzx, u_xlat2.xyz); outVertices4_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat9.x); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat9.y); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat9.z); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat9.w); outVertices4_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat1.x); outVertices4_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat1.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb11 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlati11 = int(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati11 = u_xlati11 + int(g_PoseOffsets[0].w); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat3.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.xyz = u_xlat1.xyz; u_xlat8.w = 1.0; u_xlat9.x = dot(u_xlat7, u_xlat8); u_xlat10.x = u_xlat3.y; u_xlat10.y = u_xlat4.y; u_xlat10.z = u_xlat5.y; u_xlat10.w = u_xlat6.y; u_xlat9.y = dot(u_xlat10, u_xlat8); u_xlat6.x = u_xlat3.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat9.z = dot(u_xlat6, u_xlat8); u_xlat2.z = u_xlat1.w; u_xlat9.w = dot(u_xlat7.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat10.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat6.yzx, u_xlat2.xyz); outVertices3_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat9.x); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat9.y); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat9.z); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat9.w); outVertices3_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat1.x); outVertices3_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat1.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb11 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlati11 = int(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati11 = u_xlati11 + int(g_PoseOffsets[0].z); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat3.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.xyz = u_xlat1.xyz; u_xlat8.w = 1.0; u_xlat9.x = dot(u_xlat7, u_xlat8); u_xlat10.x = u_xlat3.y; u_xlat10.y = u_xlat4.y; u_xlat10.z = u_xlat5.y; u_xlat10.w = u_xlat6.y; u_xlat9.y = dot(u_xlat10, u_xlat8); u_xlat6.x = u_xlat3.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat9.z = dot(u_xlat6, u_xlat8); u_xlat2.z = u_xlat1.w; u_xlat9.w = dot(u_xlat7.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat10.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat6.yzx, u_xlat2.xyz); outVertices2_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat9.x); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat9.y); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat9.z); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat9.w); outVertices2_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat1.x); outVertices2_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat1.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb11 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlati11 = int(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati11 = u_xlati11 + int(g_PoseOffsets[0].y); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat3.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.xyz = u_xlat1.xyz; u_xlat8.w = 1.0; u_xlat9.x = dot(u_xlat7, u_xlat8); u_xlat10.x = u_xlat3.y; u_xlat10.y = u_xlat4.y; u_xlat10.z = u_xlat5.y; u_xlat10.w = u_xlat6.y; u_xlat9.y = dot(u_xlat10, u_xlat8); u_xlat6.x = u_xlat3.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat9.z = dot(u_xlat6, u_xlat8); u_xlat2.z = u_xlat1.w; u_xlat9.w = dot(u_xlat7.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat10.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat6.yzx, u_xlat2.xyz); outVertices1_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat9.x); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat9.y); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat9.z); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat9.w); outVertices1_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat1.x); outVertices1_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat1.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb11 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlati11 = int(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati11 = u_xlati11 + int(g_PoseOffsets[0].x); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat3.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.xyz = u_xlat1.xyz; u_xlat8.w = 1.0; u_xlat9.x = dot(u_xlat7, u_xlat8); u_xlat10.x = u_xlat3.y; u_xlat10.y = u_xlat4.y; u_xlat10.z = u_xlat5.y; u_xlat10.w = u_xlat6.y; u_xlat9.y = dot(u_xlat10, u_xlat8); u_xlat6.x = u_xlat3.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat9.z = dot(u_xlat6, u_xlat8); u_xlat2.z = u_xlat1.w; u_xlat9.w = dot(u_xlat7.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat10.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat6.yzx, u_xlat2.xyz); outVertices0_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat9.x); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat9.y); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat9.z); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat9.w); outVertices0_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat1.x); outVertices0_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat1.y); } } } } } } return; } @A batchMainComputeSkinCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4inSkin0inSkin1inSkin2inSkin3inSkin4 inMatrices  outVertices0 outVertices1 outVertices2 outVertices3 outVertices48a#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform ComputeSkinCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; uvec4 g_PoseOffsets[2]; uint g_poseBufferMaxIndex; }; struct inVertices0_type { uint[10] value; }; layout(std430, binding = 5) readonly buffer inVertices0 { inVertices0_type inVertices0_buf[]; }; struct inVertices1_type { uint[10] value; }; layout(std430, binding = 6) readonly buffer inVertices1 { inVertices1_type inVertices1_buf[]; }; struct inVertices2_type { uint[10] value; }; layout(std430, binding = 7) readonly buffer inVertices2 { inVertices2_type inVertices2_buf[]; }; struct inVertices3_type { uint[10] value; }; layout(std430, binding = 8) readonly buffer inVertices3 { inVertices3_type inVertices3_buf[]; }; struct inVertices4_type { uint[10] value; }; layout(std430, binding = 9) readonly buffer inVertices4 { inVertices4_type inVertices4_buf[]; }; struct inSkin0_type { uint[1] value; }; layout(std430, binding = 10) readonly buffer inSkin0 { inSkin0_type inSkin0_buf[]; }; struct inSkin1_type { uint[1] value; }; layout(std430, binding = 11) readonly buffer inSkin1 { inSkin1_type inSkin1_buf[]; }; struct inSkin2_type { uint[1] value; }; layout(std430, binding = 12) readonly buffer inSkin2 { inSkin2_type inSkin2_buf[]; }; struct inSkin3_type { uint[1] value; }; layout(std430, binding = 13) readonly buffer inSkin3 { inSkin3_type inSkin3_buf[]; }; struct inSkin4_type { uint[1] value; }; layout(std430, binding = 14) readonly buffer inSkin4 { inSkin4_type inSkin4_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 15) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct outVertices0_type { uint[10] value; }; layout(std430, binding = 0) buffer outVertices0 { outVertices0_type outVertices0_buf[]; }; struct outVertices1_type { uint[10] value; }; layout(std430, binding = 1) buffer outVertices1 { outVertices1_type outVertices1_buf[]; }; struct outVertices2_type { uint[10] value; }; layout(std430, binding = 2) buffer outVertices2 { outVertices2_type outVertices2_buf[]; }; struct outVertices3_type { uint[10] value; }; layout(std430, binding = 3) buffer outVertices3 { outVertices3_type outVertices3_buf[]; }; struct outVertices4_type { uint[10] value; }; layout(std430, binding = 4) buffer outVertices4 { outVertices4_type outVertices4_buf[]; }; uint u_xlatu0; bool u_xlatb0; vec4 u_xlat1; vec4 u_xlat2; vec4 u_xlat3; vec4 u_xlat4; vec3 u_xlat5; vec3 u_xlat6; vec4 u_xlat7; vec4 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; vec4 u_xlat11; int u_xlati12; bool u_xlatb12; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb12 = u_xlatu0> 2) + 3]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.xy = vec2(uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(32 >> 2) + 0]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(32 >> 2) + 1])); u_xlati12 = int(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati12 = u_xlati12 + int(g_PoseOffsets[1].x); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat4.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.xyz = u_xlat1.yzw; u_xlat9.w = 1.0; u_xlat10.x = dot(u_xlat8, u_xlat9); u_xlat11.x = u_xlat4.y; u_xlat11.y = u_xlat5.y; u_xlat11.z = u_xlat6.y; u_xlat11.w = u_xlat7.y; u_xlat10.y = dot(u_xlat11, u_xlat9); u_xlat7.x = u_xlat4.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat10.z = dot(u_xlat7, u_xlat9); u_xlat1.yz = u_xlat2.xy; u_xlat10.w = dot(u_xlat8.xyz, u_xlat1.xyz); u_xlat4.x = dot(u_xlat11.xyz, u_xlat1.xyz); u_xlat4.y = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat3.zw = u_xlat2.zw; u_xlat4.z = dot(u_xlat8.zxy, u_xlat3.xzw); u_xlat4.w = dot(u_xlat11.zxy, u_xlat3.xzw); u_xlat3.x = dot(u_xlat7.zxy, u_xlat3.xzw); outVertices4_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat10.x); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat10.y); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat10.z); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat10.w); outVertices4_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat4.x); outVertices4_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat4.y); outVertices4_buf[u_xlatu0].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat4.z); outVertices4_buf[u_xlatu0].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat4.w); outVertices4_buf[u_xlatu0].value[(32 >> 2)] = floatBitsToUint(u_xlat3.x); outVertices4_buf[u_xlatu0].value[(32 >> 2) + 1] = floatBitsToUint(u_xlat3.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb12 = u_xlatu0> 2) + 3]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.xy = vec2(uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(32 >> 2) + 0]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(32 >> 2) + 1])); u_xlati12 = int(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati12 = u_xlati12 + int(g_PoseOffsets[0].w); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat4.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.xyz = u_xlat1.yzw; u_xlat9.w = 1.0; u_xlat10.x = dot(u_xlat8, u_xlat9); u_xlat11.x = u_xlat4.y; u_xlat11.y = u_xlat5.y; u_xlat11.z = u_xlat6.y; u_xlat11.w = u_xlat7.y; u_xlat10.y = dot(u_xlat11, u_xlat9); u_xlat7.x = u_xlat4.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat10.z = dot(u_xlat7, u_xlat9); u_xlat1.yz = u_xlat2.xy; u_xlat10.w = dot(u_xlat8.xyz, u_xlat1.xyz); u_xlat4.x = dot(u_xlat11.xyz, u_xlat1.xyz); u_xlat4.y = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat3.zw = u_xlat2.zw; u_xlat4.z = dot(u_xlat8.zxy, u_xlat3.xzw); u_xlat4.w = dot(u_xlat11.zxy, u_xlat3.xzw); u_xlat3.x = dot(u_xlat7.zxy, u_xlat3.xzw); outVertices3_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat10.x); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat10.y); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat10.z); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat10.w); outVertices3_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat4.x); outVertices3_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat4.y); outVertices3_buf[u_xlatu0].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat4.z); outVertices3_buf[u_xlatu0].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat4.w); outVertices3_buf[u_xlatu0].value[(32 >> 2)] = floatBitsToUint(u_xlat3.x); outVertices3_buf[u_xlatu0].value[(32 >> 2) + 1] = floatBitsToUint(u_xlat3.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb12 = u_xlatu0> 2) + 3]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.xy = vec2(uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(32 >> 2) + 0]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(32 >> 2) + 1])); u_xlati12 = int(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati12 = u_xlati12 + int(g_PoseOffsets[0].z); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat4.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.xyz = u_xlat1.yzw; u_xlat9.w = 1.0; u_xlat10.x = dot(u_xlat8, u_xlat9); u_xlat11.x = u_xlat4.y; u_xlat11.y = u_xlat5.y; u_xlat11.z = u_xlat6.y; u_xlat11.w = u_xlat7.y; u_xlat10.y = dot(u_xlat11, u_xlat9); u_xlat7.x = u_xlat4.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat10.z = dot(u_xlat7, u_xlat9); u_xlat1.yz = u_xlat2.xy; u_xlat10.w = dot(u_xlat8.xyz, u_xlat1.xyz); u_xlat4.x = dot(u_xlat11.xyz, u_xlat1.xyz); u_xlat4.y = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat3.zw = u_xlat2.zw; u_xlat4.z = dot(u_xlat8.zxy, u_xlat3.xzw); u_xlat4.w = dot(u_xlat11.zxy, u_xlat3.xzw); u_xlat3.x = dot(u_xlat7.zxy, u_xlat3.xzw); outVertices2_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat10.x); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat10.y); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat10.z); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat10.w); outVertices2_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat4.x); outVertices2_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat4.y); outVertices2_buf[u_xlatu0].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat4.z); outVertices2_buf[u_xlatu0].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat4.w); outVertices2_buf[u_xlatu0].value[(32 >> 2)] = floatBitsToUint(u_xlat3.x); outVertices2_buf[u_xlatu0].value[(32 >> 2) + 1] = floatBitsToUint(u_xlat3.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb12 = u_xlatu0> 2) + 3]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.xy = vec2(uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(32 >> 2) + 0]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(32 >> 2) + 1])); u_xlati12 = int(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati12 = u_xlati12 + int(g_PoseOffsets[0].y); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat4.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.xyz = u_xlat1.yzw; u_xlat9.w = 1.0; u_xlat10.x = dot(u_xlat8, u_xlat9); u_xlat11.x = u_xlat4.y; u_xlat11.y = u_xlat5.y; u_xlat11.z = u_xlat6.y; u_xlat11.w = u_xlat7.y; u_xlat10.y = dot(u_xlat11, u_xlat9); u_xlat7.x = u_xlat4.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat10.z = dot(u_xlat7, u_xlat9); u_xlat1.yz = u_xlat2.xy; u_xlat10.w = dot(u_xlat8.xyz, u_xlat1.xyz); u_xlat4.x = dot(u_xlat11.xyz, u_xlat1.xyz); u_xlat4.y = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat3.zw = u_xlat2.zw; u_xlat4.z = dot(u_xlat8.zxy, u_xlat3.xzw); u_xlat4.w = dot(u_xlat11.zxy, u_xlat3.xzw); u_xlat3.x = dot(u_xlat7.zxy, u_xlat3.xzw); outVertices1_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat10.x); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat10.y); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat10.z); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat10.w); outVertices1_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat4.x); outVertices1_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat4.y); outVertices1_buf[u_xlatu0].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat4.z); outVertices1_buf[u_xlatu0].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat4.w); outVertices1_buf[u_xlatu0].value[(32 >> 2)] = floatBitsToUint(u_xlat3.x); outVertices1_buf[u_xlatu0].value[(32 >> 2) + 1] = floatBitsToUint(u_xlat3.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb12 = u_xlatu0> 2) + 3]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.xy = vec2(uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(32 >> 2) + 0]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(32 >> 2) + 1])); u_xlati12 = int(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati12 = u_xlati12 + int(g_PoseOffsets[0].x); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat4.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.xyz = u_xlat1.yzw; u_xlat9.w = 1.0; u_xlat10.x = dot(u_xlat8, u_xlat9); u_xlat11.x = u_xlat4.y; u_xlat11.y = u_xlat5.y; u_xlat11.z = u_xlat6.y; u_xlat11.w = u_xlat7.y; u_xlat10.y = dot(u_xlat11, u_xlat9); u_xlat7.x = u_xlat4.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat10.z = dot(u_xlat7, u_xlat9); u_xlat1.yz = u_xlat2.xy; u_xlat10.w = dot(u_xlat8.xyz, u_xlat1.xyz); u_xlat4.x = dot(u_xlat11.xyz, u_xlat1.xyz); u_xlat4.y = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat3.zw = u_xlat2.zw; u_xlat4.z = dot(u_xlat8.zxy, u_xlat3.xzw); u_xlat4.w = dot(u_xlat11.zxy, u_xlat3.xzw); u_xlat3.x = dot(u_xlat7.zxy, u_xlat3.xzw); outVertices0_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat10.x); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat10.y); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat10.z); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat10.w); outVertices0_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat4.x); outVertices0_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat4.y); outVertices0_buf[u_xlatu0].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat4.z); outVertices0_buf[u_xlatu0].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat4.w); outVertices0_buf[u_xlatu0].value[(32 >> 2)] = floatBitsToUint(u_xlat3.x); outVertices0_buf[u_xlatu0].value[(32 >> 2) + 1] = floatBitsToUint(u_xlat3.y); } } } } } } return; } @A batchMainComputeSkinCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4inSkin0inSkin1inSkin2inSkin3inSkin4 inMatrices  outVertices0 outVertices1 outVertices2 outVertices3 outVertices4Mg#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform ComputeSkinCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; uvec4 g_PoseOffsets[2]; uint g_poseBufferMaxIndex; }; struct inVertices0_type { uint[3] value; }; layout(std430, binding = 5) readonly buffer inVertices0 { inVertices0_type inVertices0_buf[]; }; struct inVertices1_type { uint[3] value; }; layout(std430, binding = 6) readonly buffer inVertices1 { inVertices1_type inVertices1_buf[]; }; struct inVertices2_type { uint[3] value; }; layout(std430, binding = 7) readonly buffer inVertices2 { inVertices2_type inVertices2_buf[]; }; struct inVertices3_type { uint[3] value; }; layout(std430, binding = 8) readonly buffer inVertices3 { inVertices3_type inVertices3_buf[]; }; struct inVertices4_type { uint[3] value; }; layout(std430, binding = 9) readonly buffer inVertices4 { inVertices4_type inVertices4_buf[]; }; struct inSkin0_type { uint[4] value; }; layout(std430, binding = 10) readonly buffer inSkin0 { inSkin0_type inSkin0_buf[]; }; struct inSkin1_type { uint[4] value; }; layout(std430, binding = 11) readonly buffer inSkin1 { inSkin1_type inSkin1_buf[]; }; struct inSkin2_type { uint[4] value; }; layout(std430, binding = 12) readonly buffer inSkin2 { inSkin2_type inSkin2_buf[]; }; struct inSkin3_type { uint[4] value; }; layout(std430, binding = 13) readonly buffer inSkin3 { inSkin3_type inSkin3_buf[]; }; struct inSkin4_type { uint[4] value; }; layout(std430, binding = 14) readonly buffer inSkin4 { inSkin4_type inSkin4_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 15) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct outVertices0_type { uint[3] value; }; layout(std430, binding = 0) buffer outVertices0 { outVertices0_type outVertices0_buf[]; }; struct outVertices1_type { uint[3] value; }; layout(std430, binding = 1) buffer outVertices1 { outVertices1_type outVertices1_buf[]; }; struct outVertices2_type { uint[3] value; }; layout(std430, binding = 2) buffer outVertices2 { outVertices2_type outVertices2_buf[]; }; struct outVertices3_type { uint[3] value; }; layout(std430, binding = 3) buffer outVertices3 { outVertices3_type outVertices3_buf[]; }; struct outVertices4_type { uint[3] value; }; layout(std430, binding = 4) buffer outVertices4 { outVertices4_type outVertices4_buf[]; }; uint u_xlatu0; bool u_xlatb0; vec4 u_xlat1; vec4 u_xlat2; vec4 u_xlat3; vec4 u_xlat4; vec4 u_xlat5; vec4 u_xlat6; vec4 u_xlat7; vec4 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; vec4 u_xlat11; ivec2 u_xlati12; bool u_xlatb12; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati12.xy = floatBitsToInt(u_xlat2.zw) + ivec2(g_PoseOffsets[1].xx); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat3.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.x = u_xlat3.y; u_xlat8.y = u_xlat4.y; u_xlat8.z = u_xlat5.y; u_xlat8.w = u_xlat6.y; u_xlat6.x = u_xlat3.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat3.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat10 = u_xlat2.yyyy * u_xlat10; u_xlat11.x = u_xlat3.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat11 = u_xlat2.yyyy * u_xlat11; u_xlat9.x = u_xlat3.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat3 = u_xlat2.yyyy * u_xlat9; u_xlat4 = u_xlat7 * u_xlat2.xxxx + u_xlat10; u_xlat5 = u_xlat8 * u_xlat2.xxxx + u_xlat11; u_xlat2 = u_xlat6 * u_xlat2.xxxx + u_xlat3; u_xlat1.w = 1.0; u_xlat3.x = dot(u_xlat4, u_xlat1); u_xlat3.y = dot(u_xlat5, u_xlat1); u_xlat3.z = dot(u_xlat2, u_xlat1); outVertices4_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat3.x); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat3.y); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat3.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati12.xy = floatBitsToInt(u_xlat2.zw) + ivec2(g_PoseOffsets[0].ww); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat3.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.x = u_xlat3.y; u_xlat8.y = u_xlat4.y; u_xlat8.z = u_xlat5.y; u_xlat8.w = u_xlat6.y; u_xlat6.x = u_xlat3.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat3.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat10 = u_xlat2.yyyy * u_xlat10; u_xlat11.x = u_xlat3.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat11 = u_xlat2.yyyy * u_xlat11; u_xlat9.x = u_xlat3.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat3 = u_xlat2.yyyy * u_xlat9; u_xlat4 = u_xlat7 * u_xlat2.xxxx + u_xlat10; u_xlat5 = u_xlat8 * u_xlat2.xxxx + u_xlat11; u_xlat2 = u_xlat6 * u_xlat2.xxxx + u_xlat3; u_xlat1.w = 1.0; u_xlat3.x = dot(u_xlat4, u_xlat1); u_xlat3.y = dot(u_xlat5, u_xlat1); u_xlat3.z = dot(u_xlat2, u_xlat1); outVertices3_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat3.x); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat3.y); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat3.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati12.xy = floatBitsToInt(u_xlat2.zw) + ivec2(g_PoseOffsets[0].zz); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat3.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.x = u_xlat3.y; u_xlat8.y = u_xlat4.y; u_xlat8.z = u_xlat5.y; u_xlat8.w = u_xlat6.y; u_xlat6.x = u_xlat3.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat3.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat10 = u_xlat2.yyyy * u_xlat10; u_xlat11.x = u_xlat3.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat11 = u_xlat2.yyyy * u_xlat11; u_xlat9.x = u_xlat3.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat3 = u_xlat2.yyyy * u_xlat9; u_xlat4 = u_xlat7 * u_xlat2.xxxx + u_xlat10; u_xlat5 = u_xlat8 * u_xlat2.xxxx + u_xlat11; u_xlat2 = u_xlat6 * u_xlat2.xxxx + u_xlat3; u_xlat1.w = 1.0; u_xlat3.x = dot(u_xlat4, u_xlat1); u_xlat3.y = dot(u_xlat5, u_xlat1); u_xlat3.z = dot(u_xlat2, u_xlat1); outVertices2_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat3.x); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat3.y); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat3.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati12.xy = floatBitsToInt(u_xlat2.zw) + ivec2(g_PoseOffsets[0].yy); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat3.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.x = u_xlat3.y; u_xlat8.y = u_xlat4.y; u_xlat8.z = u_xlat5.y; u_xlat8.w = u_xlat6.y; u_xlat6.x = u_xlat3.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat3.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat10 = u_xlat2.yyyy * u_xlat10; u_xlat11.x = u_xlat3.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat11 = u_xlat2.yyyy * u_xlat11; u_xlat9.x = u_xlat3.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat3 = u_xlat2.yyyy * u_xlat9; u_xlat4 = u_xlat7 * u_xlat2.xxxx + u_xlat10; u_xlat5 = u_xlat8 * u_xlat2.xxxx + u_xlat11; u_xlat2 = u_xlat6 * u_xlat2.xxxx + u_xlat3; u_xlat1.w = 1.0; u_xlat3.x = dot(u_xlat4, u_xlat1); u_xlat3.y = dot(u_xlat5, u_xlat1); u_xlat3.z = dot(u_xlat2, u_xlat1); outVertices1_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat3.x); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat3.y); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat3.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati12.xy = floatBitsToInt(u_xlat2.zw) + ivec2(g_PoseOffsets[0].xx); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat3.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.x = u_xlat3.y; u_xlat8.y = u_xlat4.y; u_xlat8.z = u_xlat5.y; u_xlat8.w = u_xlat6.y; u_xlat6.x = u_xlat3.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat3.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat10 = u_xlat2.yyyy * u_xlat10; u_xlat11.x = u_xlat3.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat11 = u_xlat2.yyyy * u_xlat11; u_xlat9.x = u_xlat3.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat3 = u_xlat2.yyyy * u_xlat9; u_xlat4 = u_xlat7 * u_xlat2.xxxx + u_xlat10; u_xlat5 = u_xlat8 * u_xlat2.xxxx + u_xlat11; u_xlat2 = u_xlat6 * u_xlat2.xxxx + u_xlat3; u_xlat1.w = 1.0; u_xlat3.x = dot(u_xlat4, u_xlat1); u_xlat3.y = dot(u_xlat5, u_xlat1); u_xlat3.z = dot(u_xlat2, u_xlat1); outVertices0_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat3.x); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat3.y); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat3.z); } } } } } } return; } @A batchMainComputeSkinCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4inSkin0inSkin1inSkin2inSkin3inSkin4 inMatrices  outVertices0 outVertices1 outVertices2 outVertices3 outVertices4w#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform ComputeSkinCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; uvec4 g_PoseOffsets[2]; uint g_poseBufferMaxIndex; }; struct inVertices0_type { uint[6] value; }; layout(std430, binding = 5) readonly buffer inVertices0 { inVertices0_type inVertices0_buf[]; }; struct inVertices1_type { uint[6] value; }; layout(std430, binding = 6) readonly buffer inVertices1 { inVertices1_type inVertices1_buf[]; }; struct inVertices2_type { uint[6] value; }; layout(std430, binding = 7) readonly buffer inVertices2 { inVertices2_type inVertices2_buf[]; }; struct inVertices3_type { uint[6] value; }; layout(std430, binding = 8) readonly buffer inVertices3 { inVertices3_type inVertices3_buf[]; }; struct inVertices4_type { uint[6] value; }; layout(std430, binding = 9) readonly buffer inVertices4 { inVertices4_type inVertices4_buf[]; }; struct inSkin0_type { uint[4] value; }; layout(std430, binding = 10) readonly buffer inSkin0 { inSkin0_type inSkin0_buf[]; }; struct inSkin1_type { uint[4] value; }; layout(std430, binding = 11) readonly buffer inSkin1 { inSkin1_type inSkin1_buf[]; }; struct inSkin2_type { uint[4] value; }; layout(std430, binding = 12) readonly buffer inSkin2 { inSkin2_type inSkin2_buf[]; }; struct inSkin3_type { uint[4] value; }; layout(std430, binding = 13) readonly buffer inSkin3 { inSkin3_type inSkin3_buf[]; }; struct inSkin4_type { uint[4] value; }; layout(std430, binding = 14) readonly buffer inSkin4 { inSkin4_type inSkin4_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 15) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct outVertices0_type { uint[6] value; }; layout(std430, binding = 0) buffer outVertices0 { outVertices0_type outVertices0_buf[]; }; struct outVertices1_type { uint[6] value; }; layout(std430, binding = 1) buffer outVertices1 { outVertices1_type outVertices1_buf[]; }; struct outVertices2_type { uint[6] value; }; layout(std430, binding = 2) buffer outVertices2 { outVertices2_type outVertices2_buf[]; }; struct outVertices3_type { uint[6] value; }; layout(std430, binding = 3) buffer outVertices3 { outVertices3_type outVertices3_buf[]; }; struct outVertices4_type { uint[6] value; }; layout(std430, binding = 4) buffer outVertices4 { outVertices4_type outVertices4_buf[]; }; uint u_xlatu0; bool u_xlatb0; vec4 u_xlat1; vec3 u_xlat2; vec4 u_xlat3; vec4 u_xlat4; vec4 u_xlat5; vec4 u_xlat6; vec4 u_xlat7; vec4 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; vec4 u_xlat11; vec4 u_xlat12; ivec2 u_xlati13; bool u_xlatb13; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb13 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati13.xy = floatBitsToInt(u_xlat3.zw) + ivec2(g_PoseOffsets[1].xx); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat4.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat4.y; u_xlat9.y = u_xlat5.y; u_xlat9.z = u_xlat6.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat4.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat4.x; u_xlat11.y = u_xlat5.x; u_xlat11.z = u_xlat6.x; u_xlat11.w = u_xlat10.x; u_xlat11 = u_xlat3.yyyy * u_xlat11; u_xlat12.x = u_xlat4.y; u_xlat12.y = u_xlat5.y; u_xlat12.z = u_xlat6.y; u_xlat12.w = u_xlat10.y; u_xlat12 = u_xlat3.yyyy * u_xlat12; u_xlat10.x = u_xlat4.z; u_xlat10.y = u_xlat5.z; u_xlat10.z = u_xlat6.z; u_xlat4 = u_xlat3.yyyy * u_xlat10; u_xlat5 = u_xlat8 * u_xlat3.xxxx + u_xlat11; u_xlat6 = u_xlat9 * u_xlat3.xxxx + u_xlat12; u_xlat3 = u_xlat7 * u_xlat3.xxxx + u_xlat4; u_xlat4.xyz = u_xlat1.xyz; u_xlat4.w = 1.0; u_xlat7.x = dot(u_xlat5, u_xlat4); u_xlat7.y = dot(u_xlat6, u_xlat4); u_xlat7.z = dot(u_xlat3, u_xlat4); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat5.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat6.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat3.yzx, u_xlat2.xyz); outVertices4_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat7.x); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat7.y); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat7.z); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat7.w); outVertices4_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat1.x); outVertices4_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat1.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb13 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati13.xy = floatBitsToInt(u_xlat3.zw) + ivec2(g_PoseOffsets[0].ww); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat4.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat4.y; u_xlat9.y = u_xlat5.y; u_xlat9.z = u_xlat6.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat4.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat4.x; u_xlat11.y = u_xlat5.x; u_xlat11.z = u_xlat6.x; u_xlat11.w = u_xlat10.x; u_xlat11 = u_xlat3.yyyy * u_xlat11; u_xlat12.x = u_xlat4.y; u_xlat12.y = u_xlat5.y; u_xlat12.z = u_xlat6.y; u_xlat12.w = u_xlat10.y; u_xlat12 = u_xlat3.yyyy * u_xlat12; u_xlat10.x = u_xlat4.z; u_xlat10.y = u_xlat5.z; u_xlat10.z = u_xlat6.z; u_xlat4 = u_xlat3.yyyy * u_xlat10; u_xlat5 = u_xlat8 * u_xlat3.xxxx + u_xlat11; u_xlat6 = u_xlat9 * u_xlat3.xxxx + u_xlat12; u_xlat3 = u_xlat7 * u_xlat3.xxxx + u_xlat4; u_xlat4.xyz = u_xlat1.xyz; u_xlat4.w = 1.0; u_xlat7.x = dot(u_xlat5, u_xlat4); u_xlat7.y = dot(u_xlat6, u_xlat4); u_xlat7.z = dot(u_xlat3, u_xlat4); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat5.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat6.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat3.yzx, u_xlat2.xyz); outVertices3_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat7.x); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat7.y); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat7.z); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat7.w); outVertices3_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat1.x); outVertices3_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat1.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb13 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati13.xy = floatBitsToInt(u_xlat3.zw) + ivec2(g_PoseOffsets[0].zz); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat4.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat4.y; u_xlat9.y = u_xlat5.y; u_xlat9.z = u_xlat6.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat4.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat4.x; u_xlat11.y = u_xlat5.x; u_xlat11.z = u_xlat6.x; u_xlat11.w = u_xlat10.x; u_xlat11 = u_xlat3.yyyy * u_xlat11; u_xlat12.x = u_xlat4.y; u_xlat12.y = u_xlat5.y; u_xlat12.z = u_xlat6.y; u_xlat12.w = u_xlat10.y; u_xlat12 = u_xlat3.yyyy * u_xlat12; u_xlat10.x = u_xlat4.z; u_xlat10.y = u_xlat5.z; u_xlat10.z = u_xlat6.z; u_xlat4 = u_xlat3.yyyy * u_xlat10; u_xlat5 = u_xlat8 * u_xlat3.xxxx + u_xlat11; u_xlat6 = u_xlat9 * u_xlat3.xxxx + u_xlat12; u_xlat3 = u_xlat7 * u_xlat3.xxxx + u_xlat4; u_xlat4.xyz = u_xlat1.xyz; u_xlat4.w = 1.0; u_xlat7.x = dot(u_xlat5, u_xlat4); u_xlat7.y = dot(u_xlat6, u_xlat4); u_xlat7.z = dot(u_xlat3, u_xlat4); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat5.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat6.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat3.yzx, u_xlat2.xyz); outVertices2_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat7.x); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat7.y); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat7.z); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat7.w); outVertices2_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat1.x); outVertices2_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat1.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb13 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati13.xy = floatBitsToInt(u_xlat3.zw) + ivec2(g_PoseOffsets[0].yy); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat4.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat4.y; u_xlat9.y = u_xlat5.y; u_xlat9.z = u_xlat6.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat4.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat4.x; u_xlat11.y = u_xlat5.x; u_xlat11.z = u_xlat6.x; u_xlat11.w = u_xlat10.x; u_xlat11 = u_xlat3.yyyy * u_xlat11; u_xlat12.x = u_xlat4.y; u_xlat12.y = u_xlat5.y; u_xlat12.z = u_xlat6.y; u_xlat12.w = u_xlat10.y; u_xlat12 = u_xlat3.yyyy * u_xlat12; u_xlat10.x = u_xlat4.z; u_xlat10.y = u_xlat5.z; u_xlat10.z = u_xlat6.z; u_xlat4 = u_xlat3.yyyy * u_xlat10; u_xlat5 = u_xlat8 * u_xlat3.xxxx + u_xlat11; u_xlat6 = u_xlat9 * u_xlat3.xxxx + u_xlat12; u_xlat3 = u_xlat7 * u_xlat3.xxxx + u_xlat4; u_xlat4.xyz = u_xlat1.xyz; u_xlat4.w = 1.0; u_xlat7.x = dot(u_xlat5, u_xlat4); u_xlat7.y = dot(u_xlat6, u_xlat4); u_xlat7.z = dot(u_xlat3, u_xlat4); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat5.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat6.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat3.yzx, u_xlat2.xyz); outVertices1_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat7.x); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat7.y); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat7.z); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat7.w); outVertices1_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat1.x); outVertices1_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat1.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb13 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati13.xy = floatBitsToInt(u_xlat3.zw) + ivec2(g_PoseOffsets[0].xx); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat4.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat4.y; u_xlat9.y = u_xlat5.y; u_xlat9.z = u_xlat6.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat4.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat4.x; u_xlat11.y = u_xlat5.x; u_xlat11.z = u_xlat6.x; u_xlat11.w = u_xlat10.x; u_xlat11 = u_xlat3.yyyy * u_xlat11; u_xlat12.x = u_xlat4.y; u_xlat12.y = u_xlat5.y; u_xlat12.z = u_xlat6.y; u_xlat12.w = u_xlat10.y; u_xlat12 = u_xlat3.yyyy * u_xlat12; u_xlat10.x = u_xlat4.z; u_xlat10.y = u_xlat5.z; u_xlat10.z = u_xlat6.z; u_xlat4 = u_xlat3.yyyy * u_xlat10; u_xlat5 = u_xlat8 * u_xlat3.xxxx + u_xlat11; u_xlat6 = u_xlat9 * u_xlat3.xxxx + u_xlat12; u_xlat3 = u_xlat7 * u_xlat3.xxxx + u_xlat4; u_xlat4.xyz = u_xlat1.xyz; u_xlat4.w = 1.0; u_xlat7.x = dot(u_xlat5, u_xlat4); u_xlat7.y = dot(u_xlat6, u_xlat4); u_xlat7.z = dot(u_xlat3, u_xlat4); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat5.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat6.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat3.yzx, u_xlat2.xyz); outVertices0_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat7.x); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat7.y); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat7.z); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat7.w); outVertices0_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat1.x); outVertices0_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat1.y); } } } } } } return; } @A batchMainComputeSkinCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4inSkin0inSkin1inSkin2inSkin3inSkin4 inMatrices  outVertices0 outVertices1 outVertices2 outVertices3 outVertices4:#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform ComputeSkinCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; uvec4 g_PoseOffsets[2]; uint g_poseBufferMaxIndex; }; struct inVertices0_type { uint[10] value; }; layout(std430, binding = 5) readonly buffer inVertices0 { inVertices0_type inVertices0_buf[]; }; struct inVertices1_type { uint[10] value; }; layout(std430, binding = 6) readonly buffer inVertices1 { inVertices1_type inVertices1_buf[]; }; struct inVertices2_type { uint[10] value; }; layout(std430, binding = 7) readonly buffer inVertices2 { inVertices2_type inVertices2_buf[]; }; struct inVertices3_type { uint[10] value; }; layout(std430, binding = 8) readonly buffer inVertices3 { inVertices3_type inVertices3_buf[]; }; struct inVertices4_type { uint[10] value; }; layout(std430, binding = 9) readonly buffer inVertices4 { inVertices4_type inVertices4_buf[]; }; struct inSkin0_type { uint[4] value; }; layout(std430, binding = 10) readonly buffer inSkin0 { inSkin0_type inSkin0_buf[]; }; struct inSkin1_type { uint[4] value; }; layout(std430, binding = 11) readonly buffer inSkin1 { inSkin1_type inSkin1_buf[]; }; struct inSkin2_type { uint[4] value; }; layout(std430, binding = 12) readonly buffer inSkin2 { inSkin2_type inSkin2_buf[]; }; struct inSkin3_type { uint[4] value; }; layout(std430, binding = 13) readonly buffer inSkin3 { inSkin3_type inSkin3_buf[]; }; struct inSkin4_type { uint[4] value; }; layout(std430, binding = 14) readonly buffer inSkin4 { inSkin4_type inSkin4_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 15) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct outVertices0_type { uint[10] value; }; layout(std430, binding = 0) buffer outVertices0 { outVertices0_type outVertices0_buf[]; }; struct outVertices1_type { uint[10] value; }; layout(std430, binding = 1) buffer outVertices1 { outVertices1_type outVertices1_buf[]; }; struct outVertices2_type { uint[10] value; }; layout(std430, binding = 2) buffer outVertices2 { outVertices2_type outVertices2_buf[]; }; struct outVertices3_type { uint[10] value; }; layout(std430, binding = 3) buffer outVertices3 { outVertices3_type outVertices3_buf[]; }; struct outVertices4_type { uint[10] value; }; layout(std430, binding = 4) buffer outVertices4 { outVertices4_type outVertices4_buf[]; }; uint u_xlatu0; bool u_xlatb0; vec4 u_xlat1; vec4 u_xlat2; vec4 u_xlat3; vec4 u_xlat4; vec4 u_xlat5; vec4 u_xlat6; vec4 u_xlat7; vec4 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; vec4 u_xlat11; vec4 u_xlat12; vec4 u_xlat13; ivec2 u_xlati14; bool u_xlatb14; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb14 = u_xlatu0> 2) + 3]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.xy = vec2(uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(32 >> 2) + 0]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(32 >> 2) + 1])); u_xlat4 = vec4(uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati14.xy = floatBitsToInt(u_xlat4.zw) + ivec2(g_PoseOffsets[1].xx); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat5.x; u_xlat9.y = u_xlat6.x; u_xlat9.z = u_xlat7.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat5.y; u_xlat10.y = u_xlat6.y; u_xlat10.z = u_xlat7.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat5.z; u_xlat8.y = u_xlat6.z; u_xlat8.z = u_xlat7.z; u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat5.x; u_xlat12.y = u_xlat6.x; u_xlat12.z = u_xlat7.x; u_xlat12.w = u_xlat11.x; u_xlat12 = u_xlat4.yyyy * u_xlat12; u_xlat13.x = u_xlat5.y; u_xlat13.y = u_xlat6.y; u_xlat13.z = u_xlat7.y; u_xlat13.w = u_xlat11.y; u_xlat13 = u_xlat4.yyyy * u_xlat13; u_xlat11.x = u_xlat5.z; u_xlat11.y = u_xlat6.z; u_xlat11.z = u_xlat7.z; u_xlat5 = u_xlat4.yyyy * u_xlat11; u_xlat6 = u_xlat9 * u_xlat4.xxxx + u_xlat12; u_xlat7 = u_xlat10 * u_xlat4.xxxx + u_xlat13; u_xlat4 = u_xlat8 * u_xlat4.xxxx + u_xlat5; u_xlat5.xyz = u_xlat1.yzw; u_xlat5.w = 1.0; u_xlat8.x = dot(u_xlat6, u_xlat5); u_xlat8.y = dot(u_xlat7, u_xlat5); u_xlat8.z = dot(u_xlat4, u_xlat5); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat6.xyz, u_xlat1.xyz); u_xlat5.x = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat5.y = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat3.zw = u_xlat2.zw; u_xlat5.z = dot(u_xlat6.zxy, u_xlat3.xzw); u_xlat5.w = dot(u_xlat7.zxy, u_xlat3.xzw); u_xlat3.x = dot(u_xlat4.zxy, u_xlat3.xzw); outVertices4_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat8.x); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat8.y); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat8.z); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat8.w); outVertices4_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat5.x); outVertices4_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat5.y); outVertices4_buf[u_xlatu0].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat5.z); outVertices4_buf[u_xlatu0].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat5.w); outVertices4_buf[u_xlatu0].value[(32 >> 2)] = floatBitsToUint(u_xlat3.x); outVertices4_buf[u_xlatu0].value[(32 >> 2) + 1] = floatBitsToUint(u_xlat3.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb14 = u_xlatu0> 2) + 3]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.xy = vec2(uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(32 >> 2) + 0]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(32 >> 2) + 1])); u_xlat4 = vec4(uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati14.xy = floatBitsToInt(u_xlat4.zw) + ivec2(g_PoseOffsets[0].ww); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat5.x; u_xlat9.y = u_xlat6.x; u_xlat9.z = u_xlat7.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat5.y; u_xlat10.y = u_xlat6.y; u_xlat10.z = u_xlat7.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat5.z; u_xlat8.y = u_xlat6.z; u_xlat8.z = u_xlat7.z; u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat5.x; u_xlat12.y = u_xlat6.x; u_xlat12.z = u_xlat7.x; u_xlat12.w = u_xlat11.x; u_xlat12 = u_xlat4.yyyy * u_xlat12; u_xlat13.x = u_xlat5.y; u_xlat13.y = u_xlat6.y; u_xlat13.z = u_xlat7.y; u_xlat13.w = u_xlat11.y; u_xlat13 = u_xlat4.yyyy * u_xlat13; u_xlat11.x = u_xlat5.z; u_xlat11.y = u_xlat6.z; u_xlat11.z = u_xlat7.z; u_xlat5 = u_xlat4.yyyy * u_xlat11; u_xlat6 = u_xlat9 * u_xlat4.xxxx + u_xlat12; u_xlat7 = u_xlat10 * u_xlat4.xxxx + u_xlat13; u_xlat4 = u_xlat8 * u_xlat4.xxxx + u_xlat5; u_xlat5.xyz = u_xlat1.yzw; u_xlat5.w = 1.0; u_xlat8.x = dot(u_xlat6, u_xlat5); u_xlat8.y = dot(u_xlat7, u_xlat5); u_xlat8.z = dot(u_xlat4, u_xlat5); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat6.xyz, u_xlat1.xyz); u_xlat5.x = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat5.y = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat3.zw = u_xlat2.zw; u_xlat5.z = dot(u_xlat6.zxy, u_xlat3.xzw); u_xlat5.w = dot(u_xlat7.zxy, u_xlat3.xzw); u_xlat3.x = dot(u_xlat4.zxy, u_xlat3.xzw); outVertices3_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat8.x); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat8.y); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat8.z); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat8.w); outVertices3_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat5.x); outVertices3_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat5.y); outVertices3_buf[u_xlatu0].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat5.z); outVertices3_buf[u_xlatu0].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat5.w); outVertices3_buf[u_xlatu0].value[(32 >> 2)] = floatBitsToUint(u_xlat3.x); outVertices3_buf[u_xlatu0].value[(32 >> 2) + 1] = floatBitsToUint(u_xlat3.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb14 = u_xlatu0> 2) + 3]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.xy = vec2(uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(32 >> 2) + 0]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(32 >> 2) + 1])); u_xlat4 = vec4(uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati14.xy = floatBitsToInt(u_xlat4.zw) + ivec2(g_PoseOffsets[0].zz); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat5.x; u_xlat9.y = u_xlat6.x; u_xlat9.z = u_xlat7.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat5.y; u_xlat10.y = u_xlat6.y; u_xlat10.z = u_xlat7.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat5.z; u_xlat8.y = u_xlat6.z; u_xlat8.z = u_xlat7.z; u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat5.x; u_xlat12.y = u_xlat6.x; u_xlat12.z = u_xlat7.x; u_xlat12.w = u_xlat11.x; u_xlat12 = u_xlat4.yyyy * u_xlat12; u_xlat13.x = u_xlat5.y; u_xlat13.y = u_xlat6.y; u_xlat13.z = u_xlat7.y; u_xlat13.w = u_xlat11.y; u_xlat13 = u_xlat4.yyyy * u_xlat13; u_xlat11.x = u_xlat5.z; u_xlat11.y = u_xlat6.z; u_xlat11.z = u_xlat7.z; u_xlat5 = u_xlat4.yyyy * u_xlat11; u_xlat6 = u_xlat9 * u_xlat4.xxxx + u_xlat12; u_xlat7 = u_xlat10 * u_xlat4.xxxx + u_xlat13; u_xlat4 = u_xlat8 * u_xlat4.xxxx + u_xlat5; u_xlat5.xyz = u_xlat1.yzw; u_xlat5.w = 1.0; u_xlat8.x = dot(u_xlat6, u_xlat5); u_xlat8.y = dot(u_xlat7, u_xlat5); u_xlat8.z = dot(u_xlat4, u_xlat5); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat6.xyz, u_xlat1.xyz); u_xlat5.x = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat5.y = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat3.zw = u_xlat2.zw; u_xlat5.z = dot(u_xlat6.zxy, u_xlat3.xzw); u_xlat5.w = dot(u_xlat7.zxy, u_xlat3.xzw); u_xlat3.x = dot(u_xlat4.zxy, u_xlat3.xzw); outVertices2_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat8.x); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat8.y); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat8.z); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat8.w); outVertices2_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat5.x); outVertices2_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat5.y); outVertices2_buf[u_xlatu0].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat5.z); outVertices2_buf[u_xlatu0].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat5.w); outVertices2_buf[u_xlatu0].value[(32 >> 2)] = floatBitsToUint(u_xlat3.x); outVertices2_buf[u_xlatu0].value[(32 >> 2) + 1] = floatBitsToUint(u_xlat3.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb14 = u_xlatu0> 2) + 3]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.xy = vec2(uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(32 >> 2) + 0]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(32 >> 2) + 1])); u_xlat4 = vec4(uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati14.xy = floatBitsToInt(u_xlat4.zw) + ivec2(g_PoseOffsets[0].yy); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat5.x; u_xlat9.y = u_xlat6.x; u_xlat9.z = u_xlat7.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat5.y; u_xlat10.y = u_xlat6.y; u_xlat10.z = u_xlat7.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat5.z; u_xlat8.y = u_xlat6.z; u_xlat8.z = u_xlat7.z; u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat5.x; u_xlat12.y = u_xlat6.x; u_xlat12.z = u_xlat7.x; u_xlat12.w = u_xlat11.x; u_xlat12 = u_xlat4.yyyy * u_xlat12; u_xlat13.x = u_xlat5.y; u_xlat13.y = u_xlat6.y; u_xlat13.z = u_xlat7.y; u_xlat13.w = u_xlat11.y; u_xlat13 = u_xlat4.yyyy * u_xlat13; u_xlat11.x = u_xlat5.z; u_xlat11.y = u_xlat6.z; u_xlat11.z = u_xlat7.z; u_xlat5 = u_xlat4.yyyy * u_xlat11; u_xlat6 = u_xlat9 * u_xlat4.xxxx + u_xlat12; u_xlat7 = u_xlat10 * u_xlat4.xxxx + u_xlat13; u_xlat4 = u_xlat8 * u_xlat4.xxxx + u_xlat5; u_xlat5.xyz = u_xlat1.yzw; u_xlat5.w = 1.0; u_xlat8.x = dot(u_xlat6, u_xlat5); u_xlat8.y = dot(u_xlat7, u_xlat5); u_xlat8.z = dot(u_xlat4, u_xlat5); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat6.xyz, u_xlat1.xyz); u_xlat5.x = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat5.y = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat3.zw = u_xlat2.zw; u_xlat5.z = dot(u_xlat6.zxy, u_xlat3.xzw); u_xlat5.w = dot(u_xlat7.zxy, u_xlat3.xzw); u_xlat3.x = dot(u_xlat4.zxy, u_xlat3.xzw); outVertices1_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat8.x); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat8.y); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat8.z); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat8.w); outVertices1_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat5.x); outVertices1_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat5.y); outVertices1_buf[u_xlatu0].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat5.z); outVertices1_buf[u_xlatu0].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat5.w); outVertices1_buf[u_xlatu0].value[(32 >> 2)] = floatBitsToUint(u_xlat3.x); outVertices1_buf[u_xlatu0].value[(32 >> 2) + 1] = floatBitsToUint(u_xlat3.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb14 = u_xlatu0> 2) + 3]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.xy = vec2(uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(32 >> 2) + 0]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(32 >> 2) + 1])); u_xlat4 = vec4(uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati14.xy = floatBitsToInt(u_xlat4.zw) + ivec2(g_PoseOffsets[0].xx); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat5.x; u_xlat9.y = u_xlat6.x; u_xlat9.z = u_xlat7.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat5.y; u_xlat10.y = u_xlat6.y; u_xlat10.z = u_xlat7.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat5.z; u_xlat8.y = u_xlat6.z; u_xlat8.z = u_xlat7.z; u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat5.x; u_xlat12.y = u_xlat6.x; u_xlat12.z = u_xlat7.x; u_xlat12.w = u_xlat11.x; u_xlat12 = u_xlat4.yyyy * u_xlat12; u_xlat13.x = u_xlat5.y; u_xlat13.y = u_xlat6.y; u_xlat13.z = u_xlat7.y; u_xlat13.w = u_xlat11.y; u_xlat13 = u_xlat4.yyyy * u_xlat13; u_xlat11.x = u_xlat5.z; u_xlat11.y = u_xlat6.z; u_xlat11.z = u_xlat7.z; u_xlat5 = u_xlat4.yyyy * u_xlat11; u_xlat6 = u_xlat9 * u_xlat4.xxxx + u_xlat12; u_xlat7 = u_xlat10 * u_xlat4.xxxx + u_xlat13; u_xlat4 = u_xlat8 * u_xlat4.xxxx + u_xlat5; u_xlat5.xyz = u_xlat1.yzw; u_xlat5.w = 1.0; u_xlat8.x = dot(u_xlat6, u_xlat5); u_xlat8.y = dot(u_xlat7, u_xlat5); u_xlat8.z = dot(u_xlat4, u_xlat5); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat6.xyz, u_xlat1.xyz); u_xlat5.x = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat5.y = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat3.zw = u_xlat2.zw; u_xlat5.z = dot(u_xlat6.zxy, u_xlat3.xzw); u_xlat5.w = dot(u_xlat7.zxy, u_xlat3.xzw); u_xlat3.x = dot(u_xlat4.zxy, u_xlat3.xzw); outVertices0_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat8.x); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat8.y); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat8.z); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat8.w); outVertices0_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat5.x); outVertices0_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat5.y); outVertices0_buf[u_xlatu0].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat5.z); outVertices0_buf[u_xlatu0].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat5.w); outVertices0_buf[u_xlatu0].value[(32 >> 2)] = floatBitsToUint(u_xlat3.x); outVertices0_buf[u_xlatu0].value[(32 >> 2) + 1] = floatBitsToUint(u_xlat3.y); } } } } } } return; } @A batchMainComputeSkinCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4inSkin0inSkin1inSkin2inSkin3inSkin4 inMatrices  outVertices0 outVertices1 outVertices2 outVertices3 outVertices4#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform ComputeSkinCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; uvec4 g_PoseOffsets[2]; uint g_poseBufferMaxIndex; }; struct inVertices0_type { uint[3] value; }; layout(std430, binding = 5) readonly buffer inVertices0 { inVertices0_type inVertices0_buf[]; }; struct inVertices1_type { uint[3] value; }; layout(std430, binding = 6) readonly buffer inVertices1 { inVertices1_type inVertices1_buf[]; }; struct inVertices2_type { uint[3] value; }; layout(std430, binding = 7) readonly buffer inVertices2 { inVertices2_type inVertices2_buf[]; }; struct inVertices3_type { uint[3] value; }; layout(std430, binding = 8) readonly buffer inVertices3 { inVertices3_type inVertices3_buf[]; }; struct inVertices4_type { uint[3] value; }; layout(std430, binding = 9) readonly buffer inVertices4 { inVertices4_type inVertices4_buf[]; }; struct inSkin0_type { uint[8] value; }; layout(std430, binding = 10) readonly buffer inSkin0 { inSkin0_type inSkin0_buf[]; }; struct inSkin1_type { uint[8] value; }; layout(std430, binding = 11) readonly buffer inSkin1 { inSkin1_type inSkin1_buf[]; }; struct inSkin2_type { uint[8] value; }; layout(std430, binding = 12) readonly buffer inSkin2 { inSkin2_type inSkin2_buf[]; }; struct inSkin3_type { uint[8] value; }; layout(std430, binding = 13) readonly buffer inSkin3 { inSkin3_type inSkin3_buf[]; }; struct inSkin4_type { uint[8] value; }; layout(std430, binding = 14) readonly buffer inSkin4 { inSkin4_type inSkin4_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 15) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct outVertices0_type { uint[3] value; }; layout(std430, binding = 0) buffer outVertices0 { outVertices0_type outVertices0_buf[]; }; struct outVertices1_type { uint[3] value; }; layout(std430, binding = 1) buffer outVertices1 { outVertices1_type outVertices1_buf[]; }; struct outVertices2_type { uint[3] value; }; layout(std430, binding = 2) buffer outVertices2 { outVertices2_type outVertices2_buf[]; }; struct outVertices3_type { uint[3] value; }; layout(std430, binding = 3) buffer outVertices3 { outVertices3_type outVertices3_buf[]; }; struct outVertices4_type { uint[3] value; }; layout(std430, binding = 4) buffer outVertices4 { outVertices4_type outVertices4_buf[]; }; uint u_xlatu0; bool u_xlatb0; vec4 u_xlat1; vec4 u_xlat2; vec4 u_xlat3; ivec4 u_xlati3; vec4 u_xlat4; vec4 u_xlat5; vec4 u_xlat6; vec4 u_xlat7; vec4 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; vec4 u_xlat11; vec3 u_xlat12; bool u_xlatb12; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati3 = ivec4(int(inSkin4_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin4_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin4_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin4_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati3 = u_xlati3 + ivec4(g_PoseOffsets[1].xxxx); u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat12.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.x = u_xlat12.y; u_xlat8.y = u_xlat4.y; u_xlat8.z = u_xlat5.y; u_xlat8.w = u_xlat6.y; u_xlat6.x = u_xlat12.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat12.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat10 = u_xlat2.yyyy * u_xlat10; u_xlat11.x = u_xlat12.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat11 = u_xlat2.yyyy * u_xlat11; u_xlat9.x = u_xlat12.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat4 = u_xlat2.yyyy * u_xlat9; u_xlat5 = u_xlat7 * u_xlat2.xxxx + u_xlat10; u_xlat7 = u_xlat8 * u_xlat2.xxxx + u_xlat11; u_xlat4 = u_xlat6 * u_xlat2.xxxx + u_xlat4; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat12.x; u_xlat10.y = u_xlat6.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat12.y; u_xlat11.y = u_xlat6.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat12.z; u_xlat9.y = u_xlat6.z; u_xlat9.z = u_xlat8.z; u_xlat5 = u_xlat10 * u_xlat2.zzzz + u_xlat5; u_xlat6 = u_xlat11 * u_xlat2.zzzz + u_xlat7; u_xlat4 = u_xlat9 * u_xlat2.zzzz + u_xlat4; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 2])); u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat12.x; u_xlat8.y = u_xlat2.x; u_xlat8.z = u_xlat3.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat12.y; u_xlat9.y = u_xlat2.y; u_xlat9.z = u_xlat3.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat12.z; u_xlat7.y = u_xlat2.z; u_xlat7.z = u_xlat3.z; u_xlat3 = u_xlat8 * u_xlat2.wwww + u_xlat5; u_xlat5 = u_xlat9 * u_xlat2.wwww + u_xlat6; u_xlat2 = u_xlat7 * u_xlat2.wwww + u_xlat4; u_xlat1.w = 1.0; u_xlat3.x = dot(u_xlat3, u_xlat1); u_xlat3.y = dot(u_xlat5, u_xlat1); u_xlat3.z = dot(u_xlat2, u_xlat1); outVertices4_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat3.x); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat3.y); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat3.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati3 = ivec4(int(inSkin3_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin3_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin3_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin3_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati3 = u_xlati3 + ivec4(g_PoseOffsets[0].wwww); u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat12.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.x = u_xlat12.y; u_xlat8.y = u_xlat4.y; u_xlat8.z = u_xlat5.y; u_xlat8.w = u_xlat6.y; u_xlat6.x = u_xlat12.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat12.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat10 = u_xlat2.yyyy * u_xlat10; u_xlat11.x = u_xlat12.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat11 = u_xlat2.yyyy * u_xlat11; u_xlat9.x = u_xlat12.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat4 = u_xlat2.yyyy * u_xlat9; u_xlat5 = u_xlat7 * u_xlat2.xxxx + u_xlat10; u_xlat7 = u_xlat8 * u_xlat2.xxxx + u_xlat11; u_xlat4 = u_xlat6 * u_xlat2.xxxx + u_xlat4; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat12.x; u_xlat10.y = u_xlat6.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat12.y; u_xlat11.y = u_xlat6.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat12.z; u_xlat9.y = u_xlat6.z; u_xlat9.z = u_xlat8.z; u_xlat5 = u_xlat10 * u_xlat2.zzzz + u_xlat5; u_xlat6 = u_xlat11 * u_xlat2.zzzz + u_xlat7; u_xlat4 = u_xlat9 * u_xlat2.zzzz + u_xlat4; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 2])); u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat12.x; u_xlat8.y = u_xlat2.x; u_xlat8.z = u_xlat3.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat12.y; u_xlat9.y = u_xlat2.y; u_xlat9.z = u_xlat3.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat12.z; u_xlat7.y = u_xlat2.z; u_xlat7.z = u_xlat3.z; u_xlat3 = u_xlat8 * u_xlat2.wwww + u_xlat5; u_xlat5 = u_xlat9 * u_xlat2.wwww + u_xlat6; u_xlat2 = u_xlat7 * u_xlat2.wwww + u_xlat4; u_xlat1.w = 1.0; u_xlat3.x = dot(u_xlat3, u_xlat1); u_xlat3.y = dot(u_xlat5, u_xlat1); u_xlat3.z = dot(u_xlat2, u_xlat1); outVertices3_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat3.x); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat3.y); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat3.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati3 = ivec4(int(inSkin2_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin2_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin2_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin2_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati3 = u_xlati3 + ivec4(g_PoseOffsets[0].zzzz); u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat12.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.x = u_xlat12.y; u_xlat8.y = u_xlat4.y; u_xlat8.z = u_xlat5.y; u_xlat8.w = u_xlat6.y; u_xlat6.x = u_xlat12.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat12.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat10 = u_xlat2.yyyy * u_xlat10; u_xlat11.x = u_xlat12.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat11 = u_xlat2.yyyy * u_xlat11; u_xlat9.x = u_xlat12.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat4 = u_xlat2.yyyy * u_xlat9; u_xlat5 = u_xlat7 * u_xlat2.xxxx + u_xlat10; u_xlat7 = u_xlat8 * u_xlat2.xxxx + u_xlat11; u_xlat4 = u_xlat6 * u_xlat2.xxxx + u_xlat4; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat12.x; u_xlat10.y = u_xlat6.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat12.y; u_xlat11.y = u_xlat6.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat12.z; u_xlat9.y = u_xlat6.z; u_xlat9.z = u_xlat8.z; u_xlat5 = u_xlat10 * u_xlat2.zzzz + u_xlat5; u_xlat6 = u_xlat11 * u_xlat2.zzzz + u_xlat7; u_xlat4 = u_xlat9 * u_xlat2.zzzz + u_xlat4; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 2])); u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat12.x; u_xlat8.y = u_xlat2.x; u_xlat8.z = u_xlat3.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat12.y; u_xlat9.y = u_xlat2.y; u_xlat9.z = u_xlat3.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat12.z; u_xlat7.y = u_xlat2.z; u_xlat7.z = u_xlat3.z; u_xlat3 = u_xlat8 * u_xlat2.wwww + u_xlat5; u_xlat5 = u_xlat9 * u_xlat2.wwww + u_xlat6; u_xlat2 = u_xlat7 * u_xlat2.wwww + u_xlat4; u_xlat1.w = 1.0; u_xlat3.x = dot(u_xlat3, u_xlat1); u_xlat3.y = dot(u_xlat5, u_xlat1); u_xlat3.z = dot(u_xlat2, u_xlat1); outVertices2_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat3.x); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat3.y); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat3.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati3 = ivec4(int(inSkin1_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin1_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin1_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin1_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati3 = u_xlati3 + ivec4(g_PoseOffsets[0].yyyy); u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat12.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.x = u_xlat12.y; u_xlat8.y = u_xlat4.y; u_xlat8.z = u_xlat5.y; u_xlat8.w = u_xlat6.y; u_xlat6.x = u_xlat12.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat12.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat10 = u_xlat2.yyyy * u_xlat10; u_xlat11.x = u_xlat12.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat11 = u_xlat2.yyyy * u_xlat11; u_xlat9.x = u_xlat12.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat4 = u_xlat2.yyyy * u_xlat9; u_xlat5 = u_xlat7 * u_xlat2.xxxx + u_xlat10; u_xlat7 = u_xlat8 * u_xlat2.xxxx + u_xlat11; u_xlat4 = u_xlat6 * u_xlat2.xxxx + u_xlat4; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat12.x; u_xlat10.y = u_xlat6.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat12.y; u_xlat11.y = u_xlat6.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat12.z; u_xlat9.y = u_xlat6.z; u_xlat9.z = u_xlat8.z; u_xlat5 = u_xlat10 * u_xlat2.zzzz + u_xlat5; u_xlat6 = u_xlat11 * u_xlat2.zzzz + u_xlat7; u_xlat4 = u_xlat9 * u_xlat2.zzzz + u_xlat4; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 2])); u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat12.x; u_xlat8.y = u_xlat2.x; u_xlat8.z = u_xlat3.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat12.y; u_xlat9.y = u_xlat2.y; u_xlat9.z = u_xlat3.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat12.z; u_xlat7.y = u_xlat2.z; u_xlat7.z = u_xlat3.z; u_xlat3 = u_xlat8 * u_xlat2.wwww + u_xlat5; u_xlat5 = u_xlat9 * u_xlat2.wwww + u_xlat6; u_xlat2 = u_xlat7 * u_xlat2.wwww + u_xlat4; u_xlat1.w = 1.0; u_xlat3.x = dot(u_xlat3, u_xlat1); u_xlat3.y = dot(u_xlat5, u_xlat1); u_xlat3.z = dot(u_xlat2, u_xlat1); outVertices1_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat3.x); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat3.y); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat3.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati3 = ivec4(int(inSkin0_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin0_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin0_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin0_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati3 = u_xlati3 + ivec4(g_PoseOffsets[0].xxxx); u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat12.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.x = u_xlat12.y; u_xlat8.y = u_xlat4.y; u_xlat8.z = u_xlat5.y; u_xlat8.w = u_xlat6.y; u_xlat6.x = u_xlat12.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat12.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat10 = u_xlat2.yyyy * u_xlat10; u_xlat11.x = u_xlat12.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat11 = u_xlat2.yyyy * u_xlat11; u_xlat9.x = u_xlat12.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat4 = u_xlat2.yyyy * u_xlat9; u_xlat5 = u_xlat7 * u_xlat2.xxxx + u_xlat10; u_xlat7 = u_xlat8 * u_xlat2.xxxx + u_xlat11; u_xlat4 = u_xlat6 * u_xlat2.xxxx + u_xlat4; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat12.x; u_xlat10.y = u_xlat6.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat12.y; u_xlat11.y = u_xlat6.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat12.z; u_xlat9.y = u_xlat6.z; u_xlat9.z = u_xlat8.z; u_xlat5 = u_xlat10 * u_xlat2.zzzz + u_xlat5; u_xlat6 = u_xlat11 * u_xlat2.zzzz + u_xlat7; u_xlat4 = u_xlat9 * u_xlat2.zzzz + u_xlat4; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 2])); u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat12.x; u_xlat8.y = u_xlat2.x; u_xlat8.z = u_xlat3.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat12.y; u_xlat9.y = u_xlat2.y; u_xlat9.z = u_xlat3.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat12.z; u_xlat7.y = u_xlat2.z; u_xlat7.z = u_xlat3.z; u_xlat3 = u_xlat8 * u_xlat2.wwww + u_xlat5; u_xlat5 = u_xlat9 * u_xlat2.wwww + u_xlat6; u_xlat2 = u_xlat7 * u_xlat2.wwww + u_xlat4; u_xlat1.w = 1.0; u_xlat3.x = dot(u_xlat3, u_xlat1); u_xlat3.y = dot(u_xlat5, u_xlat1); u_xlat3.z = dot(u_xlat2, u_xlat1); outVertices0_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat3.x); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat3.y); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat3.z); } } } } } } return; } @A batchMainComputeSkinCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4inSkin0inSkin1inSkin2inSkin3inSkin4 inMatrices  outVertices0 outVertices1 outVertices2 outVertices3 outVertices4#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform ComputeSkinCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; uvec4 g_PoseOffsets[2]; uint g_poseBufferMaxIndex; }; struct inVertices0_type { uint[6] value; }; layout(std430, binding = 5) readonly buffer inVertices0 { inVertices0_type inVertices0_buf[]; }; struct inVertices1_type { uint[6] value; }; layout(std430, binding = 6) readonly buffer inVertices1 { inVertices1_type inVertices1_buf[]; }; struct inVertices2_type { uint[6] value; }; layout(std430, binding = 7) readonly buffer inVertices2 { inVertices2_type inVertices2_buf[]; }; struct inVertices3_type { uint[6] value; }; layout(std430, binding = 8) readonly buffer inVertices3 { inVertices3_type inVertices3_buf[]; }; struct inVertices4_type { uint[6] value; }; layout(std430, binding = 9) readonly buffer inVertices4 { inVertices4_type inVertices4_buf[]; }; struct inSkin0_type { uint[8] value; }; layout(std430, binding = 10) readonly buffer inSkin0 { inSkin0_type inSkin0_buf[]; }; struct inSkin1_type { uint[8] value; }; layout(std430, binding = 11) readonly buffer inSkin1 { inSkin1_type inSkin1_buf[]; }; struct inSkin2_type { uint[8] value; }; layout(std430, binding = 12) readonly buffer inSkin2 { inSkin2_type inSkin2_buf[]; }; struct inSkin3_type { uint[8] value; }; layout(std430, binding = 13) readonly buffer inSkin3 { inSkin3_type inSkin3_buf[]; }; struct inSkin4_type { uint[8] value; }; layout(std430, binding = 14) readonly buffer inSkin4 { inSkin4_type inSkin4_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 15) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct outVertices0_type { uint[6] value; }; layout(std430, binding = 0) buffer outVertices0 { outVertices0_type outVertices0_buf[]; }; struct outVertices1_type { uint[6] value; }; layout(std430, binding = 1) buffer outVertices1 { outVertices1_type outVertices1_buf[]; }; struct outVertices2_type { uint[6] value; }; layout(std430, binding = 2) buffer outVertices2 { outVertices2_type outVertices2_buf[]; }; struct outVertices3_type { uint[6] value; }; layout(std430, binding = 3) buffer outVertices3 { outVertices3_type outVertices3_buf[]; }; struct outVertices4_type { uint[6] value; }; layout(std430, binding = 4) buffer outVertices4 { outVertices4_type outVertices4_buf[]; }; uint u_xlatu0; bool u_xlatb0; vec4 u_xlat1; vec3 u_xlat2; vec4 u_xlat3; vec4 u_xlat4; ivec4 u_xlati4; vec4 u_xlat5; vec4 u_xlat6; vec4 u_xlat7; vec4 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; vec4 u_xlat11; vec4 u_xlat12; vec3 u_xlat13; bool u_xlatb13; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb13 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati4 = ivec4(int(inSkin4_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin4_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin4_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin4_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati4 = u_xlati4 + ivec4(g_PoseOffsets[1].xxxx); u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat13.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat13.y; u_xlat9.y = u_xlat5.y; u_xlat9.z = u_xlat6.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat13.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat13.x; u_xlat11.y = u_xlat5.x; u_xlat11.z = u_xlat6.x; u_xlat11.w = u_xlat10.x; u_xlat11 = u_xlat3.yyyy * u_xlat11; u_xlat12.x = u_xlat13.y; u_xlat12.y = u_xlat5.y; u_xlat12.z = u_xlat6.y; u_xlat12.w = u_xlat10.y; u_xlat12 = u_xlat3.yyyy * u_xlat12; u_xlat10.x = u_xlat13.z; u_xlat10.y = u_xlat5.z; u_xlat10.z = u_xlat6.z; u_xlat5 = u_xlat3.yyyy * u_xlat10; u_xlat6 = u_xlat8 * u_xlat3.xxxx + u_xlat11; u_xlat8 = u_xlat9 * u_xlat3.xxxx + u_xlat12; u_xlat5 = u_xlat7 * u_xlat3.xxxx + u_xlat5; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 2])); u_xlat9.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat13.x; u_xlat11.y = u_xlat7.x; u_xlat11.z = u_xlat9.x; u_xlat11.w = u_xlat10.x; u_xlat12.x = u_xlat13.y; u_xlat12.y = u_xlat7.y; u_xlat12.z = u_xlat9.y; u_xlat12.w = u_xlat10.y; u_xlat10.x = u_xlat13.z; u_xlat10.y = u_xlat7.z; u_xlat10.z = u_xlat9.z; u_xlat6 = u_xlat11 * u_xlat3.zzzz + u_xlat6; u_xlat7 = u_xlat12 * u_xlat3.zzzz + u_xlat8; u_xlat5 = u_xlat10 * u_xlat3.zzzz + u_xlat5; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat13.x; u_xlat9.y = u_xlat3.x; u_xlat9.z = u_xlat4.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat13.y; u_xlat10.y = u_xlat3.y; u_xlat10.z = u_xlat4.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat13.z; u_xlat8.y = u_xlat3.z; u_xlat8.z = u_xlat4.z; u_xlat4 = u_xlat9 * u_xlat3.wwww + u_xlat6; u_xlat6 = u_xlat10 * u_xlat3.wwww + u_xlat7; u_xlat3 = u_xlat8 * u_xlat3.wwww + u_xlat5; u_xlat5.xyz = u_xlat1.xyz; u_xlat5.w = 1.0; u_xlat7.x = dot(u_xlat4, u_xlat5); u_xlat7.y = dot(u_xlat6, u_xlat5); u_xlat7.z = dot(u_xlat3, u_xlat5); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat4.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat6.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat3.yzx, u_xlat2.xyz); outVertices4_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat7.x); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat7.y); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat7.z); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat7.w); outVertices4_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat1.x); outVertices4_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat1.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb13 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati4 = ivec4(int(inSkin3_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin3_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin3_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin3_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati4 = u_xlati4 + ivec4(g_PoseOffsets[0].wwww); u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat13.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat13.y; u_xlat9.y = u_xlat5.y; u_xlat9.z = u_xlat6.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat13.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat13.x; u_xlat11.y = u_xlat5.x; u_xlat11.z = u_xlat6.x; u_xlat11.w = u_xlat10.x; u_xlat11 = u_xlat3.yyyy * u_xlat11; u_xlat12.x = u_xlat13.y; u_xlat12.y = u_xlat5.y; u_xlat12.z = u_xlat6.y; u_xlat12.w = u_xlat10.y; u_xlat12 = u_xlat3.yyyy * u_xlat12; u_xlat10.x = u_xlat13.z; u_xlat10.y = u_xlat5.z; u_xlat10.z = u_xlat6.z; u_xlat5 = u_xlat3.yyyy * u_xlat10; u_xlat6 = u_xlat8 * u_xlat3.xxxx + u_xlat11; u_xlat8 = u_xlat9 * u_xlat3.xxxx + u_xlat12; u_xlat5 = u_xlat7 * u_xlat3.xxxx + u_xlat5; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 2])); u_xlat9.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat13.x; u_xlat11.y = u_xlat7.x; u_xlat11.z = u_xlat9.x; u_xlat11.w = u_xlat10.x; u_xlat12.x = u_xlat13.y; u_xlat12.y = u_xlat7.y; u_xlat12.z = u_xlat9.y; u_xlat12.w = u_xlat10.y; u_xlat10.x = u_xlat13.z; u_xlat10.y = u_xlat7.z; u_xlat10.z = u_xlat9.z; u_xlat6 = u_xlat11 * u_xlat3.zzzz + u_xlat6; u_xlat7 = u_xlat12 * u_xlat3.zzzz + u_xlat8; u_xlat5 = u_xlat10 * u_xlat3.zzzz + u_xlat5; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat13.x; u_xlat9.y = u_xlat3.x; u_xlat9.z = u_xlat4.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat13.y; u_xlat10.y = u_xlat3.y; u_xlat10.z = u_xlat4.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat13.z; u_xlat8.y = u_xlat3.z; u_xlat8.z = u_xlat4.z; u_xlat4 = u_xlat9 * u_xlat3.wwww + u_xlat6; u_xlat6 = u_xlat10 * u_xlat3.wwww + u_xlat7; u_xlat3 = u_xlat8 * u_xlat3.wwww + u_xlat5; u_xlat5.xyz = u_xlat1.xyz; u_xlat5.w = 1.0; u_xlat7.x = dot(u_xlat4, u_xlat5); u_xlat7.y = dot(u_xlat6, u_xlat5); u_xlat7.z = dot(u_xlat3, u_xlat5); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat4.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat6.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat3.yzx, u_xlat2.xyz); outVertices3_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat7.x); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat7.y); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat7.z); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat7.w); outVertices3_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat1.x); outVertices3_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat1.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb13 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati4 = ivec4(int(inSkin2_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin2_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin2_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin2_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati4 = u_xlati4 + ivec4(g_PoseOffsets[0].zzzz); u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat13.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat13.y; u_xlat9.y = u_xlat5.y; u_xlat9.z = u_xlat6.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat13.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat13.x; u_xlat11.y = u_xlat5.x; u_xlat11.z = u_xlat6.x; u_xlat11.w = u_xlat10.x; u_xlat11 = u_xlat3.yyyy * u_xlat11; u_xlat12.x = u_xlat13.y; u_xlat12.y = u_xlat5.y; u_xlat12.z = u_xlat6.y; u_xlat12.w = u_xlat10.y; u_xlat12 = u_xlat3.yyyy * u_xlat12; u_xlat10.x = u_xlat13.z; u_xlat10.y = u_xlat5.z; u_xlat10.z = u_xlat6.z; u_xlat5 = u_xlat3.yyyy * u_xlat10; u_xlat6 = u_xlat8 * u_xlat3.xxxx + u_xlat11; u_xlat8 = u_xlat9 * u_xlat3.xxxx + u_xlat12; u_xlat5 = u_xlat7 * u_xlat3.xxxx + u_xlat5; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 2])); u_xlat9.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat13.x; u_xlat11.y = u_xlat7.x; u_xlat11.z = u_xlat9.x; u_xlat11.w = u_xlat10.x; u_xlat12.x = u_xlat13.y; u_xlat12.y = u_xlat7.y; u_xlat12.z = u_xlat9.y; u_xlat12.w = u_xlat10.y; u_xlat10.x = u_xlat13.z; u_xlat10.y = u_xlat7.z; u_xlat10.z = u_xlat9.z; u_xlat6 = u_xlat11 * u_xlat3.zzzz + u_xlat6; u_xlat7 = u_xlat12 * u_xlat3.zzzz + u_xlat8; u_xlat5 = u_xlat10 * u_xlat3.zzzz + u_xlat5; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat13.x; u_xlat9.y = u_xlat3.x; u_xlat9.z = u_xlat4.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat13.y; u_xlat10.y = u_xlat3.y; u_xlat10.z = u_xlat4.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat13.z; u_xlat8.y = u_xlat3.z; u_xlat8.z = u_xlat4.z; u_xlat4 = u_xlat9 * u_xlat3.wwww + u_xlat6; u_xlat6 = u_xlat10 * u_xlat3.wwww + u_xlat7; u_xlat3 = u_xlat8 * u_xlat3.wwww + u_xlat5; u_xlat5.xyz = u_xlat1.xyz; u_xlat5.w = 1.0; u_xlat7.x = dot(u_xlat4, u_xlat5); u_xlat7.y = dot(u_xlat6, u_xlat5); u_xlat7.z = dot(u_xlat3, u_xlat5); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat4.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat6.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat3.yzx, u_xlat2.xyz); outVertices2_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat7.x); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat7.y); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat7.z); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat7.w); outVertices2_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat1.x); outVertices2_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat1.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb13 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati4 = ivec4(int(inSkin1_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin1_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin1_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin1_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati4 = u_xlati4 + ivec4(g_PoseOffsets[0].yyyy); u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat13.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat13.y; u_xlat9.y = u_xlat5.y; u_xlat9.z = u_xlat6.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat13.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat13.x; u_xlat11.y = u_xlat5.x; u_xlat11.z = u_xlat6.x; u_xlat11.w = u_xlat10.x; u_xlat11 = u_xlat3.yyyy * u_xlat11; u_xlat12.x = u_xlat13.y; u_xlat12.y = u_xlat5.y; u_xlat12.z = u_xlat6.y; u_xlat12.w = u_xlat10.y; u_xlat12 = u_xlat3.yyyy * u_xlat12; u_xlat10.x = u_xlat13.z; u_xlat10.y = u_xlat5.z; u_xlat10.z = u_xlat6.z; u_xlat5 = u_xlat3.yyyy * u_xlat10; u_xlat6 = u_xlat8 * u_xlat3.xxxx + u_xlat11; u_xlat8 = u_xlat9 * u_xlat3.xxxx + u_xlat12; u_xlat5 = u_xlat7 * u_xlat3.xxxx + u_xlat5; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 2])); u_xlat9.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat13.x; u_xlat11.y = u_xlat7.x; u_xlat11.z = u_xlat9.x; u_xlat11.w = u_xlat10.x; u_xlat12.x = u_xlat13.y; u_xlat12.y = u_xlat7.y; u_xlat12.z = u_xlat9.y; u_xlat12.w = u_xlat10.y; u_xlat10.x = u_xlat13.z; u_xlat10.y = u_xlat7.z; u_xlat10.z = u_xlat9.z; u_xlat6 = u_xlat11 * u_xlat3.zzzz + u_xlat6; u_xlat7 = u_xlat12 * u_xlat3.zzzz + u_xlat8; u_xlat5 = u_xlat10 * u_xlat3.zzzz + u_xlat5; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat13.x; u_xlat9.y = u_xlat3.x; u_xlat9.z = u_xlat4.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat13.y; u_xlat10.y = u_xlat3.y; u_xlat10.z = u_xlat4.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat13.z; u_xlat8.y = u_xlat3.z; u_xlat8.z = u_xlat4.z; u_xlat4 = u_xlat9 * u_xlat3.wwww + u_xlat6; u_xlat6 = u_xlat10 * u_xlat3.wwww + u_xlat7; u_xlat3 = u_xlat8 * u_xlat3.wwww + u_xlat5; u_xlat5.xyz = u_xlat1.xyz; u_xlat5.w = 1.0; u_xlat7.x = dot(u_xlat4, u_xlat5); u_xlat7.y = dot(u_xlat6, u_xlat5); u_xlat7.z = dot(u_xlat3, u_xlat5); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat4.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat6.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat3.yzx, u_xlat2.xyz); outVertices1_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat7.x); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat7.y); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat7.z); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat7.w); outVertices1_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat1.x); outVertices1_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat1.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb13 = u_xlatu0> 2) + 0]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati4 = ivec4(int(inSkin0_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin0_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin0_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin0_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati4 = u_xlati4 + ivec4(g_PoseOffsets[0].xxxx); u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat13.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat13.y; u_xlat9.y = u_xlat5.y; u_xlat9.z = u_xlat6.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat13.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat13.x; u_xlat11.y = u_xlat5.x; u_xlat11.z = u_xlat6.x; u_xlat11.w = u_xlat10.x; u_xlat11 = u_xlat3.yyyy * u_xlat11; u_xlat12.x = u_xlat13.y; u_xlat12.y = u_xlat5.y; u_xlat12.z = u_xlat6.y; u_xlat12.w = u_xlat10.y; u_xlat12 = u_xlat3.yyyy * u_xlat12; u_xlat10.x = u_xlat13.z; u_xlat10.y = u_xlat5.z; u_xlat10.z = u_xlat6.z; u_xlat5 = u_xlat3.yyyy * u_xlat10; u_xlat6 = u_xlat8 * u_xlat3.xxxx + u_xlat11; u_xlat8 = u_xlat9 * u_xlat3.xxxx + u_xlat12; u_xlat5 = u_xlat7 * u_xlat3.xxxx + u_xlat5; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 2])); u_xlat9.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat13.x; u_xlat11.y = u_xlat7.x; u_xlat11.z = u_xlat9.x; u_xlat11.w = u_xlat10.x; u_xlat12.x = u_xlat13.y; u_xlat12.y = u_xlat7.y; u_xlat12.z = u_xlat9.y; u_xlat12.w = u_xlat10.y; u_xlat10.x = u_xlat13.z; u_xlat10.y = u_xlat7.z; u_xlat10.z = u_xlat9.z; u_xlat6 = u_xlat11 * u_xlat3.zzzz + u_xlat6; u_xlat7 = u_xlat12 * u_xlat3.zzzz + u_xlat8; u_xlat5 = u_xlat10 * u_xlat3.zzzz + u_xlat5; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat13.x; u_xlat9.y = u_xlat3.x; u_xlat9.z = u_xlat4.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat13.y; u_xlat10.y = u_xlat3.y; u_xlat10.z = u_xlat4.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat13.z; u_xlat8.y = u_xlat3.z; u_xlat8.z = u_xlat4.z; u_xlat4 = u_xlat9 * u_xlat3.wwww + u_xlat6; u_xlat6 = u_xlat10 * u_xlat3.wwww + u_xlat7; u_xlat3 = u_xlat8 * u_xlat3.wwww + u_xlat5; u_xlat5.xyz = u_xlat1.xyz; u_xlat5.w = 1.0; u_xlat7.x = dot(u_xlat4, u_xlat5); u_xlat7.y = dot(u_xlat6, u_xlat5); u_xlat7.z = dot(u_xlat3, u_xlat5); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat4.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat6.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat3.yzx, u_xlat2.xyz); outVertices0_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat7.x); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat7.y); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat7.z); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat7.w); outVertices0_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat1.x); outVertices0_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat1.y); } } } } } } return; } @A batchMainComputeSkinCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4inSkin0inSkin1inSkin2inSkin3inSkin4 inMatrices  outVertices0 outVertices1 outVertices2 outVertices3 outVertices4#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform ComputeSkinCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; uvec4 g_PoseOffsets[2]; uint g_poseBufferMaxIndex; }; struct inVertices0_type { uint[10] value; }; layout(std430, binding = 5) readonly buffer inVertices0 { inVertices0_type inVertices0_buf[]; }; struct inVertices1_type { uint[10] value; }; layout(std430, binding = 6) readonly buffer inVertices1 { inVertices1_type inVertices1_buf[]; }; struct inVertices2_type { uint[10] value; }; layout(std430, binding = 7) readonly buffer inVertices2 { inVertices2_type inVertices2_buf[]; }; struct inVertices3_type { uint[10] value; }; layout(std430, binding = 8) readonly buffer inVertices3 { inVertices3_type inVertices3_buf[]; }; struct inVertices4_type { uint[10] value; }; layout(std430, binding = 9) readonly buffer inVertices4 { inVertices4_type inVertices4_buf[]; }; struct inSkin0_type { uint[8] value; }; layout(std430, binding = 10) readonly buffer inSkin0 { inSkin0_type inSkin0_buf[]; }; struct inSkin1_type { uint[8] value; }; layout(std430, binding = 11) readonly buffer inSkin1 { inSkin1_type inSkin1_buf[]; }; struct inSkin2_type { uint[8] value; }; layout(std430, binding = 12) readonly buffer inSkin2 { inSkin2_type inSkin2_buf[]; }; struct inSkin3_type { uint[8] value; }; layout(std430, binding = 13) readonly buffer inSkin3 { inSkin3_type inSkin3_buf[]; }; struct inSkin4_type { uint[8] value; }; layout(std430, binding = 14) readonly buffer inSkin4 { inSkin4_type inSkin4_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 15) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct outVertices0_type { uint[10] value; }; layout(std430, binding = 0) buffer outVertices0 { outVertices0_type outVertices0_buf[]; }; struct outVertices1_type { uint[10] value; }; layout(std430, binding = 1) buffer outVertices1 { outVertices1_type outVertices1_buf[]; }; struct outVertices2_type { uint[10] value; }; layout(std430, binding = 2) buffer outVertices2 { outVertices2_type outVertices2_buf[]; }; struct outVertices3_type { uint[10] value; }; layout(std430, binding = 3) buffer outVertices3 { outVertices3_type outVertices3_buf[]; }; struct outVertices4_type { uint[10] value; }; layout(std430, binding = 4) buffer outVertices4 { outVertices4_type outVertices4_buf[]; }; uint u_xlatu0; bool u_xlatb0; vec4 u_xlat1; vec4 u_xlat2; vec4 u_xlat3; vec4 u_xlat4; vec4 u_xlat5; ivec4 u_xlati5; vec4 u_xlat6; vec4 u_xlat7; vec4 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; vec4 u_xlat11; vec4 u_xlat12; vec4 u_xlat13; vec3 u_xlat14; bool u_xlatb14; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb14 = u_xlatu0> 2) + 3]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.xy = vec2(uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(32 >> 2) + 0]), uintBitsToFloat(inVertices4_buf[u_xlatu0].value[(32 >> 2) + 1])); u_xlat4 = vec4(uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati5 = ivec4(int(inSkin4_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin4_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin4_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin4_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati5 = u_xlati5 + ivec4(g_PoseOffsets[1].xxxx); u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat14.x; u_xlat9.y = u_xlat6.x; u_xlat9.z = u_xlat7.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat14.y; u_xlat10.y = u_xlat6.y; u_xlat10.z = u_xlat7.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat14.z; u_xlat8.y = u_xlat6.z; u_xlat8.z = u_xlat7.z; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat14.x; u_xlat12.y = u_xlat6.x; u_xlat12.z = u_xlat7.x; u_xlat12.w = u_xlat11.x; u_xlat12 = u_xlat4.yyyy * u_xlat12; u_xlat13.x = u_xlat14.y; u_xlat13.y = u_xlat6.y; u_xlat13.z = u_xlat7.y; u_xlat13.w = u_xlat11.y; u_xlat13 = u_xlat4.yyyy * u_xlat13; u_xlat11.x = u_xlat14.z; u_xlat11.y = u_xlat6.z; u_xlat11.z = u_xlat7.z; u_xlat6 = u_xlat4.yyyy * u_xlat11; u_xlat7 = u_xlat9 * u_xlat4.xxxx + u_xlat12; u_xlat9 = u_xlat10 * u_xlat4.xxxx + u_xlat13; u_xlat6 = u_xlat8 * u_xlat4.xxxx + u_xlat6; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 2])); u_xlat10.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat14.x; u_xlat12.y = u_xlat8.x; u_xlat12.z = u_xlat10.x; u_xlat12.w = u_xlat11.x; u_xlat13.x = u_xlat14.y; u_xlat13.y = u_xlat8.y; u_xlat13.z = u_xlat10.y; u_xlat13.w = u_xlat11.y; u_xlat11.x = u_xlat14.z; u_xlat11.y = u_xlat8.z; u_xlat11.z = u_xlat10.z; u_xlat7 = u_xlat12 * u_xlat4.zzzz + u_xlat7; u_xlat8 = u_xlat13 * u_xlat4.zzzz + u_xlat9; u_xlat6 = u_xlat11 * u_xlat4.zzzz + u_xlat6; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat14.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat14.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat14.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat5 = u_xlat10 * u_xlat4.wwww + u_xlat7; u_xlat7 = u_xlat11 * u_xlat4.wwww + u_xlat8; u_xlat4 = u_xlat9 * u_xlat4.wwww + u_xlat6; u_xlat6.xyz = u_xlat1.yzw; u_xlat6.w = 1.0; u_xlat8.x = dot(u_xlat5, u_xlat6); u_xlat8.y = dot(u_xlat7, u_xlat6); u_xlat8.z = dot(u_xlat4, u_xlat6); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat5.xyz, u_xlat1.xyz); u_xlat6.x = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat6.y = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat3.zw = u_xlat2.zw; u_xlat6.z = dot(u_xlat5.zxy, u_xlat3.xzw); u_xlat6.w = dot(u_xlat7.zxy, u_xlat3.xzw); u_xlat3.x = dot(u_xlat4.zxy, u_xlat3.xzw); outVertices4_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat8.x); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat8.y); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat8.z); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat8.w); outVertices4_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat6.x); outVertices4_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat6.y); outVertices4_buf[u_xlatu0].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat6.z); outVertices4_buf[u_xlatu0].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat6.w); outVertices4_buf[u_xlatu0].value[(32 >> 2)] = floatBitsToUint(u_xlat3.x); outVertices4_buf[u_xlatu0].value[(32 >> 2) + 1] = floatBitsToUint(u_xlat3.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb14 = u_xlatu0> 2) + 3]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.xy = vec2(uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(32 >> 2) + 0]), uintBitsToFloat(inVertices3_buf[u_xlatu0].value[(32 >> 2) + 1])); u_xlat4 = vec4(uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati5 = ivec4(int(inSkin3_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin3_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin3_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin3_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati5 = u_xlati5 + ivec4(g_PoseOffsets[0].wwww); u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat14.x; u_xlat9.y = u_xlat6.x; u_xlat9.z = u_xlat7.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat14.y; u_xlat10.y = u_xlat6.y; u_xlat10.z = u_xlat7.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat14.z; u_xlat8.y = u_xlat6.z; u_xlat8.z = u_xlat7.z; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat14.x; u_xlat12.y = u_xlat6.x; u_xlat12.z = u_xlat7.x; u_xlat12.w = u_xlat11.x; u_xlat12 = u_xlat4.yyyy * u_xlat12; u_xlat13.x = u_xlat14.y; u_xlat13.y = u_xlat6.y; u_xlat13.z = u_xlat7.y; u_xlat13.w = u_xlat11.y; u_xlat13 = u_xlat4.yyyy * u_xlat13; u_xlat11.x = u_xlat14.z; u_xlat11.y = u_xlat6.z; u_xlat11.z = u_xlat7.z; u_xlat6 = u_xlat4.yyyy * u_xlat11; u_xlat7 = u_xlat9 * u_xlat4.xxxx + u_xlat12; u_xlat9 = u_xlat10 * u_xlat4.xxxx + u_xlat13; u_xlat6 = u_xlat8 * u_xlat4.xxxx + u_xlat6; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 2])); u_xlat10.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat14.x; u_xlat12.y = u_xlat8.x; u_xlat12.z = u_xlat10.x; u_xlat12.w = u_xlat11.x; u_xlat13.x = u_xlat14.y; u_xlat13.y = u_xlat8.y; u_xlat13.z = u_xlat10.y; u_xlat13.w = u_xlat11.y; u_xlat11.x = u_xlat14.z; u_xlat11.y = u_xlat8.z; u_xlat11.z = u_xlat10.z; u_xlat7 = u_xlat12 * u_xlat4.zzzz + u_xlat7; u_xlat8 = u_xlat13 * u_xlat4.zzzz + u_xlat9; u_xlat6 = u_xlat11 * u_xlat4.zzzz + u_xlat6; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat14.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat14.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat14.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat5 = u_xlat10 * u_xlat4.wwww + u_xlat7; u_xlat7 = u_xlat11 * u_xlat4.wwww + u_xlat8; u_xlat4 = u_xlat9 * u_xlat4.wwww + u_xlat6; u_xlat6.xyz = u_xlat1.yzw; u_xlat6.w = 1.0; u_xlat8.x = dot(u_xlat5, u_xlat6); u_xlat8.y = dot(u_xlat7, u_xlat6); u_xlat8.z = dot(u_xlat4, u_xlat6); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat5.xyz, u_xlat1.xyz); u_xlat6.x = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat6.y = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat3.zw = u_xlat2.zw; u_xlat6.z = dot(u_xlat5.zxy, u_xlat3.xzw); u_xlat6.w = dot(u_xlat7.zxy, u_xlat3.xzw); u_xlat3.x = dot(u_xlat4.zxy, u_xlat3.xzw); outVertices3_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat8.x); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat8.y); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat8.z); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat8.w); outVertices3_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat6.x); outVertices3_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat6.y); outVertices3_buf[u_xlatu0].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat6.z); outVertices3_buf[u_xlatu0].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat6.w); outVertices3_buf[u_xlatu0].value[(32 >> 2)] = floatBitsToUint(u_xlat3.x); outVertices3_buf[u_xlatu0].value[(32 >> 2) + 1] = floatBitsToUint(u_xlat3.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb14 = u_xlatu0> 2) + 3]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.xy = vec2(uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(32 >> 2) + 0]), uintBitsToFloat(inVertices2_buf[u_xlatu0].value[(32 >> 2) + 1])); u_xlat4 = vec4(uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati5 = ivec4(int(inSkin2_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin2_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin2_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin2_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati5 = u_xlati5 + ivec4(g_PoseOffsets[0].zzzz); u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat14.x; u_xlat9.y = u_xlat6.x; u_xlat9.z = u_xlat7.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat14.y; u_xlat10.y = u_xlat6.y; u_xlat10.z = u_xlat7.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat14.z; u_xlat8.y = u_xlat6.z; u_xlat8.z = u_xlat7.z; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat14.x; u_xlat12.y = u_xlat6.x; u_xlat12.z = u_xlat7.x; u_xlat12.w = u_xlat11.x; u_xlat12 = u_xlat4.yyyy * u_xlat12; u_xlat13.x = u_xlat14.y; u_xlat13.y = u_xlat6.y; u_xlat13.z = u_xlat7.y; u_xlat13.w = u_xlat11.y; u_xlat13 = u_xlat4.yyyy * u_xlat13; u_xlat11.x = u_xlat14.z; u_xlat11.y = u_xlat6.z; u_xlat11.z = u_xlat7.z; u_xlat6 = u_xlat4.yyyy * u_xlat11; u_xlat7 = u_xlat9 * u_xlat4.xxxx + u_xlat12; u_xlat9 = u_xlat10 * u_xlat4.xxxx + u_xlat13; u_xlat6 = u_xlat8 * u_xlat4.xxxx + u_xlat6; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 2])); u_xlat10.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat14.x; u_xlat12.y = u_xlat8.x; u_xlat12.z = u_xlat10.x; u_xlat12.w = u_xlat11.x; u_xlat13.x = u_xlat14.y; u_xlat13.y = u_xlat8.y; u_xlat13.z = u_xlat10.y; u_xlat13.w = u_xlat11.y; u_xlat11.x = u_xlat14.z; u_xlat11.y = u_xlat8.z; u_xlat11.z = u_xlat10.z; u_xlat7 = u_xlat12 * u_xlat4.zzzz + u_xlat7; u_xlat8 = u_xlat13 * u_xlat4.zzzz + u_xlat9; u_xlat6 = u_xlat11 * u_xlat4.zzzz + u_xlat6; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat14.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat14.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat14.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat5 = u_xlat10 * u_xlat4.wwww + u_xlat7; u_xlat7 = u_xlat11 * u_xlat4.wwww + u_xlat8; u_xlat4 = u_xlat9 * u_xlat4.wwww + u_xlat6; u_xlat6.xyz = u_xlat1.yzw; u_xlat6.w = 1.0; u_xlat8.x = dot(u_xlat5, u_xlat6); u_xlat8.y = dot(u_xlat7, u_xlat6); u_xlat8.z = dot(u_xlat4, u_xlat6); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat5.xyz, u_xlat1.xyz); u_xlat6.x = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat6.y = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat3.zw = u_xlat2.zw; u_xlat6.z = dot(u_xlat5.zxy, u_xlat3.xzw); u_xlat6.w = dot(u_xlat7.zxy, u_xlat3.xzw); u_xlat3.x = dot(u_xlat4.zxy, u_xlat3.xzw); outVertices2_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat8.x); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat8.y); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat8.z); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat8.w); outVertices2_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat6.x); outVertices2_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat6.y); outVertices2_buf[u_xlatu0].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat6.z); outVertices2_buf[u_xlatu0].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat6.w); outVertices2_buf[u_xlatu0].value[(32 >> 2)] = floatBitsToUint(u_xlat3.x); outVertices2_buf[u_xlatu0].value[(32 >> 2) + 1] = floatBitsToUint(u_xlat3.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb14 = u_xlatu0> 2) + 3]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.xy = vec2(uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(32 >> 2) + 0]), uintBitsToFloat(inVertices1_buf[u_xlatu0].value[(32 >> 2) + 1])); u_xlat4 = vec4(uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati5 = ivec4(int(inSkin1_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin1_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin1_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin1_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati5 = u_xlati5 + ivec4(g_PoseOffsets[0].yyyy); u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat14.x; u_xlat9.y = u_xlat6.x; u_xlat9.z = u_xlat7.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat14.y; u_xlat10.y = u_xlat6.y; u_xlat10.z = u_xlat7.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat14.z; u_xlat8.y = u_xlat6.z; u_xlat8.z = u_xlat7.z; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat14.x; u_xlat12.y = u_xlat6.x; u_xlat12.z = u_xlat7.x; u_xlat12.w = u_xlat11.x; u_xlat12 = u_xlat4.yyyy * u_xlat12; u_xlat13.x = u_xlat14.y; u_xlat13.y = u_xlat6.y; u_xlat13.z = u_xlat7.y; u_xlat13.w = u_xlat11.y; u_xlat13 = u_xlat4.yyyy * u_xlat13; u_xlat11.x = u_xlat14.z; u_xlat11.y = u_xlat6.z; u_xlat11.z = u_xlat7.z; u_xlat6 = u_xlat4.yyyy * u_xlat11; u_xlat7 = u_xlat9 * u_xlat4.xxxx + u_xlat12; u_xlat9 = u_xlat10 * u_xlat4.xxxx + u_xlat13; u_xlat6 = u_xlat8 * u_xlat4.xxxx + u_xlat6; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 2])); u_xlat10.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat14.x; u_xlat12.y = u_xlat8.x; u_xlat12.z = u_xlat10.x; u_xlat12.w = u_xlat11.x; u_xlat13.x = u_xlat14.y; u_xlat13.y = u_xlat8.y; u_xlat13.z = u_xlat10.y; u_xlat13.w = u_xlat11.y; u_xlat11.x = u_xlat14.z; u_xlat11.y = u_xlat8.z; u_xlat11.z = u_xlat10.z; u_xlat7 = u_xlat12 * u_xlat4.zzzz + u_xlat7; u_xlat8 = u_xlat13 * u_xlat4.zzzz + u_xlat9; u_xlat6 = u_xlat11 * u_xlat4.zzzz + u_xlat6; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat14.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat14.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat14.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat5 = u_xlat10 * u_xlat4.wwww + u_xlat7; u_xlat7 = u_xlat11 * u_xlat4.wwww + u_xlat8; u_xlat4 = u_xlat9 * u_xlat4.wwww + u_xlat6; u_xlat6.xyz = u_xlat1.yzw; u_xlat6.w = 1.0; u_xlat8.x = dot(u_xlat5, u_xlat6); u_xlat8.y = dot(u_xlat7, u_xlat6); u_xlat8.z = dot(u_xlat4, u_xlat6); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat5.xyz, u_xlat1.xyz); u_xlat6.x = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat6.y = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat3.zw = u_xlat2.zw; u_xlat6.z = dot(u_xlat5.zxy, u_xlat3.xzw); u_xlat6.w = dot(u_xlat7.zxy, u_xlat3.xzw); u_xlat3.x = dot(u_xlat4.zxy, u_xlat3.xzw); outVertices1_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat8.x); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat8.y); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat8.z); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat8.w); outVertices1_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat6.x); outVertices1_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat6.y); outVertices1_buf[u_xlatu0].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat6.z); outVertices1_buf[u_xlatu0].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat6.w); outVertices1_buf[u_xlatu0].value[(32 >> 2)] = floatBitsToUint(u_xlat3.x); outVertices1_buf[u_xlatu0].value[(32 >> 2) + 1] = floatBitsToUint(u_xlat3.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb14 = u_xlatu0> 2) + 3]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.xy = vec2(uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(32 >> 2) + 0]), uintBitsToFloat(inVertices0_buf[u_xlatu0].value[(32 >> 2) + 1])); u_xlat4 = vec4(uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati5 = ivec4(int(inSkin0_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin0_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin0_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin0_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati5 = u_xlati5 + ivec4(g_PoseOffsets[0].xxxx); u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat14.x; u_xlat9.y = u_xlat6.x; u_xlat9.z = u_xlat7.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat14.y; u_xlat10.y = u_xlat6.y; u_xlat10.z = u_xlat7.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat14.z; u_xlat8.y = u_xlat6.z; u_xlat8.z = u_xlat7.z; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat14.x; u_xlat12.y = u_xlat6.x; u_xlat12.z = u_xlat7.x; u_xlat12.w = u_xlat11.x; u_xlat12 = u_xlat4.yyyy * u_xlat12; u_xlat13.x = u_xlat14.y; u_xlat13.y = u_xlat6.y; u_xlat13.z = u_xlat7.y; u_xlat13.w = u_xlat11.y; u_xlat13 = u_xlat4.yyyy * u_xlat13; u_xlat11.x = u_xlat14.z; u_xlat11.y = u_xlat6.z; u_xlat11.z = u_xlat7.z; u_xlat6 = u_xlat4.yyyy * u_xlat11; u_xlat7 = u_xlat9 * u_xlat4.xxxx + u_xlat12; u_xlat9 = u_xlat10 * u_xlat4.xxxx + u_xlat13; u_xlat6 = u_xlat8 * u_xlat4.xxxx + u_xlat6; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 2])); u_xlat10.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat14.x; u_xlat12.y = u_xlat8.x; u_xlat12.z = u_xlat10.x; u_xlat12.w = u_xlat11.x; u_xlat13.x = u_xlat14.y; u_xlat13.y = u_xlat8.y; u_xlat13.z = u_xlat10.y; u_xlat13.w = u_xlat11.y; u_xlat11.x = u_xlat14.z; u_xlat11.y = u_xlat8.z; u_xlat11.z = u_xlat10.z; u_xlat7 = u_xlat12 * u_xlat4.zzzz + u_xlat7; u_xlat8 = u_xlat13 * u_xlat4.zzzz + u_xlat9; u_xlat6 = u_xlat11 * u_xlat4.zzzz + u_xlat6; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat14.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat14.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat14.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat5 = u_xlat10 * u_xlat4.wwww + u_xlat7; u_xlat7 = u_xlat11 * u_xlat4.wwww + u_xlat8; u_xlat4 = u_xlat9 * u_xlat4.wwww + u_xlat6; u_xlat6.xyz = u_xlat1.yzw; u_xlat6.w = 1.0; u_xlat8.x = dot(u_xlat5, u_xlat6); u_xlat8.y = dot(u_xlat7, u_xlat6); u_xlat8.z = dot(u_xlat4, u_xlat6); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat5.xyz, u_xlat1.xyz); u_xlat6.x = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat6.y = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat3.zw = u_xlat2.zw; u_xlat6.z = dot(u_xlat5.zxy, u_xlat3.xzw); u_xlat6.w = dot(u_xlat7.zxy, u_xlat3.xzw); u_xlat3.x = dot(u_xlat4.zxy, u_xlat3.xzw); outVertices0_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat8.x); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat8.y); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat8.z); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat8.w); outVertices0_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat6.x); outVertices0_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat6.y); outVertices0_buf[u_xlatu0].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat6.z); outVertices0_buf[u_xlatu0].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat6.w); outVertices0_buf[u_xlatu0].value[(32 >> 2)] = floatBitsToUint(u_xlat3.x); outVertices0_buf[u_xlatu0].value[(32 >> 2) + 1] = floatBitsToUint(u_xlat3.y); } } } } } } return; } @AbatchMainInPlaceComputeSkinInPlaceCBufferinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6 inMatricesinOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices6k#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform ComputeSkinInPlaceCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; uvec4 g_PoseOffsets[2]; uint g_poseBufferMaxIndex; }; struct inSkin0_type { uint[1] value; }; layout(std430, binding = 7) readonly buffer inSkin0 { inSkin0_type inSkin0_buf[]; }; struct inSkin1_type { uint[1] value; }; layout(std430, binding = 8) readonly buffer inSkin1 { inSkin1_type inSkin1_buf[]; }; struct inSkin2_type { uint[1] value; }; layout(std430, binding = 9) readonly buffer inSkin2 { inSkin2_type inSkin2_buf[]; }; struct inSkin3_type { uint[1] value; }; layout(std430, binding = 10) readonly buffer inSkin3 { inSkin3_type inSkin3_buf[]; }; struct inSkin4_type { uint[1] value; }; layout(std430, binding = 11) readonly buffer inSkin4 { inSkin4_type inSkin4_buf[]; }; struct inSkin5_type { uint[1] value; }; layout(std430, binding = 12) readonly buffer inSkin5 { inSkin5_type inSkin5_buf[]; }; struct inSkin6_type { uint[1] value; }; layout(std430, binding = 13) readonly buffer inSkin6 { inSkin6_type inSkin6_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 14) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct inOutVertices0_type { uint[3] value; }; layout(std430, binding = 0) buffer inOutVertices0 { inOutVertices0_type inOutVertices0_buf[]; }; struct inOutVertices1_type { uint[3] value; }; layout(std430, binding = 1) buffer inOutVertices1 { inOutVertices1_type inOutVertices1_buf[]; }; struct inOutVertices2_type { uint[3] value; }; layout(std430, binding = 2) buffer inOutVertices2 { inOutVertices2_type inOutVertices2_buf[]; }; struct inOutVertices3_type { uint[3] value; }; layout(std430, binding = 3) buffer inOutVertices3 { inOutVertices3_type inOutVertices3_buf[]; }; struct inOutVertices4_type { uint[3] value; }; layout(std430, binding = 4) buffer inOutVertices4 { inOutVertices4_type inOutVertices4_buf[]; }; struct inOutVertices5_type { uint[3] value; }; layout(std430, binding = 5) buffer inOutVertices5 { inOutVertices5_type inOutVertices5_buf[]; }; struct inOutVertices6_type { uint[3] value; }; layout(std430, binding = 6) buffer inOutVertices6 { inOutVertices6_type inOutVertices6_buf[]; }; uint u_xlatu0; bool u_xlatb0; vec4 u_xlat1; vec4 u_xlat2; vec4 u_xlat3; vec4 u_xlat4; int u_xlati5; uint u_xlatu5; bool u_xlatb5; vec3 u_xlat6; vec3 u_xlat7; vec3 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; vec4 u_xlat11; uint u_xlatu12; bool u_xlatb12; float u_xlat17; uint u_xlatu17; int u_xlati24; uint u_xlatu24; uint u_xlatu36; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].z); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlatu12 = inSkin6_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati24 = int(u_xlatu0) + 1; u_xlatu24 = inSkin6_buf[u_xlati24].value[(0 >> 2) + 0]; u_xlat2.x = float(0.0); u_xlat2.y = float(0.0); u_xlat2.z = float(0.0); u_xlat2.w = float(0.0); u_xlat3.x = float(0.0); u_xlat3.y = float(0.0); u_xlat3.z = float(0.0); u_xlat3.w = float(0.0); u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlatu36 = u_xlatu12; while(true){ u_xlatb5 = u_xlatu36>=u_xlatu24; if(u_xlatb5){break;} u_xlatu5 = inSkin6_buf[u_xlatu36].value[(0 >> 2) + 0]; u_xlatu17 = u_xlatu5 >> (16u & uint(0x1F)); u_xlat17 = float(u_xlatu17); u_xlat17 = u_xlat17 * 1.52590219e-05; u_xlati5 = int(u_xlatu5 & 65535u); u_xlati5 = u_xlati5 + int(g_PoseOffsets[1].z); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat6.x; u_xlat10.y = u_xlat7.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat6.y; u_xlat11.y = u_xlat7.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat6.z; u_xlat9.y = u_xlat7.z; u_xlat9.z = u_xlat8.z; u_xlat2 = u_xlat10 * vec4(u_xlat17) + u_xlat2; u_xlat3 = u_xlat11 * vec4(u_xlat17) + u_xlat3; u_xlat4 = u_xlat9 * vec4(u_xlat17) + u_xlat4; u_xlatu36 = u_xlatu36 + 1u; } u_xlat1.w = 1.0; u_xlat2.x = dot(u_xlat2, u_xlat1); u_xlat2.y = dot(u_xlat3, u_xlat1); u_xlat2.z = dot(u_xlat4, u_xlat1); inOutVertices6_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat2.x); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat2.y); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat2.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].y); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlatu12 = inSkin5_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati24 = int(u_xlatu0) + 1; u_xlatu24 = inSkin5_buf[u_xlati24].value[(0 >> 2) + 0]; u_xlat2.x = float(0.0); u_xlat2.y = float(0.0); u_xlat2.z = float(0.0); u_xlat2.w = float(0.0); u_xlat3.x = float(0.0); u_xlat3.y = float(0.0); u_xlat3.z = float(0.0); u_xlat3.w = float(0.0); u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlatu36 = u_xlatu12; while(true){ u_xlatb5 = u_xlatu36>=u_xlatu24; if(u_xlatb5){break;} u_xlatu5 = inSkin5_buf[u_xlatu36].value[(0 >> 2) + 0]; u_xlatu17 = u_xlatu5 >> (16u & uint(0x1F)); u_xlat17 = float(u_xlatu17); u_xlat17 = u_xlat17 * 1.52590219e-05; u_xlati5 = int(u_xlatu5 & 65535u); u_xlati5 = u_xlati5 + int(g_PoseOffsets[1].y); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat6.x; u_xlat10.y = u_xlat7.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat6.y; u_xlat11.y = u_xlat7.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat6.z; u_xlat9.y = u_xlat7.z; u_xlat9.z = u_xlat8.z; u_xlat2 = u_xlat10 * vec4(u_xlat17) + u_xlat2; u_xlat3 = u_xlat11 * vec4(u_xlat17) + u_xlat3; u_xlat4 = u_xlat9 * vec4(u_xlat17) + u_xlat4; u_xlatu36 = u_xlatu36 + 1u; } u_xlat1.w = 1.0; u_xlat2.x = dot(u_xlat2, u_xlat1); u_xlat2.y = dot(u_xlat3, u_xlat1); u_xlat2.z = dot(u_xlat4, u_xlat1); inOutVertices5_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat2.x); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat2.y); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat2.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlatu12 = inSkin4_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati24 = int(u_xlatu0) + 1; u_xlatu24 = inSkin4_buf[u_xlati24].value[(0 >> 2) + 0]; u_xlat2.x = float(0.0); u_xlat2.y = float(0.0); u_xlat2.z = float(0.0); u_xlat2.w = float(0.0); u_xlat3.x = float(0.0); u_xlat3.y = float(0.0); u_xlat3.z = float(0.0); u_xlat3.w = float(0.0); u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlatu36 = u_xlatu12; while(true){ u_xlatb5 = u_xlatu36>=u_xlatu24; if(u_xlatb5){break;} u_xlatu5 = inSkin4_buf[u_xlatu36].value[(0 >> 2) + 0]; u_xlatu17 = u_xlatu5 >> (16u & uint(0x1F)); u_xlat17 = float(u_xlatu17); u_xlat17 = u_xlat17 * 1.52590219e-05; u_xlati5 = int(u_xlatu5 & 65535u); u_xlati5 = u_xlati5 + int(g_PoseOffsets[1].x); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat6.x; u_xlat10.y = u_xlat7.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat6.y; u_xlat11.y = u_xlat7.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat6.z; u_xlat9.y = u_xlat7.z; u_xlat9.z = u_xlat8.z; u_xlat2 = u_xlat10 * vec4(u_xlat17) + u_xlat2; u_xlat3 = u_xlat11 * vec4(u_xlat17) + u_xlat3; u_xlat4 = u_xlat9 * vec4(u_xlat17) + u_xlat4; u_xlatu36 = u_xlatu36 + 1u; } u_xlat1.w = 1.0; u_xlat2.x = dot(u_xlat2, u_xlat1); u_xlat2.y = dot(u_xlat3, u_xlat1); u_xlat2.z = dot(u_xlat4, u_xlat1); inOutVertices4_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat2.x); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat2.y); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat2.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlatu12 = inSkin3_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati24 = int(u_xlatu0) + 1; u_xlatu24 = inSkin3_buf[u_xlati24].value[(0 >> 2) + 0]; u_xlat2.x = float(0.0); u_xlat2.y = float(0.0); u_xlat2.z = float(0.0); u_xlat2.w = float(0.0); u_xlat3.x = float(0.0); u_xlat3.y = float(0.0); u_xlat3.z = float(0.0); u_xlat3.w = float(0.0); u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlatu36 = u_xlatu12; while(true){ u_xlatb5 = u_xlatu36>=u_xlatu24; if(u_xlatb5){break;} u_xlatu5 = inSkin3_buf[u_xlatu36].value[(0 >> 2) + 0]; u_xlatu17 = u_xlatu5 >> (16u & uint(0x1F)); u_xlat17 = float(u_xlatu17); u_xlat17 = u_xlat17 * 1.52590219e-05; u_xlati5 = int(u_xlatu5 & 65535u); u_xlati5 = u_xlati5 + int(g_PoseOffsets[0].w); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat6.x; u_xlat10.y = u_xlat7.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat6.y; u_xlat11.y = u_xlat7.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat6.z; u_xlat9.y = u_xlat7.z; u_xlat9.z = u_xlat8.z; u_xlat2 = u_xlat10 * vec4(u_xlat17) + u_xlat2; u_xlat3 = u_xlat11 * vec4(u_xlat17) + u_xlat3; u_xlat4 = u_xlat9 * vec4(u_xlat17) + u_xlat4; u_xlatu36 = u_xlatu36 + 1u; } u_xlat1.w = 1.0; u_xlat2.x = dot(u_xlat2, u_xlat1); u_xlat2.y = dot(u_xlat3, u_xlat1); u_xlat2.z = dot(u_xlat4, u_xlat1); inOutVertices3_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat2.x); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat2.y); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat2.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlatu12 = inSkin2_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati24 = int(u_xlatu0) + 1; u_xlatu24 = inSkin2_buf[u_xlati24].value[(0 >> 2) + 0]; u_xlat2.x = float(0.0); u_xlat2.y = float(0.0); u_xlat2.z = float(0.0); u_xlat2.w = float(0.0); u_xlat3.x = float(0.0); u_xlat3.y = float(0.0); u_xlat3.z = float(0.0); u_xlat3.w = float(0.0); u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlatu36 = u_xlatu12; while(true){ u_xlatb5 = u_xlatu36>=u_xlatu24; if(u_xlatb5){break;} u_xlatu5 = inSkin2_buf[u_xlatu36].value[(0 >> 2) + 0]; u_xlatu17 = u_xlatu5 >> (16u & uint(0x1F)); u_xlat17 = float(u_xlatu17); u_xlat17 = u_xlat17 * 1.52590219e-05; u_xlati5 = int(u_xlatu5 & 65535u); u_xlati5 = u_xlati5 + int(g_PoseOffsets[0].z); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat6.x; u_xlat10.y = u_xlat7.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat6.y; u_xlat11.y = u_xlat7.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat6.z; u_xlat9.y = u_xlat7.z; u_xlat9.z = u_xlat8.z; u_xlat2 = u_xlat10 * vec4(u_xlat17) + u_xlat2; u_xlat3 = u_xlat11 * vec4(u_xlat17) + u_xlat3; u_xlat4 = u_xlat9 * vec4(u_xlat17) + u_xlat4; u_xlatu36 = u_xlatu36 + 1u; } u_xlat1.w = 1.0; u_xlat2.x = dot(u_xlat2, u_xlat1); u_xlat2.y = dot(u_xlat3, u_xlat1); u_xlat2.z = dot(u_xlat4, u_xlat1); inOutVertices2_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat2.x); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat2.y); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat2.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlatu12 = inSkin1_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati24 = int(u_xlatu0) + 1; u_xlatu24 = inSkin1_buf[u_xlati24].value[(0 >> 2) + 0]; u_xlat2.x = float(0.0); u_xlat2.y = float(0.0); u_xlat2.z = float(0.0); u_xlat2.w = float(0.0); u_xlat3.x = float(0.0); u_xlat3.y = float(0.0); u_xlat3.z = float(0.0); u_xlat3.w = float(0.0); u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlatu36 = u_xlatu12; while(true){ u_xlatb5 = u_xlatu36>=u_xlatu24; if(u_xlatb5){break;} u_xlatu5 = inSkin1_buf[u_xlatu36].value[(0 >> 2) + 0]; u_xlatu17 = u_xlatu5 >> (16u & uint(0x1F)); u_xlat17 = float(u_xlatu17); u_xlat17 = u_xlat17 * 1.52590219e-05; u_xlati5 = int(u_xlatu5 & 65535u); u_xlati5 = u_xlati5 + int(g_PoseOffsets[0].y); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat6.x; u_xlat10.y = u_xlat7.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat6.y; u_xlat11.y = u_xlat7.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat6.z; u_xlat9.y = u_xlat7.z; u_xlat9.z = u_xlat8.z; u_xlat2 = u_xlat10 * vec4(u_xlat17) + u_xlat2; u_xlat3 = u_xlat11 * vec4(u_xlat17) + u_xlat3; u_xlat4 = u_xlat9 * vec4(u_xlat17) + u_xlat4; u_xlatu36 = u_xlatu36 + 1u; } u_xlat1.w = 1.0; u_xlat2.x = dot(u_xlat2, u_xlat1); u_xlat2.y = dot(u_xlat3, u_xlat1); u_xlat2.z = dot(u_xlat4, u_xlat1); inOutVertices1_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat2.x); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat2.y); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat2.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlatu12 = inSkin0_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati24 = int(u_xlatu0) + 1; u_xlatu24 = inSkin0_buf[u_xlati24].value[(0 >> 2) + 0]; u_xlat2.x = float(0.0); u_xlat2.y = float(0.0); u_xlat2.z = float(0.0); u_xlat2.w = float(0.0); u_xlat3.x = float(0.0); u_xlat3.y = float(0.0); u_xlat3.z = float(0.0); u_xlat3.w = float(0.0); u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlatu36 = u_xlatu12; while(true){ u_xlatb5 = u_xlatu36>=u_xlatu24; if(u_xlatb5){break;} u_xlatu5 = inSkin0_buf[u_xlatu36].value[(0 >> 2) + 0]; u_xlatu17 = u_xlatu5 >> (16u & uint(0x1F)); u_xlat17 = float(u_xlatu17); u_xlat17 = u_xlat17 * 1.52590219e-05; u_xlati5 = int(u_xlatu5 & 65535u); u_xlati5 = u_xlati5 + int(g_PoseOffsets[0].x); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat6.x; u_xlat10.y = u_xlat7.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat6.y; u_xlat11.y = u_xlat7.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat6.z; u_xlat9.y = u_xlat7.z; u_xlat9.z = u_xlat8.z; u_xlat2 = u_xlat10 * vec4(u_xlat17) + u_xlat2; u_xlat3 = u_xlat11 * vec4(u_xlat17) + u_xlat3; u_xlat4 = u_xlat9 * vec4(u_xlat17) + u_xlat4; u_xlatu36 = u_xlatu36 + 1u; } u_xlat1.w = 1.0; u_xlat2.x = dot(u_xlat2, u_xlat1); u_xlat2.y = dot(u_xlat3, u_xlat1); u_xlat2.z = dot(u_xlat4, u_xlat1); inOutVertices0_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat2.x); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat2.y); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat2.z); } } } } } } } } return; } @AbatchMainInPlaceComputeSkinInPlaceCBufferinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6 inMatricesinOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices6/#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform ComputeSkinInPlaceCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; uvec4 g_PoseOffsets[2]; uint g_poseBufferMaxIndex; }; struct inSkin0_type { uint[1] value; }; layout(std430, binding = 7) readonly buffer inSkin0 { inSkin0_type inSkin0_buf[]; }; struct inSkin1_type { uint[1] value; }; layout(std430, binding = 8) readonly buffer inSkin1 { inSkin1_type inSkin1_buf[]; }; struct inSkin2_type { uint[1] value; }; layout(std430, binding = 9) readonly buffer inSkin2 { inSkin2_type inSkin2_buf[]; }; struct inSkin3_type { uint[1] value; }; layout(std430, binding = 10) readonly buffer inSkin3 { inSkin3_type inSkin3_buf[]; }; struct inSkin4_type { uint[1] value; }; layout(std430, binding = 11) readonly buffer inSkin4 { inSkin4_type inSkin4_buf[]; }; struct inSkin5_type { uint[1] value; }; layout(std430, binding = 12) readonly buffer inSkin5 { inSkin5_type inSkin5_buf[]; }; struct inSkin6_type { uint[1] value; }; layout(std430, binding = 13) readonly buffer inSkin6 { inSkin6_type inSkin6_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 14) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct inOutVertices0_type { uint[6] value; }; layout(std430, binding = 0) buffer inOutVertices0 { inOutVertices0_type inOutVertices0_buf[]; }; struct inOutVertices1_type { uint[6] value; }; layout(std430, binding = 1) buffer inOutVertices1 { inOutVertices1_type inOutVertices1_buf[]; }; struct inOutVertices2_type { uint[6] value; }; layout(std430, binding = 2) buffer inOutVertices2 { inOutVertices2_type inOutVertices2_buf[]; }; struct inOutVertices3_type { uint[6] value; }; layout(std430, binding = 3) buffer inOutVertices3 { inOutVertices3_type inOutVertices3_buf[]; }; struct inOutVertices4_type { uint[6] value; }; layout(std430, binding = 4) buffer inOutVertices4 { inOutVertices4_type inOutVertices4_buf[]; }; struct inOutVertices5_type { uint[6] value; }; layout(std430, binding = 5) buffer inOutVertices5 { inOutVertices5_type inOutVertices5_buf[]; }; struct inOutVertices6_type { uint[6] value; }; layout(std430, binding = 6) buffer inOutVertices6 { inOutVertices6_type inOutVertices6_buf[]; }; uint u_xlatu0; bool u_xlatb0; vec4 u_xlat1; vec3 u_xlat2; vec4 u_xlat3; vec4 u_xlat4; vec4 u_xlat5; vec4 u_xlat6; uint u_xlatu6; vec4 u_xlat7; vec3 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; vec4 u_xlat11; uint u_xlatu12; bool u_xlatb12; vec3 u_xlat18; int u_xlati24; uint u_xlatu24; uint u_xlatu36; int u_xlati38; uint u_xlatu38; bool u_xlatb38; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].z); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlatu12 = inSkin6_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati24 = int(u_xlatu0) + 1; u_xlatu24 = inSkin6_buf[u_xlati24].value[(0 >> 2) + 0]; u_xlat3.x = float(0.0); u_xlat3.y = float(0.0); u_xlat3.z = float(0.0); u_xlat3.w = float(0.0); u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlat5.x = float(0.0); u_xlat5.y = float(0.0); u_xlat5.z = float(0.0); u_xlat5.w = float(0.0); u_xlatu36 = u_xlatu12; while(true){ u_xlatb38 = u_xlatu36>=u_xlatu24; if(u_xlatb38){break;} u_xlatu38 = inSkin6_buf[u_xlatu36].value[(0 >> 2) + 0]; u_xlatu6 = u_xlatu38 >> (16u & uint(0x1F)); u_xlat6.x = float(u_xlatu6); u_xlat6.x = u_xlat6.x * 1.52590219e-05; u_xlati38 = int(u_xlatu38 & 65535u); u_xlati38 = u_xlati38 + int(g_PoseOffsets[1].z); u_xlat18.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat18.x; u_xlat10.y = u_xlat7.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat18.y; u_xlat11.y = u_xlat7.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat18.z; u_xlat9.y = u_xlat7.z; u_xlat9.z = u_xlat8.z; u_xlat3 = u_xlat10 * u_xlat6.xxxx + u_xlat3; u_xlat4 = u_xlat11 * u_xlat6.xxxx + u_xlat4; u_xlat5 = u_xlat9 * u_xlat6.xxxx + u_xlat5; u_xlatu36 = u_xlatu36 + 1u; } u_xlat6.xyz = u_xlat1.xyz; u_xlat6.w = 1.0; u_xlat7.x = dot(u_xlat3, u_xlat6); u_xlat7.y = dot(u_xlat4, u_xlat6); u_xlat7.z = dot(u_xlat5, u_xlat6); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat3.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat4.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat5.yzx, u_xlat2.xyz); inOutVertices6_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat7.x); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat7.y); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat7.z); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat7.w); inOutVertices6_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat1.x); inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat1.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].y); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlatu12 = inSkin5_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati24 = int(u_xlatu0) + 1; u_xlatu24 = inSkin5_buf[u_xlati24].value[(0 >> 2) + 0]; u_xlat3.x = float(0.0); u_xlat3.y = float(0.0); u_xlat3.z = float(0.0); u_xlat3.w = float(0.0); u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlat5.x = float(0.0); u_xlat5.y = float(0.0); u_xlat5.z = float(0.0); u_xlat5.w = float(0.0); u_xlatu36 = u_xlatu12; while(true){ u_xlatb38 = u_xlatu36>=u_xlatu24; if(u_xlatb38){break;} u_xlatu38 = inSkin5_buf[u_xlatu36].value[(0 >> 2) + 0]; u_xlatu6 = u_xlatu38 >> (16u & uint(0x1F)); u_xlat6.x = float(u_xlatu6); u_xlat6.x = u_xlat6.x * 1.52590219e-05; u_xlati38 = int(u_xlatu38 & 65535u); u_xlati38 = u_xlati38 + int(g_PoseOffsets[1].y); u_xlat18.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat18.x; u_xlat10.y = u_xlat7.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat18.y; u_xlat11.y = u_xlat7.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat18.z; u_xlat9.y = u_xlat7.z; u_xlat9.z = u_xlat8.z; u_xlat3 = u_xlat10 * u_xlat6.xxxx + u_xlat3; u_xlat4 = u_xlat11 * u_xlat6.xxxx + u_xlat4; u_xlat5 = u_xlat9 * u_xlat6.xxxx + u_xlat5; u_xlatu36 = u_xlatu36 + 1u; } u_xlat6.xyz = u_xlat1.xyz; u_xlat6.w = 1.0; u_xlat7.x = dot(u_xlat3, u_xlat6); u_xlat7.y = dot(u_xlat4, u_xlat6); u_xlat7.z = dot(u_xlat5, u_xlat6); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat3.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat4.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat5.yzx, u_xlat2.xyz); inOutVertices5_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat7.x); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat7.y); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat7.z); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat7.w); inOutVertices5_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat1.x); inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat1.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlatu12 = inSkin4_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati24 = int(u_xlatu0) + 1; u_xlatu24 = inSkin4_buf[u_xlati24].value[(0 >> 2) + 0]; u_xlat3.x = float(0.0); u_xlat3.y = float(0.0); u_xlat3.z = float(0.0); u_xlat3.w = float(0.0); u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlat5.x = float(0.0); u_xlat5.y = float(0.0); u_xlat5.z = float(0.0); u_xlat5.w = float(0.0); u_xlatu36 = u_xlatu12; while(true){ u_xlatb38 = u_xlatu36>=u_xlatu24; if(u_xlatb38){break;} u_xlatu38 = inSkin4_buf[u_xlatu36].value[(0 >> 2) + 0]; u_xlatu6 = u_xlatu38 >> (16u & uint(0x1F)); u_xlat6.x = float(u_xlatu6); u_xlat6.x = u_xlat6.x * 1.52590219e-05; u_xlati38 = int(u_xlatu38 & 65535u); u_xlati38 = u_xlati38 + int(g_PoseOffsets[1].x); u_xlat18.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat18.x; u_xlat10.y = u_xlat7.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat18.y; u_xlat11.y = u_xlat7.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat18.z; u_xlat9.y = u_xlat7.z; u_xlat9.z = u_xlat8.z; u_xlat3 = u_xlat10 * u_xlat6.xxxx + u_xlat3; u_xlat4 = u_xlat11 * u_xlat6.xxxx + u_xlat4; u_xlat5 = u_xlat9 * u_xlat6.xxxx + u_xlat5; u_xlatu36 = u_xlatu36 + 1u; } u_xlat6.xyz = u_xlat1.xyz; u_xlat6.w = 1.0; u_xlat7.x = dot(u_xlat3, u_xlat6); u_xlat7.y = dot(u_xlat4, u_xlat6); u_xlat7.z = dot(u_xlat5, u_xlat6); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat3.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat4.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat5.yzx, u_xlat2.xyz); inOutVertices4_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat7.x); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat7.y); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat7.z); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat7.w); inOutVertices4_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat1.x); inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat1.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlatu12 = inSkin3_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati24 = int(u_xlatu0) + 1; u_xlatu24 = inSkin3_buf[u_xlati24].value[(0 >> 2) + 0]; u_xlat3.x = float(0.0); u_xlat3.y = float(0.0); u_xlat3.z = float(0.0); u_xlat3.w = float(0.0); u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlat5.x = float(0.0); u_xlat5.y = float(0.0); u_xlat5.z = float(0.0); u_xlat5.w = float(0.0); u_xlatu36 = u_xlatu12; while(true){ u_xlatb38 = u_xlatu36>=u_xlatu24; if(u_xlatb38){break;} u_xlatu38 = inSkin3_buf[u_xlatu36].value[(0 >> 2) + 0]; u_xlatu6 = u_xlatu38 >> (16u & uint(0x1F)); u_xlat6.x = float(u_xlatu6); u_xlat6.x = u_xlat6.x * 1.52590219e-05; u_xlati38 = int(u_xlatu38 & 65535u); u_xlati38 = u_xlati38 + int(g_PoseOffsets[0].w); u_xlat18.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat18.x; u_xlat10.y = u_xlat7.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat18.y; u_xlat11.y = u_xlat7.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat18.z; u_xlat9.y = u_xlat7.z; u_xlat9.z = u_xlat8.z; u_xlat3 = u_xlat10 * u_xlat6.xxxx + u_xlat3; u_xlat4 = u_xlat11 * u_xlat6.xxxx + u_xlat4; u_xlat5 = u_xlat9 * u_xlat6.xxxx + u_xlat5; u_xlatu36 = u_xlatu36 + 1u; } u_xlat6.xyz = u_xlat1.xyz; u_xlat6.w = 1.0; u_xlat7.x = dot(u_xlat3, u_xlat6); u_xlat7.y = dot(u_xlat4, u_xlat6); u_xlat7.z = dot(u_xlat5, u_xlat6); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat3.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat4.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat5.yzx, u_xlat2.xyz); inOutVertices3_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat7.x); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat7.y); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat7.z); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat7.w); inOutVertices3_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat1.x); inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat1.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlatu12 = inSkin2_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati24 = int(u_xlatu0) + 1; u_xlatu24 = inSkin2_buf[u_xlati24].value[(0 >> 2) + 0]; u_xlat3.x = float(0.0); u_xlat3.y = float(0.0); u_xlat3.z = float(0.0); u_xlat3.w = float(0.0); u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlat5.x = float(0.0); u_xlat5.y = float(0.0); u_xlat5.z = float(0.0); u_xlat5.w = float(0.0); u_xlatu36 = u_xlatu12; while(true){ u_xlatb38 = u_xlatu36>=u_xlatu24; if(u_xlatb38){break;} u_xlatu38 = inSkin2_buf[u_xlatu36].value[(0 >> 2) + 0]; u_xlatu6 = u_xlatu38 >> (16u & uint(0x1F)); u_xlat6.x = float(u_xlatu6); u_xlat6.x = u_xlat6.x * 1.52590219e-05; u_xlati38 = int(u_xlatu38 & 65535u); u_xlati38 = u_xlati38 + int(g_PoseOffsets[0].z); u_xlat18.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat18.x; u_xlat10.y = u_xlat7.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat18.y; u_xlat11.y = u_xlat7.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat18.z; u_xlat9.y = u_xlat7.z; u_xlat9.z = u_xlat8.z; u_xlat3 = u_xlat10 * u_xlat6.xxxx + u_xlat3; u_xlat4 = u_xlat11 * u_xlat6.xxxx + u_xlat4; u_xlat5 = u_xlat9 * u_xlat6.xxxx + u_xlat5; u_xlatu36 = u_xlatu36 + 1u; } u_xlat6.xyz = u_xlat1.xyz; u_xlat6.w = 1.0; u_xlat7.x = dot(u_xlat3, u_xlat6); u_xlat7.y = dot(u_xlat4, u_xlat6); u_xlat7.z = dot(u_xlat5, u_xlat6); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat3.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat4.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat5.yzx, u_xlat2.xyz); inOutVertices2_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat7.x); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat7.y); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat7.z); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat7.w); inOutVertices2_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat1.x); inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat1.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlatu12 = inSkin1_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati24 = int(u_xlatu0) + 1; u_xlatu24 = inSkin1_buf[u_xlati24].value[(0 >> 2) + 0]; u_xlat3.x = float(0.0); u_xlat3.y = float(0.0); u_xlat3.z = float(0.0); u_xlat3.w = float(0.0); u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlat5.x = float(0.0); u_xlat5.y = float(0.0); u_xlat5.z = float(0.0); u_xlat5.w = float(0.0); u_xlatu36 = u_xlatu12; while(true){ u_xlatb38 = u_xlatu36>=u_xlatu24; if(u_xlatb38){break;} u_xlatu38 = inSkin1_buf[u_xlatu36].value[(0 >> 2) + 0]; u_xlatu6 = u_xlatu38 >> (16u & uint(0x1F)); u_xlat6.x = float(u_xlatu6); u_xlat6.x = u_xlat6.x * 1.52590219e-05; u_xlati38 = int(u_xlatu38 & 65535u); u_xlati38 = u_xlati38 + int(g_PoseOffsets[0].y); u_xlat18.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat18.x; u_xlat10.y = u_xlat7.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat18.y; u_xlat11.y = u_xlat7.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat18.z; u_xlat9.y = u_xlat7.z; u_xlat9.z = u_xlat8.z; u_xlat3 = u_xlat10 * u_xlat6.xxxx + u_xlat3; u_xlat4 = u_xlat11 * u_xlat6.xxxx + u_xlat4; u_xlat5 = u_xlat9 * u_xlat6.xxxx + u_xlat5; u_xlatu36 = u_xlatu36 + 1u; } u_xlat6.xyz = u_xlat1.xyz; u_xlat6.w = 1.0; u_xlat7.x = dot(u_xlat3, u_xlat6); u_xlat7.y = dot(u_xlat4, u_xlat6); u_xlat7.z = dot(u_xlat5, u_xlat6); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat3.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat4.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat5.yzx, u_xlat2.xyz); inOutVertices1_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat7.x); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat7.y); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat7.z); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat7.w); inOutVertices1_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat1.x); inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat1.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlatu12 = inSkin0_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati24 = int(u_xlatu0) + 1; u_xlatu24 = inSkin0_buf[u_xlati24].value[(0 >> 2) + 0]; u_xlat3.x = float(0.0); u_xlat3.y = float(0.0); u_xlat3.z = float(0.0); u_xlat3.w = float(0.0); u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlat5.x = float(0.0); u_xlat5.y = float(0.0); u_xlat5.z = float(0.0); u_xlat5.w = float(0.0); u_xlatu36 = u_xlatu12; while(true){ u_xlatb38 = u_xlatu36>=u_xlatu24; if(u_xlatb38){break;} u_xlatu38 = inSkin0_buf[u_xlatu36].value[(0 >> 2) + 0]; u_xlatu6 = u_xlatu38 >> (16u & uint(0x1F)); u_xlat6.x = float(u_xlatu6); u_xlat6.x = u_xlat6.x * 1.52590219e-05; u_xlati38 = int(u_xlatu38 & 65535u); u_xlati38 = u_xlati38 + int(g_PoseOffsets[0].x); u_xlat18.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati38].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat18.x; u_xlat10.y = u_xlat7.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat18.y; u_xlat11.y = u_xlat7.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat18.z; u_xlat9.y = u_xlat7.z; u_xlat9.z = u_xlat8.z; u_xlat3 = u_xlat10 * u_xlat6.xxxx + u_xlat3; u_xlat4 = u_xlat11 * u_xlat6.xxxx + u_xlat4; u_xlat5 = u_xlat9 * u_xlat6.xxxx + u_xlat5; u_xlatu36 = u_xlatu36 + 1u; } u_xlat6.xyz = u_xlat1.xyz; u_xlat6.w = 1.0; u_xlat7.x = dot(u_xlat3, u_xlat6); u_xlat7.y = dot(u_xlat4, u_xlat6); u_xlat7.z = dot(u_xlat5, u_xlat6); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat3.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat4.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat5.yzx, u_xlat2.xyz); inOutVertices0_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat7.x); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat7.y); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat7.z); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat7.w); inOutVertices0_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat1.x); inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat1.y); } } } } } } } } return; } @AbatchMainInPlaceComputeSkinInPlaceCBufferinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6 inMatricesinOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices6C#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform ComputeSkinInPlaceCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; uvec4 g_PoseOffsets[2]; uint g_poseBufferMaxIndex; }; struct inSkin0_type { uint[1] value; }; layout(std430, binding = 7) readonly buffer inSkin0 { inSkin0_type inSkin0_buf[]; }; struct inSkin1_type { uint[1] value; }; layout(std430, binding = 8) readonly buffer inSkin1 { inSkin1_type inSkin1_buf[]; }; struct inSkin2_type { uint[1] value; }; layout(std430, binding = 9) readonly buffer inSkin2 { inSkin2_type inSkin2_buf[]; }; struct inSkin3_type { uint[1] value; }; layout(std430, binding = 10) readonly buffer inSkin3 { inSkin3_type inSkin3_buf[]; }; struct inSkin4_type { uint[1] value; }; layout(std430, binding = 11) readonly buffer inSkin4 { inSkin4_type inSkin4_buf[]; }; struct inSkin5_type { uint[1] value; }; layout(std430, binding = 12) readonly buffer inSkin5 { inSkin5_type inSkin5_buf[]; }; struct inSkin6_type { uint[1] value; }; layout(std430, binding = 13) readonly buffer inSkin6 { inSkin6_type inSkin6_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 14) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct inOutVertices0_type { uint[10] value; }; layout(std430, binding = 0) buffer inOutVertices0 { inOutVertices0_type inOutVertices0_buf[]; }; struct inOutVertices1_type { uint[10] value; }; layout(std430, binding = 1) buffer inOutVertices1 { inOutVertices1_type inOutVertices1_buf[]; }; struct inOutVertices2_type { uint[10] value; }; layout(std430, binding = 2) buffer inOutVertices2 { inOutVertices2_type inOutVertices2_buf[]; }; struct inOutVertices3_type { uint[10] value; }; layout(std430, binding = 3) buffer inOutVertices3 { inOutVertices3_type inOutVertices3_buf[]; }; struct inOutVertices4_type { uint[10] value; }; layout(std430, binding = 4) buffer inOutVertices4 { inOutVertices4_type inOutVertices4_buf[]; }; struct inOutVertices5_type { uint[10] value; }; layout(std430, binding = 5) buffer inOutVertices5 { inOutVertices5_type inOutVertices5_buf[]; }; struct inOutVertices6_type { uint[10] value; }; layout(std430, binding = 6) buffer inOutVertices6 { inOutVertices6_type inOutVertices6_buf[]; }; uint u_xlatu0; bool u_xlatb0; vec4 u_xlat1; vec4 u_xlat2; vec3 u_xlat3; vec4 u_xlat4; vec4 u_xlat5; vec4 u_xlat6; vec4 u_xlat7; uint u_xlatu7; vec4 u_xlat8; vec3 u_xlat9; vec4 u_xlat10; vec4 u_xlat11; vec4 u_xlat12; float u_xlat13; uint u_xlatu13; bool u_xlatb13; vec3 u_xlat20; int u_xlati26; uint u_xlatu26; uint u_xlatu39; int u_xlati42; uint u_xlatu42; bool u_xlatb42; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].z); u_xlatb13 = u_xlatu0> 2) + 3]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.z = uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(32 >> 2) + 0]); u_xlatu13 = inSkin6_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati26 = int(u_xlatu0) + 1; u_xlatu26 = inSkin6_buf[u_xlati26].value[(0 >> 2) + 0]; u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlat5.x = float(0.0); u_xlat5.y = float(0.0); u_xlat5.z = float(0.0); u_xlat5.w = float(0.0); u_xlat6.x = float(0.0); u_xlat6.y = float(0.0); u_xlat6.z = float(0.0); u_xlat6.w = float(0.0); u_xlatu39 = u_xlatu13; while(true){ u_xlatb42 = u_xlatu39>=u_xlatu26; if(u_xlatb42){break;} u_xlatu42 = inSkin6_buf[u_xlatu39].value[(0 >> 2) + 0]; u_xlatu7 = u_xlatu42 >> (16u & uint(0x1F)); u_xlat7.x = float(u_xlatu7); u_xlat7.x = u_xlat7.x * 1.52590219e-05; u_xlati42 = int(u_xlatu42 & 65535u); u_xlati42 = u_xlati42 + int(g_PoseOffsets[1].z); u_xlat20.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(0 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(16 >> 2) + 2])); u_xlat9.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat20.x; u_xlat11.y = u_xlat8.x; u_xlat11.z = u_xlat9.x; u_xlat11.w = u_xlat10.x; u_xlat12.x = u_xlat20.y; u_xlat12.y = u_xlat8.y; u_xlat12.z = u_xlat9.y; u_xlat12.w = u_xlat10.y; u_xlat10.x = u_xlat20.z; u_xlat10.y = u_xlat8.z; u_xlat10.z = u_xlat9.z; u_xlat4 = u_xlat11 * u_xlat7.xxxx + u_xlat4; u_xlat5 = u_xlat12 * u_xlat7.xxxx + u_xlat5; u_xlat6 = u_xlat10 * u_xlat7.xxxx + u_xlat6; u_xlatu39 = u_xlatu39 + 1u; } u_xlat7.xyz = u_xlat1.yzw; u_xlat7.w = 1.0; u_xlat8.x = dot(u_xlat4, u_xlat7); u_xlat8.y = dot(u_xlat5, u_xlat7); u_xlat8.z = dot(u_xlat6, u_xlat7); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat7.x = dot(u_xlat5.xyz, u_xlat1.xyz); u_xlat7.y = dot(u_xlat6.xyz, u_xlat1.xyz); u_xlat3.xy = u_xlat2.zw; u_xlat7.z = dot(u_xlat4.xyz, u_xlat3.xyz); u_xlat7.w = dot(u_xlat5.xyz, u_xlat3.xyz); u_xlat13 = dot(u_xlat6.xyz, u_xlat3.xyz); inOutVertices6_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat8.x); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat8.y); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat8.z); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat8.w); inOutVertices6_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat7.x); inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat7.y); inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat7.z); inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat7.w); inOutVertices6_buf[u_xlatu0].value[(32 >> 2)] = floatBitsToUint(u_xlat13); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].y); u_xlatb13 = u_xlatu0> 2) + 3]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.z = uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(32 >> 2) + 0]); u_xlatu13 = inSkin5_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati26 = int(u_xlatu0) + 1; u_xlatu26 = inSkin5_buf[u_xlati26].value[(0 >> 2) + 0]; u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlat5.x = float(0.0); u_xlat5.y = float(0.0); u_xlat5.z = float(0.0); u_xlat5.w = float(0.0); u_xlat6.x = float(0.0); u_xlat6.y = float(0.0); u_xlat6.z = float(0.0); u_xlat6.w = float(0.0); u_xlatu39 = u_xlatu13; while(true){ u_xlatb42 = u_xlatu39>=u_xlatu26; if(u_xlatb42){break;} u_xlatu42 = inSkin5_buf[u_xlatu39].value[(0 >> 2) + 0]; u_xlatu7 = u_xlatu42 >> (16u & uint(0x1F)); u_xlat7.x = float(u_xlatu7); u_xlat7.x = u_xlat7.x * 1.52590219e-05; u_xlati42 = int(u_xlatu42 & 65535u); u_xlati42 = u_xlati42 + int(g_PoseOffsets[1].y); u_xlat20.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(0 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(16 >> 2) + 2])); u_xlat9.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat20.x; u_xlat11.y = u_xlat8.x; u_xlat11.z = u_xlat9.x; u_xlat11.w = u_xlat10.x; u_xlat12.x = u_xlat20.y; u_xlat12.y = u_xlat8.y; u_xlat12.z = u_xlat9.y; u_xlat12.w = u_xlat10.y; u_xlat10.x = u_xlat20.z; u_xlat10.y = u_xlat8.z; u_xlat10.z = u_xlat9.z; u_xlat4 = u_xlat11 * u_xlat7.xxxx + u_xlat4; u_xlat5 = u_xlat12 * u_xlat7.xxxx + u_xlat5; u_xlat6 = u_xlat10 * u_xlat7.xxxx + u_xlat6; u_xlatu39 = u_xlatu39 + 1u; } u_xlat7.xyz = u_xlat1.yzw; u_xlat7.w = 1.0; u_xlat8.x = dot(u_xlat4, u_xlat7); u_xlat8.y = dot(u_xlat5, u_xlat7); u_xlat8.z = dot(u_xlat6, u_xlat7); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat7.x = dot(u_xlat5.xyz, u_xlat1.xyz); u_xlat7.y = dot(u_xlat6.xyz, u_xlat1.xyz); u_xlat3.xy = u_xlat2.zw; u_xlat7.z = dot(u_xlat4.xyz, u_xlat3.xyz); u_xlat7.w = dot(u_xlat5.xyz, u_xlat3.xyz); u_xlat13 = dot(u_xlat6.xyz, u_xlat3.xyz); inOutVertices5_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat8.x); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat8.y); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat8.z); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat8.w); inOutVertices5_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat7.x); inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat7.y); inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat7.z); inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat7.w); inOutVertices5_buf[u_xlatu0].value[(32 >> 2)] = floatBitsToUint(u_xlat13); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb13 = u_xlatu0> 2) + 3]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.z = uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(32 >> 2) + 0]); u_xlatu13 = inSkin4_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati26 = int(u_xlatu0) + 1; u_xlatu26 = inSkin4_buf[u_xlati26].value[(0 >> 2) + 0]; u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlat5.x = float(0.0); u_xlat5.y = float(0.0); u_xlat5.z = float(0.0); u_xlat5.w = float(0.0); u_xlat6.x = float(0.0); u_xlat6.y = float(0.0); u_xlat6.z = float(0.0); u_xlat6.w = float(0.0); u_xlatu39 = u_xlatu13; while(true){ u_xlatb42 = u_xlatu39>=u_xlatu26; if(u_xlatb42){break;} u_xlatu42 = inSkin4_buf[u_xlatu39].value[(0 >> 2) + 0]; u_xlatu7 = u_xlatu42 >> (16u & uint(0x1F)); u_xlat7.x = float(u_xlatu7); u_xlat7.x = u_xlat7.x * 1.52590219e-05; u_xlati42 = int(u_xlatu42 & 65535u); u_xlati42 = u_xlati42 + int(g_PoseOffsets[1].x); u_xlat20.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(0 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(16 >> 2) + 2])); u_xlat9.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat20.x; u_xlat11.y = u_xlat8.x; u_xlat11.z = u_xlat9.x; u_xlat11.w = u_xlat10.x; u_xlat12.x = u_xlat20.y; u_xlat12.y = u_xlat8.y; u_xlat12.z = u_xlat9.y; u_xlat12.w = u_xlat10.y; u_xlat10.x = u_xlat20.z; u_xlat10.y = u_xlat8.z; u_xlat10.z = u_xlat9.z; u_xlat4 = u_xlat11 * u_xlat7.xxxx + u_xlat4; u_xlat5 = u_xlat12 * u_xlat7.xxxx + u_xlat5; u_xlat6 = u_xlat10 * u_xlat7.xxxx + u_xlat6; u_xlatu39 = u_xlatu39 + 1u; } u_xlat7.xyz = u_xlat1.yzw; u_xlat7.w = 1.0; u_xlat8.x = dot(u_xlat4, u_xlat7); u_xlat8.y = dot(u_xlat5, u_xlat7); u_xlat8.z = dot(u_xlat6, u_xlat7); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat7.x = dot(u_xlat5.xyz, u_xlat1.xyz); u_xlat7.y = dot(u_xlat6.xyz, u_xlat1.xyz); u_xlat3.xy = u_xlat2.zw; u_xlat7.z = dot(u_xlat4.xyz, u_xlat3.xyz); u_xlat7.w = dot(u_xlat5.xyz, u_xlat3.xyz); u_xlat13 = dot(u_xlat6.xyz, u_xlat3.xyz); inOutVertices4_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat8.x); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat8.y); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat8.z); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat8.w); inOutVertices4_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat7.x); inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat7.y); inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat7.z); inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat7.w); inOutVertices4_buf[u_xlatu0].value[(32 >> 2)] = floatBitsToUint(u_xlat13); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb13 = u_xlatu0> 2) + 3]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.z = uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(32 >> 2) + 0]); u_xlatu13 = inSkin3_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati26 = int(u_xlatu0) + 1; u_xlatu26 = inSkin3_buf[u_xlati26].value[(0 >> 2) + 0]; u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlat5.x = float(0.0); u_xlat5.y = float(0.0); u_xlat5.z = float(0.0); u_xlat5.w = float(0.0); u_xlat6.x = float(0.0); u_xlat6.y = float(0.0); u_xlat6.z = float(0.0); u_xlat6.w = float(0.0); u_xlatu39 = u_xlatu13; while(true){ u_xlatb42 = u_xlatu39>=u_xlatu26; if(u_xlatb42){break;} u_xlatu42 = inSkin3_buf[u_xlatu39].value[(0 >> 2) + 0]; u_xlatu7 = u_xlatu42 >> (16u & uint(0x1F)); u_xlat7.x = float(u_xlatu7); u_xlat7.x = u_xlat7.x * 1.52590219e-05; u_xlati42 = int(u_xlatu42 & 65535u); u_xlati42 = u_xlati42 + int(g_PoseOffsets[0].w); u_xlat20.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(0 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(16 >> 2) + 2])); u_xlat9.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat20.x; u_xlat11.y = u_xlat8.x; u_xlat11.z = u_xlat9.x; u_xlat11.w = u_xlat10.x; u_xlat12.x = u_xlat20.y; u_xlat12.y = u_xlat8.y; u_xlat12.z = u_xlat9.y; u_xlat12.w = u_xlat10.y; u_xlat10.x = u_xlat20.z; u_xlat10.y = u_xlat8.z; u_xlat10.z = u_xlat9.z; u_xlat4 = u_xlat11 * u_xlat7.xxxx + u_xlat4; u_xlat5 = u_xlat12 * u_xlat7.xxxx + u_xlat5; u_xlat6 = u_xlat10 * u_xlat7.xxxx + u_xlat6; u_xlatu39 = u_xlatu39 + 1u; } u_xlat7.xyz = u_xlat1.yzw; u_xlat7.w = 1.0; u_xlat8.x = dot(u_xlat4, u_xlat7); u_xlat8.y = dot(u_xlat5, u_xlat7); u_xlat8.z = dot(u_xlat6, u_xlat7); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat7.x = dot(u_xlat5.xyz, u_xlat1.xyz); u_xlat7.y = dot(u_xlat6.xyz, u_xlat1.xyz); u_xlat3.xy = u_xlat2.zw; u_xlat7.z = dot(u_xlat4.xyz, u_xlat3.xyz); u_xlat7.w = dot(u_xlat5.xyz, u_xlat3.xyz); u_xlat13 = dot(u_xlat6.xyz, u_xlat3.xyz); inOutVertices3_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat8.x); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat8.y); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat8.z); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat8.w); inOutVertices3_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat7.x); inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat7.y); inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat7.z); inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat7.w); inOutVertices3_buf[u_xlatu0].value[(32 >> 2)] = floatBitsToUint(u_xlat13); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb13 = u_xlatu0> 2) + 3]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.z = uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(32 >> 2) + 0]); u_xlatu13 = inSkin2_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati26 = int(u_xlatu0) + 1; u_xlatu26 = inSkin2_buf[u_xlati26].value[(0 >> 2) + 0]; u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlat5.x = float(0.0); u_xlat5.y = float(0.0); u_xlat5.z = float(0.0); u_xlat5.w = float(0.0); u_xlat6.x = float(0.0); u_xlat6.y = float(0.0); u_xlat6.z = float(0.0); u_xlat6.w = float(0.0); u_xlatu39 = u_xlatu13; while(true){ u_xlatb42 = u_xlatu39>=u_xlatu26; if(u_xlatb42){break;} u_xlatu42 = inSkin2_buf[u_xlatu39].value[(0 >> 2) + 0]; u_xlatu7 = u_xlatu42 >> (16u & uint(0x1F)); u_xlat7.x = float(u_xlatu7); u_xlat7.x = u_xlat7.x * 1.52590219e-05; u_xlati42 = int(u_xlatu42 & 65535u); u_xlati42 = u_xlati42 + int(g_PoseOffsets[0].z); u_xlat20.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(0 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(16 >> 2) + 2])); u_xlat9.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat20.x; u_xlat11.y = u_xlat8.x; u_xlat11.z = u_xlat9.x; u_xlat11.w = u_xlat10.x; u_xlat12.x = u_xlat20.y; u_xlat12.y = u_xlat8.y; u_xlat12.z = u_xlat9.y; u_xlat12.w = u_xlat10.y; u_xlat10.x = u_xlat20.z; u_xlat10.y = u_xlat8.z; u_xlat10.z = u_xlat9.z; u_xlat4 = u_xlat11 * u_xlat7.xxxx + u_xlat4; u_xlat5 = u_xlat12 * u_xlat7.xxxx + u_xlat5; u_xlat6 = u_xlat10 * u_xlat7.xxxx + u_xlat6; u_xlatu39 = u_xlatu39 + 1u; } u_xlat7.xyz = u_xlat1.yzw; u_xlat7.w = 1.0; u_xlat8.x = dot(u_xlat4, u_xlat7); u_xlat8.y = dot(u_xlat5, u_xlat7); u_xlat8.z = dot(u_xlat6, u_xlat7); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat7.x = dot(u_xlat5.xyz, u_xlat1.xyz); u_xlat7.y = dot(u_xlat6.xyz, u_xlat1.xyz); u_xlat3.xy = u_xlat2.zw; u_xlat7.z = dot(u_xlat4.xyz, u_xlat3.xyz); u_xlat7.w = dot(u_xlat5.xyz, u_xlat3.xyz); u_xlat13 = dot(u_xlat6.xyz, u_xlat3.xyz); inOutVertices2_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat8.x); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat8.y); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat8.z); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat8.w); inOutVertices2_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat7.x); inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat7.y); inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat7.z); inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat7.w); inOutVertices2_buf[u_xlatu0].value[(32 >> 2)] = floatBitsToUint(u_xlat13); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb13 = u_xlatu0> 2) + 3]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.z = uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(32 >> 2) + 0]); u_xlatu13 = inSkin1_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati26 = int(u_xlatu0) + 1; u_xlatu26 = inSkin1_buf[u_xlati26].value[(0 >> 2) + 0]; u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlat5.x = float(0.0); u_xlat5.y = float(0.0); u_xlat5.z = float(0.0); u_xlat5.w = float(0.0); u_xlat6.x = float(0.0); u_xlat6.y = float(0.0); u_xlat6.z = float(0.0); u_xlat6.w = float(0.0); u_xlatu39 = u_xlatu13; while(true){ u_xlatb42 = u_xlatu39>=u_xlatu26; if(u_xlatb42){break;} u_xlatu42 = inSkin1_buf[u_xlatu39].value[(0 >> 2) + 0]; u_xlatu7 = u_xlatu42 >> (16u & uint(0x1F)); u_xlat7.x = float(u_xlatu7); u_xlat7.x = u_xlat7.x * 1.52590219e-05; u_xlati42 = int(u_xlatu42 & 65535u); u_xlati42 = u_xlati42 + int(g_PoseOffsets[0].y); u_xlat20.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(0 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(16 >> 2) + 2])); u_xlat9.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat20.x; u_xlat11.y = u_xlat8.x; u_xlat11.z = u_xlat9.x; u_xlat11.w = u_xlat10.x; u_xlat12.x = u_xlat20.y; u_xlat12.y = u_xlat8.y; u_xlat12.z = u_xlat9.y; u_xlat12.w = u_xlat10.y; u_xlat10.x = u_xlat20.z; u_xlat10.y = u_xlat8.z; u_xlat10.z = u_xlat9.z; u_xlat4 = u_xlat11 * u_xlat7.xxxx + u_xlat4; u_xlat5 = u_xlat12 * u_xlat7.xxxx + u_xlat5; u_xlat6 = u_xlat10 * u_xlat7.xxxx + u_xlat6; u_xlatu39 = u_xlatu39 + 1u; } u_xlat7.xyz = u_xlat1.yzw; u_xlat7.w = 1.0; u_xlat8.x = dot(u_xlat4, u_xlat7); u_xlat8.y = dot(u_xlat5, u_xlat7); u_xlat8.z = dot(u_xlat6, u_xlat7); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat7.x = dot(u_xlat5.xyz, u_xlat1.xyz); u_xlat7.y = dot(u_xlat6.xyz, u_xlat1.xyz); u_xlat3.xy = u_xlat2.zw; u_xlat7.z = dot(u_xlat4.xyz, u_xlat3.xyz); u_xlat7.w = dot(u_xlat5.xyz, u_xlat3.xyz); u_xlat13 = dot(u_xlat6.xyz, u_xlat3.xyz); inOutVertices1_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat8.x); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat8.y); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat8.z); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat8.w); inOutVertices1_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat7.x); inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat7.y); inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat7.z); inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat7.w); inOutVertices1_buf[u_xlatu0].value[(32 >> 2)] = floatBitsToUint(u_xlat13); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb13 = u_xlatu0> 2) + 3]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.z = uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(32 >> 2) + 0]); u_xlatu13 = inSkin0_buf[u_xlatu0].value[(0 >> 2) + 0]; u_xlati26 = int(u_xlatu0) + 1; u_xlatu26 = inSkin0_buf[u_xlati26].value[(0 >> 2) + 0]; u_xlat4.x = float(0.0); u_xlat4.y = float(0.0); u_xlat4.z = float(0.0); u_xlat4.w = float(0.0); u_xlat5.x = float(0.0); u_xlat5.y = float(0.0); u_xlat5.z = float(0.0); u_xlat5.w = float(0.0); u_xlat6.x = float(0.0); u_xlat6.y = float(0.0); u_xlat6.z = float(0.0); u_xlat6.w = float(0.0); u_xlatu39 = u_xlatu13; while(true){ u_xlatb42 = u_xlatu39>=u_xlatu26; if(u_xlatb42){break;} u_xlatu42 = inSkin0_buf[u_xlatu39].value[(0 >> 2) + 0]; u_xlatu7 = u_xlatu42 >> (16u & uint(0x1F)); u_xlat7.x = float(u_xlatu7); u_xlat7.x = u_xlat7.x * 1.52590219e-05; u_xlati42 = int(u_xlatu42 & 65535u); u_xlati42 = u_xlati42 + int(g_PoseOffsets[0].x); u_xlat20.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(0 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(16 >> 2) + 2])); u_xlat9.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati42].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati42].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat20.x; u_xlat11.y = u_xlat8.x; u_xlat11.z = u_xlat9.x; u_xlat11.w = u_xlat10.x; u_xlat12.x = u_xlat20.y; u_xlat12.y = u_xlat8.y; u_xlat12.z = u_xlat9.y; u_xlat12.w = u_xlat10.y; u_xlat10.x = u_xlat20.z; u_xlat10.y = u_xlat8.z; u_xlat10.z = u_xlat9.z; u_xlat4 = u_xlat11 * u_xlat7.xxxx + u_xlat4; u_xlat5 = u_xlat12 * u_xlat7.xxxx + u_xlat5; u_xlat6 = u_xlat10 * u_xlat7.xxxx + u_xlat6; u_xlatu39 = u_xlatu39 + 1u; } u_xlat7.xyz = u_xlat1.yzw; u_xlat7.w = 1.0; u_xlat8.x = dot(u_xlat4, u_xlat7); u_xlat8.y = dot(u_xlat5, u_xlat7); u_xlat8.z = dot(u_xlat6, u_xlat7); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat7.x = dot(u_xlat5.xyz, u_xlat1.xyz); u_xlat7.y = dot(u_xlat6.xyz, u_xlat1.xyz); u_xlat3.xy = u_xlat2.zw; u_xlat7.z = dot(u_xlat4.xyz, u_xlat3.xyz); u_xlat7.w = dot(u_xlat5.xyz, u_xlat3.xyz); u_xlat13 = dot(u_xlat6.xyz, u_xlat3.xyz); inOutVertices0_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat8.x); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat8.y); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat8.z); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat8.w); inOutVertices0_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat7.x); inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat7.y); inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat7.z); inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat7.w); inOutVertices0_buf[u_xlatu0].value[(32 >> 2)] = floatBitsToUint(u_xlat13); } } } } } } } } return; } @AbatchMainInPlaceComputeSkinInPlaceCBufferinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6 inMatricesinOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices6gV#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform ComputeSkinInPlaceCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; uvec4 g_PoseOffsets[2]; uint g_poseBufferMaxIndex; }; struct inSkin0_type { uint[1] value; }; layout(std430, binding = 7) readonly buffer inSkin0 { inSkin0_type inSkin0_buf[]; }; struct inSkin1_type { uint[1] value; }; layout(std430, binding = 8) readonly buffer inSkin1 { inSkin1_type inSkin1_buf[]; }; struct inSkin2_type { uint[1] value; }; layout(std430, binding = 9) readonly buffer inSkin2 { inSkin2_type inSkin2_buf[]; }; struct inSkin3_type { uint[1] value; }; layout(std430, binding = 10) readonly buffer inSkin3 { inSkin3_type inSkin3_buf[]; }; struct inSkin4_type { uint[1] value; }; layout(std430, binding = 11) readonly buffer inSkin4 { inSkin4_type inSkin4_buf[]; }; struct inSkin5_type { uint[1] value; }; layout(std430, binding = 12) readonly buffer inSkin5 { inSkin5_type inSkin5_buf[]; }; struct inSkin6_type { uint[1] value; }; layout(std430, binding = 13) readonly buffer inSkin6 { inSkin6_type inSkin6_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 14) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct inOutVertices0_type { uint[3] value; }; layout(std430, binding = 0) buffer inOutVertices0 { inOutVertices0_type inOutVertices0_buf[]; }; struct inOutVertices1_type { uint[3] value; }; layout(std430, binding = 1) buffer inOutVertices1 { inOutVertices1_type inOutVertices1_buf[]; }; struct inOutVertices2_type { uint[3] value; }; layout(std430, binding = 2) buffer inOutVertices2 { inOutVertices2_type inOutVertices2_buf[]; }; struct inOutVertices3_type { uint[3] value; }; layout(std430, binding = 3) buffer inOutVertices3 { inOutVertices3_type inOutVertices3_buf[]; }; struct inOutVertices4_type { uint[3] value; }; layout(std430, binding = 4) buffer inOutVertices4 { inOutVertices4_type inOutVertices4_buf[]; }; struct inOutVertices5_type { uint[3] value; }; layout(std430, binding = 5) buffer inOutVertices5 { inOutVertices5_type inOutVertices5_buf[]; }; struct inOutVertices6_type { uint[3] value; }; layout(std430, binding = 6) buffer inOutVertices6 { inOutVertices6_type inOutVertices6_buf[]; }; uint u_xlatu0; bool u_xlatb0; vec4 u_xlat1; vec3 u_xlat2; vec3 u_xlat3; vec3 u_xlat4; vec4 u_xlat5; vec4 u_xlat6; vec4 u_xlat7; int u_xlati8; bool u_xlatb8; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].z); u_xlatb8 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlati8 = int(inSkin6_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati8 = u_xlati8 + int(g_PoseOffsets[1].z); u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 2])); u_xlat5.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 2])); u_xlat6.x = u_xlat2.x; u_xlat6.y = u_xlat3.x; u_xlat6.z = u_xlat4.x; u_xlat6.w = u_xlat5.x; u_xlat1.w = 1.0; u_xlat6.x = dot(u_xlat6, u_xlat1); u_xlat7.x = u_xlat2.y; u_xlat7.y = u_xlat3.y; u_xlat7.z = u_xlat4.y; u_xlat7.w = u_xlat5.y; u_xlat6.y = dot(u_xlat7, u_xlat1); u_xlat5.x = u_xlat2.z; u_xlat5.y = u_xlat3.z; u_xlat5.z = u_xlat4.z; u_xlat6.z = dot(u_xlat5, u_xlat1); inOutVertices6_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat6.x); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat6.y); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat6.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].y); u_xlatb8 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlati8 = int(inSkin5_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati8 = u_xlati8 + int(g_PoseOffsets[1].y); u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 2])); u_xlat5.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 2])); u_xlat6.x = u_xlat2.x; u_xlat6.y = u_xlat3.x; u_xlat6.z = u_xlat4.x; u_xlat6.w = u_xlat5.x; u_xlat1.w = 1.0; u_xlat6.x = dot(u_xlat6, u_xlat1); u_xlat7.x = u_xlat2.y; u_xlat7.y = u_xlat3.y; u_xlat7.z = u_xlat4.y; u_xlat7.w = u_xlat5.y; u_xlat6.y = dot(u_xlat7, u_xlat1); u_xlat5.x = u_xlat2.z; u_xlat5.y = u_xlat3.z; u_xlat5.z = u_xlat4.z; u_xlat6.z = dot(u_xlat5, u_xlat1); inOutVertices5_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat6.x); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat6.y); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat6.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb8 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlati8 = int(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati8 = u_xlati8 + int(g_PoseOffsets[1].x); u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 2])); u_xlat5.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 2])); u_xlat6.x = u_xlat2.x; u_xlat6.y = u_xlat3.x; u_xlat6.z = u_xlat4.x; u_xlat6.w = u_xlat5.x; u_xlat1.w = 1.0; u_xlat6.x = dot(u_xlat6, u_xlat1); u_xlat7.x = u_xlat2.y; u_xlat7.y = u_xlat3.y; u_xlat7.z = u_xlat4.y; u_xlat7.w = u_xlat5.y; u_xlat6.y = dot(u_xlat7, u_xlat1); u_xlat5.x = u_xlat2.z; u_xlat5.y = u_xlat3.z; u_xlat5.z = u_xlat4.z; u_xlat6.z = dot(u_xlat5, u_xlat1); inOutVertices4_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat6.x); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat6.y); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat6.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb8 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlati8 = int(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati8 = u_xlati8 + int(g_PoseOffsets[0].w); u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 2])); u_xlat5.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 2])); u_xlat6.x = u_xlat2.x; u_xlat6.y = u_xlat3.x; u_xlat6.z = u_xlat4.x; u_xlat6.w = u_xlat5.x; u_xlat1.w = 1.0; u_xlat6.x = dot(u_xlat6, u_xlat1); u_xlat7.x = u_xlat2.y; u_xlat7.y = u_xlat3.y; u_xlat7.z = u_xlat4.y; u_xlat7.w = u_xlat5.y; u_xlat6.y = dot(u_xlat7, u_xlat1); u_xlat5.x = u_xlat2.z; u_xlat5.y = u_xlat3.z; u_xlat5.z = u_xlat4.z; u_xlat6.z = dot(u_xlat5, u_xlat1); inOutVertices3_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat6.x); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat6.y); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat6.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb8 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlati8 = int(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati8 = u_xlati8 + int(g_PoseOffsets[0].z); u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 2])); u_xlat5.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 2])); u_xlat6.x = u_xlat2.x; u_xlat6.y = u_xlat3.x; u_xlat6.z = u_xlat4.x; u_xlat6.w = u_xlat5.x; u_xlat1.w = 1.0; u_xlat6.x = dot(u_xlat6, u_xlat1); u_xlat7.x = u_xlat2.y; u_xlat7.y = u_xlat3.y; u_xlat7.z = u_xlat4.y; u_xlat7.w = u_xlat5.y; u_xlat6.y = dot(u_xlat7, u_xlat1); u_xlat5.x = u_xlat2.z; u_xlat5.y = u_xlat3.z; u_xlat5.z = u_xlat4.z; u_xlat6.z = dot(u_xlat5, u_xlat1); inOutVertices2_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat6.x); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat6.y); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat6.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb8 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlati8 = int(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati8 = u_xlati8 + int(g_PoseOffsets[0].y); u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 2])); u_xlat5.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 2])); u_xlat6.x = u_xlat2.x; u_xlat6.y = u_xlat3.x; u_xlat6.z = u_xlat4.x; u_xlat6.w = u_xlat5.x; u_xlat1.w = 1.0; u_xlat6.x = dot(u_xlat6, u_xlat1); u_xlat7.x = u_xlat2.y; u_xlat7.y = u_xlat3.y; u_xlat7.z = u_xlat4.y; u_xlat7.w = u_xlat5.y; u_xlat6.y = dot(u_xlat7, u_xlat1); u_xlat5.x = u_xlat2.z; u_xlat5.y = u_xlat3.z; u_xlat5.z = u_xlat4.z; u_xlat6.z = dot(u_xlat5, u_xlat1); inOutVertices1_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat6.x); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat6.y); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat6.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb8 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlati8 = int(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati8 = u_xlati8 + int(g_PoseOffsets[0].x); u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(16 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(32 >> 2) + 2])); u_xlat5.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati8].value[(48 >> 2) + 2])); u_xlat6.x = u_xlat2.x; u_xlat6.y = u_xlat3.x; u_xlat6.z = u_xlat4.x; u_xlat6.w = u_xlat5.x; u_xlat1.w = 1.0; u_xlat6.x = dot(u_xlat6, u_xlat1); u_xlat7.x = u_xlat2.y; u_xlat7.y = u_xlat3.y; u_xlat7.z = u_xlat4.y; u_xlat7.w = u_xlat5.y; u_xlat6.y = dot(u_xlat7, u_xlat1); u_xlat5.x = u_xlat2.z; u_xlat5.y = u_xlat3.z; u_xlat5.z = u_xlat4.z; u_xlat6.z = dot(u_xlat5, u_xlat1); inOutVertices0_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat6.x); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat6.y); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat6.z); } } } } } } } } return; } @AbatchMainInPlaceComputeSkinInPlaceCBufferinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6 inMatricesinOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices6en#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform ComputeSkinInPlaceCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; uvec4 g_PoseOffsets[2]; uint g_poseBufferMaxIndex; }; struct inSkin0_type { uint[1] value; }; layout(std430, binding = 7) readonly buffer inSkin0 { inSkin0_type inSkin0_buf[]; }; struct inSkin1_type { uint[1] value; }; layout(std430, binding = 8) readonly buffer inSkin1 { inSkin1_type inSkin1_buf[]; }; struct inSkin2_type { uint[1] value; }; layout(std430, binding = 9) readonly buffer inSkin2 { inSkin2_type inSkin2_buf[]; }; struct inSkin3_type { uint[1] value; }; layout(std430, binding = 10) readonly buffer inSkin3 { inSkin3_type inSkin3_buf[]; }; struct inSkin4_type { uint[1] value; }; layout(std430, binding = 11) readonly buffer inSkin4 { inSkin4_type inSkin4_buf[]; }; struct inSkin5_type { uint[1] value; }; layout(std430, binding = 12) readonly buffer inSkin5 { inSkin5_type inSkin5_buf[]; }; struct inSkin6_type { uint[1] value; }; layout(std430, binding = 13) readonly buffer inSkin6 { inSkin6_type inSkin6_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 14) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct inOutVertices0_type { uint[6] value; }; layout(std430, binding = 0) buffer inOutVertices0 { inOutVertices0_type inOutVertices0_buf[]; }; struct inOutVertices1_type { uint[6] value; }; layout(std430, binding = 1) buffer inOutVertices1 { inOutVertices1_type inOutVertices1_buf[]; }; struct inOutVertices2_type { uint[6] value; }; layout(std430, binding = 2) buffer inOutVertices2 { inOutVertices2_type inOutVertices2_buf[]; }; struct inOutVertices3_type { uint[6] value; }; layout(std430, binding = 3) buffer inOutVertices3 { inOutVertices3_type inOutVertices3_buf[]; }; struct inOutVertices4_type { uint[6] value; }; layout(std430, binding = 4) buffer inOutVertices4 { inOutVertices4_type inOutVertices4_buf[]; }; struct inOutVertices5_type { uint[6] value; }; layout(std430, binding = 5) buffer inOutVertices5 { inOutVertices5_type inOutVertices5_buf[]; }; struct inOutVertices6_type { uint[6] value; }; layout(std430, binding = 6) buffer inOutVertices6 { inOutVertices6_type inOutVertices6_buf[]; }; uint u_xlatu0; bool u_xlatb0; vec4 u_xlat1; vec3 u_xlat2; vec3 u_xlat3; vec3 u_xlat4; vec3 u_xlat5; vec4 u_xlat6; vec4 u_xlat7; vec4 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; int u_xlati11; bool u_xlatb11; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].z); u_xlatb11 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlati11 = int(inSkin6_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati11 = u_xlati11 + int(g_PoseOffsets[1].z); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat3.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.xyz = u_xlat1.xyz; u_xlat8.w = 1.0; u_xlat9.x = dot(u_xlat7, u_xlat8); u_xlat10.x = u_xlat3.y; u_xlat10.y = u_xlat4.y; u_xlat10.z = u_xlat5.y; u_xlat10.w = u_xlat6.y; u_xlat9.y = dot(u_xlat10, u_xlat8); u_xlat6.x = u_xlat3.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat9.z = dot(u_xlat6, u_xlat8); u_xlat2.z = u_xlat1.w; u_xlat9.w = dot(u_xlat7.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat10.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat6.yzx, u_xlat2.xyz); inOutVertices6_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat9.x); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat9.y); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat9.z); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat9.w); inOutVertices6_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat1.x); inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat1.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].y); u_xlatb11 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlati11 = int(inSkin5_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati11 = u_xlati11 + int(g_PoseOffsets[1].y); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat3.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.xyz = u_xlat1.xyz; u_xlat8.w = 1.0; u_xlat9.x = dot(u_xlat7, u_xlat8); u_xlat10.x = u_xlat3.y; u_xlat10.y = u_xlat4.y; u_xlat10.z = u_xlat5.y; u_xlat10.w = u_xlat6.y; u_xlat9.y = dot(u_xlat10, u_xlat8); u_xlat6.x = u_xlat3.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat9.z = dot(u_xlat6, u_xlat8); u_xlat2.z = u_xlat1.w; u_xlat9.w = dot(u_xlat7.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat10.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat6.yzx, u_xlat2.xyz); inOutVertices5_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat9.x); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat9.y); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat9.z); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat9.w); inOutVertices5_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat1.x); inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat1.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb11 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlati11 = int(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati11 = u_xlati11 + int(g_PoseOffsets[1].x); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat3.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.xyz = u_xlat1.xyz; u_xlat8.w = 1.0; u_xlat9.x = dot(u_xlat7, u_xlat8); u_xlat10.x = u_xlat3.y; u_xlat10.y = u_xlat4.y; u_xlat10.z = u_xlat5.y; u_xlat10.w = u_xlat6.y; u_xlat9.y = dot(u_xlat10, u_xlat8); u_xlat6.x = u_xlat3.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat9.z = dot(u_xlat6, u_xlat8); u_xlat2.z = u_xlat1.w; u_xlat9.w = dot(u_xlat7.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat10.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat6.yzx, u_xlat2.xyz); inOutVertices4_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat9.x); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat9.y); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat9.z); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat9.w); inOutVertices4_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat1.x); inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat1.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb11 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlati11 = int(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati11 = u_xlati11 + int(g_PoseOffsets[0].w); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat3.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.xyz = u_xlat1.xyz; u_xlat8.w = 1.0; u_xlat9.x = dot(u_xlat7, u_xlat8); u_xlat10.x = u_xlat3.y; u_xlat10.y = u_xlat4.y; u_xlat10.z = u_xlat5.y; u_xlat10.w = u_xlat6.y; u_xlat9.y = dot(u_xlat10, u_xlat8); u_xlat6.x = u_xlat3.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat9.z = dot(u_xlat6, u_xlat8); u_xlat2.z = u_xlat1.w; u_xlat9.w = dot(u_xlat7.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat10.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat6.yzx, u_xlat2.xyz); inOutVertices3_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat9.x); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat9.y); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat9.z); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat9.w); inOutVertices3_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat1.x); inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat1.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb11 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlati11 = int(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati11 = u_xlati11 + int(g_PoseOffsets[0].z); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat3.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.xyz = u_xlat1.xyz; u_xlat8.w = 1.0; u_xlat9.x = dot(u_xlat7, u_xlat8); u_xlat10.x = u_xlat3.y; u_xlat10.y = u_xlat4.y; u_xlat10.z = u_xlat5.y; u_xlat10.w = u_xlat6.y; u_xlat9.y = dot(u_xlat10, u_xlat8); u_xlat6.x = u_xlat3.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat9.z = dot(u_xlat6, u_xlat8); u_xlat2.z = u_xlat1.w; u_xlat9.w = dot(u_xlat7.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat10.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat6.yzx, u_xlat2.xyz); inOutVertices2_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat9.x); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat9.y); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat9.z); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat9.w); inOutVertices2_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat1.x); inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat1.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb11 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlati11 = int(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati11 = u_xlati11 + int(g_PoseOffsets[0].y); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat3.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.xyz = u_xlat1.xyz; u_xlat8.w = 1.0; u_xlat9.x = dot(u_xlat7, u_xlat8); u_xlat10.x = u_xlat3.y; u_xlat10.y = u_xlat4.y; u_xlat10.z = u_xlat5.y; u_xlat10.w = u_xlat6.y; u_xlat9.y = dot(u_xlat10, u_xlat8); u_xlat6.x = u_xlat3.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat9.z = dot(u_xlat6, u_xlat8); u_xlat2.z = u_xlat1.w; u_xlat9.w = dot(u_xlat7.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat10.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat6.yzx, u_xlat2.xyz); inOutVertices1_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat9.x); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat9.y); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat9.z); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat9.w); inOutVertices1_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat1.x); inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat1.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb11 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlati11 = int(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati11 = u_xlati11 + int(g_PoseOffsets[0].x); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati11].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat3.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.xyz = u_xlat1.xyz; u_xlat8.w = 1.0; u_xlat9.x = dot(u_xlat7, u_xlat8); u_xlat10.x = u_xlat3.y; u_xlat10.y = u_xlat4.y; u_xlat10.z = u_xlat5.y; u_xlat10.w = u_xlat6.y; u_xlat9.y = dot(u_xlat10, u_xlat8); u_xlat6.x = u_xlat3.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat9.z = dot(u_xlat6, u_xlat8); u_xlat2.z = u_xlat1.w; u_xlat9.w = dot(u_xlat7.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat10.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat6.yzx, u_xlat2.xyz); inOutVertices0_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat9.x); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat9.y); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat9.z); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat9.w); inOutVertices0_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat1.x); inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat1.y); } } } } } } } } return; } @AbatchMainInPlaceComputeSkinInPlaceCBufferinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6 inMatricesinOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices6#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform ComputeSkinInPlaceCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; uvec4 g_PoseOffsets[2]; uint g_poseBufferMaxIndex; }; struct inSkin0_type { uint[1] value; }; layout(std430, binding = 7) readonly buffer inSkin0 { inSkin0_type inSkin0_buf[]; }; struct inSkin1_type { uint[1] value; }; layout(std430, binding = 8) readonly buffer inSkin1 { inSkin1_type inSkin1_buf[]; }; struct inSkin2_type { uint[1] value; }; layout(std430, binding = 9) readonly buffer inSkin2 { inSkin2_type inSkin2_buf[]; }; struct inSkin3_type { uint[1] value; }; layout(std430, binding = 10) readonly buffer inSkin3 { inSkin3_type inSkin3_buf[]; }; struct inSkin4_type { uint[1] value; }; layout(std430, binding = 11) readonly buffer inSkin4 { inSkin4_type inSkin4_buf[]; }; struct inSkin5_type { uint[1] value; }; layout(std430, binding = 12) readonly buffer inSkin5 { inSkin5_type inSkin5_buf[]; }; struct inSkin6_type { uint[1] value; }; layout(std430, binding = 13) readonly buffer inSkin6 { inSkin6_type inSkin6_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 14) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct inOutVertices0_type { uint[10] value; }; layout(std430, binding = 0) buffer inOutVertices0 { inOutVertices0_type inOutVertices0_buf[]; }; struct inOutVertices1_type { uint[10] value; }; layout(std430, binding = 1) buffer inOutVertices1 { inOutVertices1_type inOutVertices1_buf[]; }; struct inOutVertices2_type { uint[10] value; }; layout(std430, binding = 2) buffer inOutVertices2 { inOutVertices2_type inOutVertices2_buf[]; }; struct inOutVertices3_type { uint[10] value; }; layout(std430, binding = 3) buffer inOutVertices3 { inOutVertices3_type inOutVertices3_buf[]; }; struct inOutVertices4_type { uint[10] value; }; layout(std430, binding = 4) buffer inOutVertices4 { inOutVertices4_type inOutVertices4_buf[]; }; struct inOutVertices5_type { uint[10] value; }; layout(std430, binding = 5) buffer inOutVertices5 { inOutVertices5_type inOutVertices5_buf[]; }; struct inOutVertices6_type { uint[10] value; }; layout(std430, binding = 6) buffer inOutVertices6 { inOutVertices6_type inOutVertices6_buf[]; }; uint u_xlatu0; bool u_xlatb0; vec4 u_xlat1; vec4 u_xlat2; vec3 u_xlat3; vec4 u_xlat4; vec3 u_xlat5; vec3 u_xlat6; vec4 u_xlat7; vec4 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; vec4 u_xlat11; float u_xlat12; int u_xlati12; bool u_xlatb12; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].z); u_xlatb12 = u_xlatu0> 2) + 3]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.z = uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(32 >> 2) + 0]); u_xlati12 = int(inSkin6_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati12 = u_xlati12 + int(g_PoseOffsets[1].z); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat4.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.xyz = u_xlat1.yzw; u_xlat9.w = 1.0; u_xlat10.x = dot(u_xlat8, u_xlat9); u_xlat11.x = u_xlat4.y; u_xlat11.y = u_xlat5.y; u_xlat11.z = u_xlat6.y; u_xlat11.w = u_xlat7.y; u_xlat10.y = dot(u_xlat11, u_xlat9); u_xlat7.x = u_xlat4.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat10.z = dot(u_xlat7, u_xlat9); u_xlat1.yz = u_xlat2.xy; u_xlat10.w = dot(u_xlat8.xyz, u_xlat1.xyz); u_xlat4.x = dot(u_xlat11.xyz, u_xlat1.xyz); u_xlat4.y = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat3.xy = u_xlat2.zw; u_xlat4.z = dot(u_xlat8.xyz, u_xlat3.xyz); u_xlat4.w = dot(u_xlat11.xyz, u_xlat3.xyz); u_xlat12 = dot(u_xlat7.xyz, u_xlat3.xyz); inOutVertices6_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat10.x); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat10.y); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat10.z); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat10.w); inOutVertices6_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat4.x); inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat4.y); inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat4.z); inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat4.w); inOutVertices6_buf[u_xlatu0].value[(32 >> 2)] = floatBitsToUint(u_xlat12); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].y); u_xlatb12 = u_xlatu0> 2) + 3]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.z = uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(32 >> 2) + 0]); u_xlati12 = int(inSkin5_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati12 = u_xlati12 + int(g_PoseOffsets[1].y); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat4.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.xyz = u_xlat1.yzw; u_xlat9.w = 1.0; u_xlat10.x = dot(u_xlat8, u_xlat9); u_xlat11.x = u_xlat4.y; u_xlat11.y = u_xlat5.y; u_xlat11.z = u_xlat6.y; u_xlat11.w = u_xlat7.y; u_xlat10.y = dot(u_xlat11, u_xlat9); u_xlat7.x = u_xlat4.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat10.z = dot(u_xlat7, u_xlat9); u_xlat1.yz = u_xlat2.xy; u_xlat10.w = dot(u_xlat8.xyz, u_xlat1.xyz); u_xlat4.x = dot(u_xlat11.xyz, u_xlat1.xyz); u_xlat4.y = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat3.xy = u_xlat2.zw; u_xlat4.z = dot(u_xlat8.xyz, u_xlat3.xyz); u_xlat4.w = dot(u_xlat11.xyz, u_xlat3.xyz); u_xlat12 = dot(u_xlat7.xyz, u_xlat3.xyz); inOutVertices5_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat10.x); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat10.y); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat10.z); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat10.w); inOutVertices5_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat4.x); inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat4.y); inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat4.z); inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat4.w); inOutVertices5_buf[u_xlatu0].value[(32 >> 2)] = floatBitsToUint(u_xlat12); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb12 = u_xlatu0> 2) + 3]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.z = uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(32 >> 2) + 0]); u_xlati12 = int(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati12 = u_xlati12 + int(g_PoseOffsets[1].x); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat4.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.xyz = u_xlat1.yzw; u_xlat9.w = 1.0; u_xlat10.x = dot(u_xlat8, u_xlat9); u_xlat11.x = u_xlat4.y; u_xlat11.y = u_xlat5.y; u_xlat11.z = u_xlat6.y; u_xlat11.w = u_xlat7.y; u_xlat10.y = dot(u_xlat11, u_xlat9); u_xlat7.x = u_xlat4.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat10.z = dot(u_xlat7, u_xlat9); u_xlat1.yz = u_xlat2.xy; u_xlat10.w = dot(u_xlat8.xyz, u_xlat1.xyz); u_xlat4.x = dot(u_xlat11.xyz, u_xlat1.xyz); u_xlat4.y = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat3.xy = u_xlat2.zw; u_xlat4.z = dot(u_xlat8.xyz, u_xlat3.xyz); u_xlat4.w = dot(u_xlat11.xyz, u_xlat3.xyz); u_xlat12 = dot(u_xlat7.xyz, u_xlat3.xyz); inOutVertices4_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat10.x); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat10.y); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat10.z); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat10.w); inOutVertices4_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat4.x); inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat4.y); inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat4.z); inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat4.w); inOutVertices4_buf[u_xlatu0].value[(32 >> 2)] = floatBitsToUint(u_xlat12); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb12 = u_xlatu0> 2) + 3]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.z = uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(32 >> 2) + 0]); u_xlati12 = int(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati12 = u_xlati12 + int(g_PoseOffsets[0].w); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat4.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.xyz = u_xlat1.yzw; u_xlat9.w = 1.0; u_xlat10.x = dot(u_xlat8, u_xlat9); u_xlat11.x = u_xlat4.y; u_xlat11.y = u_xlat5.y; u_xlat11.z = u_xlat6.y; u_xlat11.w = u_xlat7.y; u_xlat10.y = dot(u_xlat11, u_xlat9); u_xlat7.x = u_xlat4.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat10.z = dot(u_xlat7, u_xlat9); u_xlat1.yz = u_xlat2.xy; u_xlat10.w = dot(u_xlat8.xyz, u_xlat1.xyz); u_xlat4.x = dot(u_xlat11.xyz, u_xlat1.xyz); u_xlat4.y = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat3.xy = u_xlat2.zw; u_xlat4.z = dot(u_xlat8.xyz, u_xlat3.xyz); u_xlat4.w = dot(u_xlat11.xyz, u_xlat3.xyz); u_xlat12 = dot(u_xlat7.xyz, u_xlat3.xyz); inOutVertices3_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat10.x); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat10.y); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat10.z); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat10.w); inOutVertices3_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat4.x); inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat4.y); inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat4.z); inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat4.w); inOutVertices3_buf[u_xlatu0].value[(32 >> 2)] = floatBitsToUint(u_xlat12); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb12 = u_xlatu0> 2) + 3]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.z = uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(32 >> 2) + 0]); u_xlati12 = int(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati12 = u_xlati12 + int(g_PoseOffsets[0].z); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat4.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.xyz = u_xlat1.yzw; u_xlat9.w = 1.0; u_xlat10.x = dot(u_xlat8, u_xlat9); u_xlat11.x = u_xlat4.y; u_xlat11.y = u_xlat5.y; u_xlat11.z = u_xlat6.y; u_xlat11.w = u_xlat7.y; u_xlat10.y = dot(u_xlat11, u_xlat9); u_xlat7.x = u_xlat4.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat10.z = dot(u_xlat7, u_xlat9); u_xlat1.yz = u_xlat2.xy; u_xlat10.w = dot(u_xlat8.xyz, u_xlat1.xyz); u_xlat4.x = dot(u_xlat11.xyz, u_xlat1.xyz); u_xlat4.y = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat3.xy = u_xlat2.zw; u_xlat4.z = dot(u_xlat8.xyz, u_xlat3.xyz); u_xlat4.w = dot(u_xlat11.xyz, u_xlat3.xyz); u_xlat12 = dot(u_xlat7.xyz, u_xlat3.xyz); inOutVertices2_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat10.x); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat10.y); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat10.z); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat10.w); inOutVertices2_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat4.x); inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat4.y); inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat4.z); inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat4.w); inOutVertices2_buf[u_xlatu0].value[(32 >> 2)] = floatBitsToUint(u_xlat12); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb12 = u_xlatu0> 2) + 3]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.z = uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(32 >> 2) + 0]); u_xlati12 = int(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati12 = u_xlati12 + int(g_PoseOffsets[0].y); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat4.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.xyz = u_xlat1.yzw; u_xlat9.w = 1.0; u_xlat10.x = dot(u_xlat8, u_xlat9); u_xlat11.x = u_xlat4.y; u_xlat11.y = u_xlat5.y; u_xlat11.z = u_xlat6.y; u_xlat11.w = u_xlat7.y; u_xlat10.y = dot(u_xlat11, u_xlat9); u_xlat7.x = u_xlat4.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat10.z = dot(u_xlat7, u_xlat9); u_xlat1.yz = u_xlat2.xy; u_xlat10.w = dot(u_xlat8.xyz, u_xlat1.xyz); u_xlat4.x = dot(u_xlat11.xyz, u_xlat1.xyz); u_xlat4.y = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat3.xy = u_xlat2.zw; u_xlat4.z = dot(u_xlat8.xyz, u_xlat3.xyz); u_xlat4.w = dot(u_xlat11.xyz, u_xlat3.xyz); u_xlat12 = dot(u_xlat7.xyz, u_xlat3.xyz); inOutVertices1_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat10.x); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat10.y); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat10.z); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat10.w); inOutVertices1_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat4.x); inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat4.y); inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat4.z); inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat4.w); inOutVertices1_buf[u_xlatu0].value[(32 >> 2)] = floatBitsToUint(u_xlat12); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb12 = u_xlatu0> 2) + 3]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.z = uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(32 >> 2) + 0]); u_xlati12 = int(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 0]); u_xlati12 = u_xlati12 + int(g_PoseOffsets[0].x); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat4.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.xyz = u_xlat1.yzw; u_xlat9.w = 1.0; u_xlat10.x = dot(u_xlat8, u_xlat9); u_xlat11.x = u_xlat4.y; u_xlat11.y = u_xlat5.y; u_xlat11.z = u_xlat6.y; u_xlat11.w = u_xlat7.y; u_xlat10.y = dot(u_xlat11, u_xlat9); u_xlat7.x = u_xlat4.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat10.z = dot(u_xlat7, u_xlat9); u_xlat1.yz = u_xlat2.xy; u_xlat10.w = dot(u_xlat8.xyz, u_xlat1.xyz); u_xlat4.x = dot(u_xlat11.xyz, u_xlat1.xyz); u_xlat4.y = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat3.xy = u_xlat2.zw; u_xlat4.z = dot(u_xlat8.xyz, u_xlat3.xyz); u_xlat4.w = dot(u_xlat11.xyz, u_xlat3.xyz); u_xlat12 = dot(u_xlat7.xyz, u_xlat3.xyz); inOutVertices0_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat10.x); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat10.y); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat10.z); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat10.w); inOutVertices0_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat4.x); inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat4.y); inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat4.z); inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat4.w); inOutVertices0_buf[u_xlatu0].value[(32 >> 2)] = floatBitsToUint(u_xlat12); } } } } } } } } return; } @AbatchMainInPlaceComputeSkinInPlaceCBufferinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6 inMatricesinOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices6S#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform ComputeSkinInPlaceCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; uvec4 g_PoseOffsets[2]; uint g_poseBufferMaxIndex; }; struct inSkin0_type { uint[4] value; }; layout(std430, binding = 7) readonly buffer inSkin0 { inSkin0_type inSkin0_buf[]; }; struct inSkin1_type { uint[4] value; }; layout(std430, binding = 8) readonly buffer inSkin1 { inSkin1_type inSkin1_buf[]; }; struct inSkin2_type { uint[4] value; }; layout(std430, binding = 9) readonly buffer inSkin2 { inSkin2_type inSkin2_buf[]; }; struct inSkin3_type { uint[4] value; }; layout(std430, binding = 10) readonly buffer inSkin3 { inSkin3_type inSkin3_buf[]; }; struct inSkin4_type { uint[4] value; }; layout(std430, binding = 11) readonly buffer inSkin4 { inSkin4_type inSkin4_buf[]; }; struct inSkin5_type { uint[4] value; }; layout(std430, binding = 12) readonly buffer inSkin5 { inSkin5_type inSkin5_buf[]; }; struct inSkin6_type { uint[4] value; }; layout(std430, binding = 13) readonly buffer inSkin6 { inSkin6_type inSkin6_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 14) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct inOutVertices0_type { uint[3] value; }; layout(std430, binding = 0) buffer inOutVertices0 { inOutVertices0_type inOutVertices0_buf[]; }; struct inOutVertices1_type { uint[3] value; }; layout(std430, binding = 1) buffer inOutVertices1 { inOutVertices1_type inOutVertices1_buf[]; }; struct inOutVertices2_type { uint[3] value; }; layout(std430, binding = 2) buffer inOutVertices2 { inOutVertices2_type inOutVertices2_buf[]; }; struct inOutVertices3_type { uint[3] value; }; layout(std430, binding = 3) buffer inOutVertices3 { inOutVertices3_type inOutVertices3_buf[]; }; struct inOutVertices4_type { uint[3] value; }; layout(std430, binding = 4) buffer inOutVertices4 { inOutVertices4_type inOutVertices4_buf[]; }; struct inOutVertices5_type { uint[3] value; }; layout(std430, binding = 5) buffer inOutVertices5 { inOutVertices5_type inOutVertices5_buf[]; }; struct inOutVertices6_type { uint[3] value; }; layout(std430, binding = 6) buffer inOutVertices6 { inOutVertices6_type inOutVertices6_buf[]; }; uint u_xlatu0; bool u_xlatb0; vec4 u_xlat1; vec4 u_xlat2; vec4 u_xlat3; vec4 u_xlat4; vec4 u_xlat5; vec4 u_xlat6; vec4 u_xlat7; vec4 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; vec4 u_xlat11; ivec2 u_xlati12; bool u_xlatb12; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].z); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inSkin6_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin6_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin6_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin6_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati12.xy = floatBitsToInt(u_xlat2.zw) + ivec2(g_PoseOffsets[1].zz); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat3.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.x = u_xlat3.y; u_xlat8.y = u_xlat4.y; u_xlat8.z = u_xlat5.y; u_xlat8.w = u_xlat6.y; u_xlat6.x = u_xlat3.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat3.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat10 = u_xlat2.yyyy * u_xlat10; u_xlat11.x = u_xlat3.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat11 = u_xlat2.yyyy * u_xlat11; u_xlat9.x = u_xlat3.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat3 = u_xlat2.yyyy * u_xlat9; u_xlat4 = u_xlat7 * u_xlat2.xxxx + u_xlat10; u_xlat5 = u_xlat8 * u_xlat2.xxxx + u_xlat11; u_xlat2 = u_xlat6 * u_xlat2.xxxx + u_xlat3; u_xlat1.w = 1.0; u_xlat3.x = dot(u_xlat4, u_xlat1); u_xlat3.y = dot(u_xlat5, u_xlat1); u_xlat3.z = dot(u_xlat2, u_xlat1); inOutVertices6_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat3.x); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat3.y); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat3.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].y); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inSkin5_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin5_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin5_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin5_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati12.xy = floatBitsToInt(u_xlat2.zw) + ivec2(g_PoseOffsets[1].yy); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat3.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.x = u_xlat3.y; u_xlat8.y = u_xlat4.y; u_xlat8.z = u_xlat5.y; u_xlat8.w = u_xlat6.y; u_xlat6.x = u_xlat3.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat3.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat10 = u_xlat2.yyyy * u_xlat10; u_xlat11.x = u_xlat3.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat11 = u_xlat2.yyyy * u_xlat11; u_xlat9.x = u_xlat3.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat3 = u_xlat2.yyyy * u_xlat9; u_xlat4 = u_xlat7 * u_xlat2.xxxx + u_xlat10; u_xlat5 = u_xlat8 * u_xlat2.xxxx + u_xlat11; u_xlat2 = u_xlat6 * u_xlat2.xxxx + u_xlat3; u_xlat1.w = 1.0; u_xlat3.x = dot(u_xlat4, u_xlat1); u_xlat3.y = dot(u_xlat5, u_xlat1); u_xlat3.z = dot(u_xlat2, u_xlat1); inOutVertices5_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat3.x); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat3.y); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat3.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati12.xy = floatBitsToInt(u_xlat2.zw) + ivec2(g_PoseOffsets[1].xx); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat3.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.x = u_xlat3.y; u_xlat8.y = u_xlat4.y; u_xlat8.z = u_xlat5.y; u_xlat8.w = u_xlat6.y; u_xlat6.x = u_xlat3.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat3.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat10 = u_xlat2.yyyy * u_xlat10; u_xlat11.x = u_xlat3.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat11 = u_xlat2.yyyy * u_xlat11; u_xlat9.x = u_xlat3.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat3 = u_xlat2.yyyy * u_xlat9; u_xlat4 = u_xlat7 * u_xlat2.xxxx + u_xlat10; u_xlat5 = u_xlat8 * u_xlat2.xxxx + u_xlat11; u_xlat2 = u_xlat6 * u_xlat2.xxxx + u_xlat3; u_xlat1.w = 1.0; u_xlat3.x = dot(u_xlat4, u_xlat1); u_xlat3.y = dot(u_xlat5, u_xlat1); u_xlat3.z = dot(u_xlat2, u_xlat1); inOutVertices4_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat3.x); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat3.y); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat3.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati12.xy = floatBitsToInt(u_xlat2.zw) + ivec2(g_PoseOffsets[0].ww); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat3.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.x = u_xlat3.y; u_xlat8.y = u_xlat4.y; u_xlat8.z = u_xlat5.y; u_xlat8.w = u_xlat6.y; u_xlat6.x = u_xlat3.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat3.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat10 = u_xlat2.yyyy * u_xlat10; u_xlat11.x = u_xlat3.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat11 = u_xlat2.yyyy * u_xlat11; u_xlat9.x = u_xlat3.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat3 = u_xlat2.yyyy * u_xlat9; u_xlat4 = u_xlat7 * u_xlat2.xxxx + u_xlat10; u_xlat5 = u_xlat8 * u_xlat2.xxxx + u_xlat11; u_xlat2 = u_xlat6 * u_xlat2.xxxx + u_xlat3; u_xlat1.w = 1.0; u_xlat3.x = dot(u_xlat4, u_xlat1); u_xlat3.y = dot(u_xlat5, u_xlat1); u_xlat3.z = dot(u_xlat2, u_xlat1); inOutVertices3_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat3.x); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat3.y); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat3.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati12.xy = floatBitsToInt(u_xlat2.zw) + ivec2(g_PoseOffsets[0].zz); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat3.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.x = u_xlat3.y; u_xlat8.y = u_xlat4.y; u_xlat8.z = u_xlat5.y; u_xlat8.w = u_xlat6.y; u_xlat6.x = u_xlat3.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat3.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat10 = u_xlat2.yyyy * u_xlat10; u_xlat11.x = u_xlat3.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat11 = u_xlat2.yyyy * u_xlat11; u_xlat9.x = u_xlat3.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat3 = u_xlat2.yyyy * u_xlat9; u_xlat4 = u_xlat7 * u_xlat2.xxxx + u_xlat10; u_xlat5 = u_xlat8 * u_xlat2.xxxx + u_xlat11; u_xlat2 = u_xlat6 * u_xlat2.xxxx + u_xlat3; u_xlat1.w = 1.0; u_xlat3.x = dot(u_xlat4, u_xlat1); u_xlat3.y = dot(u_xlat5, u_xlat1); u_xlat3.z = dot(u_xlat2, u_xlat1); inOutVertices2_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat3.x); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat3.y); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat3.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati12.xy = floatBitsToInt(u_xlat2.zw) + ivec2(g_PoseOffsets[0].yy); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat3.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.x = u_xlat3.y; u_xlat8.y = u_xlat4.y; u_xlat8.z = u_xlat5.y; u_xlat8.w = u_xlat6.y; u_xlat6.x = u_xlat3.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat3.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat10 = u_xlat2.yyyy * u_xlat10; u_xlat11.x = u_xlat3.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat11 = u_xlat2.yyyy * u_xlat11; u_xlat9.x = u_xlat3.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat3 = u_xlat2.yyyy * u_xlat9; u_xlat4 = u_xlat7 * u_xlat2.xxxx + u_xlat10; u_xlat5 = u_xlat8 * u_xlat2.xxxx + u_xlat11; u_xlat2 = u_xlat6 * u_xlat2.xxxx + u_xlat3; u_xlat1.w = 1.0; u_xlat3.x = dot(u_xlat4, u_xlat1); u_xlat3.y = dot(u_xlat5, u_xlat1); u_xlat3.z = dot(u_xlat2, u_xlat1); inOutVertices1_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat3.x); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat3.y); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat3.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati12.xy = floatBitsToInt(u_xlat2.zw) + ivec2(g_PoseOffsets[0].xx); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.x].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat3.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.x = u_xlat3.y; u_xlat8.y = u_xlat4.y; u_xlat8.z = u_xlat5.y; u_xlat8.w = u_xlat6.y; u_xlat6.x = u_xlat3.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati12.y].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat3.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat10 = u_xlat2.yyyy * u_xlat10; u_xlat11.x = u_xlat3.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat11 = u_xlat2.yyyy * u_xlat11; u_xlat9.x = u_xlat3.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat3 = u_xlat2.yyyy * u_xlat9; u_xlat4 = u_xlat7 * u_xlat2.xxxx + u_xlat10; u_xlat5 = u_xlat8 * u_xlat2.xxxx + u_xlat11; u_xlat2 = u_xlat6 * u_xlat2.xxxx + u_xlat3; u_xlat1.w = 1.0; u_xlat3.x = dot(u_xlat4, u_xlat1); u_xlat3.y = dot(u_xlat5, u_xlat1); u_xlat3.z = dot(u_xlat2, u_xlat1); inOutVertices0_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat3.x); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat3.y); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat3.z); } } } } } } } } return; } @AbatchMainInPlaceComputeSkinInPlaceCBufferinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6 inMatricesinOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices6è#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform ComputeSkinInPlaceCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; uvec4 g_PoseOffsets[2]; uint g_poseBufferMaxIndex; }; struct inSkin0_type { uint[4] value; }; layout(std430, binding = 7) readonly buffer inSkin0 { inSkin0_type inSkin0_buf[]; }; struct inSkin1_type { uint[4] value; }; layout(std430, binding = 8) readonly buffer inSkin1 { inSkin1_type inSkin1_buf[]; }; struct inSkin2_type { uint[4] value; }; layout(std430, binding = 9) readonly buffer inSkin2 { inSkin2_type inSkin2_buf[]; }; struct inSkin3_type { uint[4] value; }; layout(std430, binding = 10) readonly buffer inSkin3 { inSkin3_type inSkin3_buf[]; }; struct inSkin4_type { uint[4] value; }; layout(std430, binding = 11) readonly buffer inSkin4 { inSkin4_type inSkin4_buf[]; }; struct inSkin5_type { uint[4] value; }; layout(std430, binding = 12) readonly buffer inSkin5 { inSkin5_type inSkin5_buf[]; }; struct inSkin6_type { uint[4] value; }; layout(std430, binding = 13) readonly buffer inSkin6 { inSkin6_type inSkin6_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 14) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct inOutVertices0_type { uint[6] value; }; layout(std430, binding = 0) buffer inOutVertices0 { inOutVertices0_type inOutVertices0_buf[]; }; struct inOutVertices1_type { uint[6] value; }; layout(std430, binding = 1) buffer inOutVertices1 { inOutVertices1_type inOutVertices1_buf[]; }; struct inOutVertices2_type { uint[6] value; }; layout(std430, binding = 2) buffer inOutVertices2 { inOutVertices2_type inOutVertices2_buf[]; }; struct inOutVertices3_type { uint[6] value; }; layout(std430, binding = 3) buffer inOutVertices3 { inOutVertices3_type inOutVertices3_buf[]; }; struct inOutVertices4_type { uint[6] value; }; layout(std430, binding = 4) buffer inOutVertices4 { inOutVertices4_type inOutVertices4_buf[]; }; struct inOutVertices5_type { uint[6] value; }; layout(std430, binding = 5) buffer inOutVertices5 { inOutVertices5_type inOutVertices5_buf[]; }; struct inOutVertices6_type { uint[6] value; }; layout(std430, binding = 6) buffer inOutVertices6 { inOutVertices6_type inOutVertices6_buf[]; }; uint u_xlatu0; bool u_xlatb0; vec4 u_xlat1; vec3 u_xlat2; vec4 u_xlat3; vec4 u_xlat4; vec4 u_xlat5; vec4 u_xlat6; vec4 u_xlat7; vec4 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; vec4 u_xlat11; vec4 u_xlat12; ivec2 u_xlati13; bool u_xlatb13; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].z); u_xlatb13 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inSkin6_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin6_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin6_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin6_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati13.xy = floatBitsToInt(u_xlat3.zw) + ivec2(g_PoseOffsets[1].zz); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat4.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat4.y; u_xlat9.y = u_xlat5.y; u_xlat9.z = u_xlat6.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat4.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat4.x; u_xlat11.y = u_xlat5.x; u_xlat11.z = u_xlat6.x; u_xlat11.w = u_xlat10.x; u_xlat11 = u_xlat3.yyyy * u_xlat11; u_xlat12.x = u_xlat4.y; u_xlat12.y = u_xlat5.y; u_xlat12.z = u_xlat6.y; u_xlat12.w = u_xlat10.y; u_xlat12 = u_xlat3.yyyy * u_xlat12; u_xlat10.x = u_xlat4.z; u_xlat10.y = u_xlat5.z; u_xlat10.z = u_xlat6.z; u_xlat4 = u_xlat3.yyyy * u_xlat10; u_xlat5 = u_xlat8 * u_xlat3.xxxx + u_xlat11; u_xlat6 = u_xlat9 * u_xlat3.xxxx + u_xlat12; u_xlat3 = u_xlat7 * u_xlat3.xxxx + u_xlat4; u_xlat4.xyz = u_xlat1.xyz; u_xlat4.w = 1.0; u_xlat7.x = dot(u_xlat5, u_xlat4); u_xlat7.y = dot(u_xlat6, u_xlat4); u_xlat7.z = dot(u_xlat3, u_xlat4); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat5.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat6.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat3.yzx, u_xlat2.xyz); inOutVertices6_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat7.x); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat7.y); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat7.z); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat7.w); inOutVertices6_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat1.x); inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat1.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].y); u_xlatb13 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inSkin5_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin5_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin5_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin5_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati13.xy = floatBitsToInt(u_xlat3.zw) + ivec2(g_PoseOffsets[1].yy); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat4.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat4.y; u_xlat9.y = u_xlat5.y; u_xlat9.z = u_xlat6.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat4.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat4.x; u_xlat11.y = u_xlat5.x; u_xlat11.z = u_xlat6.x; u_xlat11.w = u_xlat10.x; u_xlat11 = u_xlat3.yyyy * u_xlat11; u_xlat12.x = u_xlat4.y; u_xlat12.y = u_xlat5.y; u_xlat12.z = u_xlat6.y; u_xlat12.w = u_xlat10.y; u_xlat12 = u_xlat3.yyyy * u_xlat12; u_xlat10.x = u_xlat4.z; u_xlat10.y = u_xlat5.z; u_xlat10.z = u_xlat6.z; u_xlat4 = u_xlat3.yyyy * u_xlat10; u_xlat5 = u_xlat8 * u_xlat3.xxxx + u_xlat11; u_xlat6 = u_xlat9 * u_xlat3.xxxx + u_xlat12; u_xlat3 = u_xlat7 * u_xlat3.xxxx + u_xlat4; u_xlat4.xyz = u_xlat1.xyz; u_xlat4.w = 1.0; u_xlat7.x = dot(u_xlat5, u_xlat4); u_xlat7.y = dot(u_xlat6, u_xlat4); u_xlat7.z = dot(u_xlat3, u_xlat4); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat5.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat6.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat3.yzx, u_xlat2.xyz); inOutVertices5_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat7.x); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat7.y); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat7.z); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat7.w); inOutVertices5_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat1.x); inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat1.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb13 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati13.xy = floatBitsToInt(u_xlat3.zw) + ivec2(g_PoseOffsets[1].xx); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat4.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat4.y; u_xlat9.y = u_xlat5.y; u_xlat9.z = u_xlat6.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat4.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat4.x; u_xlat11.y = u_xlat5.x; u_xlat11.z = u_xlat6.x; u_xlat11.w = u_xlat10.x; u_xlat11 = u_xlat3.yyyy * u_xlat11; u_xlat12.x = u_xlat4.y; u_xlat12.y = u_xlat5.y; u_xlat12.z = u_xlat6.y; u_xlat12.w = u_xlat10.y; u_xlat12 = u_xlat3.yyyy * u_xlat12; u_xlat10.x = u_xlat4.z; u_xlat10.y = u_xlat5.z; u_xlat10.z = u_xlat6.z; u_xlat4 = u_xlat3.yyyy * u_xlat10; u_xlat5 = u_xlat8 * u_xlat3.xxxx + u_xlat11; u_xlat6 = u_xlat9 * u_xlat3.xxxx + u_xlat12; u_xlat3 = u_xlat7 * u_xlat3.xxxx + u_xlat4; u_xlat4.xyz = u_xlat1.xyz; u_xlat4.w = 1.0; u_xlat7.x = dot(u_xlat5, u_xlat4); u_xlat7.y = dot(u_xlat6, u_xlat4); u_xlat7.z = dot(u_xlat3, u_xlat4); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat5.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat6.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat3.yzx, u_xlat2.xyz); inOutVertices4_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat7.x); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat7.y); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat7.z); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat7.w); inOutVertices4_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat1.x); inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat1.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb13 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati13.xy = floatBitsToInt(u_xlat3.zw) + ivec2(g_PoseOffsets[0].ww); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat4.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat4.y; u_xlat9.y = u_xlat5.y; u_xlat9.z = u_xlat6.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat4.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat4.x; u_xlat11.y = u_xlat5.x; u_xlat11.z = u_xlat6.x; u_xlat11.w = u_xlat10.x; u_xlat11 = u_xlat3.yyyy * u_xlat11; u_xlat12.x = u_xlat4.y; u_xlat12.y = u_xlat5.y; u_xlat12.z = u_xlat6.y; u_xlat12.w = u_xlat10.y; u_xlat12 = u_xlat3.yyyy * u_xlat12; u_xlat10.x = u_xlat4.z; u_xlat10.y = u_xlat5.z; u_xlat10.z = u_xlat6.z; u_xlat4 = u_xlat3.yyyy * u_xlat10; u_xlat5 = u_xlat8 * u_xlat3.xxxx + u_xlat11; u_xlat6 = u_xlat9 * u_xlat3.xxxx + u_xlat12; u_xlat3 = u_xlat7 * u_xlat3.xxxx + u_xlat4; u_xlat4.xyz = u_xlat1.xyz; u_xlat4.w = 1.0; u_xlat7.x = dot(u_xlat5, u_xlat4); u_xlat7.y = dot(u_xlat6, u_xlat4); u_xlat7.z = dot(u_xlat3, u_xlat4); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat5.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat6.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat3.yzx, u_xlat2.xyz); inOutVertices3_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat7.x); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat7.y); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat7.z); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat7.w); inOutVertices3_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat1.x); inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat1.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb13 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati13.xy = floatBitsToInt(u_xlat3.zw) + ivec2(g_PoseOffsets[0].zz); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat4.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat4.y; u_xlat9.y = u_xlat5.y; u_xlat9.z = u_xlat6.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat4.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat4.x; u_xlat11.y = u_xlat5.x; u_xlat11.z = u_xlat6.x; u_xlat11.w = u_xlat10.x; u_xlat11 = u_xlat3.yyyy * u_xlat11; u_xlat12.x = u_xlat4.y; u_xlat12.y = u_xlat5.y; u_xlat12.z = u_xlat6.y; u_xlat12.w = u_xlat10.y; u_xlat12 = u_xlat3.yyyy * u_xlat12; u_xlat10.x = u_xlat4.z; u_xlat10.y = u_xlat5.z; u_xlat10.z = u_xlat6.z; u_xlat4 = u_xlat3.yyyy * u_xlat10; u_xlat5 = u_xlat8 * u_xlat3.xxxx + u_xlat11; u_xlat6 = u_xlat9 * u_xlat3.xxxx + u_xlat12; u_xlat3 = u_xlat7 * u_xlat3.xxxx + u_xlat4; u_xlat4.xyz = u_xlat1.xyz; u_xlat4.w = 1.0; u_xlat7.x = dot(u_xlat5, u_xlat4); u_xlat7.y = dot(u_xlat6, u_xlat4); u_xlat7.z = dot(u_xlat3, u_xlat4); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat5.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat6.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat3.yzx, u_xlat2.xyz); inOutVertices2_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat7.x); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat7.y); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat7.z); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat7.w); inOutVertices2_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat1.x); inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat1.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb13 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati13.xy = floatBitsToInt(u_xlat3.zw) + ivec2(g_PoseOffsets[0].yy); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat4.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat4.y; u_xlat9.y = u_xlat5.y; u_xlat9.z = u_xlat6.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat4.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat4.x; u_xlat11.y = u_xlat5.x; u_xlat11.z = u_xlat6.x; u_xlat11.w = u_xlat10.x; u_xlat11 = u_xlat3.yyyy * u_xlat11; u_xlat12.x = u_xlat4.y; u_xlat12.y = u_xlat5.y; u_xlat12.z = u_xlat6.y; u_xlat12.w = u_xlat10.y; u_xlat12 = u_xlat3.yyyy * u_xlat12; u_xlat10.x = u_xlat4.z; u_xlat10.y = u_xlat5.z; u_xlat10.z = u_xlat6.z; u_xlat4 = u_xlat3.yyyy * u_xlat10; u_xlat5 = u_xlat8 * u_xlat3.xxxx + u_xlat11; u_xlat6 = u_xlat9 * u_xlat3.xxxx + u_xlat12; u_xlat3 = u_xlat7 * u_xlat3.xxxx + u_xlat4; u_xlat4.xyz = u_xlat1.xyz; u_xlat4.w = 1.0; u_xlat7.x = dot(u_xlat5, u_xlat4); u_xlat7.y = dot(u_xlat6, u_xlat4); u_xlat7.z = dot(u_xlat3, u_xlat4); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat5.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat6.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat3.yzx, u_xlat2.xyz); inOutVertices1_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat7.x); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat7.y); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat7.z); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat7.w); inOutVertices1_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat1.x); inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat1.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb13 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati13.xy = floatBitsToInt(u_xlat3.zw) + ivec2(g_PoseOffsets[0].xx); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.x].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat4.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat4.y; u_xlat9.y = u_xlat5.y; u_xlat9.z = u_xlat6.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat4.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati13.y].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat4.x; u_xlat11.y = u_xlat5.x; u_xlat11.z = u_xlat6.x; u_xlat11.w = u_xlat10.x; u_xlat11 = u_xlat3.yyyy * u_xlat11; u_xlat12.x = u_xlat4.y; u_xlat12.y = u_xlat5.y; u_xlat12.z = u_xlat6.y; u_xlat12.w = u_xlat10.y; u_xlat12 = u_xlat3.yyyy * u_xlat12; u_xlat10.x = u_xlat4.z; u_xlat10.y = u_xlat5.z; u_xlat10.z = u_xlat6.z; u_xlat4 = u_xlat3.yyyy * u_xlat10; u_xlat5 = u_xlat8 * u_xlat3.xxxx + u_xlat11; u_xlat6 = u_xlat9 * u_xlat3.xxxx + u_xlat12; u_xlat3 = u_xlat7 * u_xlat3.xxxx + u_xlat4; u_xlat4.xyz = u_xlat1.xyz; u_xlat4.w = 1.0; u_xlat7.x = dot(u_xlat5, u_xlat4); u_xlat7.y = dot(u_xlat6, u_xlat4); u_xlat7.z = dot(u_xlat3, u_xlat4); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat5.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat6.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat3.yzx, u_xlat2.xyz); inOutVertices0_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat7.x); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat7.y); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat7.z); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat7.w); inOutVertices0_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat1.x); inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat1.y); } } } } } } } } return; } @AbatchMainInPlaceComputeSkinInPlaceCBufferinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6 inMatricesinOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices6ɾ#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform ComputeSkinInPlaceCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; uvec4 g_PoseOffsets[2]; uint g_poseBufferMaxIndex; }; struct inSkin0_type { uint[4] value; }; layout(std430, binding = 7) readonly buffer inSkin0 { inSkin0_type inSkin0_buf[]; }; struct inSkin1_type { uint[4] value; }; layout(std430, binding = 8) readonly buffer inSkin1 { inSkin1_type inSkin1_buf[]; }; struct inSkin2_type { uint[4] value; }; layout(std430, binding = 9) readonly buffer inSkin2 { inSkin2_type inSkin2_buf[]; }; struct inSkin3_type { uint[4] value; }; layout(std430, binding = 10) readonly buffer inSkin3 { inSkin3_type inSkin3_buf[]; }; struct inSkin4_type { uint[4] value; }; layout(std430, binding = 11) readonly buffer inSkin4 { inSkin4_type inSkin4_buf[]; }; struct inSkin5_type { uint[4] value; }; layout(std430, binding = 12) readonly buffer inSkin5 { inSkin5_type inSkin5_buf[]; }; struct inSkin6_type { uint[4] value; }; layout(std430, binding = 13) readonly buffer inSkin6 { inSkin6_type inSkin6_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 14) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct inOutVertices0_type { uint[10] value; }; layout(std430, binding = 0) buffer inOutVertices0 { inOutVertices0_type inOutVertices0_buf[]; }; struct inOutVertices1_type { uint[10] value; }; layout(std430, binding = 1) buffer inOutVertices1 { inOutVertices1_type inOutVertices1_buf[]; }; struct inOutVertices2_type { uint[10] value; }; layout(std430, binding = 2) buffer inOutVertices2 { inOutVertices2_type inOutVertices2_buf[]; }; struct inOutVertices3_type { uint[10] value; }; layout(std430, binding = 3) buffer inOutVertices3 { inOutVertices3_type inOutVertices3_buf[]; }; struct inOutVertices4_type { uint[10] value; }; layout(std430, binding = 4) buffer inOutVertices4 { inOutVertices4_type inOutVertices4_buf[]; }; struct inOutVertices5_type { uint[10] value; }; layout(std430, binding = 5) buffer inOutVertices5 { inOutVertices5_type inOutVertices5_buf[]; }; struct inOutVertices6_type { uint[10] value; }; layout(std430, binding = 6) buffer inOutVertices6 { inOutVertices6_type inOutVertices6_buf[]; }; uint u_xlatu0; bool u_xlatb0; vec4 u_xlat1; vec4 u_xlat2; vec3 u_xlat3; vec4 u_xlat4; vec4 u_xlat5; vec4 u_xlat6; vec4 u_xlat7; vec4 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; vec4 u_xlat11; vec4 u_xlat12; vec4 u_xlat13; float u_xlat14; ivec2 u_xlati14; bool u_xlatb14; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].z); u_xlatb14 = u_xlatu0> 2) + 3]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.z = uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(32 >> 2) + 0]); u_xlat4 = vec4(uintBitsToFloat(inSkin6_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin6_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin6_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin6_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati14.xy = floatBitsToInt(u_xlat4.zw) + ivec2(g_PoseOffsets[1].zz); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat5.x; u_xlat9.y = u_xlat6.x; u_xlat9.z = u_xlat7.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat5.y; u_xlat10.y = u_xlat6.y; u_xlat10.z = u_xlat7.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat5.z; u_xlat8.y = u_xlat6.z; u_xlat8.z = u_xlat7.z; u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat5.x; u_xlat12.y = u_xlat6.x; u_xlat12.z = u_xlat7.x; u_xlat12.w = u_xlat11.x; u_xlat12 = u_xlat4.yyyy * u_xlat12; u_xlat13.x = u_xlat5.y; u_xlat13.y = u_xlat6.y; u_xlat13.z = u_xlat7.y; u_xlat13.w = u_xlat11.y; u_xlat13 = u_xlat4.yyyy * u_xlat13; u_xlat11.x = u_xlat5.z; u_xlat11.y = u_xlat6.z; u_xlat11.z = u_xlat7.z; u_xlat5 = u_xlat4.yyyy * u_xlat11; u_xlat6 = u_xlat9 * u_xlat4.xxxx + u_xlat12; u_xlat7 = u_xlat10 * u_xlat4.xxxx + u_xlat13; u_xlat4 = u_xlat8 * u_xlat4.xxxx + u_xlat5; u_xlat5.xyz = u_xlat1.yzw; u_xlat5.w = 1.0; u_xlat8.x = dot(u_xlat6, u_xlat5); u_xlat8.y = dot(u_xlat7, u_xlat5); u_xlat8.z = dot(u_xlat4, u_xlat5); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat6.xyz, u_xlat1.xyz); u_xlat5.x = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat5.y = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat3.xy = u_xlat2.zw; u_xlat5.z = dot(u_xlat6.xyz, u_xlat3.xyz); u_xlat5.w = dot(u_xlat7.xyz, u_xlat3.xyz); u_xlat14 = dot(u_xlat4.xyz, u_xlat3.xyz); inOutVertices6_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat8.x); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat8.y); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat8.z); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat8.w); inOutVertices6_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat5.x); inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat5.y); inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat5.z); inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat5.w); inOutVertices6_buf[u_xlatu0].value[(32 >> 2)] = floatBitsToUint(u_xlat14); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].y); u_xlatb14 = u_xlatu0> 2) + 3]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.z = uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(32 >> 2) + 0]); u_xlat4 = vec4(uintBitsToFloat(inSkin5_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin5_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin5_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin5_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati14.xy = floatBitsToInt(u_xlat4.zw) + ivec2(g_PoseOffsets[1].yy); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat5.x; u_xlat9.y = u_xlat6.x; u_xlat9.z = u_xlat7.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat5.y; u_xlat10.y = u_xlat6.y; u_xlat10.z = u_xlat7.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat5.z; u_xlat8.y = u_xlat6.z; u_xlat8.z = u_xlat7.z; u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat5.x; u_xlat12.y = u_xlat6.x; u_xlat12.z = u_xlat7.x; u_xlat12.w = u_xlat11.x; u_xlat12 = u_xlat4.yyyy * u_xlat12; u_xlat13.x = u_xlat5.y; u_xlat13.y = u_xlat6.y; u_xlat13.z = u_xlat7.y; u_xlat13.w = u_xlat11.y; u_xlat13 = u_xlat4.yyyy * u_xlat13; u_xlat11.x = u_xlat5.z; u_xlat11.y = u_xlat6.z; u_xlat11.z = u_xlat7.z; u_xlat5 = u_xlat4.yyyy * u_xlat11; u_xlat6 = u_xlat9 * u_xlat4.xxxx + u_xlat12; u_xlat7 = u_xlat10 * u_xlat4.xxxx + u_xlat13; u_xlat4 = u_xlat8 * u_xlat4.xxxx + u_xlat5; u_xlat5.xyz = u_xlat1.yzw; u_xlat5.w = 1.0; u_xlat8.x = dot(u_xlat6, u_xlat5); u_xlat8.y = dot(u_xlat7, u_xlat5); u_xlat8.z = dot(u_xlat4, u_xlat5); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat6.xyz, u_xlat1.xyz); u_xlat5.x = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat5.y = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat3.xy = u_xlat2.zw; u_xlat5.z = dot(u_xlat6.xyz, u_xlat3.xyz); u_xlat5.w = dot(u_xlat7.xyz, u_xlat3.xyz); u_xlat14 = dot(u_xlat4.xyz, u_xlat3.xyz); inOutVertices5_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat8.x); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat8.y); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat8.z); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat8.w); inOutVertices5_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat5.x); inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat5.y); inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat5.z); inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat5.w); inOutVertices5_buf[u_xlatu0].value[(32 >> 2)] = floatBitsToUint(u_xlat14); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb14 = u_xlatu0> 2) + 3]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.z = uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(32 >> 2) + 0]); u_xlat4 = vec4(uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati14.xy = floatBitsToInt(u_xlat4.zw) + ivec2(g_PoseOffsets[1].xx); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat5.x; u_xlat9.y = u_xlat6.x; u_xlat9.z = u_xlat7.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat5.y; u_xlat10.y = u_xlat6.y; u_xlat10.z = u_xlat7.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat5.z; u_xlat8.y = u_xlat6.z; u_xlat8.z = u_xlat7.z; u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat5.x; u_xlat12.y = u_xlat6.x; u_xlat12.z = u_xlat7.x; u_xlat12.w = u_xlat11.x; u_xlat12 = u_xlat4.yyyy * u_xlat12; u_xlat13.x = u_xlat5.y; u_xlat13.y = u_xlat6.y; u_xlat13.z = u_xlat7.y; u_xlat13.w = u_xlat11.y; u_xlat13 = u_xlat4.yyyy * u_xlat13; u_xlat11.x = u_xlat5.z; u_xlat11.y = u_xlat6.z; u_xlat11.z = u_xlat7.z; u_xlat5 = u_xlat4.yyyy * u_xlat11; u_xlat6 = u_xlat9 * u_xlat4.xxxx + u_xlat12; u_xlat7 = u_xlat10 * u_xlat4.xxxx + u_xlat13; u_xlat4 = u_xlat8 * u_xlat4.xxxx + u_xlat5; u_xlat5.xyz = u_xlat1.yzw; u_xlat5.w = 1.0; u_xlat8.x = dot(u_xlat6, u_xlat5); u_xlat8.y = dot(u_xlat7, u_xlat5); u_xlat8.z = dot(u_xlat4, u_xlat5); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat6.xyz, u_xlat1.xyz); u_xlat5.x = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat5.y = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat3.xy = u_xlat2.zw; u_xlat5.z = dot(u_xlat6.xyz, u_xlat3.xyz); u_xlat5.w = dot(u_xlat7.xyz, u_xlat3.xyz); u_xlat14 = dot(u_xlat4.xyz, u_xlat3.xyz); inOutVertices4_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat8.x); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat8.y); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat8.z); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat8.w); inOutVertices4_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat5.x); inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat5.y); inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat5.z); inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat5.w); inOutVertices4_buf[u_xlatu0].value[(32 >> 2)] = floatBitsToUint(u_xlat14); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb14 = u_xlatu0> 2) + 3]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.z = uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(32 >> 2) + 0]); u_xlat4 = vec4(uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati14.xy = floatBitsToInt(u_xlat4.zw) + ivec2(g_PoseOffsets[0].ww); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat5.x; u_xlat9.y = u_xlat6.x; u_xlat9.z = u_xlat7.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat5.y; u_xlat10.y = u_xlat6.y; u_xlat10.z = u_xlat7.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat5.z; u_xlat8.y = u_xlat6.z; u_xlat8.z = u_xlat7.z; u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat5.x; u_xlat12.y = u_xlat6.x; u_xlat12.z = u_xlat7.x; u_xlat12.w = u_xlat11.x; u_xlat12 = u_xlat4.yyyy * u_xlat12; u_xlat13.x = u_xlat5.y; u_xlat13.y = u_xlat6.y; u_xlat13.z = u_xlat7.y; u_xlat13.w = u_xlat11.y; u_xlat13 = u_xlat4.yyyy * u_xlat13; u_xlat11.x = u_xlat5.z; u_xlat11.y = u_xlat6.z; u_xlat11.z = u_xlat7.z; u_xlat5 = u_xlat4.yyyy * u_xlat11; u_xlat6 = u_xlat9 * u_xlat4.xxxx + u_xlat12; u_xlat7 = u_xlat10 * u_xlat4.xxxx + u_xlat13; u_xlat4 = u_xlat8 * u_xlat4.xxxx + u_xlat5; u_xlat5.xyz = u_xlat1.yzw; u_xlat5.w = 1.0; u_xlat8.x = dot(u_xlat6, u_xlat5); u_xlat8.y = dot(u_xlat7, u_xlat5); u_xlat8.z = dot(u_xlat4, u_xlat5); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat6.xyz, u_xlat1.xyz); u_xlat5.x = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat5.y = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat3.xy = u_xlat2.zw; u_xlat5.z = dot(u_xlat6.xyz, u_xlat3.xyz); u_xlat5.w = dot(u_xlat7.xyz, u_xlat3.xyz); u_xlat14 = dot(u_xlat4.xyz, u_xlat3.xyz); inOutVertices3_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat8.x); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat8.y); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat8.z); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat8.w); inOutVertices3_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat5.x); inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat5.y); inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat5.z); inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat5.w); inOutVertices3_buf[u_xlatu0].value[(32 >> 2)] = floatBitsToUint(u_xlat14); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb14 = u_xlatu0> 2) + 3]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.z = uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(32 >> 2) + 0]); u_xlat4 = vec4(uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati14.xy = floatBitsToInt(u_xlat4.zw) + ivec2(g_PoseOffsets[0].zz); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat5.x; u_xlat9.y = u_xlat6.x; u_xlat9.z = u_xlat7.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat5.y; u_xlat10.y = u_xlat6.y; u_xlat10.z = u_xlat7.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat5.z; u_xlat8.y = u_xlat6.z; u_xlat8.z = u_xlat7.z; u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat5.x; u_xlat12.y = u_xlat6.x; u_xlat12.z = u_xlat7.x; u_xlat12.w = u_xlat11.x; u_xlat12 = u_xlat4.yyyy * u_xlat12; u_xlat13.x = u_xlat5.y; u_xlat13.y = u_xlat6.y; u_xlat13.z = u_xlat7.y; u_xlat13.w = u_xlat11.y; u_xlat13 = u_xlat4.yyyy * u_xlat13; u_xlat11.x = u_xlat5.z; u_xlat11.y = u_xlat6.z; u_xlat11.z = u_xlat7.z; u_xlat5 = u_xlat4.yyyy * u_xlat11; u_xlat6 = u_xlat9 * u_xlat4.xxxx + u_xlat12; u_xlat7 = u_xlat10 * u_xlat4.xxxx + u_xlat13; u_xlat4 = u_xlat8 * u_xlat4.xxxx + u_xlat5; u_xlat5.xyz = u_xlat1.yzw; u_xlat5.w = 1.0; u_xlat8.x = dot(u_xlat6, u_xlat5); u_xlat8.y = dot(u_xlat7, u_xlat5); u_xlat8.z = dot(u_xlat4, u_xlat5); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat6.xyz, u_xlat1.xyz); u_xlat5.x = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat5.y = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat3.xy = u_xlat2.zw; u_xlat5.z = dot(u_xlat6.xyz, u_xlat3.xyz); u_xlat5.w = dot(u_xlat7.xyz, u_xlat3.xyz); u_xlat14 = dot(u_xlat4.xyz, u_xlat3.xyz); inOutVertices2_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat8.x); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat8.y); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat8.z); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat8.w); inOutVertices2_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat5.x); inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat5.y); inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat5.z); inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat5.w); inOutVertices2_buf[u_xlatu0].value[(32 >> 2)] = floatBitsToUint(u_xlat14); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb14 = u_xlatu0> 2) + 3]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.z = uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(32 >> 2) + 0]); u_xlat4 = vec4(uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati14.xy = floatBitsToInt(u_xlat4.zw) + ivec2(g_PoseOffsets[0].yy); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat5.x; u_xlat9.y = u_xlat6.x; u_xlat9.z = u_xlat7.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat5.y; u_xlat10.y = u_xlat6.y; u_xlat10.z = u_xlat7.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat5.z; u_xlat8.y = u_xlat6.z; u_xlat8.z = u_xlat7.z; u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat5.x; u_xlat12.y = u_xlat6.x; u_xlat12.z = u_xlat7.x; u_xlat12.w = u_xlat11.x; u_xlat12 = u_xlat4.yyyy * u_xlat12; u_xlat13.x = u_xlat5.y; u_xlat13.y = u_xlat6.y; u_xlat13.z = u_xlat7.y; u_xlat13.w = u_xlat11.y; u_xlat13 = u_xlat4.yyyy * u_xlat13; u_xlat11.x = u_xlat5.z; u_xlat11.y = u_xlat6.z; u_xlat11.z = u_xlat7.z; u_xlat5 = u_xlat4.yyyy * u_xlat11; u_xlat6 = u_xlat9 * u_xlat4.xxxx + u_xlat12; u_xlat7 = u_xlat10 * u_xlat4.xxxx + u_xlat13; u_xlat4 = u_xlat8 * u_xlat4.xxxx + u_xlat5; u_xlat5.xyz = u_xlat1.yzw; u_xlat5.w = 1.0; u_xlat8.x = dot(u_xlat6, u_xlat5); u_xlat8.y = dot(u_xlat7, u_xlat5); u_xlat8.z = dot(u_xlat4, u_xlat5); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat6.xyz, u_xlat1.xyz); u_xlat5.x = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat5.y = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat3.xy = u_xlat2.zw; u_xlat5.z = dot(u_xlat6.xyz, u_xlat3.xyz); u_xlat5.w = dot(u_xlat7.xyz, u_xlat3.xyz); u_xlat14 = dot(u_xlat4.xyz, u_xlat3.xyz); inOutVertices1_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat8.x); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat8.y); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat8.z); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat8.w); inOutVertices1_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat5.x); inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat5.y); inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat5.z); inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat5.w); inOutVertices1_buf[u_xlatu0].value[(32 >> 2)] = floatBitsToUint(u_xlat14); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb14 = u_xlatu0> 2) + 3]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.z = uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(32 >> 2) + 0]); u_xlat4 = vec4(uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati14.xy = floatBitsToInt(u_xlat4.zw) + ivec2(g_PoseOffsets[0].xx); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.x].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat5.x; u_xlat9.y = u_xlat6.x; u_xlat9.z = u_xlat7.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat5.y; u_xlat10.y = u_xlat6.y; u_xlat10.z = u_xlat7.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat5.z; u_xlat8.y = u_xlat6.z; u_xlat8.z = u_xlat7.z; u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati14.y].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat5.x; u_xlat12.y = u_xlat6.x; u_xlat12.z = u_xlat7.x; u_xlat12.w = u_xlat11.x; u_xlat12 = u_xlat4.yyyy * u_xlat12; u_xlat13.x = u_xlat5.y; u_xlat13.y = u_xlat6.y; u_xlat13.z = u_xlat7.y; u_xlat13.w = u_xlat11.y; u_xlat13 = u_xlat4.yyyy * u_xlat13; u_xlat11.x = u_xlat5.z; u_xlat11.y = u_xlat6.z; u_xlat11.z = u_xlat7.z; u_xlat5 = u_xlat4.yyyy * u_xlat11; u_xlat6 = u_xlat9 * u_xlat4.xxxx + u_xlat12; u_xlat7 = u_xlat10 * u_xlat4.xxxx + u_xlat13; u_xlat4 = u_xlat8 * u_xlat4.xxxx + u_xlat5; u_xlat5.xyz = u_xlat1.yzw; u_xlat5.w = 1.0; u_xlat8.x = dot(u_xlat6, u_xlat5); u_xlat8.y = dot(u_xlat7, u_xlat5); u_xlat8.z = dot(u_xlat4, u_xlat5); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat6.xyz, u_xlat1.xyz); u_xlat5.x = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat5.y = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat3.xy = u_xlat2.zw; u_xlat5.z = dot(u_xlat6.xyz, u_xlat3.xyz); u_xlat5.w = dot(u_xlat7.xyz, u_xlat3.xyz); u_xlat14 = dot(u_xlat4.xyz, u_xlat3.xyz); inOutVertices0_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat8.x); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat8.y); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat8.z); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat8.w); inOutVertices0_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat5.x); inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat5.y); inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat5.z); inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat5.w); inOutVertices0_buf[u_xlatu0].value[(32 >> 2)] = floatBitsToUint(u_xlat14); } } } } } } } } return; } @AbatchMainInPlaceComputeSkinInPlaceCBufferinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6 inMatricesinOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices6#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform ComputeSkinInPlaceCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; uvec4 g_PoseOffsets[2]; uint g_poseBufferMaxIndex; }; struct inSkin0_type { uint[8] value; }; layout(std430, binding = 7) readonly buffer inSkin0 { inSkin0_type inSkin0_buf[]; }; struct inSkin1_type { uint[8] value; }; layout(std430, binding = 8) readonly buffer inSkin1 { inSkin1_type inSkin1_buf[]; }; struct inSkin2_type { uint[8] value; }; layout(std430, binding = 9) readonly buffer inSkin2 { inSkin2_type inSkin2_buf[]; }; struct inSkin3_type { uint[8] value; }; layout(std430, binding = 10) readonly buffer inSkin3 { inSkin3_type inSkin3_buf[]; }; struct inSkin4_type { uint[8] value; }; layout(std430, binding = 11) readonly buffer inSkin4 { inSkin4_type inSkin4_buf[]; }; struct inSkin5_type { uint[8] value; }; layout(std430, binding = 12) readonly buffer inSkin5 { inSkin5_type inSkin5_buf[]; }; struct inSkin6_type { uint[8] value; }; layout(std430, binding = 13) readonly buffer inSkin6 { inSkin6_type inSkin6_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 14) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct inOutVertices0_type { uint[3] value; }; layout(std430, binding = 0) buffer inOutVertices0 { inOutVertices0_type inOutVertices0_buf[]; }; struct inOutVertices1_type { uint[3] value; }; layout(std430, binding = 1) buffer inOutVertices1 { inOutVertices1_type inOutVertices1_buf[]; }; struct inOutVertices2_type { uint[3] value; }; layout(std430, binding = 2) buffer inOutVertices2 { inOutVertices2_type inOutVertices2_buf[]; }; struct inOutVertices3_type { uint[3] value; }; layout(std430, binding = 3) buffer inOutVertices3 { inOutVertices3_type inOutVertices3_buf[]; }; struct inOutVertices4_type { uint[3] value; }; layout(std430, binding = 4) buffer inOutVertices4 { inOutVertices4_type inOutVertices4_buf[]; }; struct inOutVertices5_type { uint[3] value; }; layout(std430, binding = 5) buffer inOutVertices5 { inOutVertices5_type inOutVertices5_buf[]; }; struct inOutVertices6_type { uint[3] value; }; layout(std430, binding = 6) buffer inOutVertices6 { inOutVertices6_type inOutVertices6_buf[]; }; uint u_xlatu0; bool u_xlatb0; vec4 u_xlat1; vec4 u_xlat2; vec4 u_xlat3; ivec4 u_xlati3; vec4 u_xlat4; vec4 u_xlat5; vec4 u_xlat6; vec4 u_xlat7; vec4 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; vec4 u_xlat11; vec3 u_xlat12; bool u_xlatb12; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].z); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inSkin6_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin6_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin6_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin6_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati3 = ivec4(int(inSkin6_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin6_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin6_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin6_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati3 = u_xlati3 + ivec4(g_PoseOffsets[1].zzzz); u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat12.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.x = u_xlat12.y; u_xlat8.y = u_xlat4.y; u_xlat8.z = u_xlat5.y; u_xlat8.w = u_xlat6.y; u_xlat6.x = u_xlat12.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat12.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat10 = u_xlat2.yyyy * u_xlat10; u_xlat11.x = u_xlat12.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat11 = u_xlat2.yyyy * u_xlat11; u_xlat9.x = u_xlat12.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat4 = u_xlat2.yyyy * u_xlat9; u_xlat5 = u_xlat7 * u_xlat2.xxxx + u_xlat10; u_xlat7 = u_xlat8 * u_xlat2.xxxx + u_xlat11; u_xlat4 = u_xlat6 * u_xlat2.xxxx + u_xlat4; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat12.x; u_xlat10.y = u_xlat6.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat12.y; u_xlat11.y = u_xlat6.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat12.z; u_xlat9.y = u_xlat6.z; u_xlat9.z = u_xlat8.z; u_xlat5 = u_xlat10 * u_xlat2.zzzz + u_xlat5; u_xlat6 = u_xlat11 * u_xlat2.zzzz + u_xlat7; u_xlat4 = u_xlat9 * u_xlat2.zzzz + u_xlat4; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 2])); u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat12.x; u_xlat8.y = u_xlat2.x; u_xlat8.z = u_xlat3.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat12.y; u_xlat9.y = u_xlat2.y; u_xlat9.z = u_xlat3.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat12.z; u_xlat7.y = u_xlat2.z; u_xlat7.z = u_xlat3.z; u_xlat3 = u_xlat8 * u_xlat2.wwww + u_xlat5; u_xlat5 = u_xlat9 * u_xlat2.wwww + u_xlat6; u_xlat2 = u_xlat7 * u_xlat2.wwww + u_xlat4; u_xlat1.w = 1.0; u_xlat3.x = dot(u_xlat3, u_xlat1); u_xlat3.y = dot(u_xlat5, u_xlat1); u_xlat3.z = dot(u_xlat2, u_xlat1); inOutVertices6_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat3.x); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat3.y); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat3.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].y); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inSkin5_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin5_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin5_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin5_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati3 = ivec4(int(inSkin5_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin5_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin5_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin5_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati3 = u_xlati3 + ivec4(g_PoseOffsets[1].yyyy); u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat12.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.x = u_xlat12.y; u_xlat8.y = u_xlat4.y; u_xlat8.z = u_xlat5.y; u_xlat8.w = u_xlat6.y; u_xlat6.x = u_xlat12.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat12.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat10 = u_xlat2.yyyy * u_xlat10; u_xlat11.x = u_xlat12.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat11 = u_xlat2.yyyy * u_xlat11; u_xlat9.x = u_xlat12.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat4 = u_xlat2.yyyy * u_xlat9; u_xlat5 = u_xlat7 * u_xlat2.xxxx + u_xlat10; u_xlat7 = u_xlat8 * u_xlat2.xxxx + u_xlat11; u_xlat4 = u_xlat6 * u_xlat2.xxxx + u_xlat4; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat12.x; u_xlat10.y = u_xlat6.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat12.y; u_xlat11.y = u_xlat6.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat12.z; u_xlat9.y = u_xlat6.z; u_xlat9.z = u_xlat8.z; u_xlat5 = u_xlat10 * u_xlat2.zzzz + u_xlat5; u_xlat6 = u_xlat11 * u_xlat2.zzzz + u_xlat7; u_xlat4 = u_xlat9 * u_xlat2.zzzz + u_xlat4; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 2])); u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat12.x; u_xlat8.y = u_xlat2.x; u_xlat8.z = u_xlat3.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat12.y; u_xlat9.y = u_xlat2.y; u_xlat9.z = u_xlat3.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat12.z; u_xlat7.y = u_xlat2.z; u_xlat7.z = u_xlat3.z; u_xlat3 = u_xlat8 * u_xlat2.wwww + u_xlat5; u_xlat5 = u_xlat9 * u_xlat2.wwww + u_xlat6; u_xlat2 = u_xlat7 * u_xlat2.wwww + u_xlat4; u_xlat1.w = 1.0; u_xlat3.x = dot(u_xlat3, u_xlat1); u_xlat3.y = dot(u_xlat5, u_xlat1); u_xlat3.z = dot(u_xlat2, u_xlat1); inOutVertices5_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat3.x); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat3.y); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat3.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati3 = ivec4(int(inSkin4_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin4_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin4_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin4_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati3 = u_xlati3 + ivec4(g_PoseOffsets[1].xxxx); u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat12.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.x = u_xlat12.y; u_xlat8.y = u_xlat4.y; u_xlat8.z = u_xlat5.y; u_xlat8.w = u_xlat6.y; u_xlat6.x = u_xlat12.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat12.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat10 = u_xlat2.yyyy * u_xlat10; u_xlat11.x = u_xlat12.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat11 = u_xlat2.yyyy * u_xlat11; u_xlat9.x = u_xlat12.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat4 = u_xlat2.yyyy * u_xlat9; u_xlat5 = u_xlat7 * u_xlat2.xxxx + u_xlat10; u_xlat7 = u_xlat8 * u_xlat2.xxxx + u_xlat11; u_xlat4 = u_xlat6 * u_xlat2.xxxx + u_xlat4; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat12.x; u_xlat10.y = u_xlat6.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat12.y; u_xlat11.y = u_xlat6.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat12.z; u_xlat9.y = u_xlat6.z; u_xlat9.z = u_xlat8.z; u_xlat5 = u_xlat10 * u_xlat2.zzzz + u_xlat5; u_xlat6 = u_xlat11 * u_xlat2.zzzz + u_xlat7; u_xlat4 = u_xlat9 * u_xlat2.zzzz + u_xlat4; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 2])); u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat12.x; u_xlat8.y = u_xlat2.x; u_xlat8.z = u_xlat3.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat12.y; u_xlat9.y = u_xlat2.y; u_xlat9.z = u_xlat3.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat12.z; u_xlat7.y = u_xlat2.z; u_xlat7.z = u_xlat3.z; u_xlat3 = u_xlat8 * u_xlat2.wwww + u_xlat5; u_xlat5 = u_xlat9 * u_xlat2.wwww + u_xlat6; u_xlat2 = u_xlat7 * u_xlat2.wwww + u_xlat4; u_xlat1.w = 1.0; u_xlat3.x = dot(u_xlat3, u_xlat1); u_xlat3.y = dot(u_xlat5, u_xlat1); u_xlat3.z = dot(u_xlat2, u_xlat1); inOutVertices4_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat3.x); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat3.y); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat3.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati3 = ivec4(int(inSkin3_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin3_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin3_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin3_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati3 = u_xlati3 + ivec4(g_PoseOffsets[0].wwww); u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat12.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.x = u_xlat12.y; u_xlat8.y = u_xlat4.y; u_xlat8.z = u_xlat5.y; u_xlat8.w = u_xlat6.y; u_xlat6.x = u_xlat12.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat12.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat10 = u_xlat2.yyyy * u_xlat10; u_xlat11.x = u_xlat12.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat11 = u_xlat2.yyyy * u_xlat11; u_xlat9.x = u_xlat12.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat4 = u_xlat2.yyyy * u_xlat9; u_xlat5 = u_xlat7 * u_xlat2.xxxx + u_xlat10; u_xlat7 = u_xlat8 * u_xlat2.xxxx + u_xlat11; u_xlat4 = u_xlat6 * u_xlat2.xxxx + u_xlat4; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat12.x; u_xlat10.y = u_xlat6.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat12.y; u_xlat11.y = u_xlat6.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat12.z; u_xlat9.y = u_xlat6.z; u_xlat9.z = u_xlat8.z; u_xlat5 = u_xlat10 * u_xlat2.zzzz + u_xlat5; u_xlat6 = u_xlat11 * u_xlat2.zzzz + u_xlat7; u_xlat4 = u_xlat9 * u_xlat2.zzzz + u_xlat4; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 2])); u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat12.x; u_xlat8.y = u_xlat2.x; u_xlat8.z = u_xlat3.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat12.y; u_xlat9.y = u_xlat2.y; u_xlat9.z = u_xlat3.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat12.z; u_xlat7.y = u_xlat2.z; u_xlat7.z = u_xlat3.z; u_xlat3 = u_xlat8 * u_xlat2.wwww + u_xlat5; u_xlat5 = u_xlat9 * u_xlat2.wwww + u_xlat6; u_xlat2 = u_xlat7 * u_xlat2.wwww + u_xlat4; u_xlat1.w = 1.0; u_xlat3.x = dot(u_xlat3, u_xlat1); u_xlat3.y = dot(u_xlat5, u_xlat1); u_xlat3.z = dot(u_xlat2, u_xlat1); inOutVertices3_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat3.x); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat3.y); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat3.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati3 = ivec4(int(inSkin2_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin2_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin2_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin2_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati3 = u_xlati3 + ivec4(g_PoseOffsets[0].zzzz); u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat12.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.x = u_xlat12.y; u_xlat8.y = u_xlat4.y; u_xlat8.z = u_xlat5.y; u_xlat8.w = u_xlat6.y; u_xlat6.x = u_xlat12.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat12.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat10 = u_xlat2.yyyy * u_xlat10; u_xlat11.x = u_xlat12.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat11 = u_xlat2.yyyy * u_xlat11; u_xlat9.x = u_xlat12.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat4 = u_xlat2.yyyy * u_xlat9; u_xlat5 = u_xlat7 * u_xlat2.xxxx + u_xlat10; u_xlat7 = u_xlat8 * u_xlat2.xxxx + u_xlat11; u_xlat4 = u_xlat6 * u_xlat2.xxxx + u_xlat4; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat12.x; u_xlat10.y = u_xlat6.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat12.y; u_xlat11.y = u_xlat6.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat12.z; u_xlat9.y = u_xlat6.z; u_xlat9.z = u_xlat8.z; u_xlat5 = u_xlat10 * u_xlat2.zzzz + u_xlat5; u_xlat6 = u_xlat11 * u_xlat2.zzzz + u_xlat7; u_xlat4 = u_xlat9 * u_xlat2.zzzz + u_xlat4; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 2])); u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat12.x; u_xlat8.y = u_xlat2.x; u_xlat8.z = u_xlat3.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat12.y; u_xlat9.y = u_xlat2.y; u_xlat9.z = u_xlat3.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat12.z; u_xlat7.y = u_xlat2.z; u_xlat7.z = u_xlat3.z; u_xlat3 = u_xlat8 * u_xlat2.wwww + u_xlat5; u_xlat5 = u_xlat9 * u_xlat2.wwww + u_xlat6; u_xlat2 = u_xlat7 * u_xlat2.wwww + u_xlat4; u_xlat1.w = 1.0; u_xlat3.x = dot(u_xlat3, u_xlat1); u_xlat3.y = dot(u_xlat5, u_xlat1); u_xlat3.z = dot(u_xlat2, u_xlat1); inOutVertices2_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat3.x); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat3.y); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat3.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati3 = ivec4(int(inSkin1_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin1_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin1_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin1_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati3 = u_xlati3 + ivec4(g_PoseOffsets[0].yyyy); u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat12.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.x = u_xlat12.y; u_xlat8.y = u_xlat4.y; u_xlat8.z = u_xlat5.y; u_xlat8.w = u_xlat6.y; u_xlat6.x = u_xlat12.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat12.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat10 = u_xlat2.yyyy * u_xlat10; u_xlat11.x = u_xlat12.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat11 = u_xlat2.yyyy * u_xlat11; u_xlat9.x = u_xlat12.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat4 = u_xlat2.yyyy * u_xlat9; u_xlat5 = u_xlat7 * u_xlat2.xxxx + u_xlat10; u_xlat7 = u_xlat8 * u_xlat2.xxxx + u_xlat11; u_xlat4 = u_xlat6 * u_xlat2.xxxx + u_xlat4; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat12.x; u_xlat10.y = u_xlat6.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat12.y; u_xlat11.y = u_xlat6.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat12.z; u_xlat9.y = u_xlat6.z; u_xlat9.z = u_xlat8.z; u_xlat5 = u_xlat10 * u_xlat2.zzzz + u_xlat5; u_xlat6 = u_xlat11 * u_xlat2.zzzz + u_xlat7; u_xlat4 = u_xlat9 * u_xlat2.zzzz + u_xlat4; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 2])); u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat12.x; u_xlat8.y = u_xlat2.x; u_xlat8.z = u_xlat3.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat12.y; u_xlat9.y = u_xlat2.y; u_xlat9.z = u_xlat3.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat12.z; u_xlat7.y = u_xlat2.z; u_xlat7.z = u_xlat3.z; u_xlat3 = u_xlat8 * u_xlat2.wwww + u_xlat5; u_xlat5 = u_xlat9 * u_xlat2.wwww + u_xlat6; u_xlat2 = u_xlat7 * u_xlat2.wwww + u_xlat4; u_xlat1.w = 1.0; u_xlat3.x = dot(u_xlat3, u_xlat1); u_xlat3.y = dot(u_xlat5, u_xlat1); u_xlat3.z = dot(u_xlat2, u_xlat1); inOutVertices1_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat3.x); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat3.y); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat3.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb12 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati3 = ivec4(int(inSkin0_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin0_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin0_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin0_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati3 = u_xlati3 + ivec4(g_PoseOffsets[0].xxxx); u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(32 >> 2) + 2])); u_xlat6.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.x].value[(48 >> 2) + 2])); u_xlat7.x = u_xlat12.x; u_xlat7.y = u_xlat4.x; u_xlat7.z = u_xlat5.x; u_xlat7.w = u_xlat6.x; u_xlat8.x = u_xlat12.y; u_xlat8.y = u_xlat4.y; u_xlat8.z = u_xlat5.y; u_xlat8.w = u_xlat6.y; u_xlat6.x = u_xlat12.z; u_xlat6.y = u_xlat4.z; u_xlat6.z = u_xlat5.z; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.y].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat12.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat10 = u_xlat2.yyyy * u_xlat10; u_xlat11.x = u_xlat12.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat11 = u_xlat2.yyyy * u_xlat11; u_xlat9.x = u_xlat12.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat4 = u_xlat2.yyyy * u_xlat9; u_xlat5 = u_xlat7 * u_xlat2.xxxx + u_xlat10; u_xlat7 = u_xlat8 * u_xlat2.xxxx + u_xlat11; u_xlat4 = u_xlat6 * u_xlat2.xxxx + u_xlat4; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(16 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.z].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat12.x; u_xlat10.y = u_xlat6.x; u_xlat10.z = u_xlat8.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat12.y; u_xlat11.y = u_xlat6.y; u_xlat11.z = u_xlat8.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat12.z; u_xlat9.y = u_xlat6.z; u_xlat9.z = u_xlat8.z; u_xlat5 = u_xlat10 * u_xlat2.zzzz + u_xlat5; u_xlat6 = u_xlat11 * u_xlat2.zzzz + u_xlat7; u_xlat4 = u_xlat9 * u_xlat2.zzzz + u_xlat4; u_xlat12.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(0 >> 2) + 2])); u_xlat2.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(16 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati3.w].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat12.x; u_xlat8.y = u_xlat2.x; u_xlat8.z = u_xlat3.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat12.y; u_xlat9.y = u_xlat2.y; u_xlat9.z = u_xlat3.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat12.z; u_xlat7.y = u_xlat2.z; u_xlat7.z = u_xlat3.z; u_xlat3 = u_xlat8 * u_xlat2.wwww + u_xlat5; u_xlat5 = u_xlat9 * u_xlat2.wwww + u_xlat6; u_xlat2 = u_xlat7 * u_xlat2.wwww + u_xlat4; u_xlat1.w = 1.0; u_xlat3.x = dot(u_xlat3, u_xlat1); u_xlat3.y = dot(u_xlat5, u_xlat1); u_xlat3.z = dot(u_xlat2, u_xlat1); inOutVertices0_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat3.x); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat3.y); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat3.z); } } } } } } } } return; } @AbatchMainInPlaceComputeSkinInPlaceCBufferinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6 inMatricesinOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices6] #version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform ComputeSkinInPlaceCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; uvec4 g_PoseOffsets[2]; uint g_poseBufferMaxIndex; }; struct inSkin0_type { uint[8] value; }; layout(std430, binding = 7) readonly buffer inSkin0 { inSkin0_type inSkin0_buf[]; }; struct inSkin1_type { uint[8] value; }; layout(std430, binding = 8) readonly buffer inSkin1 { inSkin1_type inSkin1_buf[]; }; struct inSkin2_type { uint[8] value; }; layout(std430, binding = 9) readonly buffer inSkin2 { inSkin2_type inSkin2_buf[]; }; struct inSkin3_type { uint[8] value; }; layout(std430, binding = 10) readonly buffer inSkin3 { inSkin3_type inSkin3_buf[]; }; struct inSkin4_type { uint[8] value; }; layout(std430, binding = 11) readonly buffer inSkin4 { inSkin4_type inSkin4_buf[]; }; struct inSkin5_type { uint[8] value; }; layout(std430, binding = 12) readonly buffer inSkin5 { inSkin5_type inSkin5_buf[]; }; struct inSkin6_type { uint[8] value; }; layout(std430, binding = 13) readonly buffer inSkin6 { inSkin6_type inSkin6_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 14) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct inOutVertices0_type { uint[6] value; }; layout(std430, binding = 0) buffer inOutVertices0 { inOutVertices0_type inOutVertices0_buf[]; }; struct inOutVertices1_type { uint[6] value; }; layout(std430, binding = 1) buffer inOutVertices1 { inOutVertices1_type inOutVertices1_buf[]; }; struct inOutVertices2_type { uint[6] value; }; layout(std430, binding = 2) buffer inOutVertices2 { inOutVertices2_type inOutVertices2_buf[]; }; struct inOutVertices3_type { uint[6] value; }; layout(std430, binding = 3) buffer inOutVertices3 { inOutVertices3_type inOutVertices3_buf[]; }; struct inOutVertices4_type { uint[6] value; }; layout(std430, binding = 4) buffer inOutVertices4 { inOutVertices4_type inOutVertices4_buf[]; }; struct inOutVertices5_type { uint[6] value; }; layout(std430, binding = 5) buffer inOutVertices5 { inOutVertices5_type inOutVertices5_buf[]; }; struct inOutVertices6_type { uint[6] value; }; layout(std430, binding = 6) buffer inOutVertices6 { inOutVertices6_type inOutVertices6_buf[]; }; uint u_xlatu0; bool u_xlatb0; vec4 u_xlat1; vec3 u_xlat2; vec4 u_xlat3; vec4 u_xlat4; ivec4 u_xlati4; vec4 u_xlat5; vec4 u_xlat6; vec4 u_xlat7; vec4 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; vec4 u_xlat11; vec4 u_xlat12; vec3 u_xlat13; bool u_xlatb13; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].z); u_xlatb13 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inSkin6_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin6_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin6_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin6_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati4 = ivec4(int(inSkin6_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin6_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin6_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin6_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati4 = u_xlati4 + ivec4(g_PoseOffsets[1].zzzz); u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat13.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat13.y; u_xlat9.y = u_xlat5.y; u_xlat9.z = u_xlat6.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat13.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat13.x; u_xlat11.y = u_xlat5.x; u_xlat11.z = u_xlat6.x; u_xlat11.w = u_xlat10.x; u_xlat11 = u_xlat3.yyyy * u_xlat11; u_xlat12.x = u_xlat13.y; u_xlat12.y = u_xlat5.y; u_xlat12.z = u_xlat6.y; u_xlat12.w = u_xlat10.y; u_xlat12 = u_xlat3.yyyy * u_xlat12; u_xlat10.x = u_xlat13.z; u_xlat10.y = u_xlat5.z; u_xlat10.z = u_xlat6.z; u_xlat5 = u_xlat3.yyyy * u_xlat10; u_xlat6 = u_xlat8 * u_xlat3.xxxx + u_xlat11; u_xlat8 = u_xlat9 * u_xlat3.xxxx + u_xlat12; u_xlat5 = u_xlat7 * u_xlat3.xxxx + u_xlat5; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 2])); u_xlat9.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat13.x; u_xlat11.y = u_xlat7.x; u_xlat11.z = u_xlat9.x; u_xlat11.w = u_xlat10.x; u_xlat12.x = u_xlat13.y; u_xlat12.y = u_xlat7.y; u_xlat12.z = u_xlat9.y; u_xlat12.w = u_xlat10.y; u_xlat10.x = u_xlat13.z; u_xlat10.y = u_xlat7.z; u_xlat10.z = u_xlat9.z; u_xlat6 = u_xlat11 * u_xlat3.zzzz + u_xlat6; u_xlat7 = u_xlat12 * u_xlat3.zzzz + u_xlat8; u_xlat5 = u_xlat10 * u_xlat3.zzzz + u_xlat5; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat13.x; u_xlat9.y = u_xlat3.x; u_xlat9.z = u_xlat4.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat13.y; u_xlat10.y = u_xlat3.y; u_xlat10.z = u_xlat4.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat13.z; u_xlat8.y = u_xlat3.z; u_xlat8.z = u_xlat4.z; u_xlat4 = u_xlat9 * u_xlat3.wwww + u_xlat6; u_xlat6 = u_xlat10 * u_xlat3.wwww + u_xlat7; u_xlat3 = u_xlat8 * u_xlat3.wwww + u_xlat5; u_xlat5.xyz = u_xlat1.xyz; u_xlat5.w = 1.0; u_xlat7.x = dot(u_xlat4, u_xlat5); u_xlat7.y = dot(u_xlat6, u_xlat5); u_xlat7.z = dot(u_xlat3, u_xlat5); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat4.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat6.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat3.yzx, u_xlat2.xyz); inOutVertices6_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat7.x); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat7.y); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat7.z); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat7.w); inOutVertices6_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat1.x); inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat1.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].y); u_xlatb13 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inSkin5_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin5_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin5_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin5_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati4 = ivec4(int(inSkin5_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin5_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin5_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin5_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati4 = u_xlati4 + ivec4(g_PoseOffsets[1].yyyy); u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat13.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat13.y; u_xlat9.y = u_xlat5.y; u_xlat9.z = u_xlat6.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat13.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat13.x; u_xlat11.y = u_xlat5.x; u_xlat11.z = u_xlat6.x; u_xlat11.w = u_xlat10.x; u_xlat11 = u_xlat3.yyyy * u_xlat11; u_xlat12.x = u_xlat13.y; u_xlat12.y = u_xlat5.y; u_xlat12.z = u_xlat6.y; u_xlat12.w = u_xlat10.y; u_xlat12 = u_xlat3.yyyy * u_xlat12; u_xlat10.x = u_xlat13.z; u_xlat10.y = u_xlat5.z; u_xlat10.z = u_xlat6.z; u_xlat5 = u_xlat3.yyyy * u_xlat10; u_xlat6 = u_xlat8 * u_xlat3.xxxx + u_xlat11; u_xlat8 = u_xlat9 * u_xlat3.xxxx + u_xlat12; u_xlat5 = u_xlat7 * u_xlat3.xxxx + u_xlat5; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 2])); u_xlat9.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat13.x; u_xlat11.y = u_xlat7.x; u_xlat11.z = u_xlat9.x; u_xlat11.w = u_xlat10.x; u_xlat12.x = u_xlat13.y; u_xlat12.y = u_xlat7.y; u_xlat12.z = u_xlat9.y; u_xlat12.w = u_xlat10.y; u_xlat10.x = u_xlat13.z; u_xlat10.y = u_xlat7.z; u_xlat10.z = u_xlat9.z; u_xlat6 = u_xlat11 * u_xlat3.zzzz + u_xlat6; u_xlat7 = u_xlat12 * u_xlat3.zzzz + u_xlat8; u_xlat5 = u_xlat10 * u_xlat3.zzzz + u_xlat5; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat13.x; u_xlat9.y = u_xlat3.x; u_xlat9.z = u_xlat4.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat13.y; u_xlat10.y = u_xlat3.y; u_xlat10.z = u_xlat4.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat13.z; u_xlat8.y = u_xlat3.z; u_xlat8.z = u_xlat4.z; u_xlat4 = u_xlat9 * u_xlat3.wwww + u_xlat6; u_xlat6 = u_xlat10 * u_xlat3.wwww + u_xlat7; u_xlat3 = u_xlat8 * u_xlat3.wwww + u_xlat5; u_xlat5.xyz = u_xlat1.xyz; u_xlat5.w = 1.0; u_xlat7.x = dot(u_xlat4, u_xlat5); u_xlat7.y = dot(u_xlat6, u_xlat5); u_xlat7.z = dot(u_xlat3, u_xlat5); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat4.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat6.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat3.yzx, u_xlat2.xyz); inOutVertices5_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat7.x); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat7.y); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat7.z); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat7.w); inOutVertices5_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat1.x); inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat1.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb13 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati4 = ivec4(int(inSkin4_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin4_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin4_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin4_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati4 = u_xlati4 + ivec4(g_PoseOffsets[1].xxxx); u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat13.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat13.y; u_xlat9.y = u_xlat5.y; u_xlat9.z = u_xlat6.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat13.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat13.x; u_xlat11.y = u_xlat5.x; u_xlat11.z = u_xlat6.x; u_xlat11.w = u_xlat10.x; u_xlat11 = u_xlat3.yyyy * u_xlat11; u_xlat12.x = u_xlat13.y; u_xlat12.y = u_xlat5.y; u_xlat12.z = u_xlat6.y; u_xlat12.w = u_xlat10.y; u_xlat12 = u_xlat3.yyyy * u_xlat12; u_xlat10.x = u_xlat13.z; u_xlat10.y = u_xlat5.z; u_xlat10.z = u_xlat6.z; u_xlat5 = u_xlat3.yyyy * u_xlat10; u_xlat6 = u_xlat8 * u_xlat3.xxxx + u_xlat11; u_xlat8 = u_xlat9 * u_xlat3.xxxx + u_xlat12; u_xlat5 = u_xlat7 * u_xlat3.xxxx + u_xlat5; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 2])); u_xlat9.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat13.x; u_xlat11.y = u_xlat7.x; u_xlat11.z = u_xlat9.x; u_xlat11.w = u_xlat10.x; u_xlat12.x = u_xlat13.y; u_xlat12.y = u_xlat7.y; u_xlat12.z = u_xlat9.y; u_xlat12.w = u_xlat10.y; u_xlat10.x = u_xlat13.z; u_xlat10.y = u_xlat7.z; u_xlat10.z = u_xlat9.z; u_xlat6 = u_xlat11 * u_xlat3.zzzz + u_xlat6; u_xlat7 = u_xlat12 * u_xlat3.zzzz + u_xlat8; u_xlat5 = u_xlat10 * u_xlat3.zzzz + u_xlat5; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat13.x; u_xlat9.y = u_xlat3.x; u_xlat9.z = u_xlat4.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat13.y; u_xlat10.y = u_xlat3.y; u_xlat10.z = u_xlat4.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat13.z; u_xlat8.y = u_xlat3.z; u_xlat8.z = u_xlat4.z; u_xlat4 = u_xlat9 * u_xlat3.wwww + u_xlat6; u_xlat6 = u_xlat10 * u_xlat3.wwww + u_xlat7; u_xlat3 = u_xlat8 * u_xlat3.wwww + u_xlat5; u_xlat5.xyz = u_xlat1.xyz; u_xlat5.w = 1.0; u_xlat7.x = dot(u_xlat4, u_xlat5); u_xlat7.y = dot(u_xlat6, u_xlat5); u_xlat7.z = dot(u_xlat3, u_xlat5); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat4.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat6.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat3.yzx, u_xlat2.xyz); inOutVertices4_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat7.x); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat7.y); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat7.z); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat7.w); inOutVertices4_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat1.x); inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat1.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb13 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati4 = ivec4(int(inSkin3_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin3_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin3_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin3_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati4 = u_xlati4 + ivec4(g_PoseOffsets[0].wwww); u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat13.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat13.y; u_xlat9.y = u_xlat5.y; u_xlat9.z = u_xlat6.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat13.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat13.x; u_xlat11.y = u_xlat5.x; u_xlat11.z = u_xlat6.x; u_xlat11.w = u_xlat10.x; u_xlat11 = u_xlat3.yyyy * u_xlat11; u_xlat12.x = u_xlat13.y; u_xlat12.y = u_xlat5.y; u_xlat12.z = u_xlat6.y; u_xlat12.w = u_xlat10.y; u_xlat12 = u_xlat3.yyyy * u_xlat12; u_xlat10.x = u_xlat13.z; u_xlat10.y = u_xlat5.z; u_xlat10.z = u_xlat6.z; u_xlat5 = u_xlat3.yyyy * u_xlat10; u_xlat6 = u_xlat8 * u_xlat3.xxxx + u_xlat11; u_xlat8 = u_xlat9 * u_xlat3.xxxx + u_xlat12; u_xlat5 = u_xlat7 * u_xlat3.xxxx + u_xlat5; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 2])); u_xlat9.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat13.x; u_xlat11.y = u_xlat7.x; u_xlat11.z = u_xlat9.x; u_xlat11.w = u_xlat10.x; u_xlat12.x = u_xlat13.y; u_xlat12.y = u_xlat7.y; u_xlat12.z = u_xlat9.y; u_xlat12.w = u_xlat10.y; u_xlat10.x = u_xlat13.z; u_xlat10.y = u_xlat7.z; u_xlat10.z = u_xlat9.z; u_xlat6 = u_xlat11 * u_xlat3.zzzz + u_xlat6; u_xlat7 = u_xlat12 * u_xlat3.zzzz + u_xlat8; u_xlat5 = u_xlat10 * u_xlat3.zzzz + u_xlat5; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat13.x; u_xlat9.y = u_xlat3.x; u_xlat9.z = u_xlat4.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat13.y; u_xlat10.y = u_xlat3.y; u_xlat10.z = u_xlat4.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat13.z; u_xlat8.y = u_xlat3.z; u_xlat8.z = u_xlat4.z; u_xlat4 = u_xlat9 * u_xlat3.wwww + u_xlat6; u_xlat6 = u_xlat10 * u_xlat3.wwww + u_xlat7; u_xlat3 = u_xlat8 * u_xlat3.wwww + u_xlat5; u_xlat5.xyz = u_xlat1.xyz; u_xlat5.w = 1.0; u_xlat7.x = dot(u_xlat4, u_xlat5); u_xlat7.y = dot(u_xlat6, u_xlat5); u_xlat7.z = dot(u_xlat3, u_xlat5); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat4.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat6.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat3.yzx, u_xlat2.xyz); inOutVertices3_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat7.x); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat7.y); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat7.z); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat7.w); inOutVertices3_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat1.x); inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat1.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb13 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati4 = ivec4(int(inSkin2_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin2_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin2_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin2_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati4 = u_xlati4 + ivec4(g_PoseOffsets[0].zzzz); u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat13.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat13.y; u_xlat9.y = u_xlat5.y; u_xlat9.z = u_xlat6.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat13.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat13.x; u_xlat11.y = u_xlat5.x; u_xlat11.z = u_xlat6.x; u_xlat11.w = u_xlat10.x; u_xlat11 = u_xlat3.yyyy * u_xlat11; u_xlat12.x = u_xlat13.y; u_xlat12.y = u_xlat5.y; u_xlat12.z = u_xlat6.y; u_xlat12.w = u_xlat10.y; u_xlat12 = u_xlat3.yyyy * u_xlat12; u_xlat10.x = u_xlat13.z; u_xlat10.y = u_xlat5.z; u_xlat10.z = u_xlat6.z; u_xlat5 = u_xlat3.yyyy * u_xlat10; u_xlat6 = u_xlat8 * u_xlat3.xxxx + u_xlat11; u_xlat8 = u_xlat9 * u_xlat3.xxxx + u_xlat12; u_xlat5 = u_xlat7 * u_xlat3.xxxx + u_xlat5; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 2])); u_xlat9.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat13.x; u_xlat11.y = u_xlat7.x; u_xlat11.z = u_xlat9.x; u_xlat11.w = u_xlat10.x; u_xlat12.x = u_xlat13.y; u_xlat12.y = u_xlat7.y; u_xlat12.z = u_xlat9.y; u_xlat12.w = u_xlat10.y; u_xlat10.x = u_xlat13.z; u_xlat10.y = u_xlat7.z; u_xlat10.z = u_xlat9.z; u_xlat6 = u_xlat11 * u_xlat3.zzzz + u_xlat6; u_xlat7 = u_xlat12 * u_xlat3.zzzz + u_xlat8; u_xlat5 = u_xlat10 * u_xlat3.zzzz + u_xlat5; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat13.x; u_xlat9.y = u_xlat3.x; u_xlat9.z = u_xlat4.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat13.y; u_xlat10.y = u_xlat3.y; u_xlat10.z = u_xlat4.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat13.z; u_xlat8.y = u_xlat3.z; u_xlat8.z = u_xlat4.z; u_xlat4 = u_xlat9 * u_xlat3.wwww + u_xlat6; u_xlat6 = u_xlat10 * u_xlat3.wwww + u_xlat7; u_xlat3 = u_xlat8 * u_xlat3.wwww + u_xlat5; u_xlat5.xyz = u_xlat1.xyz; u_xlat5.w = 1.0; u_xlat7.x = dot(u_xlat4, u_xlat5); u_xlat7.y = dot(u_xlat6, u_xlat5); u_xlat7.z = dot(u_xlat3, u_xlat5); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat4.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat6.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat3.yzx, u_xlat2.xyz); inOutVertices2_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat7.x); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat7.y); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat7.z); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat7.w); inOutVertices2_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat1.x); inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat1.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb13 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati4 = ivec4(int(inSkin1_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin1_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin1_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin1_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati4 = u_xlati4 + ivec4(g_PoseOffsets[0].yyyy); u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat13.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat13.y; u_xlat9.y = u_xlat5.y; u_xlat9.z = u_xlat6.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat13.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat13.x; u_xlat11.y = u_xlat5.x; u_xlat11.z = u_xlat6.x; u_xlat11.w = u_xlat10.x; u_xlat11 = u_xlat3.yyyy * u_xlat11; u_xlat12.x = u_xlat13.y; u_xlat12.y = u_xlat5.y; u_xlat12.z = u_xlat6.y; u_xlat12.w = u_xlat10.y; u_xlat12 = u_xlat3.yyyy * u_xlat12; u_xlat10.x = u_xlat13.z; u_xlat10.y = u_xlat5.z; u_xlat10.z = u_xlat6.z; u_xlat5 = u_xlat3.yyyy * u_xlat10; u_xlat6 = u_xlat8 * u_xlat3.xxxx + u_xlat11; u_xlat8 = u_xlat9 * u_xlat3.xxxx + u_xlat12; u_xlat5 = u_xlat7 * u_xlat3.xxxx + u_xlat5; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 2])); u_xlat9.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat13.x; u_xlat11.y = u_xlat7.x; u_xlat11.z = u_xlat9.x; u_xlat11.w = u_xlat10.x; u_xlat12.x = u_xlat13.y; u_xlat12.y = u_xlat7.y; u_xlat12.z = u_xlat9.y; u_xlat12.w = u_xlat10.y; u_xlat10.x = u_xlat13.z; u_xlat10.y = u_xlat7.z; u_xlat10.z = u_xlat9.z; u_xlat6 = u_xlat11 * u_xlat3.zzzz + u_xlat6; u_xlat7 = u_xlat12 * u_xlat3.zzzz + u_xlat8; u_xlat5 = u_xlat10 * u_xlat3.zzzz + u_xlat5; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat13.x; u_xlat9.y = u_xlat3.x; u_xlat9.z = u_xlat4.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat13.y; u_xlat10.y = u_xlat3.y; u_xlat10.z = u_xlat4.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat13.z; u_xlat8.y = u_xlat3.z; u_xlat8.z = u_xlat4.z; u_xlat4 = u_xlat9 * u_xlat3.wwww + u_xlat6; u_xlat6 = u_xlat10 * u_xlat3.wwww + u_xlat7; u_xlat3 = u_xlat8 * u_xlat3.wwww + u_xlat5; u_xlat5.xyz = u_xlat1.xyz; u_xlat5.w = 1.0; u_xlat7.x = dot(u_xlat4, u_xlat5); u_xlat7.y = dot(u_xlat6, u_xlat5); u_xlat7.z = dot(u_xlat3, u_xlat5); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat4.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat6.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat3.yzx, u_xlat2.xyz); inOutVertices1_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat7.x); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat7.y); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat7.z); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat7.w); inOutVertices1_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat1.x); inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat1.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb13 = u_xlatu0> 2) + 0]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlat2.xy = vec2(uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati4 = ivec4(int(inSkin0_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin0_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin0_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin0_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati4 = u_xlati4 + ivec4(g_PoseOffsets[0].xxxx); u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(32 >> 2) + 2])); u_xlat7.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.x].value[(48 >> 2) + 2])); u_xlat8.x = u_xlat13.x; u_xlat8.y = u_xlat5.x; u_xlat8.z = u_xlat6.x; u_xlat8.w = u_xlat7.x; u_xlat9.x = u_xlat13.y; u_xlat9.y = u_xlat5.y; u_xlat9.z = u_xlat6.y; u_xlat9.w = u_xlat7.y; u_xlat7.x = u_xlat13.z; u_xlat7.y = u_xlat5.z; u_xlat7.z = u_xlat6.z; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(0 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(16 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.y].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat13.x; u_xlat11.y = u_xlat5.x; u_xlat11.z = u_xlat6.x; u_xlat11.w = u_xlat10.x; u_xlat11 = u_xlat3.yyyy * u_xlat11; u_xlat12.x = u_xlat13.y; u_xlat12.y = u_xlat5.y; u_xlat12.z = u_xlat6.y; u_xlat12.w = u_xlat10.y; u_xlat12 = u_xlat3.yyyy * u_xlat12; u_xlat10.x = u_xlat13.z; u_xlat10.y = u_xlat5.z; u_xlat10.z = u_xlat6.z; u_xlat5 = u_xlat3.yyyy * u_xlat10; u_xlat6 = u_xlat8 * u_xlat3.xxxx + u_xlat11; u_xlat8 = u_xlat9 * u_xlat3.xxxx + u_xlat12; u_xlat5 = u_xlat7 * u_xlat3.xxxx + u_xlat5; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(0 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(16 >> 2) + 2])); u_xlat9.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(32 >> 2) + 2])); u_xlat10.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.z].value[(48 >> 2) + 2])); u_xlat11.x = u_xlat13.x; u_xlat11.y = u_xlat7.x; u_xlat11.z = u_xlat9.x; u_xlat11.w = u_xlat10.x; u_xlat12.x = u_xlat13.y; u_xlat12.y = u_xlat7.y; u_xlat12.z = u_xlat9.y; u_xlat12.w = u_xlat10.y; u_xlat10.x = u_xlat13.z; u_xlat10.y = u_xlat7.z; u_xlat10.z = u_xlat9.z; u_xlat6 = u_xlat11 * u_xlat3.zzzz + u_xlat6; u_xlat7 = u_xlat12 * u_xlat3.zzzz + u_xlat8; u_xlat5 = u_xlat10 * u_xlat3.zzzz + u_xlat5; u_xlat13.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(0 >> 2) + 2])); u_xlat3.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(16 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati4.w].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat13.x; u_xlat9.y = u_xlat3.x; u_xlat9.z = u_xlat4.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat13.y; u_xlat10.y = u_xlat3.y; u_xlat10.z = u_xlat4.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat13.z; u_xlat8.y = u_xlat3.z; u_xlat8.z = u_xlat4.z; u_xlat4 = u_xlat9 * u_xlat3.wwww + u_xlat6; u_xlat6 = u_xlat10 * u_xlat3.wwww + u_xlat7; u_xlat3 = u_xlat8 * u_xlat3.wwww + u_xlat5; u_xlat5.xyz = u_xlat1.xyz; u_xlat5.w = 1.0; u_xlat7.x = dot(u_xlat4, u_xlat5); u_xlat7.y = dot(u_xlat6, u_xlat5); u_xlat7.z = dot(u_xlat3, u_xlat5); u_xlat2.z = u_xlat1.w; u_xlat7.w = dot(u_xlat4.yzx, u_xlat2.xyz); u_xlat1.x = dot(u_xlat6.yzx, u_xlat2.xyz); u_xlat1.y = dot(u_xlat3.yzx, u_xlat2.xyz); inOutVertices0_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat7.x); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat7.y); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat7.z); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat7.w); inOutVertices0_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat1.x); inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat1.y); } } } } } } } } return; } @AbatchMainInPlaceComputeSkinInPlaceCBufferinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6 inMatricesinOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices6!#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform ComputeSkinInPlaceCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; uvec4 g_PoseOffsets[2]; uint g_poseBufferMaxIndex; }; struct inSkin0_type { uint[8] value; }; layout(std430, binding = 7) readonly buffer inSkin0 { inSkin0_type inSkin0_buf[]; }; struct inSkin1_type { uint[8] value; }; layout(std430, binding = 8) readonly buffer inSkin1 { inSkin1_type inSkin1_buf[]; }; struct inSkin2_type { uint[8] value; }; layout(std430, binding = 9) readonly buffer inSkin2 { inSkin2_type inSkin2_buf[]; }; struct inSkin3_type { uint[8] value; }; layout(std430, binding = 10) readonly buffer inSkin3 { inSkin3_type inSkin3_buf[]; }; struct inSkin4_type { uint[8] value; }; layout(std430, binding = 11) readonly buffer inSkin4 { inSkin4_type inSkin4_buf[]; }; struct inSkin5_type { uint[8] value; }; layout(std430, binding = 12) readonly buffer inSkin5 { inSkin5_type inSkin5_buf[]; }; struct inSkin6_type { uint[8] value; }; layout(std430, binding = 13) readonly buffer inSkin6 { inSkin6_type inSkin6_buf[]; }; struct inMatrices_type { uint[16] value; }; layout(std430, binding = 14) readonly buffer inMatrices { inMatrices_type inMatrices_buf[]; }; struct inOutVertices0_type { uint[10] value; }; layout(std430, binding = 0) buffer inOutVertices0 { inOutVertices0_type inOutVertices0_buf[]; }; struct inOutVertices1_type { uint[10] value; }; layout(std430, binding = 1) buffer inOutVertices1 { inOutVertices1_type inOutVertices1_buf[]; }; struct inOutVertices2_type { uint[10] value; }; layout(std430, binding = 2) buffer inOutVertices2 { inOutVertices2_type inOutVertices2_buf[]; }; struct inOutVertices3_type { uint[10] value; }; layout(std430, binding = 3) buffer inOutVertices3 { inOutVertices3_type inOutVertices3_buf[]; }; struct inOutVertices4_type { uint[10] value; }; layout(std430, binding = 4) buffer inOutVertices4 { inOutVertices4_type inOutVertices4_buf[]; }; struct inOutVertices5_type { uint[10] value; }; layout(std430, binding = 5) buffer inOutVertices5 { inOutVertices5_type inOutVertices5_buf[]; }; struct inOutVertices6_type { uint[10] value; }; layout(std430, binding = 6) buffer inOutVertices6 { inOutVertices6_type inOutVertices6_buf[]; }; uint u_xlatu0; bool u_xlatb0; vec4 u_xlat1; vec4 u_xlat2; vec3 u_xlat3; vec4 u_xlat4; vec4 u_xlat5; ivec4 u_xlati5; vec4 u_xlat6; vec4 u_xlat7; vec4 u_xlat8; vec4 u_xlat9; vec4 u_xlat10; vec4 u_xlat11; vec4 u_xlat12; vec4 u_xlat13; vec3 u_xlat14; bool u_xlatb14; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].z); u_xlatb14 = u_xlatu0> 2) + 3]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.z = uintBitsToFloat(inOutVertices6_buf[u_xlatu0].value[(32 >> 2) + 0]); u_xlat4 = vec4(uintBitsToFloat(inSkin6_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin6_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin6_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin6_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati5 = ivec4(int(inSkin6_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin6_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin6_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin6_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati5 = u_xlati5 + ivec4(g_PoseOffsets[1].zzzz); u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat14.x; u_xlat9.y = u_xlat6.x; u_xlat9.z = u_xlat7.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat14.y; u_xlat10.y = u_xlat6.y; u_xlat10.z = u_xlat7.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat14.z; u_xlat8.y = u_xlat6.z; u_xlat8.z = u_xlat7.z; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat14.x; u_xlat12.y = u_xlat6.x; u_xlat12.z = u_xlat7.x; u_xlat12.w = u_xlat11.x; u_xlat12 = u_xlat4.yyyy * u_xlat12; u_xlat13.x = u_xlat14.y; u_xlat13.y = u_xlat6.y; u_xlat13.z = u_xlat7.y; u_xlat13.w = u_xlat11.y; u_xlat13 = u_xlat4.yyyy * u_xlat13; u_xlat11.x = u_xlat14.z; u_xlat11.y = u_xlat6.z; u_xlat11.z = u_xlat7.z; u_xlat6 = u_xlat4.yyyy * u_xlat11; u_xlat7 = u_xlat9 * u_xlat4.xxxx + u_xlat12; u_xlat9 = u_xlat10 * u_xlat4.xxxx + u_xlat13; u_xlat6 = u_xlat8 * u_xlat4.xxxx + u_xlat6; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 2])); u_xlat10.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat14.x; u_xlat12.y = u_xlat8.x; u_xlat12.z = u_xlat10.x; u_xlat12.w = u_xlat11.x; u_xlat13.x = u_xlat14.y; u_xlat13.y = u_xlat8.y; u_xlat13.z = u_xlat10.y; u_xlat13.w = u_xlat11.y; u_xlat11.x = u_xlat14.z; u_xlat11.y = u_xlat8.z; u_xlat11.z = u_xlat10.z; u_xlat7 = u_xlat12 * u_xlat4.zzzz + u_xlat7; u_xlat8 = u_xlat13 * u_xlat4.zzzz + u_xlat9; u_xlat6 = u_xlat11 * u_xlat4.zzzz + u_xlat6; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat14.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat14.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat14.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat5 = u_xlat10 * u_xlat4.wwww + u_xlat7; u_xlat7 = u_xlat11 * u_xlat4.wwww + u_xlat8; u_xlat4 = u_xlat9 * u_xlat4.wwww + u_xlat6; u_xlat6.xyz = u_xlat1.yzw; u_xlat6.w = 1.0; u_xlat8.x = dot(u_xlat5, u_xlat6); u_xlat8.y = dot(u_xlat7, u_xlat6); u_xlat8.z = dot(u_xlat4, u_xlat6); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat5.xyz, u_xlat1.xyz); u_xlat6.x = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat6.y = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat3.xy = u_xlat2.zw; u_xlat6.z = dot(u_xlat5.xyz, u_xlat3.xyz); u_xlat6.w = dot(u_xlat7.xyz, u_xlat3.xyz); u_xlat14.x = dot(u_xlat4.xyz, u_xlat3.xyz); inOutVertices6_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat8.x); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat8.y); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat8.z); inOutVertices6_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat8.w); inOutVertices6_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat6.x); inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat6.y); inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat6.z); inOutVertices6_buf[u_xlatu0].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat6.w); inOutVertices6_buf[u_xlatu0].value[(32 >> 2)] = floatBitsToUint(u_xlat14.x); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].y); u_xlatb14 = u_xlatu0> 2) + 3]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.z = uintBitsToFloat(inOutVertices5_buf[u_xlatu0].value[(32 >> 2) + 0]); u_xlat4 = vec4(uintBitsToFloat(inSkin5_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin5_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin5_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin5_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati5 = ivec4(int(inSkin5_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin5_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin5_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin5_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati5 = u_xlati5 + ivec4(g_PoseOffsets[1].yyyy); u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat14.x; u_xlat9.y = u_xlat6.x; u_xlat9.z = u_xlat7.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat14.y; u_xlat10.y = u_xlat6.y; u_xlat10.z = u_xlat7.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat14.z; u_xlat8.y = u_xlat6.z; u_xlat8.z = u_xlat7.z; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat14.x; u_xlat12.y = u_xlat6.x; u_xlat12.z = u_xlat7.x; u_xlat12.w = u_xlat11.x; u_xlat12 = u_xlat4.yyyy * u_xlat12; u_xlat13.x = u_xlat14.y; u_xlat13.y = u_xlat6.y; u_xlat13.z = u_xlat7.y; u_xlat13.w = u_xlat11.y; u_xlat13 = u_xlat4.yyyy * u_xlat13; u_xlat11.x = u_xlat14.z; u_xlat11.y = u_xlat6.z; u_xlat11.z = u_xlat7.z; u_xlat6 = u_xlat4.yyyy * u_xlat11; u_xlat7 = u_xlat9 * u_xlat4.xxxx + u_xlat12; u_xlat9 = u_xlat10 * u_xlat4.xxxx + u_xlat13; u_xlat6 = u_xlat8 * u_xlat4.xxxx + u_xlat6; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 2])); u_xlat10.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat14.x; u_xlat12.y = u_xlat8.x; u_xlat12.z = u_xlat10.x; u_xlat12.w = u_xlat11.x; u_xlat13.x = u_xlat14.y; u_xlat13.y = u_xlat8.y; u_xlat13.z = u_xlat10.y; u_xlat13.w = u_xlat11.y; u_xlat11.x = u_xlat14.z; u_xlat11.y = u_xlat8.z; u_xlat11.z = u_xlat10.z; u_xlat7 = u_xlat12 * u_xlat4.zzzz + u_xlat7; u_xlat8 = u_xlat13 * u_xlat4.zzzz + u_xlat9; u_xlat6 = u_xlat11 * u_xlat4.zzzz + u_xlat6; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat14.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat14.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat14.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat5 = u_xlat10 * u_xlat4.wwww + u_xlat7; u_xlat7 = u_xlat11 * u_xlat4.wwww + u_xlat8; u_xlat4 = u_xlat9 * u_xlat4.wwww + u_xlat6; u_xlat6.xyz = u_xlat1.yzw; u_xlat6.w = 1.0; u_xlat8.x = dot(u_xlat5, u_xlat6); u_xlat8.y = dot(u_xlat7, u_xlat6); u_xlat8.z = dot(u_xlat4, u_xlat6); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat5.xyz, u_xlat1.xyz); u_xlat6.x = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat6.y = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat3.xy = u_xlat2.zw; u_xlat6.z = dot(u_xlat5.xyz, u_xlat3.xyz); u_xlat6.w = dot(u_xlat7.xyz, u_xlat3.xyz); u_xlat14.x = dot(u_xlat4.xyz, u_xlat3.xyz); inOutVertices5_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat8.x); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat8.y); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat8.z); inOutVertices5_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat8.w); inOutVertices5_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat6.x); inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat6.y); inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat6.z); inOutVertices5_buf[u_xlatu0].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat6.w); inOutVertices5_buf[u_xlatu0].value[(32 >> 2)] = floatBitsToUint(u_xlat14.x); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb14 = u_xlatu0> 2) + 3]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.z = uintBitsToFloat(inOutVertices4_buf[u_xlatu0].value[(32 >> 2) + 0]); u_xlat4 = vec4(uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin4_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati5 = ivec4(int(inSkin4_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin4_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin4_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin4_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati5 = u_xlati5 + ivec4(g_PoseOffsets[1].xxxx); u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat14.x; u_xlat9.y = u_xlat6.x; u_xlat9.z = u_xlat7.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat14.y; u_xlat10.y = u_xlat6.y; u_xlat10.z = u_xlat7.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat14.z; u_xlat8.y = u_xlat6.z; u_xlat8.z = u_xlat7.z; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat14.x; u_xlat12.y = u_xlat6.x; u_xlat12.z = u_xlat7.x; u_xlat12.w = u_xlat11.x; u_xlat12 = u_xlat4.yyyy * u_xlat12; u_xlat13.x = u_xlat14.y; u_xlat13.y = u_xlat6.y; u_xlat13.z = u_xlat7.y; u_xlat13.w = u_xlat11.y; u_xlat13 = u_xlat4.yyyy * u_xlat13; u_xlat11.x = u_xlat14.z; u_xlat11.y = u_xlat6.z; u_xlat11.z = u_xlat7.z; u_xlat6 = u_xlat4.yyyy * u_xlat11; u_xlat7 = u_xlat9 * u_xlat4.xxxx + u_xlat12; u_xlat9 = u_xlat10 * u_xlat4.xxxx + u_xlat13; u_xlat6 = u_xlat8 * u_xlat4.xxxx + u_xlat6; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 2])); u_xlat10.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat14.x; u_xlat12.y = u_xlat8.x; u_xlat12.z = u_xlat10.x; u_xlat12.w = u_xlat11.x; u_xlat13.x = u_xlat14.y; u_xlat13.y = u_xlat8.y; u_xlat13.z = u_xlat10.y; u_xlat13.w = u_xlat11.y; u_xlat11.x = u_xlat14.z; u_xlat11.y = u_xlat8.z; u_xlat11.z = u_xlat10.z; u_xlat7 = u_xlat12 * u_xlat4.zzzz + u_xlat7; u_xlat8 = u_xlat13 * u_xlat4.zzzz + u_xlat9; u_xlat6 = u_xlat11 * u_xlat4.zzzz + u_xlat6; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat14.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat14.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat14.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat5 = u_xlat10 * u_xlat4.wwww + u_xlat7; u_xlat7 = u_xlat11 * u_xlat4.wwww + u_xlat8; u_xlat4 = u_xlat9 * u_xlat4.wwww + u_xlat6; u_xlat6.xyz = u_xlat1.yzw; u_xlat6.w = 1.0; u_xlat8.x = dot(u_xlat5, u_xlat6); u_xlat8.y = dot(u_xlat7, u_xlat6); u_xlat8.z = dot(u_xlat4, u_xlat6); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat5.xyz, u_xlat1.xyz); u_xlat6.x = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat6.y = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat3.xy = u_xlat2.zw; u_xlat6.z = dot(u_xlat5.xyz, u_xlat3.xyz); u_xlat6.w = dot(u_xlat7.xyz, u_xlat3.xyz); u_xlat14.x = dot(u_xlat4.xyz, u_xlat3.xyz); inOutVertices4_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat8.x); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat8.y); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat8.z); inOutVertices4_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat8.w); inOutVertices4_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat6.x); inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat6.y); inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat6.z); inOutVertices4_buf[u_xlatu0].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat6.w); inOutVertices4_buf[u_xlatu0].value[(32 >> 2)] = floatBitsToUint(u_xlat14.x); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb14 = u_xlatu0> 2) + 3]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.z = uintBitsToFloat(inOutVertices3_buf[u_xlatu0].value[(32 >> 2) + 0]); u_xlat4 = vec4(uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin3_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati5 = ivec4(int(inSkin3_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin3_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin3_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin3_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati5 = u_xlati5 + ivec4(g_PoseOffsets[0].wwww); u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat14.x; u_xlat9.y = u_xlat6.x; u_xlat9.z = u_xlat7.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat14.y; u_xlat10.y = u_xlat6.y; u_xlat10.z = u_xlat7.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat14.z; u_xlat8.y = u_xlat6.z; u_xlat8.z = u_xlat7.z; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat14.x; u_xlat12.y = u_xlat6.x; u_xlat12.z = u_xlat7.x; u_xlat12.w = u_xlat11.x; u_xlat12 = u_xlat4.yyyy * u_xlat12; u_xlat13.x = u_xlat14.y; u_xlat13.y = u_xlat6.y; u_xlat13.z = u_xlat7.y; u_xlat13.w = u_xlat11.y; u_xlat13 = u_xlat4.yyyy * u_xlat13; u_xlat11.x = u_xlat14.z; u_xlat11.y = u_xlat6.z; u_xlat11.z = u_xlat7.z; u_xlat6 = u_xlat4.yyyy * u_xlat11; u_xlat7 = u_xlat9 * u_xlat4.xxxx + u_xlat12; u_xlat9 = u_xlat10 * u_xlat4.xxxx + u_xlat13; u_xlat6 = u_xlat8 * u_xlat4.xxxx + u_xlat6; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 2])); u_xlat10.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat14.x; u_xlat12.y = u_xlat8.x; u_xlat12.z = u_xlat10.x; u_xlat12.w = u_xlat11.x; u_xlat13.x = u_xlat14.y; u_xlat13.y = u_xlat8.y; u_xlat13.z = u_xlat10.y; u_xlat13.w = u_xlat11.y; u_xlat11.x = u_xlat14.z; u_xlat11.y = u_xlat8.z; u_xlat11.z = u_xlat10.z; u_xlat7 = u_xlat12 * u_xlat4.zzzz + u_xlat7; u_xlat8 = u_xlat13 * u_xlat4.zzzz + u_xlat9; u_xlat6 = u_xlat11 * u_xlat4.zzzz + u_xlat6; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat14.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat14.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat14.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat5 = u_xlat10 * u_xlat4.wwww + u_xlat7; u_xlat7 = u_xlat11 * u_xlat4.wwww + u_xlat8; u_xlat4 = u_xlat9 * u_xlat4.wwww + u_xlat6; u_xlat6.xyz = u_xlat1.yzw; u_xlat6.w = 1.0; u_xlat8.x = dot(u_xlat5, u_xlat6); u_xlat8.y = dot(u_xlat7, u_xlat6); u_xlat8.z = dot(u_xlat4, u_xlat6); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat5.xyz, u_xlat1.xyz); u_xlat6.x = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat6.y = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat3.xy = u_xlat2.zw; u_xlat6.z = dot(u_xlat5.xyz, u_xlat3.xyz); u_xlat6.w = dot(u_xlat7.xyz, u_xlat3.xyz); u_xlat14.x = dot(u_xlat4.xyz, u_xlat3.xyz); inOutVertices3_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat8.x); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat8.y); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat8.z); inOutVertices3_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat8.w); inOutVertices3_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat6.x); inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat6.y); inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat6.z); inOutVertices3_buf[u_xlatu0].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat6.w); inOutVertices3_buf[u_xlatu0].value[(32 >> 2)] = floatBitsToUint(u_xlat14.x); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb14 = u_xlatu0> 2) + 3]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.z = uintBitsToFloat(inOutVertices2_buf[u_xlatu0].value[(32 >> 2) + 0]); u_xlat4 = vec4(uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin2_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati5 = ivec4(int(inSkin2_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin2_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin2_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin2_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati5 = u_xlati5 + ivec4(g_PoseOffsets[0].zzzz); u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat14.x; u_xlat9.y = u_xlat6.x; u_xlat9.z = u_xlat7.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat14.y; u_xlat10.y = u_xlat6.y; u_xlat10.z = u_xlat7.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat14.z; u_xlat8.y = u_xlat6.z; u_xlat8.z = u_xlat7.z; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat14.x; u_xlat12.y = u_xlat6.x; u_xlat12.z = u_xlat7.x; u_xlat12.w = u_xlat11.x; u_xlat12 = u_xlat4.yyyy * u_xlat12; u_xlat13.x = u_xlat14.y; u_xlat13.y = u_xlat6.y; u_xlat13.z = u_xlat7.y; u_xlat13.w = u_xlat11.y; u_xlat13 = u_xlat4.yyyy * u_xlat13; u_xlat11.x = u_xlat14.z; u_xlat11.y = u_xlat6.z; u_xlat11.z = u_xlat7.z; u_xlat6 = u_xlat4.yyyy * u_xlat11; u_xlat7 = u_xlat9 * u_xlat4.xxxx + u_xlat12; u_xlat9 = u_xlat10 * u_xlat4.xxxx + u_xlat13; u_xlat6 = u_xlat8 * u_xlat4.xxxx + u_xlat6; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 2])); u_xlat10.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat14.x; u_xlat12.y = u_xlat8.x; u_xlat12.z = u_xlat10.x; u_xlat12.w = u_xlat11.x; u_xlat13.x = u_xlat14.y; u_xlat13.y = u_xlat8.y; u_xlat13.z = u_xlat10.y; u_xlat13.w = u_xlat11.y; u_xlat11.x = u_xlat14.z; u_xlat11.y = u_xlat8.z; u_xlat11.z = u_xlat10.z; u_xlat7 = u_xlat12 * u_xlat4.zzzz + u_xlat7; u_xlat8 = u_xlat13 * u_xlat4.zzzz + u_xlat9; u_xlat6 = u_xlat11 * u_xlat4.zzzz + u_xlat6; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat14.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat14.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat14.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat5 = u_xlat10 * u_xlat4.wwww + u_xlat7; u_xlat7 = u_xlat11 * u_xlat4.wwww + u_xlat8; u_xlat4 = u_xlat9 * u_xlat4.wwww + u_xlat6; u_xlat6.xyz = u_xlat1.yzw; u_xlat6.w = 1.0; u_xlat8.x = dot(u_xlat5, u_xlat6); u_xlat8.y = dot(u_xlat7, u_xlat6); u_xlat8.z = dot(u_xlat4, u_xlat6); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat5.xyz, u_xlat1.xyz); u_xlat6.x = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat6.y = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat3.xy = u_xlat2.zw; u_xlat6.z = dot(u_xlat5.xyz, u_xlat3.xyz); u_xlat6.w = dot(u_xlat7.xyz, u_xlat3.xyz); u_xlat14.x = dot(u_xlat4.xyz, u_xlat3.xyz); inOutVertices2_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat8.x); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat8.y); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat8.z); inOutVertices2_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat8.w); inOutVertices2_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat6.x); inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat6.y); inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat6.z); inOutVertices2_buf[u_xlatu0].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat6.w); inOutVertices2_buf[u_xlatu0].value[(32 >> 2)] = floatBitsToUint(u_xlat14.x); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb14 = u_xlatu0> 2) + 3]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.z = uintBitsToFloat(inOutVertices1_buf[u_xlatu0].value[(32 >> 2) + 0]); u_xlat4 = vec4(uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin1_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati5 = ivec4(int(inSkin1_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin1_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin1_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin1_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati5 = u_xlati5 + ivec4(g_PoseOffsets[0].yyyy); u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat14.x; u_xlat9.y = u_xlat6.x; u_xlat9.z = u_xlat7.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat14.y; u_xlat10.y = u_xlat6.y; u_xlat10.z = u_xlat7.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat14.z; u_xlat8.y = u_xlat6.z; u_xlat8.z = u_xlat7.z; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat14.x; u_xlat12.y = u_xlat6.x; u_xlat12.z = u_xlat7.x; u_xlat12.w = u_xlat11.x; u_xlat12 = u_xlat4.yyyy * u_xlat12; u_xlat13.x = u_xlat14.y; u_xlat13.y = u_xlat6.y; u_xlat13.z = u_xlat7.y; u_xlat13.w = u_xlat11.y; u_xlat13 = u_xlat4.yyyy * u_xlat13; u_xlat11.x = u_xlat14.z; u_xlat11.y = u_xlat6.z; u_xlat11.z = u_xlat7.z; u_xlat6 = u_xlat4.yyyy * u_xlat11; u_xlat7 = u_xlat9 * u_xlat4.xxxx + u_xlat12; u_xlat9 = u_xlat10 * u_xlat4.xxxx + u_xlat13; u_xlat6 = u_xlat8 * u_xlat4.xxxx + u_xlat6; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 2])); u_xlat10.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat14.x; u_xlat12.y = u_xlat8.x; u_xlat12.z = u_xlat10.x; u_xlat12.w = u_xlat11.x; u_xlat13.x = u_xlat14.y; u_xlat13.y = u_xlat8.y; u_xlat13.z = u_xlat10.y; u_xlat13.w = u_xlat11.y; u_xlat11.x = u_xlat14.z; u_xlat11.y = u_xlat8.z; u_xlat11.z = u_xlat10.z; u_xlat7 = u_xlat12 * u_xlat4.zzzz + u_xlat7; u_xlat8 = u_xlat13 * u_xlat4.zzzz + u_xlat9; u_xlat6 = u_xlat11 * u_xlat4.zzzz + u_xlat6; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat14.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat14.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat14.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat5 = u_xlat10 * u_xlat4.wwww + u_xlat7; u_xlat7 = u_xlat11 * u_xlat4.wwww + u_xlat8; u_xlat4 = u_xlat9 * u_xlat4.wwww + u_xlat6; u_xlat6.xyz = u_xlat1.yzw; u_xlat6.w = 1.0; u_xlat8.x = dot(u_xlat5, u_xlat6); u_xlat8.y = dot(u_xlat7, u_xlat6); u_xlat8.z = dot(u_xlat4, u_xlat6); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat5.xyz, u_xlat1.xyz); u_xlat6.x = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat6.y = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat3.xy = u_xlat2.zw; u_xlat6.z = dot(u_xlat5.xyz, u_xlat3.xyz); u_xlat6.w = dot(u_xlat7.xyz, u_xlat3.xyz); u_xlat14.x = dot(u_xlat4.xyz, u_xlat3.xyz); inOutVertices1_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat8.x); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat8.y); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat8.z); inOutVertices1_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat8.w); inOutVertices1_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat6.x); inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat6.y); inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat6.z); inOutVertices1_buf[u_xlatu0].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat6.w); inOutVertices1_buf[u_xlatu0].value[(32 >> 2)] = floatBitsToUint(u_xlat14.x); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb14 = u_xlatu0> 2) + 3]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlat3.z = uintBitsToFloat(inOutVertices0_buf[u_xlatu0].value[(32 >> 2) + 0]); u_xlat4 = vec4(uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 0]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 1]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 2]), uintBitsToFloat(inSkin0_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati5 = ivec4(int(inSkin0_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inSkin0_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inSkin0_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inSkin0_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati5 = u_xlati5 + ivec4(g_PoseOffsets[0].xxxx); u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(32 >> 2) + 2])); u_xlat8.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.x].value[(48 >> 2) + 2])); u_xlat9.x = u_xlat14.x; u_xlat9.y = u_xlat6.x; u_xlat9.z = u_xlat7.x; u_xlat9.w = u_xlat8.x; u_xlat10.x = u_xlat14.y; u_xlat10.y = u_xlat6.y; u_xlat10.z = u_xlat7.y; u_xlat10.w = u_xlat8.y; u_xlat8.x = u_xlat14.z; u_xlat8.y = u_xlat6.z; u_xlat8.z = u_xlat7.z; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(0 >> 2) + 2])); u_xlat6.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(16 >> 2) + 2])); u_xlat7.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.y].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat14.x; u_xlat12.y = u_xlat6.x; u_xlat12.z = u_xlat7.x; u_xlat12.w = u_xlat11.x; u_xlat12 = u_xlat4.yyyy * u_xlat12; u_xlat13.x = u_xlat14.y; u_xlat13.y = u_xlat6.y; u_xlat13.z = u_xlat7.y; u_xlat13.w = u_xlat11.y; u_xlat13 = u_xlat4.yyyy * u_xlat13; u_xlat11.x = u_xlat14.z; u_xlat11.y = u_xlat6.z; u_xlat11.z = u_xlat7.z; u_xlat6 = u_xlat4.yyyy * u_xlat11; u_xlat7 = u_xlat9 * u_xlat4.xxxx + u_xlat12; u_xlat9 = u_xlat10 * u_xlat4.xxxx + u_xlat13; u_xlat6 = u_xlat8 * u_xlat4.xxxx + u_xlat6; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(0 >> 2) + 2])); u_xlat8.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(16 >> 2) + 2])); u_xlat10.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(32 >> 2) + 2])); u_xlat11.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.z].value[(48 >> 2) + 2])); u_xlat12.x = u_xlat14.x; u_xlat12.y = u_xlat8.x; u_xlat12.z = u_xlat10.x; u_xlat12.w = u_xlat11.x; u_xlat13.x = u_xlat14.y; u_xlat13.y = u_xlat8.y; u_xlat13.z = u_xlat10.y; u_xlat13.w = u_xlat11.y; u_xlat11.x = u_xlat14.z; u_xlat11.y = u_xlat8.z; u_xlat11.z = u_xlat10.z; u_xlat7 = u_xlat12 * u_xlat4.zzzz + u_xlat7; u_xlat8 = u_xlat13 * u_xlat4.zzzz + u_xlat9; u_xlat6 = u_xlat11 * u_xlat4.zzzz + u_xlat6; u_xlat14.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(0 >> 2) + 2])); u_xlat4.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(16 >> 2) + 2])); u_xlat5.xyz = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(32 >> 2) + 2])); u_xlat9.xyw = vec3(uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 0]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 1]), uintBitsToFloat(inMatrices_buf[u_xlati5.w].value[(48 >> 2) + 2])); u_xlat10.x = u_xlat14.x; u_xlat10.y = u_xlat4.x; u_xlat10.z = u_xlat5.x; u_xlat10.w = u_xlat9.x; u_xlat11.x = u_xlat14.y; u_xlat11.y = u_xlat4.y; u_xlat11.z = u_xlat5.y; u_xlat11.w = u_xlat9.y; u_xlat9.x = u_xlat14.z; u_xlat9.y = u_xlat4.z; u_xlat9.z = u_xlat5.z; u_xlat5 = u_xlat10 * u_xlat4.wwww + u_xlat7; u_xlat7 = u_xlat11 * u_xlat4.wwww + u_xlat8; u_xlat4 = u_xlat9 * u_xlat4.wwww + u_xlat6; u_xlat6.xyz = u_xlat1.yzw; u_xlat6.w = 1.0; u_xlat8.x = dot(u_xlat5, u_xlat6); u_xlat8.y = dot(u_xlat7, u_xlat6); u_xlat8.z = dot(u_xlat4, u_xlat6); u_xlat1.yz = u_xlat2.xy; u_xlat8.w = dot(u_xlat5.xyz, u_xlat1.xyz); u_xlat6.x = dot(u_xlat7.xyz, u_xlat1.xyz); u_xlat6.y = dot(u_xlat4.xyz, u_xlat1.xyz); u_xlat3.xy = u_xlat2.zw; u_xlat6.z = dot(u_xlat5.xyz, u_xlat3.xyz); u_xlat6.w = dot(u_xlat7.xyz, u_xlat3.xyz); u_xlat14.x = dot(u_xlat4.xyz, u_xlat3.xyz); inOutVertices0_buf[u_xlatu0].value[(0 >> 2)] = floatBitsToUint(u_xlat8.x); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat8.y); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat8.z); inOutVertices0_buf[u_xlatu0].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat8.w); inOutVertices0_buf[u_xlatu0].value[(16 >> 2)] = floatBitsToUint(u_xlat6.x); inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat6.y); inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat6.z); inOutVertices0_buf[u_xlatu0].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat6.w); inOutVertices0_buf[u_xlatu0].value[(32 >> 2)] = floatBitsToUint(u_xlat14.x); } } } } } } } } return; } @A$Globals g_VertCountComputeSkinCBufferp g_VertCountsg_BatchOffsets  g_PoseOffsets@ComputeSkinInPlaceCBufferp g_VertCountsg_BatchOffsets  g_PoseOffsets@(main$Globals inVerticesinSkin inMatrices outVerticesTDXBCMB\G4,B]T,<LISGNOSGNSHEXP@jYF ppp@_h @O   & @ r Fr)" @bq6@6@6@60P:* ):@ pU" @V"8"@7 @r @Frr @Frr @ Fr @0Fx6 6" 6B 6  6 6" 6B 6  6 *6" *6B *2 F VF2 F VF2 F VF:@6@?FF"FFBFFr F>@Amain$Globals inVerticesinSkin inMatrices outVerticesDXBC.Y2X˯x^t?,<LISGNOSGNSHEXPmjYF ppp@_h @O   & @r Fr#" @@ rFr)B @*t6@6@6@6*0P:: ):@ pU" @V"8"@7 @r @Frr @Frr @ Fr @0Fx6 6" 6B  6  6 6" 6B  6  6 *6" *6B * 2 F VF2 F VF2 F VF:@6@?FF"FFBFFFF"FFBFFr FrF>@Amain$Globals inVerticesinSkin inMatrices outVerticesDXBC^9~"-9[,<LISGNOSGNSHEXPrjYF ppp@_h @O   & @ r Fr#" @ @ F~)B @*t6@6@6@6*0P" :)" @"pUB@VB*8B*@7"@r@Frr@Frr @ Fr @0Fx6 6" 6B  6  6 6" 6B  6  6 *6" *6B * 2 F F2 F F2 F F @6@?FF"FFBFFFF"FFBFFr F6:F>@Amain$Globals inVerticesinSkin inMatrices outVerticesDXBC͑CbG\n/FB,<LISGNOSGNSHEXtPjYF ppp@_h@O   & @(r Fr#b@((@ rFr*F~) @2:Fp6@6@6@6 0P::):@:pUB:@VB*8B*@7:@r:@Frr :@Frr :@ Fr :@0Fx6 6"  6B  6  6 6"  6B  6  6 *6" * 6B * 2 F F2 F F2 F F:@6@?FF"FFBFFFF"FFBFFFF"FFBFFr FrF6:*F>@Amain$Globals inVerticesinSkin inMatrices outVerticesDXBC+?=O4y^+I,<LISGNOSGNSHEX,PjYF ppp@_h@O   & @ r Fr)" @"pr@Frr@Frr@ Fr@0Fx6 6" 6B 6 6@?FF66"6B6"FF6*6"*6B*BFFr F>@Amain$Globals inVerticesinSkin inMatrices outVertices4DXBCM6ӎkڮd4,<LISGNOSGNSHEXPjYF ppp@_h @O   & @r Fr#" @@ rFr)B @B*pr*@Frr*@Frr*@ Fr*@0Fx6 6" 6B 6 6@?FF6 6" 6B 6 "F F6*6"*6B*BFFFF"F FBFFr FrF>@Amain$Globals inVerticesinSkin inMatrices outVerticesHDXBC?*}U[5~H,<LISGNOSGNSHEXPjYF ppp@_h @O   & @ r Fr#" @ @ F~)B @B*pr*@Frr*@Frr*@ Fr*@0Fx6 6" 6B 6 6@?FF6 6" 6B 6 "F F6*6"*6B*BFFFF"F FBFFr F6:F>@Amain$Globals inVerticesinSkin inMatrices outVerticesDXBCuM߃s9O`,<LISGNOSGNSHEXP(jYF ppp@_h @O   & @(r Fr#b@((@ rFr*F~) @:pr:@Frr:@Frr:@ Fr:@0Fx6 6" 6B 6 6@? FF6 6" 6B 6 " F F6*6"*6B*B FFFF"F FBFFFF"F FBFFr F rF6:*F>@Amain$Globals inVerticesinSkin inMatrices outVerticesDXBCAsp̝rQ[,<LISGNOSGNSHEXxP^jYF ppp@_h @O   & @ r Fr)" @F~*@yr*@Frr*@ Fr*@0Fx66" 6B 6 6*6"6B66:6"*6B*:@yr:@Frr:@ Fr:@0Fx6 6" 6B 6 8 VF 6 *6" 6B 6 8 VF 6:6"*6B*8VF2 FF 2 FF 2 FF6@?FF"FFBFFr F>@Amain$Globals inVerticesinSkin inMatrices outVerticesDXBC| I7D|",<LISGNOSGNSHEX,PjYF ppp@_h @O   & @r Fr#" @@ rFr)B @*F~r*@Frr*@Frr*@ Fr*@0Fx6 6" 6B 6 6 6" 6B 6 6*6"*6B*r:@Frr:@Frr:@ Fr :@0Fx6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 FF 2 F F 2 FF6@?FF"FFBFFFF"FFBFFr FrF>@Amain$Globals inVerticesinSkin inMatrices outVerticesDXBCoυ4d8^ga p,<LISGNOSGNSHEX@PjYF ppp@_h @O   & @ r Fr#" @ @ F~)B @*F~r*@Frr*@Frr*@ Fr*@0Fx6 6" 6B 6 6 6" 6B 6 6*6"*6B*r:@Frr:@Frr:@ Fr :@0Fx6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 FF 2 F F 2 FF6@?FF"FFBFFFF"FFBFFr F6:F>@Amain$Globals inVerticesinSkin inMatrices outVertices@DXBC12-I@,<LISGNOSGNSHEXPjYF ppp@_h@O   & @(r Fr#b@((@ rFr*F~) @:F~r*@Frr*@Frr*@ Fr*@0Fx6 6" 6B 6 6 6" 6B 6 6*6"*6B*r:@Frr:@Frr:@ Fr :@0Fx6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 F F 2 F F 2 FF6@?FF"FFBFFFF"FFBFFFF"FFBFFr FrF6:*F>@Amain$Globals inVerticesinSkin inMatrices outVertices DXBCX湮ix;0 ,<LISGNOSGNSHEX PkjYF ppp@_h @O   & @ r Fr)" @F~#" @ @F~ @yr @Frr @ Fr @0Fx66" 6B 6 6*6"6B66:6"*6B*@yr@Frr@ Fr @0Fx6 6" 6B 6  8 VF 6 *6" 6B 6  8 VF 6 :6" *6B *8VF 2 FF 2 FF 2 FF*@yr*@Frr*@ Fr *@0Fx6 6" 6B 6  6 *6" 6B 6  6 :6" *6B *2 F F2 F F2 F F:@yr:@Frr:@ Fr:@0Fx66" 6B 6 6 *6" 6B 6 6:6"*6B*2 FF2 F F2 FF6@?FF"FFBFFr F>@Amain$Globals inVerticesinSkin inMatrices outVertices DXBC D%l!Z`IP ,<LISGNOSGNSHEX` PjYF ppp@_h@O   & @r Fr#" @@ rFr)B @*F~#B @ @*F~r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6 6" 6B 6 6*6"*6B*r@Frr@Frr@ Fr @0Fx6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 F F 2 F F 2 FFr*@Frr *@Frr *@ Fr *@0Fx6 6"  6B  6  6 6"  6B  6  6 *6" * 6B * 2 F F2 F F2 F Fr:@Frr:@Frr:@ Fr :@0Fx6 6" 6B 6  6 6" 6B 6  6 *6" *6B *2 F F2 F F2 F F6@?FF"FFBFFFF"FFBFFr FrF>@Amain$Globals inVerticesinSkin inMatrices outVertices DXBC6jYZAUc ,<LISGNOSGNSHEXt PjYF ppp@_h@O   & @ r Fr#" @ @ F~)B @*F~#B @ @*F~r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6 6" 6B 6 6*6"*6B*r@Frr@Frr@ Fr @0Fx6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 F F 2 F F 2 FFr*@Frr *@Frr *@ Fr *@0Fx6 6"  6B  6  6 6"  6B  6  6 *6" * 6B * 2 F F2 F F2 F Fr:@Frr:@Frr:@ Fr :@0Fx6 6" 6B 6  6 6" 6B 6  6 *6" *6B *2 F F2 F F2 F F6@?FF"FFBFFFF"FFBFFr F6:F>@Amain$Globals inVerticesinSkin inMatrices outVerticest DXBC*)Ct ,<LISGNOSGNSHEX PjYF ppp@_h@O   & @(r Fr#b@((@ rFr*F~) @:F~# @ @:F~r @Frr @Frr @ Fr @0Fx6 6" 6B 6  6 6" 6B 6  6 *6" *6B *r@Frr@Frr@ Fr @0Fx6 6" 6B 6  8 VF 66"6B6 8VF6 *6" *6B *8VF 2 F F 2 F F2 F Fr *@Frr *@Frr *@ Fr *@0Fx6  6"  6B  6  6 6" 6B 6 6 * 6" * 6B * 2 F F2 F F2 F Fr:@Frr:@Frr :@ Fr :@0Fx6 6" 6B  6  6 6" 6B  6  6 *6" *6B * 2 F F2 F F2 F F6@?FF"FFBFFFF"FFBFFFF"FFBFFr FrF6:*F>@A batchMainComputeSkinCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4inSkin0inSkin1inSkin2inSkin3inSkin4 inMatrices  outVertices0 outVertices1 outVertices2 outVertices3 outVertices4|DXBC!YQ?%l|,<LISGNOSGNSHEX(PjYF pppppppppp p @_h @P     AO"  &" @ rFr) @R q 6@6@6@6 0P:* ):@ p U" @V"8"@7 @  r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6  6 6" 6B 6  6 *6" *6B *2 F VF2 F VF2 F VF:@6@?FF"FFBFFrFP :   : AO" : &" @ rFr) @R q6@6@6@6 0P:* ):@ pU" @V"8"@7 @ : r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6  6 6" 6B 6  6 *6" *6B *2 F VF2 F VF2 F VF:@6@?FF"FFBFFrFP *   * AO" * &" @ rFr) @R q6@6@6@6 0P:* ):@ pU" @V"8"@7 @ * r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6  6 6" 6B 6  6 *6" *6B *2 F VF2 F VF2 F VF:@6@?FF"FFBFFrFP     AO"  &" @ rFr) @R q6@6@6@6 0P:* ):@ pU" @V"8"@7 @  r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6  6 6" 6B 6  6 *6" *6B *2 F VF2 F VF2 F VF:@6@?FF"FFBFFrFP     AO"  &" @ rFr) @R q6@6@6@6 0P:* ):@ pU" @V"8"@7 @  r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6  6 6" 6B 6  6 *6" *6B *2 F VF2 F VF2 F VF:@6@?FF"FFBFFrF>@A batchMainComputeSkinCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4inSkin0inSkin1inSkin2inSkin3inSkin4 inMatrices  outVertices0 outVertices1 outVertices2 outVertices3 outVertices4DXBC0Ƶ.#@Q,<LISGNOSGNSHEXPpjYF pppppppppp p @_h @P     AO"  &" @rFr# B @@ r*Fr) @ t 6@6@6@6 0P:: ):@ p U" @V"8"@7 @  r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B  6  6 6" 6B  6  6 *6" *6B * 2 F VF2 F VF2 F VF:@6@?FF"FFBFFFF"FFBFFrFr*FP :   : AO" : &" @rFr# B @@ r*Fr) @ t6@6@6@6 0P:: ):@ pU" @V"8"@7 @ : r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B  6  6 6" 6B  6  6 *6" *6B * 2 F VF2 F VF2 F VF:@6@?FF"FFBFFFF"FFBFFrFr*FP *   * AO" * &" @rFr# B @@ r*Fr) @ t6@6@6@6 0P:: ):@ pU" @V"8"@7 @ * r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B  6  6 6" 6B  6  6 *6" *6B * 2 F VF2 F VF2 F VF:@6@?FF"FFBFFFF"FFBFFrFr*FP     AO"  &" @rFr# B @@ r*Fr) @ t6@6@6@6 0P:: ):@ pU" @V"8"@7 @  r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B  6  6 6" 6B  6  6 *6" *6B * 2 F VF2 F VF2 F VF:@6@?FF"FFBFFFF"FFBFFrFr*FP     AO"  &" @rFr# B @@ r*Fr) @ t6@6@6@6 0P:: ):@ pU" @V"8"@7 @  r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B  6  6 6" 6B  6  6 *6" *6B * 2 F VF2 F VF2 F VF:@6@?FF"FFBFFFF"FFBFFrFr*F>@A batchMainComputeSkinCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4inSkin0inSkin1inSkin2inSkin3inSkin4 inMatrices  outVertices0 outVertices1 outVertices2 outVertices3 outVertices4!DXBC+i̮.+-w!,<LISGNOSGNSHEX!P`jYF pppppppppp p @_h@P     AO"  &" @(rFr#@((@ r*Fr:F~) @2 Fp 6@6@6@6 0P :) @:p UB:@VB*8B*@7:@: r:@Fr r :@Fr r :@ Fr  :@0Fx 6 6"  6B  6  6 6"  6B  6  6 *6" * 6B * 2 F F2 F F2 F F @6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP :   : AO" : &" @(rFr#@((@ r*Fr:F~) @2 Fp6@6@6@6 0P :) @:pUB:@VB*8B*@7:@:: r:@Fr r :@Fr r :@ Fr  :@0Fx 6 6"  6B  6  6 6"  6B  6  6 *6" * 6B * 2 F F2 F F2 F F @6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP *   * AO" * &" @(rFr#@((@ r*Fr:F~) @2 Fp6@6@6@6 0P :) @:pUB:@VB*8B*@7:@:* r:@Fr r :@Fr r :@ Fr  :@0Fx 6 6"  6B  6  6 6"  6B  6  6 *6" * 6B * 2 F F2 F F2 F F @6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP     AO"  &" @(rFr#@((@ r*Fr:F~) @2 Fp6@6@6@6 0P :) @:pUB:@VB*8B*@7:@: r:@Fr r :@Fr r :@ Fr  :@0Fx 6 6"  6B  6  6 6"  6B  6  6 *6" * 6B * 2 F F2 F F2 F F @6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP     AO"  &" @(rFr#@((@ r*Fr:F~) @2 Fp6@6@6@6 0P :) @:pUB:@VB*8B*@7:@: r:@Fr r :@Fr r :@ Fr  :@0Fx 6 6"  6B  6  6 6"  6B  6  6 *6" * 6B * 2 F F2 F F2 F F @6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::F>@A batchMainComputeSkinCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4inSkin0inSkin1inSkin2inSkin3inSkin4 inMatrices  outVertices0 outVertices1 outVertices2 outVertices3 outVertices4XDXBCs%B0֋X,<LISGNOSGNSHEXPAjYF pppppppppp p @_h@P     AO"  &" @ rFr) @ p   r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6 6@?FF66"6B6"FF6*6"*6B*BFFrFP :   : AO" : &" @ rFr) @ p : r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6 6@?FF66"6B6"FF6*6"*6B*BFFrFP *   * AO" * &" @ rFr) @ p * r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6 6@?FF66"6B6"FF6*6"*6B*BFFrFP     AO"  &" @ rFr) @ p  r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6 6@?FF66"6B6"FF6*6"*6B*BFFrFP     AO"  &" @ rFr) @ p  r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6 6@?FF66"6B6"FF6*6"*6B*BFFrF>@A batchMainComputeSkinCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4inSkin0inSkin1inSkin2inSkin3inSkin4 inMatrices  outVertices0 outVertices1 outVertices2 outVertices3 outVertices4DXBCI+tJPO:z(v,<LISGNOSGNSHEXP'jYF pppppppppp p @_h @P     AO"  &" @rFr# B @@ r*Fr) @ p   r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6 6@?FF6 6" 6B 6 "F F6*6"*6B*BFFFF"F FBFFrFr*FP :   : AO" : &" @rFr# B @@ r*Fr) @ p : r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6 6@?FF6 6" 6B 6 "F F6*6"*6B*BFFFF"F FBFFrFr*FP *   * AO" * &" @rFr# B @@ r*Fr) @ p * r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6 6@?FF6 6" 6B 6 "F F6*6"*6B*BFFFF"F FBFFrFr*FP     AO"  &" @rFr# B @@ r*Fr) @ p  r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6 6@?FF6 6" 6B 6 "F F6*6"*6B*BFFFF"F FBFFrFr*FP     AO"  &" @rFr# B @@ r*Fr) @ p  r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6 6@?FF6 6" 6B 6 "F F6*6"*6B*BFFFF"F FBFFrFr*F>@A batchMainComputeSkinCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4inSkin0inSkin1inSkin2inSkin3inSkin4 inMatrices  outVertices0 outVertices1 outVertices2 outVertices3 outVertices4DXBC1J_"=,<LISGNOSGNSHEX\PjYF pppppppppp p @_h @P     AO"  &" @(rFr#@((@ r*Fr:F~) @ p   r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6 6@? FF6 6" 6B 6 " F F6*6"*6B*B FFFF"F FBFFFF"F FBFFrF r*F6::FP :   : AO" : &" @(rFr#@((@ r*Fr:F~) @ p : r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6 6@? FF6 6" 6B 6 " F F6*6"*6B*B FFFF"F FBFFFF"F FBFFrF r*F6::FP *   * AO" * &" @(rFr#@((@ r*Fr:F~) @ p * r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6 6@? FF6 6" 6B 6 " F F6*6"*6B*B FFFF"F FBFFFF"F FBFFrF r*F6::FP     AO"  &" @(rFr#@((@ r*Fr:F~) @ p  r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6 6@? FF6 6" 6B 6 " F F6*6"*6B*B FFFF"F FBFFFF"F FBFFrF r*F6::FP     AO"  &" @(rFr#@((@ r*Fr:F~) @ p  r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6 6@? FF6 6" 6B 6 " F F6*6"*6B*B FFFF"F FBFFFF"F FBFFrF r*F6::F>@A batchMainComputeSkinCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4inSkin0inSkin1inSkin2inSkin3inSkin4 inMatrices  outVertices0 outVertices1 outVertices2 outVertices3 outVertices4DXBC*2iMŞ @_Hb?,<LISGNOSGNSHEXP jYF pppppppppp p @_h @P     AO"  &" @ rFr) @ F~ R  r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6 66"6B66*6"*6B*r*@Fr r*@Fr r*@ Fr  *@0Fx 6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 FF 2 FF 2 FF6@?FF"FFBFFrFP :   : AO" : &" @ rFr) @ F~R  r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6 66"6B66*6"*6B*r*@Fr r*@Fr r*@ Fr  *@0Fx 6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 FF 2 FF 2 FF6@?FF"FFBFFrFP *   * AO" * &" @ rFr) @ F~R  r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6 66"6B66*6"*6B*r*@Fr r*@Fr r*@ Fr  *@0Fx 6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 FF 2 FF 2 FF6@?FF"FFBFFrFP     AO"  &" @ rFr) @ F~R V r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6 66"6B66*6"*6B*r*@Fr r*@Fr r*@ Fr  *@0Fx 6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 FF 2 FF 2 FF6@?FF"FFBFFrFP     AO"  &" @ rFr) @ F~R  r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6 66"6B66*6"*6B*r*@Fr r*@Fr r*@ Fr  *@0Fx 6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 FF 2 FF 2 FF6@?FF"FFBFFrF>@A batchMainComputeSkinCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4inSkin0inSkin1inSkin2inSkin3inSkin4 inMatrices  outVertices0 outVertices1 outVertices2 outVertices3 outVertices4l DXBCynz ܝ?yqfl ,<LISGNOSGNSHEX PjYF pppppppppp p @_h @P     AO"  &" @rFr# B @@ r*Fr) @ F~  r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6 6 6" 6B 6 6*6"*6B*r:@Fr r:@Fr r:@ Fr  :@0Fx 6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 FF 2 F F 2 FF6@?FF"FFBFFFF"FFBFFrFr*FP :   : AO" : &" @rFr# B @@ r*Fr) @ F~ r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6 6 6" 6B 6 6*6"*6B*r:@Fr r:@Fr r:@ Fr  :@0Fx 6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 FF 2 F F 2 FF6@?FF"FFBFFFF"FFBFFrFr*FP *   * AO" * &" @rFr# B @@ r*Fr) @ F~ r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6 6 6" 6B 6 6*6"*6B*r:@Fr r:@Fr r:@ Fr  :@0Fx 6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 FF 2 F F 2 FF6@?FF"FFBFFFF"FFBFFrFr*FP     AO"  &" @rFr# B @@ r*Fr) @ F~V r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6 6 6" 6B 6 6*6"*6B*r:@Fr r:@Fr r:@ Fr  :@0Fx 6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 FF 2 F F 2 FF6@?FF"FFBFFFF"FFBFFrFr*FP     AO"  &" @rFr# B @@ r*Fr) @ F~ r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6 6 6" 6B 6 6*6"*6B*r:@Fr r:@Fr r:@ Fr  :@0Fx 6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 FF 2 F F 2 FF6@?FF"FFBFFFF"FFBFFrFr*F>@A batchMainComputeSkinCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4inSkin0inSkin1inSkin2inSkin3inSkin4 inMatrices  outVertices0 outVertices1 outVertices2 outVertices3 outVertices4,$DXBC]g0/!a֤Óf,$,<LISGNOSGNSHEX#PjYF pppppppppp p @_h@P     AO"  &" @(rFr#@((@ r*Fr:F~) @ F~  r*@Fr r*@Fr r*@ Fr *@0Fx 6 6" 6B 6 6 6" 6B 6 6*6"*6B*r:@Fr r:@Fr r:@ Fr  :@0Fx 6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 F F 2 F F 2 FF6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP :   : AO" : &" @(rFr#@((@ r*Fr:F~) @ F~ r*@Fr r*@Fr r*@ Fr *@0Fx 6 6" 6B 6 6 6" 6B 6 6*6"*6B*r:@Fr r:@Fr r:@ Fr  :@0Fx 6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 F F 2 F F 2 FF6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP *   * AO" * &" @(rFr#@((@ r*Fr:F~) @ F~ r*@Fr r*@Fr r*@ Fr *@0Fx 6 6" 6B 6 6 6" 6B 6 6*6"*6B*r:@Fr r:@Fr r:@ Fr  :@0Fx 6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 F F 2 F F 2 FF6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP     AO"  &" @(rFr#@((@ r*Fr:F~) @ F~V r*@Fr r*@Fr r*@ Fr *@0Fx 6 6" 6B 6 6 6" 6B 6 6*6"*6B*r:@Fr r:@Fr r:@ Fr  :@0Fx 6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 F F 2 F F 2 FF6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP     AO"  &" @(rFr#@((@ r*Fr:F~) @ F~ r*@Fr r*@Fr r*@ Fr *@0Fx 6 6" 6B 6 6 6" 6B 6 6*6"*6B*r:@Fr r:@Fr r:@ Fr  :@0Fx 6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 F F 2 F F 2 FF6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::F>@A batchMainComputeSkinCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4inSkin0inSkin1inSkin2inSkin3inSkin4 inMatrices  outVertices0 outVertices1 outVertices2 outVertices3 outVertices42DXBC Px͘02,<LISGNOSGNSHEX1Pp jYF pppppppppp p @_h @P     AO"  &" @ rFr)B @*F~ @@ @ F~ F  @y r @Fr r @ Fr  @0Fx 6 6" 6B 6 6*6"6B66:6"*6B*@y r@Fr r@ Fr  @0Fx 6 6" 6B 6  8 VF 6 *6" 6B 6  8 VF 6 :6" *6B *8VF 2 FF 2 FF 2 FF*@y r*@Fr r*@ Fr  *@0Fx 6 6" 6B 6  6 *6" 6B 6  6 :6" *6B *2 F F2 F F2 F F:@y r:@Fr r:@ Fr :@0Fx 6 6" 6B 6 6 *6" 6B 6 6:6"*6B*2 FF2 F F2 FF6@?FF"FFBFFrFP :   : AO" : &" @ rFr)B @*F~ @@ @ F~F  @y r @Fr r @ Fr  @0Fx 6 6" 6B 6 6*6"6B66:6"*6B*@y r@Fr r@ Fr  @0Fx 6 6" 6B 6  8 VF 6 *6" 6B 6  8 VF 6 :6" *6B *8VF 2 FF 2 FF 2 FF*@y r*@Fr r*@ Fr  *@0Fx 6 6" 6B 6  6 *6" 6B 6  6 :6" *6B *2 F F2 F F2 F F:@y r:@Fr r:@ Fr :@0Fx 6 6" 6B 6 6 *6" 6B 6 6:6"*6B*2 FF2 F F2 FF6@?FF"FFBFFrFP *   * AO" * &" @ rFr)B @*F~ @@ @ F~F  @y r @Fr r @ Fr  @0Fx 6 6" 6B 6 6*6"6B66:6"*6B*@y r@Fr r@ Fr  @0Fx 6 6" 6B 6  8 VF 6 *6" 6B 6  8 VF 6 :6" *6B *8VF 2 FF 2 FF 2 FF*@y r*@Fr r*@ Fr  *@0Fx 6 6" 6B 6  6 *6" 6B 6  6 :6" *6B *2 F F2 F F2 F F:@y r:@Fr r:@ Fr :@0Fx 6 6" 6B 6 6 *6" 6B 6 6:6"*6B*2 FF2 F F2 FF6@?FF"FFBFFrFP     AO"  &" @ rFr)B @*F~ @@ @ F~FV  @y r @Fr r @ Fr  @0Fx 6 6" 6B 6 6*6"6B66:6"*6B*@y r@Fr r@ Fr  @0Fx 6 6" 6B 6  8 VF 6 *6" 6B 6  8 VF 6 :6" *6B *8VF 2 FF 2 FF 2 FF*@y r*@Fr r*@ Fr  *@0Fx 6 6" 6B 6  6 *6" 6B 6  6 :6" *6B *2 F F2 F F2 F F:@y r:@Fr r:@ Fr :@0Fx 6 6" 6B 6 6 *6" 6B 6 6:6"*6B*2 FF2 F F2 FF6@?FF"FFBFFrFP     AO"  &" @ rFr)B @*F~ @@ @ F~F  @y r @Fr r @ Fr  @0Fx 6 6" 6B 6 6*6"6B66:6"*6B*@y r@Fr r@ Fr  @0Fx 6 6" 6B 6  8 VF 6 *6" 6B 6  8 VF 6 :6" *6B *8VF 2 FF 2 FF 2 FF*@y r*@Fr r*@ Fr  *@0Fx 6 6" 6B 6  6 *6" 6B 6  6 :6" *6B *2 F F2 F F2 F F:@y r:@Fr r:@ Fr :@0Fx 6 6" 6B 6 6 *6" 6B 6 6:6"*6B*2 FF2 F F2 FF6@?FF"FFBFFrF>@A batchMainComputeSkinCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4inSkin0inSkin1inSkin2inSkin3inSkin4 inMatrices  outVertices0 outVertices1 outVertices2 outVertices3 outVertices45DXBC:ẗ́8fU@A batchMainComputeSkinCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4inSkin0inSkin1inSkin2inSkin3inSkin4 inMatrices  outVertices0 outVertices1 outVertices2 outVertices3 outVertices4l9DXBCC'* Ь] l9,<LISGNOSGNSHEX9PFjYF pppppppppp p @_h@P     AO"  &" @(rFr#@((@ r*Fr:F~) @:F~ @@ @ F~ F r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6  6 6" 6B 6  6 *6" *6B *r@Fr r@Fr r@ Fr  @0Fx 6 6" 6B 6  8 VF 66"6B6 8VF6 *6" *6B *8VF 2 F F 2 F F2 F Fr *@Fr r *@Fr r *@ Fr  *@0Fx 6  6"  6B  6  6 6" 6B 6 6 * 6" * 6B * 2 F F2 F F2 F Fr:@Fr r:@Fr r :@ Fr  :@0Fx 6 6" 6B  6  6 6" 6B  6  6 *6" *6B * 2 F F2 F F2 F F6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP :   : AO" : &" @(rFr#@((@ r*Fr:F~) @:F~ @@ @ F~F r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6  6 6" 6B 6  6 *6" *6B *r@Fr r@Fr r@ Fr  @0Fx 6 6" 6B 6  8 VF 66"6B6 8VF6 *6" *6B *8VF 2 F F 2 F F2 F Fr *@Fr r *@Fr r *@ Fr  *@0Fx 6  6"  6B  6  6 6" 6B 6 6 * 6" * 6B * 2 F F2 F F2 F Fr:@Fr r:@Fr r :@ Fr  :@0Fx 6 6" 6B  6  6 6" 6B  6  6 *6" *6B * 2 F F2 F F2 F F6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP *   * AO" * &" @(rFr#@((@ r*Fr:F~) @:F~ @@ @ F~F r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6  6 6" 6B 6  6 *6" *6B *r@Fr r@Fr r@ Fr  @0Fx 6 6" 6B 6  8 VF 66"6B6 8VF6 *6" *6B *8VF 2 F F 2 F F2 F Fr *@Fr r *@Fr r *@ Fr  *@0Fx 6  6"  6B  6  6 6" 6B 6 6 * 6" * 6B * 2 F F2 F F2 F Fr:@Fr r:@Fr r :@ Fr  :@0Fx 6 6" 6B  6  6 6" 6B  6  6 *6" *6B * 2 F F2 F F2 F F6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP     AO"  &" @(rFr#@((@ r*Fr:F~) @:F~ @@ @ F~FV r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6  6 6" 6B 6  6 *6" *6B *r@Fr r@Fr r@ Fr  @0Fx 6 6" 6B 6  8 VF 66"6B6 8VF6 *6" *6B *8VF 2 F F 2 F F2 F Fr *@Fr r *@Fr r *@ Fr  *@0Fx 6  6"  6B  6  6 6" 6B 6 6 * 6" * 6B * 2 F F2 F F2 F Fr:@Fr r:@Fr r :@ Fr  :@0Fx 6 6" 6B  6  6 6" 6B  6  6 *6" *6B * 2 F F2 F F2 F F6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP     AO"  &" @(rFr#@((@ r*Fr:F~) @:F~ @@ @ F~F r @Fr r @Fr r @ Fr  @0Fx 6 6" 6B 6  6 6" 6B 6  6 *6" *6B *r@Fr r@Fr r@ Fr  @0Fx 6 6" 6B 6  8 VF 66"6B6 8VF6 *6" *6B *8VF 2 F F 2 F F2 F Fr *@Fr r *@Fr r *@ Fr  *@0Fx 6  6"  6B  6  6 6" 6B 6 6 * 6" * 6B * 2 F F2 F F2 F Fr:@Fr r:@Fr r :@ Fr  :@0Fx 6 6" 6B  6  6 6" 6B  6  6 *6" *6B * 2 F F2 F F2 F F6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::F>@AbatchMainInPlaceComputeSkinInPlaceCBufferinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6 inMatricesinOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices6$DXBCn~}HWF,$,<LISGNOSGNSHEX,$P jYF pppppppp@_h @P *   * AO" * &" @ rF) @R q6@6@6@6 0P:* ):@ pU" @V"8"@7 @ * r @Frr @Frr @ Fr @0Fx6 6" 6B 6  6 6" 6B 6  6 *6" *6B *2 F VF2 F VF2 F VF:@6@?FF"FFBFFrFP     AO"  &" @ rF) @R q6@6@6@6 0P:* ):@ pU" @V"8"@7 @  r @Frr @Frr @ Fr @0Fx6 6" 6B 6  6 6" 6B 6  6 *6" *6B *2 F VF2 F VF2 F VF:@6@?FF"FFBFFrFP     AO"  &" @ rF) @R q6@6@6@6 0P:* ):@ pU" @V"8"@7 @  r @Frr @Frr @ Fr @0Fx6 6" 6B 6  6 6" 6B 6  6 *6" *6B *2 F VF2 F VF2 F VF:@6@?FF"FFBFFrFP :   : AO" : &" @ rF) @R q6@6@6@6 0P:* ):@ pU" @V"8"@7 @ : r @Frr @Frr @ Fr @0Fx6 6" 6B 6  6 6" 6B 6  6 *6" *6B *2 F VF2 F VF2 F VF:@6@?FF"FFBFFrFP *   * AO" * &" @ rF) @R q6@6@6@6 0P:* ):@ pU" @V"8"@7 @ * r @Frr @Frr @ Fr @0Fx6 6" 6B 6  6 6" 6B 6  6 *6" *6B *2 F VF2 F VF2 F VF:@6@?FF"FFBFFrFP     AO"  &" @ rF) @R q6@6@6@6 0P:* ):@ pU" @V"8"@7 @  r @Frr @Frr @ Fr @0Fx6 6" 6B 6  6 6" 6B 6  6 *6" *6B *2 F VF2 F VF2 F VF:@6@?FF"FFBFFrFP     AO"  &" @ rF) @R q6@6@6@6 0P:* ):@ pU" @V"8"@7 @  r @Frr @Frr @ Fr @0Fx6 6" 6B 6  6 6" 6B 6  6 *6" *6B *2 F VF2 F VF2 F VF:@6@?FF"FFBFFrF>@AbatchMainInPlaceComputeSkinInPlaceCBufferinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6 inMatricesinOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices6)DXBC ̐JD2^؜#),<LISGNOSGNSHEX4)PM jYF pppppppp@_h @P *   * AO" * &" @rF# B @@ r*F) @ t6@6@6@6 0P:: ):@ pU" @V"8"@7 @ * r @Frr @Frr @ Fr @0Fx6 6" 6B  6  6 6" 6B  6  6 *6" *6B * 2 F VF2 F VF2 F VF:@6@?FF"FFBFFFF"FFBFFrFr*FP     AO"  &" @rF# B @@ r*F) @ t6@6@6@6 0P:: ):@ pU" @V"8"@7 @  r @Frr @Frr @ Fr @0Fx6 6" 6B  6  6 6" 6B  6  6 *6" *6B * 2 F VF2 F VF2 F VF:@6@?FF"FFBFFFF"FFBFFrFr*FP     AO"  &" @rF# B @@ r*F) @ t6@6@6@6 0P:: ):@ pU" @V"8"@7 @  r @Frr @Frr @ Fr @0Fx6 6" 6B  6  6 6" 6B  6  6 *6" *6B * 2 F VF2 F VF2 F VF:@6@?FF"FFBFFFF"FFBFFrFr*FP :   : AO" : &" @rF# B @@ r*F) @ t6@6@6@6 0P:: ):@ pU" @V"8"@7 @ : r @Frr @Frr @ Fr @0Fx6 6" 6B  6  6 6" 6B  6  6 *6" *6B * 2 F VF2 F VF2 F VF:@6@?FF"FFBFFFF"FFBFFrFr*FP *   * AO" * &" @rF# B @@ r*F) @ t6@6@6@6 0P:: ):@ pU" @V"8"@7 @ * r @Frr @Frr @ Fr @0Fx6 6" 6B  6  6 6" 6B  6  6 *6" *6B * 2 F VF2 F VF2 F VF:@6@?FF"FFBFFFF"FFBFFrFr*FP     AO"  &" @rF# B @@ r*F) @ t6@6@6@6 0P:: ):@ pU" @V"8"@7 @  r @Frr @Frr @ Fr @0Fx6 6" 6B  6  6 6" 6B  6  6 *6" *6B * 2 F VF2 F VF2 F VF:@6@?FF"FFBFFFF"FFBFFrFr*FP     AO"  &" @rF# B @@ r*F) @ t6@6@6@6 0P:: ):@ pU" @V"8"@7 @  r @Frr @Frr @ Fr @0Fx6 6" 6B  6  6 6" 6B  6  6 *6" *6B * 2 F VF2 F VF2 F VF:@6@?FF"FFBFFFF"FFBFFrFr*F>@AbatchMainInPlaceComputeSkinInPlaceCBufferinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6 inMatricesinOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices6.DXBCdX9 9b.,<LISGNOSGNSHEXt.P jYF pppppppp@_h@P *   * AO" * &" @(rF#@((@ r*F:F) @2 Fp6@6@6@6 0P :) @:pUB:@VB*8B*@7:@:* r:@Frr :@Frr :@ Fr :@0Fx6 6"  6B  6  6 6"  6B  6  6 *6" * 6B * 2 F F2 F F2 F F @6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP     AO"  &" @(rF#@((@ r*F:F) @2 Fp6@6@6@6 0P :) @:pUB:@VB*8B*@7:@: r:@Frr :@Frr :@ Fr :@0Fx6 6"  6B  6  6 6"  6B  6  6 *6" * 6B * 2 F F2 F F2 F F @6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP     AO"  &" @(rF#@((@ r*F:F) @2 Fp6@6@6@6 0P :) @:pUB:@VB*8B*@7:@: r:@Frr :@Frr :@ Fr :@0Fx6 6"  6B  6  6 6"  6B  6  6 *6" * 6B * 2 F F2 F F2 F F @6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP :   : AO" : &" @(rF#@((@ r*F:F) @2 Fp6@6@6@6 0P :) @:pUB:@VB*8B*@7:@:: r:@Frr :@Frr :@ Fr :@0Fx6 6"  6B  6  6 6"  6B  6  6 *6" * 6B * 2 F F2 F F2 F F @6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP *   * AO" * &" @(rF#@((@ r*F:F) @2 Fp6@6@6@6 0P :) @:pUB:@VB*8B*@7:@:* r:@Frr :@Frr :@ Fr :@0Fx6 6"  6B  6  6 6"  6B  6  6 *6" * 6B * 2 F F2 F F2 F F @6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP     AO"  &" @(rF#@((@ r*F:F) @2 Fp6@6@6@6 0P :) @:pUB:@VB*8B*@7:@: r:@Frr :@Frr :@ Fr :@0Fx6 6"  6B  6  6 6"  6B  6  6 *6" * 6B * 2 F F2 F F2 F F @6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP     AO"  &" @(rF#@((@ r*F:F) @2 Fp6@6@6@6 0P :) @:pUB:@VB*8B*@7:@: r:@Frr :@Frr :@ Fr :@0Fx6 6"  6B  6  6 6"  6B  6  6 *6" * 6B * 2 F F2 F F2 F F @6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::F>@AbatchMainInPlaceComputeSkinInPlaceCBufferinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6 inMatricesinOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices6DXBC3% D;u<K,<LISGNOSGNSHEX`PjYF pppppppp@_h@P *   * AO" * &" @ rF) @ p * r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6@?FF66"6B6"FF6*6"*6B*BFFrFP     AO"  &" @ rF) @ p  r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6@?FF66"6B6"FF6*6"*6B*BFFrFP     AO"  &" @ rF) @ p  r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6@?FF66"6B6"FF6*6"*6B*BFFrFP :   : AO" : &" @ rF) @ p : r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6@?FF66"6B6"FF6*6"*6B*BFFrFP *   * AO" * &" @ rF) @ p * r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6@?FF66"6B6"FF6*6"*6B*BFFrFP     AO"  &" @ rF) @ p  r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6@?FF66"6B6"FF6*6"*6B*BFFrFP     AO"  &" @ rF) @ p  r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6@?FF66"6B6"FF6*6"*6B*BFFrF>@AbatchMainInPlaceComputeSkinInPlaceCBufferinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6 inMatricesinOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices6DXBC)D|c8/`r,<LISGNOSGNSHEXhPjYF pppppppp@_h @P *   * AO" * &" @rF# B @@ r*F) @ p * r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6@?FF6 6" 6B 6 "F F6*6"*6B*BFFFF"F FBFFrFr*FP     AO"  &" @rF# B @@ r*F) @ p  r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6@?FF6 6" 6B 6 "F F6*6"*6B*BFFFF"F FBFFrFr*FP     AO"  &" @rF# B @@ r*F) @ p  r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6@?FF6 6" 6B 6 "F F6*6"*6B*BFFFF"F FBFFrFr*FP :   : AO" : &" @rF# B @@ r*F) @ p : r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6@?FF6 6" 6B 6 "F F6*6"*6B*BFFFF"F FBFFrFr*FP *   * AO" * &" @rF# B @@ r*F) @ p * r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6@?FF6 6" 6B 6 "F F6*6"*6B*BFFFF"F FBFFrFr*FP     AO"  &" @rF# B @@ r*F) @ p  r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6@?FF6 6" 6B 6 "F F6*6"*6B*BFFFF"F FBFFrFr*FP     AO"  &" @rF# B @@ r*F) @ p  r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6@?FF6 6" 6B 6 "F F6*6"*6B*BFFFF"F FBFFrFr*F>@AbatchMainInPlaceComputeSkinInPlaceCBufferinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6 inMatricesinOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices6!DXBCbmBVJ%bTNi!,<LISGNOSGNSHEX!PjjYF pppppppp@_h @P *   * AO" * &" @(rF#@((@ r*F:F) @ p * r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6@? FF6 6" 6B 6 " F F6*6"*6B*B FFFF"F FBFFFF"F FBFFrF r*F6::FP     AO"  &" @(rF#@((@ r*F:F) @ p  r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6@? FF6 6" 6B 6 " F F6*6"*6B*B FFFF"F FBFFFF"F FBFFrF r*F6::FP     AO"  &" @(rF#@((@ r*F:F) @ p  r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6@? FF6 6" 6B 6 " F F6*6"*6B*B FFFF"F FBFFFF"F FBFFrF r*F6::FP :   : AO" : &" @(rF#@((@ r*F:F) @ p : r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6@? FF6 6" 6B 6 " F F6*6"*6B*B FFFF"F FBFFFF"F FBFFrF r*F6::FP *   * AO" * &" @(rF#@((@ r*F:F) @ p * r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6@? FF6 6" 6B 6 " F F6*6"*6B*B FFFF"F FBFFFF"F FBFFrF r*F6::FP     AO"  &" @(rF#@((@ r*F:F) @ p  r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6@? FF6 6" 6B 6 " F F6*6"*6B*B FFFF"F FBFFFF"F FBFFrF r*F6::FP     AO"  &" @(rF#@((@ r*F:F) @ p  r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6@? FF6 6" 6B 6 " F F6*6"*6B*B FFFF"F FBFFFF"F FBFFrF r*F6::F>@AbatchMainInPlaceComputeSkinInPlaceCBufferinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6 inMatricesinOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices6'DXBClB>/Ni?k',<LISGNOSGNSHEXt'P jYF pppppppp@_h @P *   * AO" * &" @ rF) @ F~R  r @Frr @Frr @ Fr @0Fx6 6" 6B 6 66"6B66*6"*6B*r*@Frr*@Frr*@ Fr *@0Fx6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 FF 2 FF 2 FF6@?FF"FFBFFrFP     AO"  &" @ rF) @ F~R V r @Frr @Frr @ Fr @0Fx6 6" 6B 6 66"6B66*6"*6B*r*@Frr*@Frr*@ Fr *@0Fx6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 FF 2 FF 2 FF6@?FF"FFBFFrFP     AO"  &" @ rF) @ F~R  r @Frr @Frr @ Fr @0Fx6 6" 6B 6 66"6B66*6"*6B*r*@Frr*@Frr*@ Fr *@0Fx6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 FF 2 FF 2 FF6@?FF"FFBFFrFP :   : AO" : &" @ rF) @ F~R  r @Frr @Frr @ Fr @0Fx6 6" 6B 6 66"6B66*6"*6B*r*@Frr*@Frr*@ Fr *@0Fx6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 FF 2 FF 2 FF6@?FF"FFBFFrFP *   * AO" * &" @ rF) @ F~R  r @Frr @Frr @ Fr @0Fx6 6" 6B 6 66"6B66*6"*6B*r*@Frr*@Frr*@ Fr *@0Fx6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 FF 2 FF 2 FF6@?FF"FFBFFrFP     AO"  &" @ rF) @ F~R V r @Frr @Frr @ Fr @0Fx6 6" 6B 6 66"6B66*6"*6B*r*@Frr*@Frr*@ Fr *@0Fx6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 FF 2 FF 2 FF6@?FF"FFBFFrFP     AO"  &" @ rF) @ F~R  r @Frr @Frr @ Fr @0Fx6 6" 6B 6 66"6B66*6"*6B*r*@Frr*@Frr*@ Fr *@0Fx6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 FF 2 FF 2 FF6@?FF"FFBFFrF>@AbatchMainInPlaceComputeSkinInPlaceCBufferinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6 inMatricesinOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices6,DXBCttuV`~}t,,<LISGNOSGNSHEX|,P jYF pppppppp@_h @P *   * AO" * &" @rF# B @@ r*F) @ F~ r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6 6" 6B 6 6*6"*6B*r:@Frr:@Frr:@ Fr :@0Fx6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 FF 2 F F 2 FF6@?FF"FFBFFFF"FFBFFrFr*FP     AO"  &" @rF# B @@ r*F) @ F~V r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6 6" 6B 6 6*6"*6B*r:@Frr:@Frr:@ Fr :@0Fx6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 FF 2 F F 2 FF6@?FF"FFBFFFF"FFBFFrFr*FP     AO"  &" @rF# B @@ r*F) @ F~ r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6 6" 6B 6 6*6"*6B*r:@Frr:@Frr:@ Fr :@0Fx6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 FF 2 F F 2 FF6@?FF"FFBFFFF"FFBFFrFr*FP :   : AO" : &" @rF# B @@ r*F) @ F~ r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6 6" 6B 6 6*6"*6B*r:@Frr:@Frr:@ Fr :@0Fx6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 FF 2 F F 2 FF6@?FF"FFBFFFF"FFBFFrFr*FP *   * AO" * &" @rF# B @@ r*F) @ F~ r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6 6" 6B 6 6*6"*6B*r:@Frr:@Frr:@ Fr :@0Fx6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 FF 2 F F 2 FF6@?FF"FFBFFFF"FFBFFrFr*FP     AO"  &" @rF# B @@ r*F) @ F~V r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6 6" 6B 6 6*6"*6B*r:@Frr:@Frr:@ Fr :@0Fx6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 FF 2 F F 2 FF6@?FF"FFBFFFF"FFBFFrFr*FP     AO"  &" @rF# B @@ r*F) @ F~ r @Frr @Frr @ Fr @0Fx6 6" 6B 6 6 6" 6B 6 6*6"*6B*r:@Frr:@Frr:@ Fr :@0Fx6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 FF 2 F F 2 FF6@?FF"FFBFFFF"FFBFFrFr*F>@AbatchMainInPlaceComputeSkinInPlaceCBufferinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6 inMatricesinOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices62DXBC DQm 7^(2,<LISGNOSGNSHEX1Po jYF pppppppp@_h@P *   * AO" * &" @(rF#@((@ r*F:F) @ F~ r*@Frr*@Frr*@ Fr*@0Fx6 6" 6B 6 6 6" 6B 6 6*6"*6B*r:@Frr:@Frr:@ Fr :@0Fx6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 F F 2 F F 2 FF6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP     AO"  &" @(rF#@((@ r*F:F) @ F~V r*@Frr*@Frr*@ Fr*@0Fx6 6" 6B 6 6 6" 6B 6 6*6"*6B*r:@Frr:@Frr:@ Fr :@0Fx6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 F F 2 F F 2 FF6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP     AO"  &" @(rF#@((@ r*F:F) @ F~ r*@Frr*@Frr*@ Fr*@0Fx6 6" 6B 6 6 6" 6B 6 6*6"*6B*r:@Frr:@Frr:@ Fr :@0Fx6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 F F 2 F F 2 FF6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP :   : AO" : &" @(rF#@((@ r*F:F) @ F~ r*@Frr*@Frr*@ Fr*@0Fx6 6" 6B 6 6 6" 6B 6 6*6"*6B*r:@Frr:@Frr:@ Fr :@0Fx6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 F F 2 F F 2 FF6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP *   * AO" * &" @(rF#@((@ r*F:F) @ F~ r*@Frr*@Frr*@ Fr*@0Fx6 6" 6B 6 6 6" 6B 6 6*6"*6B*r:@Frr:@Frr:@ Fr :@0Fx6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 F F 2 F F 2 FF6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP     AO"  &" @(rF#@((@ r*F:F) @ F~V r*@Frr*@Frr*@ Fr*@0Fx6 6" 6B 6 6 6" 6B 6 6*6"*6B*r:@Frr:@Frr:@ Fr :@0Fx6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 F F 2 F F 2 FF6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP     AO"  &" @(rF#@((@ r*F:F) @ F~ r*@Frr*@Frr*@ Fr*@0Fx6 6" 6B 6 6 6" 6B 6 6*6"*6B*r:@Frr:@Frr:@ Fr :@0Fx6 6" 6B 6  8 VF 6 6" 6B 6  8 VF 6 *6" *6B *8VF 2 F F 2 F F 2 FF6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::F>@AbatchMainInPlaceComputeSkinInPlaceCBufferinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6 inMatricesinOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices6EDXBClMKeJE,<LISGNOSGNSHEX4EPMjYF pppppppp@_h @P *   * AO" * &" @ rF)B @*F~ @@ @ F~F  @yr @Frr @ Fr @0Fx6 6" 6B 6 6*6"6B66:6"*6B*@yr@Frr@ Fr @0Fx6 6" 6B 6  8 VF 6 *6" 6B 6  8 VF 6 :6" *6B *8VF 2 FF 2 FF 2 FF*@yr*@Frr*@ Fr *@0Fx6 6" 6B 6  6 *6" 6B 6  6 :6" *6B *2 F F2 F F2 F F:@yr:@Frr:@ Fr:@0Fx6 6" 6B 6 6 *6" 6B 6 6:6"*6B*2 FF2 F F2 FF6@?FF"FFBFFrFP     AO"  &" @ rF)B @*F~ @@ @ F~FV  @yr @Frr @ Fr @0Fx6 6" 6B 6 6*6"6B66:6"*6B*@yr@Frr@ Fr @0Fx6 6" 6B 6  8 VF 6 *6" 6B 6  8 VF 6 :6" *6B *8VF 2 FF 2 FF 2 FF*@yr*@Frr*@ Fr *@0Fx6 6" 6B 6  6 *6" 6B 6  6 :6" *6B *2 F F2 F F2 F F:@yr:@Frr:@ Fr:@0Fx6 6" 6B 6 6 *6" 6B 6 6:6"*6B*2 FF2 F F2 FF6@?FF"FFBFFrFP     AO"  &" @ rF)B @*F~ @@ @ F~F  @yr @Frr @ Fr @0Fx6 6" 6B 6 6*6"6B66:6"*6B*@yr@Frr@ Fr @0Fx6 6" 6B 6  8 VF 6 *6" 6B 6  8 VF 6 :6" *6B *8VF 2 FF 2 FF 2 FF*@yr*@Frr*@ Fr *@0Fx6 6" 6B 6  6 *6" 6B 6  6 :6" *6B *2 F F2 F F2 F F:@yr:@Frr:@ Fr:@0Fx6 6" 6B 6 6 *6" 6B 6 6:6"*6B*2 FF2 F F2 FF6@?FF"FFBFFrFP :   : AO" : &" @ rF)B @*F~ @@ @ F~F  @yr @Frr @ Fr @0Fx6 6" 6B 6 6*6"6B66:6"*6B*@yr@Frr@ Fr @0Fx6 6" 6B 6  8 VF 6 *6" 6B 6  8 VF 6 :6" *6B *8VF 2 FF 2 FF 2 FF*@yr*@Frr*@ Fr *@0Fx6 6" 6B 6  6 *6" 6B 6  6 :6" *6B *2 F F2 F F2 F F:@yr:@Frr:@ Fr:@0Fx6 6" 6B 6 6 *6" 6B 6 6:6"*6B*2 FF2 F F2 FF6@?FF"FFBFFrFP *   * AO" * &" @ rF)B @*F~ @@ @ F~F  @yr @Frr @ Fr @0Fx6 6" 6B 6 6*6"6B66:6"*6B*@yr@Frr@ Fr @0Fx6 6" 6B 6  8 VF 6 *6" 6B 6  8 VF 6 :6" *6B *8VF 2 FF 2 FF 2 FF*@yr*@Frr*@ Fr *@0Fx6 6" 6B 6  6 *6" 6B 6  6 :6" *6B *2 F F2 F F2 F F:@yr:@Frr:@ Fr:@0Fx6 6" 6B 6 6 *6" 6B 6 6:6"*6B*2 FF2 F F2 FF6@?FF"FFBFFrFP     AO"  &" @ rF)B @*F~ @@ @ F~FV  @yr @Frr @ Fr @0Fx6 6" 6B 6 6*6"6B66:6"*6B*@yr@Frr@ Fr @0Fx6 6" 6B 6  8 VF 6 *6" 6B 6  8 VF 6 :6" *6B *8VF 2 FF 2 FF 2 FF*@yr*@Frr*@ Fr *@0Fx6 6" 6B 6  6 *6" 6B 6  6 :6" *6B *2 F F2 F F2 F F:@yr:@Frr:@ Fr:@0Fx6 6" 6B 6 6 *6" 6B 6 6:6"*6B*2 FF2 F F2 FF6@?FF"FFBFFrFP     AO"  &" @ rF)B @*F~ @@ @ F~F  @yr @Frr @ Fr @0Fx6 6" 6B 6 6*6"6B66:6"*6B*@yr@Frr@ Fr @0Fx6 6" 6B 6  8 VF 6 *6" 6B 6  8 VF 6 :6" *6B *8VF 2 FF 2 FF 2 FF*@yr*@Frr*@ Fr *@0Fx6 6" 6B 6  6 *6" 6B 6  6 :6" *6B *2 F F2 F F2 F F:@yr:@Frr:@ Fr:@0Fx6 6" 6B 6 6 *6" 6B 6 6:6"*6B*2 FF2 F F2 FF6@?FF"FFBFFrF>@AbatchMainInPlaceComputeSkinInPlaceCBufferinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6 inMatricesinOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices6JDXBCH$Նw' l)3̈́J,<LISGNOSGNSHEX@AbatchMainInPlaceComputeSkinInPlaceCBufferinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6 inMatricesinOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices6ODXBC3Q\/ʯ^tpV:O,<LISGNOSGNSHEX|OPjYF pppppppp@_h@P *   * AO" * &" @(rF#@((@ r*F:F) @:F~ @@ @ F~F r @Frr @Frr @ Fr @0Fx6 6" 6B 6  6 6" 6B 6  6 *6" *6B *r@Frr@Frr@ Fr @0Fx6 6" 6B 6  8 VF 66"6B6 8VF6 *6" *6B *8VF 2 F F 2 F F2 F Fr *@Frr *@Frr *@ Fr *@0Fx6  6"  6B  6  6 6" 6B 6 6 * 6" * 6B * 2 F F2 F F2 F Fr:@Frr:@Frr :@ Fr :@0Fx6 6" 6B  6  6 6" 6B  6  6 *6" *6B * 2 F F2 F F2 F F6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP     AO"  &" @(rF#@((@ r*F:F) @:F~ @@ @ F~FV r @Frr @Frr @ Fr @0Fx6 6" 6B 6  6 6" 6B 6  6 *6" *6B *r@Frr@Frr@ Fr @0Fx6 6" 6B 6  8 VF 66"6B6 8VF6 *6" *6B *8VF 2 F F 2 F F2 F Fr *@Frr *@Frr *@ Fr *@0Fx6  6"  6B  6  6 6" 6B 6 6 * 6" * 6B * 2 F F2 F F2 F Fr:@Frr:@Frr :@ Fr :@0Fx6 6" 6B  6  6 6" 6B  6  6 *6" *6B * 2 F F2 F F2 F F6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP     AO"  &" @(rF#@((@ r*F:F) @:F~ @@ @ F~F r @Frr @Frr @ Fr @0Fx6 6" 6B 6  6 6" 6B 6  6 *6" *6B *r@Frr@Frr@ Fr @0Fx6 6" 6B 6  8 VF 66"6B6 8VF6 *6" *6B *8VF 2 F F 2 F F2 F Fr *@Frr *@Frr *@ Fr *@0Fx6  6"  6B  6  6 6" 6B 6 6 * 6" * 6B * 2 F F2 F F2 F Fr:@Frr:@Frr :@ Fr :@0Fx6 6" 6B  6  6 6" 6B  6  6 *6" *6B * 2 F F2 F F2 F F6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP :   : AO" : &" @(rF#@((@ r*F:F) @:F~ @@ @ F~F r @Frr @Frr @ Fr @0Fx6 6" 6B 6  6 6" 6B 6  6 *6" *6B *r@Frr@Frr@ Fr @0Fx6 6" 6B 6  8 VF 66"6B6 8VF6 *6" *6B *8VF 2 F F 2 F F2 F Fr *@Frr *@Frr *@ Fr *@0Fx6  6"  6B  6  6 6" 6B 6 6 * 6" * 6B * 2 F F2 F F2 F Fr:@Frr:@Frr :@ Fr :@0Fx6 6" 6B  6  6 6" 6B  6  6 *6" *6B * 2 F F2 F F2 F F6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP *   * AO" * &" @(rF#@((@ r*F:F) @:F~ @@ @ F~F r @Frr @Frr @ Fr @0Fx6 6" 6B 6  6 6" 6B 6  6 *6" *6B *r@Frr@Frr@ Fr @0Fx6 6" 6B 6  8 VF 66"6B6 8VF6 *6" *6B *8VF 2 F F 2 F F2 F Fr *@Frr *@Frr *@ Fr *@0Fx6  6"  6B  6  6 6" 6B 6 6 * 6" * 6B * 2 F F2 F F2 F Fr:@Frr:@Frr :@ Fr :@0Fx6 6" 6B  6  6 6" 6B  6  6 *6" *6B * 2 F F2 F F2 F F6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP     AO"  &" @(rF#@((@ r*F:F) @:F~ @@ @ F~FV r @Frr @Frr @ Fr @0Fx6 6" 6B 6  6 6" 6B 6  6 *6" *6B *r@Frr@Frr@ Fr @0Fx6 6" 6B 6  8 VF 66"6B6 8VF6 *6" *6B *8VF 2 F F 2 F F2 F Fr *@Frr *@Frr *@ Fr *@0Fx6  6"  6B  6  6 6" 6B 6 6 * 6" * 6B * 2 F F2 F F2 F Fr:@Frr:@Frr :@ Fr :@0Fx6 6" 6B  6  6 6" 6B  6  6 *6" *6B * 2 F F2 F F2 F F6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::FP     AO"  &" @(rF#@((@ r*F:F) @:F~ @@ @ F~F r @Frr @Frr @ Fr @0Fx6 6" 6B 6  6 6" 6B 6  6 *6" *6B *r@Frr@Frr@ Fr @0Fx6 6" 6B 6  8 VF 66"6B6 8VF6 *6" *6B *8VF 2 F F 2 F F2 F Fr *@Frr *@Frr *@ Fr *@0Fx6  6"  6B  6  6 6" 6B 6 6 * 6" * 6B * 2 F F2 F F2 F Fr:@Frr:@Frr :@ Fr :@0Fx6 6" 6B  6  6 6" 6B  6  6 *6" *6B * 2 F F2 F F2 F F6@?FF"FFBFFFF"FFBFFFF"FFBFFrFr*F6::F>@A$Globals g_VertCountComputeSkinCBufferp g_VertCountsg_BatchOffsets  g_PoseOffsets@ComputeSkinInPlaceCBufferp g_VertCountsg_BatchOffsets  g_PoseOffsets@(mainCGlobals inMatricesinSkin inVertices outVertices# < GLSL.std.450main @mainu_xlatb0 gl_GlobalInvocationIDCGlobalsg_VertCount u_xlat0#inVertices_type#value%inVertices%inVertices_buf'>u_xlatu1AinSkin_typeAvalueCinSkinCinSkin_bufEKu_xlati12Pu_xlatu12Tu_xlat2\u_xlat3au_xlat4gu_xlatu_loop_1qu_xlatu34uu_xlatu5yu_xlat5u_xlati34u_xlat16inMatrices_typevalueinMatricesinMatrices_bufu_xlat6u_xlat7u_xlat8u_xlat9u_xlat10u_xlat1 outVertices_origX0X_typevalueoutVertices_origX0X outVertices_origX0X_buf.u_xlat_precise_vec41u_xlat_precise_ivec44u_xlat_precise_bvec47u_xlat_precise_uvec48u_xlatu239u_xlatb34G H#GG"G!G"H##G$ H%H%#G%G'"G'!G@HA#GBHCHC#GCGE"GE!GH#G@HH#GG"G!GH#G H#GG"G!G; ! ;     ; +   ; +    ; + !" !#"$#%$ &%;&'+/+59 = ;=>+ ?@ ?A@BACB DC;DE J;JK;=P;T+U V+ Y;\;a f ;=q;=u+ w;Vy+}7;J+ 9; w ;;+++;++ + ;+ + +;;+?; ! ; -/ 0/2 325  65;=8;9+ :@, ;:??6;fg;-.;01;34;67A = A= >=A( = )(A*')= +*|,+A- = .-A0'./= 10|21A3 = 43A6'45= 76|87P9:,28=; O <;:> <AF = GFAHEG= IH>>IAL = ML|NMON/>KO=QKAREQ= SR>PSAVWT >WUAVXT?>XUAVZTY>ZUAV[T!>[UAV]\ >]UAV^\?>^UAV_\Y>_UAV`\!>`UAVba >bUAVca?>cUAVdaY>dUAVea!>eU= h>>ghiiklmm= ng= oPpnopjkj= rgAsEr= ts>qt= vq xvw>ux= zup{z>y{=|y~|}>y~= q |>=A= |=A/= |=A5= |P9>=A= |=A= |=A= |P9>=A= |=A= |=A= |P9>=A= |=A= |=A= |P9=O >AV =AV >AV =AV?>AV =AVY>AV =AV!>AV?=AV >AV?=AV?>AV?=AVY>AV?=AV!>AVY=AV >AVY=AV?>AVY=AVY>==yP=T>T==yP=\>\==yP=a>all= g />gikAV !>=T=    AV  >  = \=    AV?>=a= AVY>A = AV =| A>A  = ! AV"?=#"| $#A%!/>%$A& = '&AV(Y=)(| *)A+'5>+*8@AmainCGlobals inMatricesinSkin inVertices outVertices %# z GLSL.std.450main @mainu_xlatb0 gl_GlobalInvocationIDCGlobalsg_VertCount u_xlat0#inVertices_type#value%inVertices%inVertices_buf'Bu_xlat1Tu_xlatu37WinSkin_typeWvalueYinSkinYinSkin_buf[au_xlati2fu_xlatu2ju_xlat3su_xlat4xu_xlat5~u_xlatu_loop_1u_xlatu26u_xlatu38u_xlat38u_xlati26u_xlat6inMatrices_typevalueinMatricesinMatrices_bufu_xlat7u_xlat8u_xlat9u_xlat10u_xlat11u_xlat2 AoutVertices_origX0X_typeAvalueCoutVertices_origX0X CoutVertices_origX0X_bufElu_xlat_precise_vec4ou_xlat_precise_ivec4ru_xlat_precise_bvec4uu_xlat_precise_uvec4vu_xlatu14wu_xlatb26G H#GG"G!G"H##G$H%H%#G%G'"G'!GVHW#GXHYHY#GYG["G[!GH#G@HH#GG"G!G@HA#GBHC#GCGE"GE!Gy ! ;     ; +   ; +    ; + !" !#"$#%$ &%;&'+/+5+;@ A@;AB+E+KO S ;ST+ UV UWVXWYX ZY;Z[ `;`a;Sf;j+k l+ o+ q;s;x } ;S;S+ ;l+7;`+ ;  ;;A+;A++ + ;+ + +;;;+ ?@ !A@BACB DC;DE km nmp qps  ts;Sv;w+ x@, yxUU6;}~;kl;no;qr;tuA = A= >=A( = )(A*')= +*|,+A- = .-A0'./= 10|21A3 = 43A6'45= 76|87A9 = :9A<':;= =<|>=P?,28>> ?AC = DCAF'DE= GF|HGAI = JIAL'JK= ML|NMPOPHN=@QBO@RQP>BRA\ = ]\A^[]= _^>T_Ab = cb|dced/>ae=gaAh[g= ih>fiAlmj >mkAlnjU>nkAlpjo>pkAlrjq>rkAlts >tkAlusU>ukAlvso>vkAlwsq>wkAlyx >ykAlzxU>zkAl{xo>{kAl|xq>|k= T>~= ~= f= ~A[= >=  >= p>=>=  |>=A= |=A/= |=A5= |P@=O >=AE= |=AK= |=A= |P@>=A= |=A= |=A= |P@>=A= |=A= |=A= |P@=O >Al =Al >Al =AlU>Al =Alo>Al =Alq>AlU=Al >AlU=AlU>AlU=Alo>AlU=Alq>Alo=Al >Alo=AlU>Alo=Alo>==P   = j   >j = =P =s>s==P=x>x= ~ />~= O@=O >Al!q>! ="j=#$"#Al% >%$=&s='(&'Al)U>)(=*x=+,*+Al-o>-,Al. q=/.Al0Bo>0/=1jO@211=@3B423Al5q>54=6sO@766=@8B978Al: >:9=;xO@<;;=@=B><=Al? U>?>AF = GFAlH =IH| JIAKEG>KJAL = MLAlNU=ON| POAQEM/>QPAR = SRAlTo=UT| VUAWES5>WVAX = YXAlZq=[Z| \[A]EY;>]\A^ = _^Al` =a`| baAcE_E>cbAd = edAlf U=gf| hgAiEeK>ih8@AmainCGlobals inMatricesinSkin inVertices outVertices&#  GLSL.std.450main @mainu_xlatb0 gl_GlobalInvocationIDCGlobalsg_VertCount u_xlat0#inVertices_type#value%inVertices%inVertices_buf'@u_xlat1Xu_xlatu2[inSkin_type[value]inSkin]inSkin_buf_eu_xlati14ju_xlatu14nu_xlat3wu_xlat4|u_xlat5u_xlatu_loop_1u_xlatu38u_xlatu6u_xlat6u_xlati38u_xlat18inMatrices_typevalueinMatricesinMatrices_bufu_xlat7u_xlat8u_xlat9u_xlat10u_xlat11 u_xlat2 IoutVertices_origX0X_typeIvalueKoutVertices_origX0X KoutVertices_origX0X_bufM}u_xlat_precise_vec4u_xlat_precise_ivec4u_xlat_precise_bvec4u_xlat_precise_uvec4u_xlatu26u_xlatb38G H#GG"G!G"H##G$H%H%#G%G'"G'!GZH[#G\H]H]#G]G_"G_!GH#G@HH#GG"G!GHHI#GJHK#GKGM"GM!G ! ;     ; +   ; +    ; + !" !#"$#%$ &%;&'+/+5+;;@+C+I+OS W ;WX+ YZ Y[Z\[]\ ^];^_ d;de;Wj;n+o p+ s+ u;w;|  ;W;W+ ;+7;d+ S;  ;;;++ + ;+ + +;;; +%?H !IHJIKJ LK;LM |~ ~   ;W;+ @, YY6;;|};;;A = A= >=A( = )(A*')= +*|,+A- = .-A0'./= 10|21A3 = 43A6'45= 76|87A9 = :9A<':;= =<|>=P?,28>> ?AA = BAAD'BC= ED|FEAG = HGAJ'HI= KJ|LKAM = NMAP'NO= QP|RQPSTFLR=U@O VUT>@VA` = a`Ab_a= cb>XcAf = gf|hgih/>ei=keAl_k= ml>jmApqn >qoAprnY>roAptns>toApvnu>voApxw >xoApywY>yoApzws>zoAp{wu>{oAp}| >}oAp~|Y>~oAp|s>oAp|u>o= X>= = j= A_= >=  >= pAp >Ap =Ap >=  |>=A= |=A/= |=A5= |PS>=AC= |=AI= |=AO= |PS>=A= |=A= |=A= |PS>=A= |=A= |=A= |PS=O >Ap =Ap >Ap =ApY>Ap =Aps>Ap =Apu>ApY=Ap >ApY=ApY>ApY=Aps>ApY=Apu>Aps=Ap >Aps=ApY>Ap s=  Ap s>  = = O    =n>n==O =w>w==O =|>|=  />=! OS"!!=# O $#"> $Ap& u>&%='n=( )'(Ap* >*)=+w=, -+,Ap.Y>.-=/|=0 1/0Ap2s>21Ap3 u=43Ap5@u>54=6nOS766=8@OS988:79Ap;u>;:=<wOS=<<=>@OS?>>@=?ApA >A@=B|OSCBB=D@OSEDDFCEApG Y>GFAN = ONApP =QP| RQASMO>SRAT = UTApVY=WV| XWAYMU/>YXAZ = [ZAp\s=]\| ^]A_M[5>_^A` = a`Apbu=cb| dcAeMa;>edApf@s=gfAph s>hgAi = jiApk =lk| mlAnMjC>nmAo = poApq Y=rq| srAtMpI>tsAu = vuApw s=xw| yxAzMvO>zy8@AmainCGlobals inMatricesinSkin inVertices outVertices+#  GLSL.std.450main @mainu_xlatb0 gl_GlobalInvocationIDCGlobalsg_VertCount u_xlat0#inVertices_type#value%inVertices%inVertices_buf'@u_xlat1Zu_xlat2lu_xlatu3oinSkin_typeovalueqinSkinqinSkin_bufsyu_xlati16~u_xlatu16u_xlat4u_xlat5u_xlat6u_xlatu_loop_1u_xlatu42u_xlatu7u_xlat7u_xlati42u_xlat20inMatrices_typevalueinMatricesinMatrices_bufu_xlat8u_xlat9u_xlat10u_xlat11 u_xlat123u_xlat3 soutVertices_origX0X_typesvalueuoutVertices_origX0X uoutVertices_origX0X_bufwu_xlat_precise_vec4u_xlat_precise_ivec4u_xlat_precise_bvec4u_xlat_precise_uvec4u_xlatu29u_xlatb42G H#GG"G!G"H##G$(H%H%#G%G'"G'!GnHo#GpHqHq#GqGs"Gs!GH#G@HH#GG"G!GrHs#Gt(Hu#GuGw"Gw!G ! ;     ; +   ; +    ; + ! " !#"$#%$ &%;&'+*+5+;;@+C+I+O+U;Z+]+c g k ;kl+ mn monpoqp rq;rs x;xy;k~;+ + + ;;  ;k;k+ ;+7;x+  ;  ;;;+ ;+ + +;; ;3+8?r !srtsut vu;vw     ;k;+ @, mm6;;;;;A = A= >=A( = )(A+')*= ,+|-,A. = /.A0'/= 10|21A3 = 43A6'45= 76|87A9 = :9A<':;= =<|>=P?-28>> ?AA = BAAD'BC= ED|FEAG = HGAJ'HI= KJ|LKAM = NMAP'NO= QP|RQAS = TSAV'TU= WV|XWPYFLRX>@YA[ = \[A^'\]= _^|`_Aa = baAd'bc= ed|fePgh`f=iZO jih>ZjAt = utAvsu= wv>lwAz = {z||{}|5>y}=yAs= >~A >Am>A>A>A >Am>A>A>A >Am>A>A>= l>= = ~= As= >=  >= pA >A =A >=  |>=A= |=A5= |=A;= |P>=AC= |=AI= |=AO= |P>=A]= |=Ac= |=A= |P>=A= |=A= |=A= |P=O >A =A >A =Am>A =A>A =A>A m=  A   >  A m= A m>Am=A >Am=A >A=A >A=Am>A=A>== O !  "!=#$"#>$=% =&O '&&(%'=)*()>*=+=,O -,,.+-=/0./>0= 1 215>2=4 O544=63O 765>37A93>98=:=;3<:;A= >=<=>=?3@>?AAm>A@=B=C3DBCAE>ED=F@OgGFF=H O IHG> I=JOKJJ=L OMLLNKMAO>ON=POQPP=R OSRRTQSAU3 >UT=VOWVV=X OYXXZWYA[3m>[Z=\@Og]\\=^ZO _^]>Z_=`Oa``=bZOcbbdacAe3>ed=fOgff=hZOihhjgiAk3>kj=lOmll=nZOonnpmoAqZ >qpAx = yxAz ={z| |{A}wy>}|A~ = ~Am=| Aw5>A = A=| Aw;>A = A=| Aw*>A = A3 =| AwC>A = A3m=| AwI>A = A3=| AwO>A = A3=| AwU>A = AZ =| Aw]>A = AZm=| Awc>8@AmainCGlobals inMatricesinSkin inVertices outVertices#  GLSL.std.450main @mainu_xlatb0 gl_GlobalInvocationIDCGlobalsg_VertCount u_xlat0#inVertices_type#value%inVertices%inVertices_buf'>u_xlati1AinSkin_typeAvalueCinSkinCinSkin_bufELu_xlat8OinMatrices_typeOvalueQinMatricesQinMatrices_bufSau_xlat2ru_xlat3u_xlat4u_xlat5u_xlat6 outVertices_origX0X_typevalueoutVertices_origX0X outVertices_origX0X_bufu_xlat_precise_vec4u_xlat_precise_ivec4u_xlat_precise_bvec4u_xlat_precise_uvec4G H#GG"G!G"H##G$ H%H%#G%G'"G'!G@HA#GBHCHC#GCGE"GE!GNHO#GP@HQHQ#GQGS"GS!GH#G H#GG"G!G ! ;     ; +   ; +    ; + !" !#"$#%$ &%;&'+/+59 =;=>+ ?@ ?A@BACB DC;DE K9;KL+ MN MONPOQP RQ;RS;Ka+c+h+m;Kr+t+y +~ ;+ + +; + +?; ! ;     + @, ??6;;;;A = A= >=A( = )(A*')= +*|,+A- = .-A0'./= 10|21A3 = 43A6'45= 76|87P9:,28=; O <;:> <AF = GFAHEG= IH|JI>>J=T>AUST= VU|WV=X>AYSX/= ZY|[Z=\>A]S\5= ^]|_^P9`W[_>L`=b>AdSbc= ed|fe=g>AiSgh= ji|kj=l>AnSlm= on|poP9qfkp>aq=s>AuSst= vu|wv=x>AzSxy= {z||{=}>AS}~= |P9w|>r=>AS= |=>AS= |=>AS= |P9=O >AL =A >Aa =A?>Ar =A>A =A!>A !>== A >AL?=A >Aa?=A?>Ar?=A>A?=A!>== A?>AL=A >Aa=A?>Ar=A>== A>A = A =| A>A = A?=| A/>A = A=| A5>8@AmainCGlobals inMatricesinSkin inVertices outVerticesh# - GLSL.std.450main @mainu_xlatb0 gl_GlobalInvocationIDCGlobalsg_VertCount u_xlat0#inVertices_type#value%inVertices%inVertices_buf'Bu_xlat1Tu_xlati31WinSkin_typeWvalueYinSkinYinSkin_buf[au_xlat2dinMatrices_typedvaluefinMatricesfinMatrices_bufhvu_xlat3u_xlat4u_xlat5u_xlat6u_xlat7u_xlat8u_xlat9 outVertices_origX0X_typevalueoutVertices_origX0X outVertices_origX0X_buf!u_xlat_precise_vec4$u_xlat_precise_ivec4'u_xlat_precise_bvec4*u_xlat_precise_uvec4G H#GG"G!G"H##G$H%H%#G%G'"G'!GVHW#GXHYHY#GYG["G[!GcHd#Ge@HfHf#GfGh"Gh!GH#GH#GG"G!G, ! ;     ; +   ; +    ; + !" !#"$#%$ &%;&'+/+5+;@ A@;AB+E+KO S;ST+ UV UWVXWYX ZY;Z[;Aa+ bc bdcedfe gf;gh;Av+;A++ + ;+ + +; + + ;+?;; ! ;  " #"% &%(  )(+ +@, ,+UU6; !;#$;&';)*A = A= >=A( = )(A*')= +*|,+A- = .-A0'./= 10|21A3 = 43A6'45= 76|87A9 = :9A<':;= =<|>=P?,28>> ?AC = DCAF'DE= GF|HGAI = JIAL'JK= ML|NMPOPHN=@QBO@RQP>BRA\ = ]\A^[]= _^|`_>T`=iTAjhi= kj|lk=mTAnhm/= on|po=qTArhq5= sr|tsP@ulpt>au=wTAxhwE= yx|zy={TA|h{K= }||~}=TAh= |P@z~>v=TAh= |=TAh= |=TAh= |P@>=TAh= |=TAh= |=TAh= |P@=O >Aa =A >Av =AU>A =A>A =A>= O@=O >A>==A >AaU=A >AvU=AU>AU=A>AU=A>==AU>Aa=A >Av=AU>A=A>==A>A =AB>=O@=@BA>=O@=@BA >=O@=@BA U>A = A =| A>A = AU=| A/>A = A =  |  A 5>  A  =  A=| A;>A = A =| AE>A = A U=| AK>8@AmainCGlobals inMatricesinSkin inVertices outVertices# = GLSL.std.450main @mainu_xlatb0 gl_GlobalInvocationIDCGlobalsg_VertCount u_xlat0#inVertices_type#value%inVertices%inVertices_buf'@u_xlat1Xu_xlati2[inSkin_type[value]inSkin]inSkin_buf_fu_xlat12iinMatrices_typeivaluekinMatriceskinMatrices_bufm{u_xlat3u_xlat4u_xlat5u_xlat6u_xlat7u_xlat8u_xlat9 outVertices_origX0X_typevalueoutVertices_origX0X outVertices_origX0X_buf1u_xlat_precise_vec44u_xlat_precise_ivec47u_xlat_precise_bvec4:u_xlat_precise_uvec4G H#GG"G!G"H##G$H%H%#G%G'"G'!GZH[#G\H]H]#G]G_"G_!GhHi#Gj@HkHk#GkGm"Gm!GH#GH#GG"G!G< ! ;     ; +   ; +    ; + !" !#"$#%$ &%;&'+/+5+;;@+C+I+OS W;WX+ YZ Y[Z\[]\ ^];^_ eS;ef+ gh gihjikj lk;lm;e{;e++ + ;+ + +; + + ;+?;; ! ; 02 325 658  98+ ;@, <;YY6;01;34;67;9:A = A= >=A( = )(A*')= +*|,+A- = .-A0'./= 10|21A3 = 43A6'45= 76|87A9 = :9A<':;= =<|>=P?,28>> ?AA = BAAD'BC= ED|FEAG = HGAJ'HI= KJ|LKAM = NMAP'NO= QP|RQPSTFLR=U@O VUT>@VA` = a`Ab_a= cb|dc>Xd=nXAomn= po|qp=rXAsmr/= ts|ut=vXAwmv5= xw|yxPSzquy>fz=|XA}m|C= ~}|~=XAmI= |=XAmO= |PS>{=XAm= |=XAm= |=XAm= |PS>=XAm= |=XAm= |=XAm= |PS=O >Af =A >A{ =AY>A =A>A =A>= OS=O >A>==A >AfY=A >A{Y=AY>AY=A>AY=A>==AY>Af=A >A{=AY>A=A>==A>A =A@>=OS=@OSA>=OS=@OSA >=OS=@OSA Y>A = A =| A>A = A Y=  |  A  />  A = A=| A5>A = A=| A;>A@=A >A = A = | ! A"C>"!A# = $#A% Y=&%| '&A($I>('A) = *)A+ =,+| -,A.*O>.-8@AmainCGlobals inMatricesinSkin inVertices outVertices<$# w GLSL.std.450main @mainu_xlatb0 gl_GlobalInvocationIDCGlobalsg_VertCount u_xlat0#inVertices_type#value%inVertices%inVertices_buf'@u_xlat1Zu_xlat2lu_xlati3oinSkin_typeovalueqinSkinqinSkin_bufs{u_xlat14~inMatrices_type~valueinMatricesinMatrices_bufu_xlat4u_xlat5u_xlat6u_xlat7u_xlat8u_xlat9u_xlat10u_xlat3 (outVertices_origX0X_type(value*outVertices_origX0X *outVertices_origX0X_buf,ku_xlat_precise_vec4nu_xlat_precise_ivec4qu_xlat_precise_bvec4tu_xlat_precise_uvec4G H#GG"G!G"H##G$(H%H%#G%G'"G'!GnHo#GpHqHq#GqGs"Gs!G}H~#G@HH#GG"G!G'H(#G)(H*#G*G,"G,!Gv ! ;     ; +   ; +    ; + ! " !#"$#%$ &%;&'+*+5+;;@+C+I+O+U;Z+]+c g k;kl+ mn monpoqp rq;rsy zy;z{+ |} |~}~ ;;z;z+ ;+ + +; + + ;+?;;;' !(')(*) +*;+, jl mlo por  sr+ u@, vumm6;jk;mn;pq;stA = A= >=A( = )(A+')*= ,+|-,A. = /.A0'/= 10|21A3 = 43A6'45= 76|87A9 = :9A<':;= =<|>=P?-28>> ?AA = BAAD'BC= ED|FEAG = HGAJ'HI= KJ|LKAM = NMAP'NO= QP|RQAS = TSAV'TU= WV|XWPYFLRX>@YA[ = \[A^'\]= _^|`_Aa = baAd'bc= ed|fePgh`f=iZO jih>ZjAt = utAvsu= wv|xw>lx=lA= |=lA5= |=lA;= |Py>{=lAC= |=lAI= |=lAO= |Py>=lA]= |=lAc= |=lA= |Py>=lA= |=lA= |=lA= |Py=O >A{ =A >A =Am>A =A>A =A>= Oy=O >A>==A >A{m=A >Am=Am>Am=A>Am=A>==Am>A{=A >A=Am>A=A>==A>=@Og= O > =Oy= OyA>=Oy= Oy A  >  = Oy   =  Oy   Am>=@Og=ZO >Z=Oy=ZOyA>=Oy=ZOyA > =!Oy"!!=#ZOy$##%"$A&Z >&%A- = .-A/ =0/| 10A2,.>21A3 = 43A5m=65| 76A8,45>87A9 = :9A;=<;| =<A>,:;>>=A? = @?AA=BA| CBAD,@*>DCAE = FEAG =HG| IHAJ,FC>JIAK = LKAMm=NM| ONAP,LI>POAQ = RQAS=TS| UTAV,RO>VUAW = XWAY=ZY| [ZA\,XU>\[A] = ^]A_Z =`_| a`Ab,^]>baAc = dcAeZm=fe| gfAh,dc>hg8@AmainCGlobals inMatricesinSkin inVertices outVerticesd(#  GLSL.std.450main @mainu_xlatb0 gl_GlobalInvocationIDCGlobalsg_VertCount u_xlat0#inVertices_type#value%inVertices%inVertices_buf'=u_xlat1@inSkin_type@valueBinSkinBinSkin_bufD[u_xlat2^inMatrices_type^value`inMatrices`inMatrices_bufbzu_xlat3u_xlat4u_xlat5u_xlat6u_xlat7(u_xlat8>u_xlat9Ou_xlat10 outVertices_origX0X_typevalueoutVertices_origX0X outVertices_origX0X_bufu_xlat_precise_vec4u_xlat_precise_ivec4u_xlat_precise_bvec4u_xlat_precise_uvec4G H#GG"G!G"H##G$ H%H%#G%G'"G'!G?H@#GAHBHB#GBGD"GD!G]H^#G_@H`H`#G`Gb"Gb!GH#G H#GG"G!G ! ;     ; +   ; +    ; + !" !#"$#%$ &%;&'+/+59;=+ >? >@?A@BA CB;CD+V;[+ \] \^]_^`_ a`;ab+ c d;z+~++;++ + ;+ + +;+ ;;(;>;O+? ! ;     + @, 6;;;;A = A= >=A( = )(A*')= +*|,+A- = .-A0'./= 10|21A3 = 43A6'45= 76|87P9:,28=; O <;:> <AE = FEAGDF= HG|IHAJ = KJALDK/= ML|NMAO = POAQDP5= RQ|SRAT = UTAWDUV= XW|YXPZINSY>=ZAde=c=fe|gfAhbg= ih|jiAdk=c=lk|mlAnbm/= on|poAdq=c=rq|srAtbs5= ut|vuP9wjpv=x[O yxw>[yAd{=c=|{|}|Ab}~= |Ad=c=|Ab= |Ad=c=|Ab= |P9=zO >zAd=c=|Ab= |Ad=c=|Ab= |Ad=c=|Ab= |P9=O >Ad=c=|Ab= |Ad=c=|Ab= |Ad=c=|Ab= |P9=O >Ad[ =Ad >Adz =Ad>Ad =Adc>Ad =Ad!>Ad[=Ad >Adz=Ad>Ad=Adc>Ad=Ad!>Ad[c=Ad >Adzc=Ad>Adc=Adc>Ad=!=|Ab= |Ad=!=|Ab/= |Ad=!=|Ab5= |P9=[O >[Ad=!=|Ab~= |Ad=!=|Ab= | Ad =!=  |  A b =  |P9 =zO >zAd=!=|Ab= |Ad=!=|Ab= |Ad=!= |! A"b!= #"|$#P9%$=&O '&%>'Ad)=!=*)|+*A,b+= -,|.-Ad/=!=0/|10A2b1= 32|43Ad5=!=65|76A8b7= 98|:9P9;.4:=<(O =<;>(=Ad?[ =@?AdA> >A@AdBz =CBAdD>>DCAdE =FEAdG>c>GFAdH( =IHAdJ>!>JI=K=O LKK=M>NLM>>NAdP[=QPAdRO >RQAdSz=TSAdUO>UTAdV=WVAdXOc>XWAdY(=ZYAd[O!>[Z=\=O ]\\=^O_]^>O_Ad`[c=a`Adb( >baAdczc=dcAde(>edAdfc=gfAdh(c>hg=i=O jii=k(ljk>[l=m=n=O onnpmo=q>rpq>zr=s=t=O uttvsu=wOxvw>x=y=z=O {zz|y{=}[~|}>=~Ad !>=z= Ad[ >== Ad[>=== Ad[c>A = Ad[ =| A>A = Ad[=| A/>A = Ad[c=| A5>8@AmainCGlobals inMatricesinSkin inVertices outVertices-#  GLSL.std.450main @mainu_xlatb0 gl_GlobalInvocationIDCGlobalsg_VertCount u_xlat0#inVertices_type#value%inVertices%inVertices_buf'Bu_xlat1Su_xlat2VinSkin_typeVvalueXinSkinXinSkin_bufZpu_xlat3sinMatrices_typesvalueuinMatricesuinMatrices_bufwu_xlat4u_xlat5u_xlat6u_xlat7u_xlat8<u_xlat9Ru_xlat10cu_xlat11 outVertices_origX0X_typevalueoutVertices_origX0X outVertices_origX0X_bufu_xlat_precise_vec4u_xlat_precise_ivec4u_xlat_precise_bvec4u_xlat_precise_uvec4G H#GG"G!G"H##G$H%H%#G%G'"G'!GUHV#GWHXHX#GXGZ"GZ!GrHs#Gt@HuHu#GuGw"Gw!GH#GH#GG"G!G ! ;     ; +   ; +    ; + !" !#"$#%$ &%;&'+/+5+;@ A@;AB+E+KO;S+ TU TVUWVXW YX;YZ;p+ qr qsrtsut vu;vw+ x y;+;++ + ;+ + +;+ + ;;<;R;c+? ! ;     + @, 6;;;;A = A= >=A( = )(A*')= +*|,+A- = .-A0'./= 10|21A3 = 43A6'45= 76|87A9 = :9A<':;= =<|>=P?,28>> ?AC = DCAF'DE= GF|HGAI = JIAL'JK= ML|NMPOPHN=@QBO@RQP>BRA[ = \[A]Z\= ^]|_^A` = a`AbZa/= cb|dcAe = feAgZf5= hg|ihAj = kjAlZk;= ml|nmPo_din>SoAyzSx={z||{A}w|= ~}|~AySx=|Aw/= |AySx=|Aw5= |P@=pO >pAySx=|AwE= |AySx=|AwK= |AySx=|Aw= |P@=O >AySx=|Aw= |AySx=|Aw= |AySx=|Aw= |P@=O >AySx=|Aw= |AySx=|Aw= |AySx=|Aw= |P@=O >Ayp =Ay >Ay =Ay>Ay =Ayx>Ay =Ay>Ayp=Ay >Ay=Ay>Ay=Ayx>Ay=Ay>Aypx=Ay >Ayx=Ay>Ayx=Ayx>AyS=|Aw= |AyS=|Aw/= |Ay S=  |  A w 5=  | P@=pO >pAyS=|AwE= |AyS=|AwK= |AyS=| A!w = "!|#"P@$#=%O &%$>&Ay'S=('|)(A*w)= +*|,+Ay-S=.-|/.A0w/= 10|21Ay3S=43|54A6w5= 76|87P@9,28=:O ;:9>;Ay=S=>=|?>A@w?= A@|BAAyCS=DC|EDAFwE= GF|HGAyIS=JI|KJALwK= ML|NMP@OBHN=P<O QPO><QAySp =TSAyUR >UTAyV =WVAyXR>XWAyY =ZYAy[Rx>[ZAy\< =]\Ay^R>^]=_SO `__=aRb`a>RbAydp=edAyfc >feAyg=hgAyic>ihAyj=kjAylcx>lkAym<=nmAyoc>on=pSO qpp=rcsqr>csAytpx=utAyv< >vuAywx=xwAyy<>yxAyzx={zAy|<x>|{=}SO ~}}=<~>p==SO =R>==SO =c>==SO =p>S= O@=pO >pAyp>==pAy >==pAy>=S=pAyx>Ay =AyBx>=O@=@BAy>=O@=@BAy >=SO@=@BAy >A = Ay =| A>A = Ay=| A/>A = Ayx=| A5>A = Ay=| A;>A = Ay =| AE>A = Ay =| AK>8@AmainCGlobals inMatricesinSkin inVertices outVertices/#  GLSL.std.450main @mainu_xlatb0 gl_GlobalInvocationIDCGlobalsg_VertCount u_xlat0#inVertices_type#value%inVertices%inVertices_buf'@u_xlat1Wu_xlat2ZinSkin_typeZvalue\inSkin\inSkin_buf^tu_xlat3winMatrices_typewvalueyinMatricesyinMatrices_buf{u_xlat4u_xlat5u_xlat6u_xlat7u_xlat8?u_xlat9Uu_xlat10fu_xlat11 outVertices_origX0X_typevalueoutVertices_origX0X outVertices_origX0X_bufu_xlat_precise_vec4u_xlat_precise_ivec4u_xlat_precise_bvec4u_xlat_precise_uvec4G H#GG"G!G"H##G$H%H%#G%G'"G'!GYHZ#G[H\H\#G\G^"G^!GvHw#Gx@HyHy#GyG{"G{!GH#GH#GG"G!G ! ;     ; +   ; +    ; + !" !#"$#%$ &%;&'+/+5+;;@+C+I+OS;W+ XY XZY[Z\[ ]\;]^;t+ uv uwvxwyx zy;z{+ | };;++ + ;+ + +;+ + ;;?;U;f+? ! ;     + @, 6;;;;A = A= >=A( = )(A*')= +*|,+A- = .-A0'./= 10|21A3 = 43A6'45= 76|87A9 = :9A<':;= =<|>=P?,28>> ?AA = BAAD'BC= ED|FEAG = HGAJ'HI= KJ|LKAM = NMAP'NO= QP|RQPSTFLR=U@O VUT>@VA_ = `_Aa^`= ba|cbAd = edAf^e/= gf|hgAi = jiAk^j5= lk|mlAn = onAp^o;= qp|rqPschmr>WsA}~W|=~|A{= |A}W|=|A{/= |A}W|=|A{5= |PS=tO >tA}W|=|A{C= |A}W|=|A{I= |A}W|=|A{O= |PS=O >A}W|=|A{= |A}W|=|A{= |A}W|=|A{= |PS=O >A}W|=|A{= |A}W|=|A{= |A}W|=|A{= |PS=O >A}t =A} >A} =A}>A} =A}|>A} =A}>A}t=A} >A}=A}>A}=A}|>A}=A}>A}t|=A} >A}|=A}>A}|=A}|>A}W=|A{= |A}W=|A {/=  |  A} W=  | A{5= |PS =tO >tA}W=|A{C= |A}W=|A{I= | A}!W="!|#"A${#O= %$|&%PS' &=(O )('>)A}*W=+*|,+A-{,= .-|/.A}0W=10|21A3{2= 43|54A}6W=76|87A9{8= :9|;:PS</5;==O >=<>>A}@W=A@|BAAC{B= DC|EDA}FW=GF|HGAI{H= JI|KJA}LW=ML|NMAO{N= PO|QPPSREKQ=S?O TSR>?TA}Vt =WVA}XU >XWA}Y =ZYA}[U>[ZA}\ =]\A}^U|>^]A}_? =`_A}aU>a`=bWO cbb=dUecd>UeA}gt=hgA}if >ihA}j=kjA}lf>lkA}m=nmA}of|>onA}p?=qpA}rf>rq=sWO tss=ufvtu>fvA}wt|=xwA}y? >yxA}z|={zA}|?>|{A}}|=~}A}?|>~=WO =?>t==WO =U>==WO =f>==WO =t>W= OS=tO >tA}t>==tA} >==tA}>=W=tA}|>A} =A}@>=OS=@OSA}>=OS=@OSA} >=WOS=@OSA} >A = A} =| A>A = A}=| A/>A = A}|=| A5>A = A}=| A;>A}@|=A} |>A = A} =| AC>A = A} =| AI>A = A} |=| AO>8@AmainCGlobals inMatricesinSkin inVertices outVertices@4# 7 GLSL.std.450main @mainu_xlatb0 gl_GlobalInvocationIDCGlobalsg_VertCount u_xlat0#inVertices_type#value%inVertices%inVertices_buf'@u_xlat1Zu_xlat2ku_xlat3ninSkin_typenvaluepinSkinpinSkin_bufru_xlat4inMatrices_typevalueinMatricesinMatrices_bufu_xlat5u_xlat6u_xlat7u_xlat8u_xlat9Ru_xlat10hu_xlat11yu_xlat12 outVertices_origX0X_typevalueoutVertices_origX0X outVertices_origX0X_buf+u_xlat_precise_vec4.u_xlat_precise_ivec41u_xlat_precise_bvec44u_xlat_precise_uvec4G H#GG"G!G"H##G$(H%H%#G%G'"G'!GmHn#GoHpHp#GpGr"Gr!GH#G@HH#GG"G!GH#G(H#GG"G!G6 ! ;     ; +   ; +    ; + ! " !#"$#%$ &%;&'+*+5+;;@+C+I+O+U;Z+]+c g;k+ lm lnmonpo qp;qr;+   ;+  ;;+ ;+ + +;+ + ;;R;h;y+? ! ; *, -,/ 0/2  32+ 5@, 656;*+;-.;01;34A = A= >=A( = )(A+')*= ,+|-,A. = /.A0'/= 10|21A3 = 43A6'45= 76|87A9 = :9A<':;= =<|>=P?-28>> ?AA = BAAD'BC= ED|FEAG = HGAJ'HI= KJ|LKAM = NMAP'NO= QP|RQAS = TSAV'TU= WV|XWPYFLRX>@YA[ = \[A^'\]= _^|`_Aa = baAd'bc= ed|fePgh`f=iZO jih>ZjAs = tsAurt= vu|wvAx = yxAzry5= {z||{A} = ~}Ar~;= |A = Ar*= |Pw|>kAk=|A= |Ak=|A5= |Ak=|A;= |P=O >Ak=|AC= |Ak=|AI= |Ak=|AO= |P=O >Ak=|A]= |Ak=|Ac= |Ak=|A= |P=O >Ak=|A= |Ak=|A= |Ak=|A= |P=O >A =A >A =A>A =A>A =A>A=A >A=A>A=A>A=A > A =  A  >  A = A>A=A>Ak=|A= |Ak=|A5= |Ak= |! A"!;= #"|$#P%$=&O '&%>'A(k=)(|*)A+*C= ,+|-,A.k=/.|0/A10I= 21|32A4k=54|65A76O= 87|98P:-39=;O <;:><A=k=>=|?>A@?]= A@|BAACk=DC|EDAFEc= GF|HGAIk=JI|KJALK= ML|NMPOBHN=PO QPO>QASk=TS|UTAVU= WV|XWAYk=ZY|[ZA\[= ]\|^]A_k=`_|a`Aba= cb|dcPeX^d=fRO gfe>RgAi =jiAkh >kjAl =mlAnh>nmAo =poAqh>qpArR =srAth>ts=ukO vuu=whxvw>hxAz={zA|y >|{A}=~}Ay>~A=Ay>AR=Ay>=kO =y>yA=AR >A=AR>A=AR>=kO =R>==kO =h>==kO =y>==kO =>k= O=O >A>==A >==A>=k=A>=@Og= O > =O= OA>=O= OA >=kO= OA>=@Og=ZO >Z=O=ZOA>=O=ZOA>=kO=ZOAZ >A = A =| A>A = A=| A5>A = A=| A;>A = A=| A*>A = A =| A C>  A  =  A = | A I>A = A=| AO>A = A=| AU>A = AZ = | ! A"]>"!A# = $#A%Z=&%| '&A($c>('8@AmainCGlobals inMatricesinSkin inVertices outVertices<>#  GLSL.std.450main @mainu_xlatb0 gl_GlobalInvocationIDCGlobalsg_VertCount u_xlat0#inVertices_type#value%inVertices%inVertices_buf'=u_xlat1@inSkin_type@valueBinSkinBinSkin_bufD]u_xlati2wu_xlat3zinMatrices_typezvalue|inMatrices|inMatrices_buf~u_xlat4u_xlat5u_xlat6u_xlat7u_xlat8-u_xlat9@u_xlat10Qu_xlat11u_xlat2 outVertices_origX0X_typevalueoutVertices_origX0X outVertices_origX0X_bufu_xlat_precise_vec4u_xlat_precise_ivec4u_xlat_precise_bvec4u_xlat_precise_uvec4G H#GG"G!G"H##G$ H%H%#G%G'"G'!G?H@#GA HBHB#GBGD"GD!GyHz#G{@H|H|#G|G~"G~!GH#G H#GG"G!G ! ;     ; +   ; +    ; + !" !#"$#%$ &%;&'+/+59;=+ >? >@?A@BA CB;CD+V[ \[;\]+`+f+l+r;w+ xy xzy{z|{ }|;}~ ;;++ + ;+ + +; + + ;;-;@;Q;+x? ! ;  [   + @, 6;;;;A = A= >=A( = )(A*')= +*|,+A- = .-A0'./= 10|21A3 = 43A6'45= 76|87P9:,28=; O <;:> <AE = FEAGDF= HG|IHAJ = KJALDK/= ML|NMAO = POAQDP5= RQ|SRAT = UTAWDUV= XW|YXPZINSY>=ZA^ = _^AaD_`= ba|cbAd = edAgDef= hg|ihAj = kjAmDkl= nm|onAp = qpAsDqr= ts|utP[vciou>]vA] =A~= |A] =A~/= |A] =A~5= |P9=wO >wA] =A~`= |A] =A~f= |A] =A~l= |P9=O >A] =A~= |A] =A~= |A] =A~= |P9=O >A] =A~= |A] =A~= |A] =A~= |P9=O >Aw =A >A =A>A =A>A =A!>Aw=A >A=A>A=A>A=A!>Aw=A >A=A>A=A>A]=A~= |A]=A~/= |A]=A~5= |P9=wO >wA ]=  A ~ `=  |  A]=A~f= |A]=A~l= |P9 =O >A]=A~= |A ]=! A"~!= #"|$#A%]=&%A'~&= ('|)(P9*$)=+O ,+*>,A.]=/.A0~/= 10|21A3]=43A5~4= 65|76A8]=98A:~9= ;:|<;P9=27<=>-O ?>=>-?AAw =BAAC@ >CBAD =EDAF@>FEAG =HGAI@>IHAJ- =KJAL@!>LK=M=O NMM=O@PNO>@PARw=SRATQ >TSAU=VUAWQ>WVAX=YXAZQ>ZYA[-=\[A]Q!>]\=^=O _^^=`Qa_`>QaAbw=cbAd- >dcAe=feAg->gfAh=ihAj->ji=k=O lkk=m-nlm>wn=o=p=O qpproq=s@trs>t=u=v=O wvvxuw=yQzxy>z={=|=O }||~{}=w~>wA]=A~= |A]=A~/= |A]=A~5= |P9=O >A]=A~`= |A]=A~f= |A]=A~l= |P9=O >A]=A~= |A]=A~= |A]=A~= |P9=O >A]=A~= |A]=A~= |A]=A~= |P9=-O >-A =A@ >A =A@>A =A@>A- =A@!>A=AQ >A=AQ>A=AQ>A-=AQ!>A=A- >A=A->A=A->=@==O =>=Q==O =>=-==O =w>wA]!=A~= |A]!=A~/= |A]!=A~5= |  P9  = =O    >= A]!=A~`= |A]!=A~f= |A]!=A~l= |P9=O  > A!]!="!A#~"= $#|%$A&]!='&A(~'= )(|*)A+]!=,+A-~,= .-|/.P90%*/=1O 210>2A3]!=43A5~4= 65|76A8]!=98A:~9= ;:|<;A=]!=>=A?~>= @?|A@P9B7<A=CO DCB>DAE= =FEAG >GFAH =IHAJ>JIAK =LKAM>MLAN =ONAP!>POAQ==RQAS- >SRAT=UTAV->VUAW=XWAY->YXAZ=[ZA\-!>\[A]==^]A_ >_^A`=a`Ab>baAc=dcAe>ed=f=g=O hggifh=jkij>k=l-=m=O nmmoln=pqop>q=r=s=O tssurt=vwwuv>=wAy !>yx=z={ |z{A} >}|=~= ~A>=== A>A = A =| A>A = A=| A/>A = A=| A5>8@AmainCGlobals inMatricesinSkin inVertices outVerticesxC#  GLSL.std.450main @mainu_xlatb0 gl_GlobalInvocationIDCGlobalsg_VertCount u_xlat0#inVertices_type#value%inVertices%inVertices_buf'Bu_xlat1Su_xlat2VinSkin_typeVvalueXinSkinXinSkin_bufZru_xlati3u_xlat4inMatrices_typevalueinMatricesinMatrices_bufu_xlat5u_xlat6u_xlat7u_xlat8u_xlat9Au_xlat10Tu_xlat11eu_xlat12"u_xlat3 outVertices_origX0X_typevalueoutVertices_origX0X outVertices_origX0X_bufu_xlat_precise_vec4u_xlat_precise_ivec4u_xlat_precise_bvec4u_xlat_precise_uvec4G H#GG"G!G"H##G$H%H%#G%G'"G'!GUHV#GW HXHX#GXGZ"GZ!GH#G@HH#GG"G!GH#GH#GG"G!G ! ;     ; +   ; +    ; + !" !#"$#%$ &%;&'+/+5+;@ A@;AB+E+KO;S+ TU TVUWVXW YX;YZp qp;qr++;+   ; ;;++ + ;+ + +; + + + ;;A;T;e;"+? ! ;  p   + @, 6;;;;A = A= >=A( = )(A*')= +*|,+A- = .-A0'./= 10|21A3 = 43A6'45= 76|87A9 = :9A<':;= =<|>=P?,28>> ?AC = DCAF'DE= GF|HGAI = JIAL'JK= ML|NMPOPHN=@QBO@RQP>BRA[ = \[A]Z\= ^]|_^A` = a`AbZa/= cb|dcAe = feAgZf5= hg|ihAj = kjAlZk;= ml|nmPo_din>SoAs = tsAuZtE= vu|wvAx = yxAzZyK= {z||{A} = ~}AZ~= |A = AZ= |Ppw|>rAr =A= |Ar =A/= |Ar =A5= |P@=O >Ar =AE= |Ar =AK= |Ar =A= |P@=O >Ar =A= |Ar =A= |Ar =A= |P@=O >Ar =A= |Ar =A= |Ar =A= |P@=O >A =A >A =A>A =A>A =A>A=A >A=A>A=A>A=A>A=A >A=A>A= A >  A r=  A  =  |Ar=A/= |Ar=A5= |P@=O >Ar=AE= |! A"r=#"A$#K= %$|&%A'r=('A)(= *)|+*P@,!&+=-O .-,>.A/r=0/A10= 21|32A4r=54A65= 76|87A9r=:9A;:= <;|=<P@>38==?O @?>>@ABr=CBADC= ED|FEAGr=HGAIH= JI|KJALr=MLANM= ON|POP@QFKP=RAO SRQ>ASAU =VUAWT >WVAX =YXAZT>ZYA[ =\[A]T>]\A^A =_^A`T>`_=aSO baa=cTdbc>TdAf=gfAhe >hgAi=jiAke>kjAl=mlAne>nmAoA=poAqe>qp=rSO srr=teust>euAv=wvAxA >xwAy=zyA{A>{zA|=}|A~A>~}=SO =A>==SO =T>==SO =e>==SO =>Ar=A= |Ar=A/= |Ar=A5= |P@=O >Ar=AE= |Ar=AK= |Ar=A= |P@=O >Ar=A= |Ar=A= |Ar=A= |P@=O >Ar=A= |Ar=A= |Ar=A= |P@=AO >AA =AT >A =AT>A =AT>AA =AT>A=Ae >A=Ae>A=Ae>AA=Ae>A=AA >A=AA>A=AA>=T=SO =>=e=SO = > = A= SO       = >Ar=A= |Ar=A/= |Ar=A5= |P@= SO ! >S!A#r=$#A%$E= &%|'&A(r=)(A*)K= +*|,+A-r=.-A/.= 0/|10P@2',1=3"O 432>"4A5r=65A76= 87|98A:r=;:A<;= =<|>=A?r=@?AA@= BA|CBP@D9>C=EO FED>FAGr=HGAIH= JI|KJALr=MLANM= ON|POAQr=RQASR= TS|UTP@VKPU=WO XWV>XAYS =ZYA[ >[ZA\" =]\A^>^]A_ =`_Aa>a`Ab =cbAd>dcAeS=feAgA >gfAh"=ihAjA>jiAk=lkAmA>mlAn=onApA>poAqS=rqAs >srAt"=utAv>vuAw=xwAy>yx=z={SO |{{}z|=~}~>"=A=SO =>==SO =>S= O@=O >A>="=A >==A>=S=A>A =AB>="O@=@BA>=O@=@BA >=SO@=@BA >A = A =| A>A = A=| A/>A = A=| A5>A = A=| A;>A = A =| AE>A = A =| AK>8@AmainCGlobals inMatricesinSkin inVertices outVerticesD#  GLSL.std.450main @mainu_xlatb0 gl_GlobalInvocationIDCGlobalsg_VertCount u_xlat0#inVertices_type#value%inVertices%inVertices_buf'@u_xlat1Wu_xlat2ZinSkin_typeZvalue\inSkin\inSkin_buf^vu_xlati3u_xlat4inMatrices_typevalueinMatricesinMatrices_bufu_xlat5u_xlat6u_xlat7u_xlat8u_xlat9Du_xlat10Wu_xlat11hu_xlat12%u_xlat3 outVertices_origX0X_typevalueoutVertices_origX0X outVertices_origX0X_bufu_xlat_precise_vec4u_xlat_precise_ivec4u_xlat_precise_bvec4u_xlat_precise_uvec4G H#GG"G!G"H##G$H%H%#G%G'"G'!GYHZ#G[ H\H\#G\G^"G^!GH#G@HH#GG"G!GH#GH#GG"G!G ! ;     ; +   ; +    ; + !" !#"$#%$ &%;&'+/+5+;;@+C+I+OS;W+ XY XZY[Z\[ ]\;]^t ut;uv+;+   ; ;;++ + ;+ + +; + + + ;;D;W;h;%+? ! ;  t   + @, 6;;;;A = A= >=A( = )(A*')= +*|,+A- = .-A0'./= 10|21A3 = 43A6'45= 76|87A9 = :9A<':;= =<|>=P?,28>> ?AA = BAAD'BC= ED|FEAG = HGAJ'HI= KJ|LKAM = NMAP'NO= QP|RQPSTFLR=U@O VUT>@VA_ = `_Aa^`= ba|cbAd = edAf^e/= gf|hgAi = jiAk^j5= lk|mlAn = onAp^o;= qp|rqPschmr>WsAw = xwAy^xC= zy|{zA| = }|A~^}I= ~|A = A^O= |A = A^= |Pt{>vAv =A= |Av =A/= |Av =A5= |PS=O >Av =AC= |Av =AI= |Av =AO= |PS=O >Av =A= |Av =A= |Av =A= |PS=O >Av =A= |Av =A= |Av =A= |PS=O >A =A >A =A>A =A>A =A>A=A >A=A>A=A>A=A>A=A >A= A >  A =  A >  Av=A= |Av=A/= |Av=A5= |PS=O >A v=! A"!C= #"|$#A%v=&%A'&I= ('|)(A*v=+*A,+O= -,|.-PS/$).=0O 10/>1A2v=32A43= 54|65A7v=87A98= :9|;:A<v==<A>== ?>|@?PSA6;@=BO CBA>CAEv=FEAGF= HG|IHAJv=KJALK= ML|NMAOv=POAQP= RQ|SRPSTINS=UDO VUT>DVAX =YXAZW >ZYA[ =\[A]W>]\A^ =_^A`W>`_AaD =baAcW>cb=dWO edd=fWgef>WgAi=jiAkh >kjAl=mlAnh>nmAo=poAqh>qpArD=srAth>ts=uWO vuu=whxvw>hxAy=zyA{D >{zA|=}|A~D>~}A=AD>=WO =D>==WO =W>==WO =h>==WO =>Av=A= |Av=A/= |Av=A5= |PS=O >Av=AC= |Av=AI= |Av=AO= |PS=O >Av=A= |Av=A= |Av=A= |PS=O >Av=A= |Av=A= |Av=A= |PS=DO >DA =AW >A =AW>A =AW>AD =AW>A=Ah >A=Ah>A=Ah>AD=Ah>A=AD >A=AD>A=AD>=W=WO =>=h=WO    =    > = D=WO  =>Av=A= |Av=A/= |Av=A5= |! PS"!=#WO $#">W$A&v='&A('C= )(|*)A+v=,+A-,I= .-|/.A0v=10A21O= 32|43PS5*/4=6%O 765>%7A8v=98A:9= ;:|<;A=v=>=A?>= @?|A@ABv=CBADC= ED|FEPSG<AF=HO IHG>IAJv=KJALK= ML|NMAOv=POAQP= RQ|SRATv=UTAVU= WV|XWPSYNSX=ZO [ZY>[A\W =]\A^ >^]A_% =`_Aa>a`Ab =cbAd>dcAe =feAg>gfAhW=ihAjD >jiAk%=lkAmD>mlAn=onApD>poAq=rqAsD>srAtW=utAv >vuAw%=xwAy>yxAz={zA|>|{=}=~WO ~~}=>%=D=WO =>==WO =>W= OS=O >A>=%=A >==A>=W=A>A =A@>=%OS=@OSA>=OS=@OSA >=WOS=@OSA >A = A =| A>A = A=| A/>A = A=| A5>A = A=| A;>A@=A >A = A =| AC>A = A =| AI>A = A =| AO>8@AmainCGlobals inMatricesinSkin inVertices outVerticesJ# . GLSL.std.450main @mainu_xlatb0 gl_GlobalInvocationIDCGlobalsg_VertCount u_xlat0#inVertices_type#value%inVertices%inVertices_buf'@u_xlat1Zu_xlat2ku_xlat3ninSkin_typenvaluepinSkinpinSkin_bufru_xlati4u_xlat5inMatrices_typevalueinMatricesinMatrices_bufu_xlat6u_xlat7u_xlat8u_xlat9 u_xlat10Vu_xlat11iu_xlat12zu_xlat137u_xlat4 outVertices_origX0X_typevalueoutVertices_origX0X outVertices_origX0X_buf#u_xlat_precise_vec4%u_xlat_precise_ivec4(u_xlat_precise_bvec4+u_xlat_precise_uvec4G H#GG"G!G"H##G$(H%H%#G%G'"G'!GmHn#Go HpHp#GpGr"Gr!GH#G@HH#GG"G!GH#G(H#GG"G!G- ! ;     ; +   ; +    ; + ! " !#"$#%$ &%;&'+*+5+;;@+C+I+O+U;Z+]+c g;k+ lm lnmonpo qp;qr ;;+   ; ;;+ ;+ + +; + + + ; ;V;i;z;7+? ! ; " $& '&)  *)+ ,@, -,6;"#;$%;'(;*+A = A= >=A( = )(A+')*= ,+|-,A. = /.A0'/= 10|21A3 = 43A6'45= 76|87A9 = :9A<':;= =<|>=P?-28>> ?AA = BAAD'BC= ED|FEAG = HGAJ'HI= KJ|LKAM = NMAP'NO= QP|RQAS = TSAV'TU= WV|XWPYFLRX>@YA[ = \[A^'\]= _^|`_Aa = baAd'bc= ed|fePgh`f=iZO jih>ZjAs = tsAurt= vu|wvAx = yxAzry5= {z||{A} = ~}Ar~;= |A = Ar*= |Pw|>kA = ArC= |A = ArI= |A = ArO= |A = ArU= |P>A =A= |A =A5= |A =A;= |P=O >A =AC= |A =AI= |A =AO= |P=O >A =A]= |A =Ac= |A =A= |P=O >A =A= |A =A= |A =A= |P=O >A =A >A =A>A =A>A =A > A =  A   >  A=A >A=A >A=A >A=A >A=A>A=A>A =! A"!= #"|$#A%=&%A'&5= ('|)(A*=+*A,+;= -,|.-P/$).=0O 10/>1A2=32A43C= 54|65A7=87A98I= :9|;:A<==<A>=O= ?>|@?PA6;@=BO CBA>CAD=EDAFE]= GF|HGAI=JIAKJc= LK|MLAN=ONAPO= QP|RQPSHMR=TO UTS>UAW=XWAYX= ZY|[ZA\=]\A^]= _^|`_Aa=baAcb= dc|edPf[`e=gVO hgf>VhAj =kjAli >lkAm =nmAoi>onAp =qpAri>rqAsV =tsAui>ut=vkO wvv=xiywx>iyA{=|{A}z >}|A~=~Az>A=Az>AV=Az>=kO =z>zA=AV >A=AV>A=AV>=kO =V>==kO =i>= =kO =z>==kO =>A=A= |A=A5= |A=A;= |P=O >A=AC= |A=AI= |A=AO= |P=O >A=A]= |A=Ac= |A=A= |P= O > A=A= |A=A= |A=A= |P=VO >VA =Ai >A =Ai>A  =Ai>AV =Ai>A=Az >A=Az>A =Az>AV=A z> A =  A V >  A = AV>A =AV>=i=kO =>=z=kO =>=V= kO !  "!=#$"#>$A%=&%A'&= ('|)(A*=+*A,+5= -,|.-A/=0/A10;= 21|32P4).3=5kO 654>k6A8=98A:9C= ;:|<;A==>=A?>I= @?|A@AB=CBADCO= ED|FEPG<AF=H7O IHG>7IAJ=KJALK]= ML|NMAO=POAQPc= RQ|SRAT=UTAVU= WV|XWPYNSX=ZO [ZY>[A\=]\A^]= _^|`_Aa=baAcb= dc|edAf=gfAhg= ih|jiPk`ej=lO mlk>mAnk =onAp  >poAq7 =rqAs >srAt =utAv >vuAw =xwAy >yxAzk={zA|V >|{A}7=~}AV>~A=AV>A=AV>Ak=A >A7=A>A=A>= =kO =>7=V=kO =>==kO =>k= O=O >A>=7=A >==A>=k=A>=@Og= O > =7O= OA>=O= OA >=kO= OA>=@Og=ZO >Z=7O=ZOA>=O=ZOA>=kO=ZOAZ >A = A =| A>A = A=| A5>A = A=| A;>A = A=| A*>A = A =| AC>A = A=| AI>A  =  A =  |  A O> A = A=| AU>A = AZ =| A]>A = AZ=| A c> 8@A batchMainComputeSkinCBuffer inMatrices inSkin0inSkin1inSkin2inSkin3inSkin4 inVertices0 inVertices1 inVertices2 inVertices3 inVertices4 outVertices0  outVertices1  outVertices2  outVertices3 outVertices4~#  GLSL.std.450main @mainu_xlatb0 gl_GlobalInvocationIDComputeSkinCBufferg_VertCountsg_BatchOffsetsg_PoseOffsets g_poseBufferMaxIndex#u_xlatu0*u_xlatb126u_xlat19inVertices4_type9value;inVertices4;inVertices4_buf=Ou_xlatu12RinSkin4_typeRvalueTinSkin4TinSkin4_bufV[u_xlati24_u_xlatu24cu_xlat2ju_xlat3ou_xlat4uu_xlatu_loop_1u_xlatu5u_xlatu17u_xlat17u_xlati5u_xlat6inMatrices_typevalueinMatricesinMatrices_bufu_xlat7u_xlat8u_xlat9u_xlat10u_xlat11 'outVertices4_origX4X_type'value)outVertices4_origX4X )outVertices4_origX4X_buf+RinVertices3_typeRvalueTinVertices3TinVertices3_bufVginSkin3_typegvalueiinSkin3iinSkin3_bufku_xlatu_loop_2 outVertices3_origX3X_typevalueoutVertices3_origX3X outVertices3_origX3X_buf@inVertices2_type@valueBinVertices2BinVertices2_bufDUinSkin2_typeUvalueWinSkin2WinSkin2_bufYou_xlatu_loop_3 outVertices2_origX2X_typevalueoutVertices2_origX2X outVertices2_origX2X_buf.inVertices1_type.value0inVertices10inVertices1_buf2CinSkin1_typeCvalueEinSkin1EinSkin1_bufG]u_xlatu_loop_4 outVertices1_origX1X_typevalueoutVertices1_origX1X outVertices1_origX1X_bufinVertices0_typevalueinVertices0inVertices0_buf 1inSkin0_type1value3inSkin03inSkin0_buf5Ku_xlatu_loop_5 outVertices0_origX0X_typevalueoutVertices0_origX0X outVertices0_origX0X_bufu_xlat_precise_vec4u_xlat_precise_ivec4u_xlat_precise_bvec4u_xlat_precise_uvec4u_xlatb5u_xlatu36G GGGH#H# H#@H#`GG"G!G8H9#G: H;H;#G;G="G=!GQHR#GSHTHT#GTGV"GV! GH#G@HH#GG"G! G&H'#G( H)#G)G+"G+!GQHR#GS HTHT#GTGV"GV!GfHg#GhHiHi#GiGk"Gk!GH#G H#GG"G!G?H@#GA HBHB#GBGD"GD!GTHU#GVHWHW#GWGY"GY!GH#G H#GG"G! G-H.#G/ H0H0#G0G2"G2!GBHC#GDHEHE#GEGG"GG!GH#G H#GG"G! GH#G HH#GG "G !G0H1#G2H3H3#G3G5"G5!GH#G H#GG"G! G ! ;     ; +   +  ; +  " ;"#;*+,3 43 54;56+ 78 798:9;: <;;<=+GK3;"O+ PQ PRQSRTS UT;UV Z;Z[;"_;5c+3d e3;5j;5o t ;";"+ ;e+37;Z+ K;  ;;+++;++ + ;5+ + +;5;5+3?& 7'&(')( *);*+Q 7RQSRTS UT;UVf Pgfhgih ji;jk 7 ;? 7@?A@BA CB;CDT PUTVUWV XW;XY 7 ;- 7.-/.0/ 10;12B PCBDCED FE;FG 7 ; 7 ; 0 P102132 43;45 7 ; 4   ;;"+ @, PP6;tu;t;to;t];tK;;;;A = A = >=! ; A$ = %$A& = '&~ (' )%(>#)= +#A-, = .-/+.>*/=0*20121= >#A?=,>,,= @?|3A@= B#AC=,B,= DC|3ED= F#AH=,F,G= IH|3JIPKLAEJ=4M6O 4NML>6N= W#AXV,W,,= YX>OY= \#|]\^]>[^=`[AaV,`,,= ba>_bAefc >fdAegcP>gdAehc>hdAeic7>idAekj >kdAeljP>ldAemj>mdAenj7>ndAepo >pdAeqoP>qdAero>rdAeso7>sd= vO>uvwwyz{{= |u= }_~|}~xyx= uAV,,,= >=  >= p3>=33>=  |>=AG = |>=A,,,= |3=A,,= |3=A,,G= |3PK>=A,,= |3=A,,= |3=A,,= |3PK>=A,,= |3=A,,= |3=A,,= |3PK>=A,,= |3=A,,= |3=A,,= |3PK=4O 4>Ae =3Ae >Ae =3AeP>Ae =3Ae>Ae =3Ae7>AeP=3Ae >AeP=3AeP>AeP=3Ae>AeP=3Ae7>Ae=3Ae >Ae=3AeP>Ae=3Ae>=4=3P44=4c4 >c =4 =3 P4     4   =4j4 >j=4=3P44=4o4>ozz= u >uwyAe67>=4c=463Aec >=4j=463 Ae!cP>! =4"o=4#63$"#Ae%c>%$= ,#Ae-c =3.-| /.A0+,,,,>0/= 1#Ae2cP=332| 43A5+,1,>54= 6#Ae7c=387| 98A:+,6,G>:922!;A< = =<A>,7= ?>@=?>@=ACAB)BAD = EDAF,7= GF~ HG IEH>#I= J#AK,,7= LKMJL>*M=N*PNOPO= W#AXV,W,,= YX|3ZY= [#A\V,[,= ]\|3^]= _#A`V,_,G= a`|3baPKcZ^b=4d6O 4edc>6e= l#Amk,l,,= nm>On= o#|poqp>[q=r[Ask,r,,= ts>_tAeuc >udAevcP>vdAewc>wdAexc7>xdAeyj >ydAezjP>zdAe{j>{dAe|j7>|dAe}o >}dAe~oP>~dAeo>dAeo7>d= O>= = _= Ak,,,= >=  >= p3>=33>=  |>=AG,7= |>=A,,,= |3=A,,= |3=A,,G= |3PK>=A,,= |3=A,,= |3=A,,= |3PK>=A,,= |3=A,,= |3=A,,= |3PK>=A,,= |3=A,,= |3=A,,= |3PK=4O 4>Ae =3Ae >Ae =3AeP>Ae =3Ae>Ae =3Ae7>AeP=3Ae >AeP=3AeP>AeP=3Ae>AeP=3Ae7>Ae=3Ae >Ae=3AeP>Ae=3Ae>=4=3P44=4c4>c=4=3P44=4j4>j=4=3P44=4o4>o=  >Ae67>=4c=4 63  Ae c >  =4 j=4 63  AecP>=4o=463Aec>= #Aec =3| A,,,>= #Ae cP=3! | "!A#,,>#"= $#Ae%c=3&%| '&A(,$,G>('PPC)A* = +*A,,= -,.+->.=/1/00A2 = 32A4,= 54~ 65 736>#7= 8#A9,,= :9;8:>*;=<*><=>== E#AFD,E,,= GF|3HG= I#AJD,I,= KJ|3LK= M#AND,M,G= ON|3POPKQHLP=4R6O 4SRQ>6S= Z#A[Y,Z,,= \[>O\= ]#|^]_^>[_=`[AaY,`,,= ba>_bAecc >cdAedcP>ddAeec>edAefc7>fdAegj >gdAehjP>hdAeij>idAejj7>jdAeko >kdAeloP>ldAemo>mdAeno7>nd= pO>opqqstuu= vo= w_xvwxrsr= yoAzY,y,,= {z>{= | }|>}= ~p3~>=33>=  |>=AG,= |>=A,,,= |3=A,,= |3=A,,G= |3PK>=A,,= |3=A,,= |3=A,,= |3PK>=A,,= |3=A,,= |3=A,,= |3PK>=A,,= |3=A,,= |3=A,,= |3PK=4O 4>Ae =3Ae >Ae =3AeP>Ae =3Ae>Ae =3Ae7>AeP=3Ae >AeP=3AeP>AeP=3Ae>AeP=3Ae7>Ae=3Ae >Ae=3AeP>Ae=3Ae>=4=3P44=4c4>c=4=3P44=4j4>j=4=3P44=4o4>ott= o >oqsAe67>=4c=463Aec >=4j=463AecP>=4o=463Aec>= #Ae c =3  |  A ,,,>  = #AecP=3| A, ,>= #Aec=3| A,,G>>>1A = A,P= >=A  = ! A",P= #"~ $# %!$>#%= &#A',,P= (')&(>*)=**,*+,+= 3#A42,3,,= 54|365= 7#A82,7,= 98|3:9= ;#A<2,;,G= =<|3>=PK?6:>=4@6O 4A@?>6A= H#AIG,H,,= JI>OJ= K#|LKML>[M=N[AOG,N,,= PO>_PAeQc >QdAeRcP>RdAeSc>SdAeTc7>TdAeUj >UdAeVjP>VdAeWj>WdAeXj7>XdAeYo >YdAeZoP>ZdAe[o>[dAe\o7>\d= ^O>]^__abcc= d]= e_fdef`a`= g]AhG,g,,= ih>i= j kj>k= lp3ml>m=3n3on>o= p qp|rq>r=sAtG,P= ut|vuwsv>w=xAy,x,,= zy|3{z=|A},|,= ~}|3~=A,,G= |3PK{>=A,,= |3=A,,= |3=A,,= |3PK>=A,,= |3=A,,= |3=A,,= |3PK>=A,,= |3=A,,= |3=A,,= |3PK=4O 4>Ae =3Ae >Ae =3AeP>Ae =3Ae>Ae =3Ae7>AeP=3Ae >AeP=3AeP>AeP=3Ae>AeP=3Ae7>Ae=3Ae >Ae=3AeP>Ae=3Ae>=4=3P44=4c4>c=4=3P44=4j4>j=4=3P44=4o4>obb= ] >]_aAe67>=4c=463Aec >=4j=463AecP>=4o=463Aec>= #Aec =3| A,,,>= #AecP=3| A,,>= #Aec=3| A,,G>,,A = A, =   > =      A = A, = ~  >#= #A,, = >*=*= !#A" ,!,,= #"|3$#= %#A& ,%,= '&|3('= )#A* ,),G= +*|3,+PK-$(,=4.6O 4/.->6/= 6#A75,6,,= 87>O8= 9#|:9;:>[;=<[A=5,<,,= >=>_>Ae?c >?dAe@cP>@dAeAc>AdAeBc7>BdAeCj >CdAeDjP>DdAeEj>EdAeFj7>FdAeGo >GdAeHoP>HdAeIo>IdAeJo7>Jd= LO>KLMMOPQQ= RK= S_TRSTNON= UKAV5,U,,= WV>W= X YX>Y= Zp3[Z>[=3\3]\>]= ^ _^|`_>`=aAbG, = cb|dcead>e=fAg,f,,= hg|3ih=jAk,j,= lk|3ml=nAo,n,G= po|3qpPKrimq>r=sAt,s,= ut|3vu=wAx,w,= yx|3zy={A|,{,= }||3~}PKvz~>=A,,= |3=A,,= |3=A,,= |3PK>=A,,= |3=A,,= |3=A,,= |3PK=4O 4>Ae =3Ae >Ae =3AeP>Ae =3Ae>Ae =3Ae7>AeP=3Ae >AeP=3AeP>AeP=3Ae>AeP=3Ae7>Ae=3Ae >Ae=3AeP>Ae=3Ae>=4=3P44=4c4>c=4=3P44=4j4>j=4=3P44=4o4>oPP= K >KMOAe67>=4c=463Aec >=4j=463AecP>=4o=463Aec>= #Aec =3| A,,,>= #AecP=3| A,,>= #Aec=3| A,,G>  11CC!!8@A batchMainComputeSkinCBuffer inMatrices inSkin0inSkin1inSkin2inSkin3inSkin4 inVertices0 inVertices1 inVertices2 inVertices3 inVertices4 outVertices0  outVertices1  outVertices2  outVertices3 outVertices4#  GLSL.std.450main @mainu_xlatb0 gl_GlobalInvocationIDComputeSkinCBufferg_VertCountsg_BatchOffsetsg_PoseOffsets g_poseBufferMaxIndex#u_xlatu0*u_xlatb126u_xlat19inVertices4_type9value;inVertices4;inVertices4_buf=Su_xlat2bu_xlatu12einSkin4_typeevalueginSkin4ginSkin4_bufinu_xlati24ru_xlatu24vu_xlat3~u_xlat4u_xlat5u_xlatu_loop_1u_xlatu38u_xlatu6u_xlat6u_xlati38u_xlat18inMatrices_typevalueinMatricesinMatrices_bufu_xlat7u_xlat8u_xlat9u_xlat10u_xlat11 SoutVertices4_origX4X_typeSvalueUoutVertices4_origX4X UoutVertices4_origX4X_bufWinVertices3_typevalueinVertices3inVertices3_bufinSkin3_typevalueinSkin3inSkin3_bufu_xlatu_loop_2 xoutVertices3_origX3X_typexvaluezoutVertices3_origX3X zoutVertices3_origX3X_buf|inVertices2_typevalueinVertices2inVertices2_bufinSkin2_typevalueinSkin2inSkin2_bufu_xlatu_loop_3 outVertices2_origX2X_typevalueoutVertices2_origX2X outVertices2_origX2X_bufinVertices1_typevalueinVertices1inVertices1_bufinSkin1_typevalueinSkin1inSkin1_bufu_xlatu_loop_4 outVertices1_origX1X_typevalueoutVertices1_origX1X outVertices1_origX1X_bufinVertices0_typevalueinVertices0inVertices0_bufinSkin0_typevalue inSkin0 inSkin0_buf"8u_xlatu_loop_5 outVertices0_origX0X_typevalueoutVertices0_origX0X outVertices0_origX0X_buf u_xlat_precise_vec4u_xlat_precise_ivec4u_xlat_precise_bvec4u_xlat_precise_uvec4u_xlatu36u_xlatb38G GGGH#H# H#@H#`GG"G!G8H9#G:H;H;#G;G="G=!GdHe#GfHgHg#GgGi"Gi! GH#G@HH#GG"G! GRHS#GTHU#GUGW"GW!GH#GHH#GG"G!GH#GHH#GG"G!GwHx#GyHz#GzG|"G|!GH#GHH#GG"G!GH#GHH#GG"G!GH#GH#GG"G! GH#GHH#GG"G!GH#GHH#GG"G!GH#GH#GG"G! GH#GHH#GG"G!GH#GH H #G G""G"!GH#GH#GG"G! G ! ;     ; +   +  ; +  " ;"#;*+,3 43 54;56+ 78 798:9;: <;;<=+G+LQ3 RQ;RS+U+Z^3;"b+ cd cedfegf hg;hi m;mn;"r;5v+3w x3+ |;5~;5  ;";"+ ;5+37;m+ ;R  ;;5+;R++ + ;5+ + +;5;5+32?R 7SRTSUT VU;VW 7 ; c ;w 7xwyxzy {z;{| 7 ; c ; 7 ; 7 ; c ; 7 ; 7 ; c  ! ;!" 7 ;  4     ;";+ @, cc6;;;;;8;  ;;;A = A = >=! v A$ = %$A& = '&~ (' )%(>#)= +#A-, = .-/+.>*/=0*20121= >#A?=,>,,= @?|3A@= B#AC=,B,= DC|3ED= F#AH=,F,G= IH|3JI= K#AM=,K,L= NM|3ONP4PAEJO>6P= T#AV=,T,U= WV|3XW= Y#A[=,Y,Z= \[|3]\P^_X]=Q`SOQa`_>Sa= j#Aki,j,,= lk>bl= o#|poqp>nq=snAti,s,,= ut>ruAxyv >ywAxzvc>zwAx{v>{wAx}v|>}wAx~ >wAx~c>wAx~>wAx~|>wAx >wAxc>wAx>wAx|>w= b>= = r= Ai,,,= >=  >= p3Ax >Ax =33Ax >=  |>=AG = |>=A,,,= |3=A,,= |3=A,,G= |3PQ>=A,,U= |3=A,,Z= |3=A,,= |3PQ=4O 4>=A,,= |3=A,,= |3=A,,= |3PQ>=A,,= |3=A,,= |3=A,,= |3PQ=4O 4>Ax =3Ax >Ax =3Axc>Ax =3Ax>Ax =3Ax|>Axc=3Ax >Axc=3 Ax c>  Ax c=3  Ax >  Axc=3Ax|>Ax=3Ax >Ax=3Axc>Ax=3Ax>=4=4O 44=4v4>v=4 =4!O 4"!!4# "=4$~4%#$>~%=4&=4'O 4(''4)&(=4*4+)*>+= , -,>-=4.6OQ/..=40O 410/>1Ax3|>32=44v=453645Ax7 >76=48~=493:89Ax;c>;:=4<=4=3><=Ax?>?>Ax@6|=3A@AxBS>BA=4CvOQDCC=QES3FDEAxG|>GF=4H~OQIHH=QJS3KIJAxL6 >LK=4MOQNMM=QOS3PNOAxQ6c>QP= X#AxY =3ZY| [ZA\W,X,,>\[= ]#Ax^c=3_^| `_AaW,],>a`= b#Axc=3dc| edAfW,b,G>fe= g#Axh|=3ih| jiAkW,g,L>kj= l#Axm6 =3nm| onApW,l,U>po= q#Axr6c=3sr| tsAuW,q,Z>ut22!vAw = xwAy,|= zy{xz>{=|~|}}A = A,|= ~  >#= #A,,|= >*=*= #A,,,= |3= #A,,= |3= #A,,G= |3= #A,,L= |3P4>6= #A,,U= |3= #A,,Z= |3P^=QSOQ>S= #A,,,= >b= #|>n=nA,,,= >rAxv >wAxvc>wAxv>wAxv|>wAx~ >wAx~c>wAx~>wAx~|>wAx >wAxc>wAx>wAx|>w= b>= = r= A,,,= >=  >= p3Ax >Ax =33Ax >=  |>=AG,|= |>=A,,,= |3=A,,= |3=A,,G= |3PQ>=A,,U= |3=A,,Z= |3=A,,= |3PQ=4O 4>=A,,= |3=A,,= |3  = A , ,=  |3 PQ >=A,,= |3=A,,= |3=A,,= |3PQ=4O 4>Ax =3 Ax! >! Ax" =3#"Ax$c>$#Ax% =3&%Ax'>'&Ax( =3)(Ax*|>*)Ax+c=3,+Ax- >-,Ax.c=3/.Ax0c>0/Ax1c=321Ax3>32Ax4c=354Ax6|>65Ax7=387Ax9 >98Ax:=3;:Ax<c><;Ax==3>=Ax?>?>=4@=4AO 4BAA4C@B=4Dv4ECD>vE=4F=4GO 4HGG4IFH=4J~4KIJ>~K=4L=4MO 4NMM4OLN=4P4QOP>Q= R SR>S=4T6OQUTT=4VO 4WVU>WAxX|>X2=4Yv=4Z3[YZAx\ >\[=4]~=4^3_]^Ax`c>`_=4a=4b3cabAxd>dcAxe6|=3feAxgS>gf=4hvOQihh=QjS3kijAxl|>lk=4m~OQnmm=QoS3pnoAxq6 >qp=4rOQsrr=QtS3ustAxv6c>vu= }#Ax~ =3~| A|,},,>= #Axc=3| A|,,>= #Ax=3| A|,,G>= #Ax|=3| A|,,L>= #Ax6 =3| A|,,U>= #Ax6c=3| A|,,Z>~A = A,= >=A = A,= ~  >#= #A,,= >*=*= #A,,,= |3= #A,,= |3= #A,,G= |3= #A,,L= |3P4>6= #A,,U= |3= #A,,Z= |3P^=QSOQ>S= #A,,,= >b= #|>n=nA,,,= >rAxv >wAxvc>wAxv>wAxv|>wAx~ >wAx~c>wAx~>wAx~|>wAx >wAxc>wAx>wAx|>w= b>= = r= A,,,= >=  >= p3Ax >Ax =33Ax >=  |>=AG,= |    > = A , ,,=  |3=A,,= |3=A,,G= |3PQ>=A,,U= |3=A,,Z= |3 =!A",!,= #"|3$#PQ% $=4&O 4'&%>'=(A),(,= *)|3+*=,A-,,,= .-|3/.=0A1,0,= 21|332PQ4+/3>4=5A6,5,= 76|387=9A:,9,= ;:|3<;==A>,=,= ?>|3@?PQA8<@=4BO 4CBA>CAxD =3EDAxF >FEAxG =3HGAxIc>IHAxJ =3KJAxL>LKAxM =3NMAxO|>ONAxPc=3QPAxR >RQAxSc=3TSAxUc>UTAxVc=3WVAxX>XWAxYc=3ZYAx[|>[ZAx\=3]\Ax^ >^]Ax_=3`_Axac>a`Axb=3cbAxd>dc=4e=4fO 4gff4heg=4iv4jhi>vj=4k=4lO 4mll4nkm=4o~4pno>~p=4q=4rO 4srr4tqs=4u4vtu>v= w xw>x=4y6OQzyy=4{O 4|{z>|Ax}|>}2=4~v=43~Ax >=4~=43Axc>=4=43Ax>Ax6|=3AxS>=4vOQ=QS3Ax|>=4~OQ=QS3Ax6 >=4OQ=QS3Ax6c>= #Ax =3| A,,,>= #Axc=3| A,,>= #Ax=3| A,,G>= #Ax|=3| A,,L>= #Ax6 =3| A,,U>= #Ax6c=3| A,,Z>A = A,c= >=A = A,c= ~  >#= #A,,c= >*=*= #A,,,= |3= #A,,= |3= #A,,G= |3= #A,,L= |3P4>6= #A,,U= |3= #A,,Z= |3P^=QSOQ>S= #A,,,= >b= #|>n=nA,,,= >rAxv >wAxvc>wAx v> wAx v|> wAx ~ > wAx ~c> wAx ~> wAx~|>wAx >wAxc>wAx>wAx|>w= b>= = r= A,,,= >=  ! >!= "p3#"Ax$ >$#Ax% =3&%3'&Ax( >('= ) *)|+*>+=,A-G,c= .-|/.0,/>0=1A2,1,,= 32|343=5A6,5,= 76|387=9A:,9,G= ;:|3<;PQ=48<>==>A?,>,U= @?|3A@=BAC,B,Z= DC|3ED=FAG,F,= HG|3IHPQJAEI=4KO 4LKJ>L=MAN,M,= ON|3PO=QAR,Q,= SR|3TS=UAV,U,= WV|3XWPQYPTX>Y=ZA[,Z,= \[|3]\=^A_,^,= `_|3a`=bAc,b,= dc|3edPQf]ae=4gO 4hgf>hAxi =3jiAxk >kjAxl =3mlAxnc>nmAxo =3poAxq>qpAxr =3srAxt|>tsAxuc=3vuAxw >wvAxxc=3yxAxzc>zyAx{c=3|{Ax}>}|Ax~c=3~Ax|>Ax=3Ax >Ax=3Axc>Ax=3Ax>=4=4O 44=4v4>v=4=4O 44=4~4>~=4=4O 44=44>=  >=46OQ=4O 4>Ax|>2=4v=43Ax >=4~=43Axc>=4=43Ax>Ax6|=3AxS>=4vOQ=QS3Ax|>=4~OQ=QS3Ax6 >=4OQ=QS3Ax6c>= #Ax =3| A,,,>= #Axc=3| A,,>= #Ax=3| A,,G>= #Ax|=3| A,,L>= #Ax6 =3| A,,U>= #Ax6c=3| A,,Z>A = A, = >=A = A, = ~  >#= #A,, = >*=*= #A,,,= |3= #A,,= |3= #A , ,G=  |3  = #A, ,L= |3P4 >6= #A,,U= |3= #A,,Z= |3P^=QSOQ>S= ##A$",#,,= %$>b%= &#|'&('>n(=)nA*",),,= +*>r+Ax,v >,wAx-vc>-wAx.v>.wAx/v|>/wAx0~ >0wAx1~c>1wAx2~>2wAx3~|>3wAx4 >4wAx5c>5wAx6>6wAx7|>7w= 9b>89::<=>>= ?8= @rA?@A;<;= B8AC",B,,= DC>D= E FE>F= Gp3HGAxI >IHAxJ =3KJ3LKAxM >ML= N ON|PO>P=QARG, = SR|TSUQT>U=VAW,V,,= XW|3YX=ZA[,Z,= \[|3]\=^A_,^,G= `_|3a`PQbY]a>b=cAd,c,U= ed|3fe=gAh,g,Z= ih|3ji=kAl,k,= ml|3nmPQofjn=4pO 4qpo>q=rAs,r,= ts|3ut=vAw,v,= xw|3yx=zA{,z,= |{|3}|PQ~uy}>~=A,,= |3=A,,= |3=A,,= |3PQ=4O 4>Ax =3Ax >Ax =3Axc>Ax =3Ax>Ax =3Ax|>Axc=3Ax >Axc=3Axc>Axc=3Ax>Axc=3Ax|>Ax=3Ax >Ax=3Axc>Ax=3Ax>=4=4O 44=4v4>v=4=4O 44=4~4>~=4=4O 44=44>=== 8 >8:<=46OQ=4O 4>Ax|>2=4v=43Ax >=4~=43Axc>=4=43Ax>Ax6|=3AxS>=4vOQ=QS3Ax|>=4~OQ=QS3Ax6 >=4OQ=QS3Ax6c>= #Ax =3| A,,,>= #Axc=3| A,,>= #Ax=3| A,,G>= #Ax|=3| A,,L>= #Ax6 =3| A,,U>= #Ax6c=3| A ,,Z> ~~!!8@A batchMainComputeSkinCBuffer inMatrices inSkin0inSkin1inSkin2inSkin3inSkin4 inVertices0 inVertices1 inVertices2 inVertices3 inVertices4 outVertices0  outVertices1  outVertices2  outVertices3 outVertices4# H GLSL.std.450main @mainu_xlatb0 gl_GlobalInvocationIDComputeSkinCBufferg_VertCountsg_BatchOffsetsg_PoseOffsets g_poseBufferMaxIndex#u_xlatu0*u_xlatb146u_xlat19inVertices4_type9value;inVertices4;inVertices4_buf=Qu_xlat2gu_xlat3vu_xlatu14yinSkin4_typeyvalue{inSkin4{inSkin4_buf}u_xlati28u_xlatu28u_xlat4u_xlat5u_xlat6u_xlatu_loop_1u_xlatu7u_xlatu21u_xlat21u_xlati7u_xlat8inMatrices_typevalueinMatricesinMatrices_bufu_xlat9u_xlat10u_xlat11u_xlat12u_xlat13>u_xlat7 ~outVertices4_origX4X_type~valueoutVertices4_origX4X outVertices4_origX4X_bufinVertices3_typevalueinVertices3inVertices3_bufinSkin3_typevalueinSkin3inSkin3_bufu_xlatu_loop_2 outVertices3_origX3X_typevalueoutVertices3_origX3X outVertices3_origX3X_buf-inVertices2_type-value/inVertices2/inVertices2_buf1`inSkin2_type`valuebinSkin2binSkin2_bufdzu_xlatu_loop_3 @outVertices2_origX2X_type@valueBoutVertices2_origX2X BoutVertices2_origX2X_bufDinVertices1_typevalueinVertices1inVertices1_bufinSkin1_typevalueinSkin1inSkin1_bufu_xlatu_loop_4 outVertices1_origX1X_typevalueoutVertices1_origX1X outVertices1_origX1X_bufinVertices0_typevalueinVertices0inVertices0_buf"inSkin0_type"value$inSkin0$inSkin0_buf&<u_xlatu_loop_5 outVertices0_origX0X_typevalueoutVertices0_origX0X outVertices0_origX0X_buf;u_xlat_precise_vec4>u_xlat_precise_ivec4Au_xlat_precise_bvec4Cu_xlat_precise_uvec4Du_xlatb7Eu_xlatu42G GGGH#H# H#@H#`GG"G!G8H9#G:(H;H;#G;G="G=!GxHy#GzH{H{#G{G}"G}! GH#G@HH#GG"G! G}H~#G(H#GG"G!GH#G(HH#GG"G!GH#GHH#GG"G!GH#G(H#GG"G!G,H-#G.(H/H/#G/G1"G1!G_H`#GaHbHb#GbGd"Gd!G?H@#GA(HB#GBGD"GD! GH#G(HH#GG"G!GH#GHH#GG"G!GH#G(H#GG"G! GH#G(HH#GG"G!G!H"#G#H$H$#G$G&"G&!GH#G(H#GG"G! GG ! ;     ; +   +  ; +  " ;"#;*+,3 43 54;56+ 7 8 798:9;: <;;<=+?+L;5Q+S+X+]+b;5g+i+n r3;"v+ wx wyxzy{z |{;|} ;;";5+3 3+ ;5;5  ;";"+ ;+37;+ ;5  ;3 ;;+ ;5+ + +;5;5;5>+3C?} 7~}~ ; 7 ; w ; 7 ;, 7-,.-/. 0/;01_ w`_a`ba cb;cd? 7@?A@BA CB;CD 7 ; w ; 7 ; 7 ;! w"!#"$# %$;%& 7 ; :4< =<? @? B;D;"E+ F@, GFww6;;;z;;<;:;;=>;@A;BCA = A = >=!  A$ = %$A& = '&~ (' )%(>#)= +#A-, = .-/+.>*/=0*20121= >#A@=,>,?= A@|3BA= C#AD=,C,,= ED|3FE= G#AH=,G,= IH|3JI= K#AM=,K,L= NM|3ONP4PBFJO>6P= R#AT=,R,S= UT|3VU= W#AY=,W,X= ZY|3[Z= \#A^=,\,]= _^|3`_= a#Ac=,a,b= dc|3edP4fV[`e>Qf= h#Aj=,h,i= kj|3lk= m#Ao=,m,n= po|3qpPrslq=4tgO 4uts>gu= ~#A},~,,= >v= #|>=A},,,= >A >Aw>A>A>A >Aw>A>A>A >Aw>A>A>= v>= = = A},,,= >=  >= p3>=33>=  |>=AL = |>=A,,,= |3=A,,= |3=A,,L= |3P=4O 4>=A,,S= |3=A,,X= |3=A,,]= |3P>=A,,i= |3=A,,n= |3=A,,= |3P>=A,,= |3=A,,= |3=A,,= |3P=4O 4>A =3 A  >  A  =3  A w>  A =3A>A =3A>Aw=3A >Aw=3Aw>Aw=3A>Aw=3A > A!=3"!A# >#"A$=3%$A&w>&%A'=3('A)>)(=4*=3+P4,++++4-*,=4.4/-.>/=40=31P4211114302=444534>5=46=37P4877774968=4:4;9:>;= < =<>==4?6O@??=4A>O 4BA@>>BAD>>DC=4E=4F>3GEFAH >HG=4I=4J>3KIJALw>LK=4M=4N>3OMNAP>PO=4QQOrRQQ=4S6O 4TSR>6T=4UOVUU=4W6OXWW3YVXAZ>ZY=4[O\[[=4]6O^]]3_\^A`> >`_=4aObaa=4c6Odcc3ebdAf>w>fe=4gQOrhgg=4igO 4jih>gj=4kOlkk=4mgOnmm3olnAp>>po=4qOrqq=4sgOtss3urtAv>>vu=4wOxww=4ygOzyy3{xzA|g >|{= #A =3| A,,,>= #Aw=3| A,,>= #A=3| A,,L>= #A=3| A,,?>= #A> =3| A,,S>= #A>w=3| A,,X>= #A>=3| A,,]>= #A>=3| A,,b>= #Ag =3| A,,i>= #Agw=3| A,,n>22!A = A,= >=A = A,= ~  >#= #A,,= >*=*= #A,,?= |3= #A,,,= |3= #A,,= |3= #A,,L= |3P4>6= #A,,S= |3= #A,,X= |3= #A,,]= |3= #A,,b= |3P4>Q= #A,,i= |3= #A,,n= |3Pr=4gO 4>g= #A,,,= >v= #| > = A , ,,=  > A  > Aw>A>A>A >Aw>A>A>A >Aw>A>A>= v>= = !" !"= #A$,#,,= %$>%= & '&>'= (p3)(>)=3*3+*>+= , -,|.->.=/A0L,= 10|213/2>3=4A5,4,,= 65|376=8A9,8,= :9|3;:=<A=,<,L= >=|3?>P@7;?=4AO 4BA@>B=CAD,C,S= ED|3FE=GAH,G,X= IH|3JI=KAL,K,]= ML|3NMPOFJN>O=PAQ,P,i= RQ|3SR=TAU,T,n= VU|3WV=XAY,X,= ZY|3[ZP\SW[>\=]A^,],= _^|3`_=aAb,a,= cb|3dc=eAf,e,= gf|3hgPi`dh=4jO 4kji>kAl =3mlAn >nmAo =3poAqw>qpAr =3srAt>tsAu =3vuAw>wvAxw=3yxAz >zyA{w=3|{A}w>}|A~w=3~A>Aw=3A>A=3A >A=3Aw>A=3A>=4=3P44=44>=4=3P44=44>=4=3P44=44>=  >=46O=4>O 4>>A>>C=4=4>3A >=4=4>3Aw>=4=4>3A>=4QOr=46O 4>6=4O=46O3A>=4O=46O3A> >=4O=46O3A>w>=4QOr=4gO 4>g=4O=4gO3A>>=4O=4gO3A>>=4O=4gO3Ag >= #A =3| A,,,>= #Aw=3| A,,>= #A=3| A,,L>= #A=3| A,,?>= #A> =3| A,,S>= #A>w=3| A,,X>= #A>=3| A,,]>= #A>=3 |  A ,,b>  = #A g =3 | A, ,i>= #Agw=3| A,,n>A = A,= >=wA = A!,= "!~ #" $ #>#$= %#A&,,= '&(%'>*(=)*+)*+*= 2#A31,2,?= 43|354= 6#A71,6,,= 87|398= :#A;1,:,= <;|3=<= >#A?1,>,L= @?|3A@P4B59=A>6B= C#AD1,C,S= ED|3FE= G#AH1,G,X= IH|3JI= K#AL1,K,]= ML|3NM= O#AP1,O,b= QP|3RQP4SFJNR>QS= T#AU1,T,i= VU|3WV= X#AY1,X,n= ZY|3[ZPr\W[=4]gO 4^]\>g^= e#Afd,e,,= gf>vg= h#|ihji>j=kAld,k,,= ml>mAn >nAow>oAp>pAq>qAr >rAsw>sAt>tAu>uAv >vAww>wAx>xAy>y= {v>z{||~= z= }~}= zAd,,,= >=  >= p3>=33>=  |>=AL,= |>=A,,,= |3=A,,= |3=A,,L= |3P=4O 4>=A,,S= |3=A,,X= |3=A,,]= |3P>=A,,i= |3=A,,n= |3=A,,= |3P>=A,,= |3=A,,= |3=A,,= |3P=4O 4>A =3A >A =3Aw>A =3A>A =3A>Aw=3A >Aw=3Aw>Aw=3A>Aw=3A>A=3A >A=3Aw>A=3A>=4=3P44=44>=4=3P44=44>=4=3P44=44>= z >z|~=46O=4>O 4>>A>>C=4=4>3 A  >  =4 =4 >3   Aw> =4=4>3A>=4QOr=46O 4>6=4O=46O3A>=4O=46O 3! A"> >"!=4#O$##=4%6O&%%3'$&A(>w>('=4)QOr*))=4+gO 4,+*>g,=4-O.--=4/gO0//31.0A2>>21=43O433=45gO6553746A8>>87=49O:99=4;gO<;;3=:<A>g >>== E#AF =3GF| HGAID,E,,>IH= J#AKw=3LK| MLAND,J,>NM= O#AP=3QP| RQASD,O,L>SR= T#AU=3VU| WVAXD,T,?>XW= Y#AZ> =3[Z| \[A]D,Y,S>]\= ^#A_>w=3`_| a`AbD,^,X>ba= c#Ad>=3ed| feAgD,c,]>gf= h#Ai>=3ji| kjAlD,h,b>lk= m#Ang =3on| poAqD,m,i>qp= r#Asgw=3ts| utAvD,r,n>vu++wAx = yxAz,w= {z|y{>|=}}~~A = A,w= ~  >#= #A,,w= >*=*= #A,,?= |3= #A,,,= |3= #A,,= |3= #A,,L= |3P4>6= #A,,S= |3= #A,,X= |3= #A,,]= |3= #A,,b= |3P4>Q= #A,,i= |3= #A,,n= |3Pr=4gO 4>g= #A,,,= >v= #|>=A,,,= >A >Aw>A>A>A >Aw>A>A>A >Aw>A>A>= v>= = = A,,,= >=  >= p3>=33>=  |>=AL,w= |>=A,,,= |3=A,,= |3=A,,L= |3P=4O 4>=A,,S= |3= A , ,X=  |3  = A, ,]= |3P >=A,,i= |3=A,,n= |3=A,,= |3P>=A ,,= ! |3"!=#A$,#,= %$|3&%='A(,',= )(|3*)P+"&*=4,O 4-,+>-A. =3/.A0 >0/A1 =321A3w>32A4 =354A6>65A7 =387A9>98A:w=3;:A< ><;A=w=3>=A?w>?>A@w=3A@AB>BAACw=3DCAE>EDAF=3GFAH >HGAI=3JIAKw>KJAL=3MLAN>NM=4O=3PP4QPPPP4ROQ=4S4TRS>T=4U=3VP4WVVVV4XUW=4Y4ZXY>Z=4[=3\P4]\\\\4^[]=4_4`^_>`= a ba>b=4c6Odcc=4e>O 4fed>>fAg>>gC=4h=4i>3jhiAk >kj=4l=4m>3nlmAow>on=4p=4q>3rpqAs>sr=4tQOrutt=4v6O 4wvu>6w=4xOyxx=4z6O{zz3|y{A}>}|=4~O~~=46O3A> >=4O=46O3A>w>=4QOr=4gO 4>g=4O=4gO3A>>=4O=4gO3A>>=4O=4gO3Ag >= #A =3| A,,,>= #Aw=3| A,,>= #A=3| A,,L>= #A=3| A,,?>= #A> =3| A,,S>= #A>w=3| A,,X>= #A>=3| A,,]>= #A>=3| A,,b>= #Ag =3| A,,i>= #Agw=3| A,,n>A = A, = >=A = A, = ~  >#= #A,, = >*=*= #A,,?= |3= #A,,,= |3= #A,,= |3= #A,,L= |3P4>6= #A,,S= |3= #A , ,X=  |3  = #A, ,]= |3= #A,,b= |3P4 >Q= #A,,i= |3= #A,,n= |3Pr=4gO 4 >g = '#A(&,',,= )(>v)= *#|+*,+>,=-A.&,-,,= /.>/A0 >0A1w>1A2>2A3>3A4 >4A5w>5A6>6A7>7A8 >8A9w>9A:>:A;>;= =v><=>>@ABB= C<= DECDE?@?= F<AG&,F,,= HG>H= I JI>J= Kp3LK>L=3M3NM>N= O PO|QP>Q=RASL, = TS|UTVRU>V=WAX,W,,= YX|3ZY=[A\,[,= ]\|3^]=_A`,_,L= a`|3baPcZ^b=4dO 4edc>e=fAg,f,S= hg|3ih=jAk,j,X= lk|3ml=nAo,n,]= po|3qpPrimq>r=sAt,s,i= ut|3vu=wAx,w,n= yx|3zy={A|,{,= }||3~}Pvz~>=A,,= |3=A,,= |3=A,,= |3P=4O 4>A =3A >A =3Aw>A =3A>A =3A>Aw=3A >Aw=3Aw>Aw=3A>Aw=3A>A=3A >A=3Aw>A=3A>=4=3P44=44>=4=3P44=44>=4=3P44=44>AA= < ><>@=46O=4>O 4>>A>>C=4=4>3A >=4=4>3Aw>=4=4>3A>=4QOr=46O 4>6=4O=46O3A>=4O=46O3A> >=4O=46O3A>w>=4QOr=4gO 4>g=4O=4gO3A>>=4O=4gO3A>>=4O=4gO3Ag >= #A =3 |  A ,,,>  = #A w=3 | A, ,>= #A=3| A,,L>= #A=3| A,,?>= #A> =3| A,,S>= #A!>w=3"!| #"A$, ,X>$#= %#A&>=3'&| ('A),%,]>)(= *#A+>=3,+| -,A.,*,b>.-= /#A0g =310| 21A3,/,i>32= 4#A5gw=365| 76A8,4,n>87!!8@A batchMainComputeSkinCBuffer inMatrices inSkin0inSkin1inSkin2inSkin3inSkin4 inVertices0 inVertices1 inVertices2 inVertices3 inVertices4 outVertices0  outVertices1  outVertices2  outVertices3 outVertices4`#  GLSL.std.450main @mainu_xlatb0 gl_GlobalInvocationIDComputeSkinCBufferg_VertCountsg_BatchOffsetsg_PoseOffsets g_poseBufferMaxIndex#u_xlatu0*u_xlatb86u_xlat19inVertices4_type9value;inVertices4;inVertices4_buf=Pu_xlati8SinSkin4_typeSvalueUinSkin4UinSkin4_bufWbu_xlat2einMatrices_typeevalueginMatricesginMatrices_bufiwu_xlat3u_xlat4u_xlat5u_xlat6u_xlat7 outVertices4_origX4X_typevalueoutVertices4_origX4X outVertices4_origX4X_buf inVertices3_type value inVertices3 inVertices3_bufinSkin3_typevalue!inSkin3!inSkin3_buf# outVertices3_origX3X_typevalueoutVertices3_origX3X outVertices3_origX3X_bufinVertices2_typevalueinVertices2inVertices2_bufinSkin2_typevalueinSkin2inSkin2_buf EoutVertices2_origX2X_typeEvalueGoutVertices2_origX2X GoutVertices2_origX2X_bufIpinVertices1_typepvaluerinVertices1rinVertices1_buftinSkin1_typevalueinSkin1inSkin1_buf outVertices1_origX1X_typevalueoutVertices1_origX1X outVertices1_origX1X_buf#inVertices0_type#value%inVertices0%inVertices0_buf'8inSkin0_type8value:inSkin0:inSkin0_buf< outVertices0_origX0X_typevalueoutVertices0_origX0X outVertices0_origX0X_bufu_xlat_precise_vec4u_xlat_precise_ivec4u_xlat_precise_bvec4u_xlat_precise_uvec4G GGGH#H# H#@H#`GG"G!G8H9#G: H;H;#G;G="G=!GRHS#GTHUHU#GUGW"GW! GdHe#Gf@HgHg#GgGi"Gi! GH#G H#GG"G!G H #G  H H #G G"G!GH#G H!H!#G!G#"G#!GH#G H#GG"G!GH#G HH#GG"G!GH#GHH#GG"G!GDHE#GF HG#GGGI"GI! GoHp#Gq HrHr#GrGt"Gt!GH#GHH#GG"G!GH#G H#GG"G! G"H##G$ H%H%#G%G'"G'!G7H8#G9H:H:#G:G<"G<!GH#G H#GG"G! G ! ;     ; +   +  ; +  " ;"#;*+,3 43 54;56+ 78 798:9;: <;;<=+GK3 O;OP+ QR QSRTSUT VU;VW aK;ab+ cd cedfegf hg;hi;aw+y+~+;a++ + ;5+ + +;5 3+3?;5 7 ;  7         ;  Q !  "!;"# 7 ; 7 ; Q ;D 7EDFEGF HG;HIo 7poqprq sr;st Q ; 7 ;" 7#"$#%$ &%;&'7 Q8798:9 ;:;;< 7 ; 4   + @, QQ6;;;;A = A = >=!  A$ = %$A& = '&~ (' )%(>#)= +#A-, = .-/+.>*/=0*20121= >#A?=,>,,= @?|3A@= B#AC=,B,= DC|3ED= F#AH=,F,G= IH|3JIPKLAEJ=4M6O 4NML>6N= X#AYW,X,,= ZY|[Z>P[=\PA]G = ^]|_^`\_>P`=jPAki,j,,= lk|3ml=nPAoi,n,= po|3qp=rPAsi,r,G= ts|3utPKvmqu>bv=xPAzi,x,y= {z|3|{=}PAi,},~= |3=PAi,,= |3PK|>w=PAi,,= |3=PAi,,= |3=PAi,,= |3PK>=PAi,,= |3=PAi,,= |3=PAi,,= |3PK=4O 4>Ab =3A >Aw =3AQ>A =3A>A =3A7>A67>=4=463A >AbQ=3A >AwQ=3AQ>AQ=3A>AQ=3A7>=4=463AQ>Ab=3A >Aw=3AQ>A=3A>=4=463A>= #A =3| A,,,>= #AQ=3| A,,>= #A=3| A,,G>22!A = A,7= >=A = A,7= ~  >#= #A,,7= >*=*= #A,,,= |3= #A,,= |3= #A,,G= |3PK=46O 4>6= $#A%#,$,,= &%|'&>P'=(PA)G,7= *)|+*,(+>P,=-PA.i,-,,= /.|30/=1PA2i,1,= 32|343=5PA6i,5,G= 76|387PK9048>b9=:PA;i,:,y= <;|3=<=>PA?i,>,~= @?|3A@=BPACi,B,= DC|3EDPKF=AE>wF=GPAHi,G,= IH|3JI=KPALi,K,= ML|3NM=OPAPi,O,= QP|3RQPKSJNR>S=TPAUi,T,= VU|3WV=XPAYi,X,= ZY|3[Z=\PA]i,\,= ^]|3_^PK`W[_=4aO 4ba`>bAcb =3dcAe >edAfw =3gfAhQ>hgAi =3jiAk>kjAl =3mlAn7>nmAo67>o=4p=4q63rpqAs >srAtbQ=3utAv >vuAwwQ=3xwAyQ>yxAzQ=3{zA|>|{A}Q=3~}A7>~=4=463AQ>Ab=3A >Aw=3AQ>A=3A>=4=463A>= #A =3| A,,,>= #AQ=3| A,,>= #A=3| A,,G>A = A,= >=YA = A,= ~  >#= #A,,= >*=*= #A,,,= |3= #A,,= |3= #A,,G= |3PK=46O 4>6= #A,,,= |>P=PAG,= |>P=PAi,,,= |3=PAi,,= |3=PAi,,G= |3PK>b=PAi,,y= |3=PAi,,~= |3=PAi,,= |3PK>w=PAi,,= |3=PAi,,= |3=PAi,,= |3PK>=PAi,,= |3  = PA i, ,=  |3 =PAi,,= |3PK =4O 4>Ab =3A >Aw =3AQ>A =3A>A =3 A!7>! A"67>"=4#=4$63%#$A& >&%A'bQ=3('A) >)(A*wQ=3+*A,Q>,+A-Q=3.-A/>/.A0Q=310A27>21=43=4463534A6Q>65A7b=387A9 >98A:w=3;:A<Q><;A==3>=A?>?>=4@=4A63B@AAC>CB= J#AK =3LK| MLANI,J,,>NM= O#APQ=3QP| RQASI,O,>SR= T#AU=3VU| WVAXI,T,G>XWYAZ = [ZA\,Q= ]\^[]>^=_a_` `Ab = cbAd,Q= ed~ fe gcf>#g= h#Ai,,Q= jikhj>*k=l*nlmnm= u#Avt,u,,= wv|3xw= y#Azt,y,= {z|3|{= }#A~t,},G= ~|3PKx|=46O 4>6= #A,,,= |>P=PAG,Q= |>P=PAi,,,= |3=PAi,,= |3=PAi,,G= |3PK>b=PAi,,y= |3=PAi,,~= |3=PAi,,= |3PK>w=PAi,,= |3=PAi,,= |3=PAi,,= |3PK>=PAi,,= |3=PAi,,= |3=PAi,,= |3PK=4O 4>Ab =3A >Aw =3AQ>A =3A>A =3A7>A67>=4=463A >AbQ=3A >AwQ=3AQ>AQ=3A>AQ=3A7>=4=463AQ>Ab=3A >Aw=3AQ>A=3A>=4=463A>= #A =3| A,,,>= #AQ=3| A,,>= #A=3 |  A ,,G>  nna A  =  A, = >=A = A, = ~  >#= #A,, = >*=*! ! = (#A)',(,,= *)|3+*= ,#A-',,,= .-|3/.= 0#A1',0,G= 21|332PK4+/3=456O 4654>66= =#A><,=,,= ?>|@?>P@=APABG, = CB|DCEAD>PE=FPAGi,F,,= HG|3IH=JPAKi,J,= LK|3ML=NPAOi,N,G= PO|3QPPKRIMQ>bR=SPATi,S,y= UT|3VU=WPAXi,W,~= YX|3ZY=[PA\i,[,= ]\|3^]PK_VZ^>w_=`PAai,`,= ba|3cb=dPAei,d,= fe|3gf=hPAii,h,= ji|3kjPKlcgk>l=mPAni,m,= on|3po=qPAri,q,= sr|3ts=uPAvi,u,= wv|3xwPKyptx=4zO 4{zy>{A|b =3}|A~ >~}Aw =3AQ>A =3A>A =3A7>A67>=4=463A >AbQ=3A >AwQ=3AQ>AQ=3A>AQ=3A7>=4=463AQ>Ab=3A >Aw=3AQ>A=3A>=4=463A>= #A =3| A,,,>= #AQ=3| A,,>= #A=3| A,,G>!!aa!!8@A batchMainComputeSkinCBuffer inMatrices inSkin0inSkin1inSkin2inSkin3inSkin4 inVertices0 inVertices1 inVertices2 inVertices3 inVertices4 outVertices0  outVertices1  outVertices2  outVertices3 outVertices4w#  GLSL.std.450main @mainu_xlatb0 gl_GlobalInvocationIDComputeSkinCBufferg_VertCountsg_BatchOffsetsg_PoseOffsets g_poseBufferMaxIndex#u_xlatu0*u_xlatb116u_xlat19inVertices4_type9value;inVertices4;inVertices4_buf=Su_xlat2cu_xlati11finSkin4_typefvaluehinSkin4hinSkin4_bufjtu_xlat3winMatrices_typewvalueyinMatricesyinMatrices_buf{u_xlat4u_xlat5u_xlat6u_xlat7u_xlat8u_xlat9u_xlat10 outVertices4_origX4X_typevalue outVertices4_origX4X outVertices4_origX4X_buf BinVertices3_typeBvalueDinVertices3DinVertices3_bufFdinSkin3_typedvaluefinSkin3finSkin3_bufh outVertices3_origX3X_typevalueoutVertices3_origX3X outVertices3_origX3X_buf'inVertices2_type'value)inVertices2)inVertices2_buf+IinSkin2_typeIvalueKinSkin2KinSkin2_bufM outVertices2_origX2X_typevalueoutVertices2_origX2X outVertices2_origX2X_buf inVertices1_type valueinVertices1inVertices1_buf.inSkin1_type.value0inSkin10inSkin1_buf2 outVertices1_origX1X_typevalueoutVertices1_origX1X outVertices1_origX1X_bufinVertices0_typevalueinVertices0inVertices0_bufinSkin0_typevalueinSkin0inSkin0_buf outVertices0_origX0X_typevalueoutVertices0_origX0X outVertices0_origX0X_bufu_xlat_precise_vec4u_xlat_precise_ivec4u_xlat_precise_bvec4u_xlat_precise_uvec4G GGGH#H# H#@H#`GG"G!G8H9#G:H;H;#G;G="G=!GeHf#GgHhHh#GhGj"Gj! GvHw#Gx@HyHy#GyG{"G{! GH#G H #G G "G !GAHB#GCHDHD#GDGF"GF!GcHd#GeHfHf#GfGh"Gh!GH#GH#GG"G!G&H'#G(H)H)#G)G+"G+!GHHI#GJHKHK#GKGM"GM!GH#GH#GG"G! G H #G HH#GG"G!G-H.#G/H0H0#G0G2"G2!GH#GH#GG"G! GH#GHH#GG"G!GH#GHH#GG"G!GH#GH#GG"G! G ! ;     ; +   +  ; +  " ;"#;*+,3 43 54;56+ 78 798:9;: <;;<=+G+LQ3 RQ;RS+U+Z^3 b;bc+ de dfegfhg ih;ij;Rt+ uv uwvxwyx zy;z{;R+;R++ + ;5+ + +;5 3+ ;5+3?;5;5 7      ;  A 7BACBDC ED;EFc ddcedfe gf;gh 7 ;& 7'&(')( *);*+H dIHJIKJ LK;LM 7 ;  7      ;- d.-/.0/ 10;12 7 ; 7 ; d ; 7 ; 4   + @, dd6;;;;A = A = >=! + A$ = %$A& = '&~ (' )%(>#)= +#A-, = .-/+.>*/=0*20121= >#A?=,>,,= @?|3A@= B#AC=,B,= DC|3ED= F#AH=,F,G= IH|3JI= K#AM=,K,L= NM|3ONP4PAEJO>6P= T#AV=,T,U= WV|3XW= Y#A[=,Y,Z= \[|3]\P^_X]=Q`SOQa`_>Sa= k#Alj,k,,= ml|nm>cn=ocApG = qp|rqsor>cs=|cA}{,|,,= ~}|3~=cA{,,= |3=cA{,,G= |3PQ>t=cA{,,U= |3=cA{,,Z= |3=cA{,,= |3PQ>=cA{,,= |3=cA{,,= |3=cA{,,= |3PQ>=cA{,,= |3=cA{,,= |3=cA{,,= |3PQ=4O 4>At =3A >A =3Ad>A =3A>A =3A>=46OQ=4O 4>A>=4=43A >Atd=3A >Ad=3Ad>Ad=3A>Ad=3A>=4=43Ad>At=3A >A=3Ad>A=3A>=4=43A>A6=3AS>=4OQ=QS3A>=4OQ=QS3A6 >=4OQ=QS3A6d>= #A =3| A , ,,>= #Ad=3| A ,,>= #A=3| A ,,G>= #A=3| A  ,,L> = !#A"6 =3#"| $#A% ,!,U>%$= &#A'6d=3('| )(A* ,&,Z>*)22!+A, = -,A.,= /.0-/>0=13122A4 = 54A6,= 76~ 87 958>#9= :#A;,,= <;=:<>*==>*@>?@?= G#AHF,G,,= IH|3JI= K#ALF,K,= ML|3NM= O#APF,O,G= QP|3RQ= S#ATF,S,L= UT|3VUP4WJNRV>6W= X#AYF,X,U= ZY|3[Z= \#A]F,\,Z= ^]|3_^P^`[_=QaSOQba`>Sb= i#Ajh,i,,= kj|lk>cl=mcAnG,= on|poqmp>cq=rcAs{,r,,= ts|3ut=vcAw{,v,= xw|3yx=zcA{{,z,G= |{|3}|PQ~uy}>t~=cA{,,U= |3=cA{,,Z= |3=cA{,,= |3PQ>=cA{,,= |3=cA{,,= |3=cA{,,= |3PQ>=cA{,,= |3=cA{,,= |3=cA{,,= |3PQ=4O 4>At =3A >A =3Ad>A =3A>A =3A>=46OQ=4O 4>A>=4=43A >Atd=3A >Ad=3Ad>Ad=3A>Ad=3A>=4=43Ad>At=3A >A=3Ad>A=3A>=4=43A>A6=3AS>=4OQ=QS3A>=4OQ=QS3A6 >=4OQ=QS3A6d>= #A =3| A,,,>= #Ad=3| A,,>= #A=3| A,,G>= #A=3| A,,L>= #A6 =3| A ,,U>  = #A 6d=3  |  A, ,Z>@@3A = A,= >=A = A,= ~  >#= #A ,,= ! "!>*"=#*%#$%$= ,#A-+,,,,= .-|3/.= 0#A1+,0,= 21|332= 4#A5+,4,G= 65|376= 8#A9+,8,L= :9|3;:P4</37;>6<= =#A>+,=,U= ?>|3@?= A#AB+,A,Z= CB|3DCP^E@D=QFSOQGFE>SG= N#AOM,N,,= PO|QP>cQ=RcASG,= TS|UTVRU>cV=WcAX{,W,,= YX|3ZY=[cA\{,[,= ]\|3^]=_cA`{,_,G= a`|3baPQcZ^b>tc=dcAe{,d,U= fe|3gf=hcAi{,h,Z= ji|3kj=lcAm{,l,= nm|3onPQpgko>p=qcAr{,q,= sr|3ts=ucAv{,u,= wv|3xw=ycAz{,y,= {z|3|{PQ}tx|>}=~cA{,~,= |3=cA{,,= |3=cA{,,= |3PQ=4O 4>At =3A >A =3Ad>A =3A>A =3A>=46OQ=4O 4>A>=4=43A >Atd=3A >Ad=3Ad>Ad=3A>Ad=3A>=4=43Ad>At=3A >A=3Ad>A=3A>=4=43A>A6=3AS>=4OQ=QS3A>=4OQ=QS3A6 >=4OQ=QS3A6d>= #A =3| A,,,>= #Ad=3| A,,>= #A=3| A,,G>= #A=3| A,,L>= #A6 =3| A,,U>= #A6d=3| A,,Z>%%A = A,d= >=A = A,d= ~  >#= #A,,d= >*=*    = #A,,,= |3= #A,,= |3= #A,,G= |3= #A,,L= |3 P4! >6!= "#A#,",U= $#|3%$= &#A',&,Z= ('|3)(P^*%)=Q+SOQ,+*>S,= 3#A42,3,,= 54|65>c6=7cA8G,d= 98|:9;7:>c;=<cA={,<,,= >=|3?>=@cAA{,@,= BA|3CB=DcAE{,D,G= FE|3GFPQH?CG>tH=IcAJ{,I,U= KJ|3LK=McAN{,M,Z= ON|3PO=QcAR{,Q,= SR|3TSPQULPT>U=VcAW{,V,= XW|3YX=ZcA[{,Z,= \[|3]\=^cA_{,^,= `_|3a`PQbY]a>b=ccAd{,c,= ed|3fe=gcAh{,g,= ih|3ji=kcAl{,k,= ml|3nmPQofjn=4pO 4qpo>qArt =3srAt >tsAu =3vuAwd>wvAx =3yxAz>zyA{ =3|{A}>}|=4~6OQ~~=4O 4>A>=4=43A >Atd=3A >Ad=3Ad>Ad=3A>Ad=3A>=4=43Ad>At=3A >A=3Ad>A=3A>=4=43A>A6=3AS>=4OQ=QS3A>=4OQ=QS3A6 >=4OQ=QS3A6d>= #A =3| A,,,>= #Ad=3| A,,>= #A=3| A,,G>= #A=3| A,,L>= #A6 =3| A,,U>= #A6d=3| A,,Z>  A = A, = >=A = A, = ~  >#= #A,, = >*=*= #A,,,= |3= #A,,= |3= #A,,G= |3= #A,,L= |3P4>6= #A,,U= |3  = #A , ,Z=  |3 P^ =QSOQ>S= #A,,,= |>c=cAG, = | >c =!cA"{,!,,= #"|3$#=%cA&{,%,= '&|3('=)cA*{,),G= +*|3,+PQ-$(,>t-=.cA/{,.,U= 0/|310=2cA3{,2,Z= 43|354=6cA7{,6,= 87|398PQ:159>:=;cA<{,;,= =<|3>==?cA@{,?,= A@|3BA=CcAD{,C,= ED|3FEPQG>BF>G=HcAI{,H,= JI|3KJ=LcAM{,L,= NM|3ON=PcAQ{,P,= RQ|3SRPQTKOS=4UO 4VUT>VAWt =3XWAY >YXAZ =3[ZA\d>\[A] =3^]A_>_^A` =3a`Ab>ba=4c6OQdcc=4eO 4fed>fAg>g=4h=4i3jhiAk >kjAltd=3mlAn >nmAod=3poAqd>qpArd=3srAt>tsAud=3vuAw>wv=4x=4y3zxyA{d>{zA|t=3}|A~ >~}A=3Ad>A=3A>=4=43A>A6=3AS>=4OQ=QS3A>=4OQ=QS3A6 >=4OQ=QS3A6d>= #A =3| A,,,>= #Ad=3| A,,>= #A=3| A,,G>= #A=3| A,,L>= #A6 =3| A,,U>= #A6d=3| A,,Z>33!!8@A batchMainComputeSkinCBuffer inMatrices inSkin0inSkin1inSkin2inSkin3inSkin4 inVertices0 inVertices1 inVertices2 inVertices3 inVertices4 outVertices0  outVertices1  outVertices2  outVertices3 outVertices48#  GLSL.std.450main @mainu_xlatb0 gl_GlobalInvocationIDComputeSkinCBufferg_VertCountsg_BatchOffsetsg_PoseOffsets g_poseBufferMaxIndex#u_xlatu0*u_xlatb126u_xlat19inVertices4_type9value;inVertices4;inVertices4_buf=Qu_xlat2gu_xlat3wu_xlati12zinSkin4_typezvalue|inSkin4|inSkin4_buf~u_xlat4inMatrices_typevalueinMatricesinMatrices_bufu_xlat5u_xlat6u_xlat7u_xlat8u_xlat9u_xlat10u_xlat11 7outVertices4_origX4X_type7value9outVertices4_origX4X 9outVertices4_origX4X_buf;inVertices3_typevalueinVertices3inVertices3_bufinSkin3_typevalueinSkin3inSkin3_buf ]outVertices3_origX3X_type]value_outVertices3_origX3X _outVertices3_origX3X_bufainVertices2_typevalueinVertices2inVertices2_bufinSkin2_typevalueinSkin2inSkin2_buf outVertices2_origX2X_typevalueoutVertices2_origX2X outVertices2_origX2X_bufinVertices1_typevalueinVertices1inVertices1_bufinSkin1_typevalueinSkin1inSkin1_buf outVertices1_origX1X_typevalueoutVertices1_origX1X outVertices1_origX1X_bufinVertices0_typevalueinVertices0inVertices0_buf*inSkin0_type*value,inSkin0,inSkin0_buf. outVertices0_origX0X_typevalueoutVertices0_origX0X outVertices0_origX0X_bufu_xlat_precise_vec4 u_xlat_precise_ivec4u_xlat_precise_bvec4u_xlat_precise_uvec4G GGGH#H# H#@H#`GG"G!G8H9#G:(H;H;#G;G="G=!GyHz#G{H|H|#G|G~"G~! GH#G@HH#GG"G! G6H7#G8(H9#G9G;"G;!GH#G(HH#GG"G!GH#GHH#GG"G!G\H]#G^(H_#G_Ga"Ga!GH#G(HH#GG"G!GH#GHH#GG"G!GH#G(H#GG"G! GH#G(HH#GG"G!GH#GHH#GG"G!GH#G(H#GG"G! GH#G(HH#GG"G!G)H*#G+H,H,#G,G."G.!GH#G(H#GG"G! G ! ;     ; +   +  ; +  " ;"#;*+,3 43 54;56+ 7 8 798:9;: <;;<=+?+L;5Q+S+X+]+b;5g+i+n r3 v;vw+ xy xzy{z|{ }|;}~;5+   ;3 ;;+ ;5+ + +;5 3+ ;5+3?;5;56 7768798 :9;:; 7 ; x ;\ 7]\^]_^ `_;`a 7 ; x ; 7 ; 7 ; x ; 7 ; 7 ;) x*)+*,+ -,;-. 7 ; 4         + @, xx6;;  ; ;A = A = >=! n A$ = %$A& = '&~ (' )%(>#)= +#A-, = .-/+.>*/=0*20121= >#A@=,>,?= A@|3BA= C#AD=,C,,= ED|3FE= G#AH=,G,= IH|3JI= K#AM=,K,L= NM|3ONP4PBFJO>6P= R#AT=,R,S= UT|3VU= W#AY=,W,X= ZY|3[Z= \#A^=,\,]= _^|3`_= a#Ac=,a,b= dc|3edP4fV[`e>Qf= h#Aj=,h,i= kj|3lk= m#Ao=,m,n= po|3qpPrslq=4tgO 4uts>gu= #A~,,,= |>w=wAL = |>w=wA,,,= |3=wA,,= |3=wA,,L= |3P=4O 4>=wA,,S= |3=wA,,X= |3=wA,,]= |3P>=wA,,i= |3=wA,,n= |3=wA,,= |3P>=wA,,= |3=wA,,= |3=wA,,= |3P=4O 4>A =3A >A =3Ax>A =3A>A =3A>=46O=4O 4>A>=4=43A >Ax=3A >Ax=3Ax>Ax=3A>Ax=3A>=4=43Ax>A=3A >A=3Ax>A=3A>=4=43A > =4 QOr   =4 6O 4   >6 =4O=46O3A>=4O=46O3A >=4O=46O3Ax>=4 QOr!  =4"gO 4#"!>g#=4$O%$$=4&gO'&&3(%'A)>)(=4*O+**=4,gO-,,3.+-A/>/.=40O100=42gO3223413A5g >54= <#A= =3>=| ?>A@;,<,,>@?= A#ABx=3CB| DCAE;,A,>ED= F#AG=3HG| IHAJ;,F,L>JI= K#AL=3ML| NMAO;,K,?>ON= P#AQ =3RQ| SRAT;,P,S>TS= U#AVx=3WV| XWAY;,U,X>YX= Z#A[=3\[| ]\A^;,Z,]>^]= _#A`=3a`| baAc;,_,b>cb= d#Aeg =3fe| gfAh;,d,i>hg= i#Ajgx=3kj| lkAm;,i,n>ml22!nAo = poAq,= rqspr>s=tvtuuAw = xwAy,= zy~ {z |x{>#|= }#A~,,= ~}>*=*= #A,,?= |3= #A,,,= |3= #A,,= |3= #A,,L= |3P4>6= #A,,S= |3= #A,,X= |3= #A,,]= |3= #A,,b= |3P4>Q= #A,,i= |3= #A,,n= |3Pr=4gO 4>g= #A,,,= |>w=wAL,= |>w=wA,,,= |3=wA,,= |3=wA,,L= |3P=4O 4>=wA,,S= |3=wA,,X= |3=wA,,]= |3P>=wA,,i= |3=wA,,n= |3=wA,,= |3P>=wA,,= |3=wA,,= |3=wA,,= |3P=4O 4>A =3A >A =3Ax>A =3A>A =3A > =4 6O   =4 O 4   > A>=4=43A >Ax=3A >Ax=3Ax>Ax=3A>Ax=3A>=4=4 3! A"x>"!A#=3$#A% >%$A&=3'&A(x>('A)=3*)A+>+*=4,=4-3.,-A/>/.=40QOr100=426O 4321>63=44O544=466O7663857A9>98=4:O;::=4<6O=<<3>;=A? >?>=4@OA@@=4B6OCBB3DACAEx>ED=4FQOrGFF=4HgO 4IHG>gI=4JOKJJ=4LgOMLL3NKMAO>ON=4POQPP=4RgOSRR3TQSAU>UT=4VOWVV=4XgOYXX3ZWYA[g >[Z= b#Ac =3dc| edAfa,b,,>fe= g#Ahx=3ih| jiAka,g,>kj= l#Am=3nm| onApa,l,L>po= q#Ar=3sr| tsAua,q,?>ut= v#Aw =3xw| yxAza,v,S>zy= {#A|x=3}|| ~}Aa,{,X>~= #A=3| Aa,,]>= #A=3| Aa,,b>= #Ag =3| Aa,,i>= #Agx=3| Aa,,n>vA = A,= >=A = A,= ~  >#= #A,,= >*=*= #A,,?= |3= #A,,,= |3= #A,,= |3= #A,,L= |3P4>6= #A,,S= |3= #A,,X= |3= #A,,]= |3= #A,,b= |3P4>Q= #A,,i= |3= #A,,n= |3Pr=4gO 4>g= #A,,,= |>w=wAL,= |>w=wA,,,= |3=wA,,= |3=wA,,L= |3P=4O 4>=wA,,S= |3=wA,,X= |3=wA,,]= |3P>=wA ,,i=  |3  = wA , ,n=  |3=wA,,= |3P >=wA,,= |3=wA,,= |3=wA,,= |3 P! =4"O 4#"!>#A$ =3%$A& >&%A' =3('A)x>)(A* =3+*A,>,+A- =3.-A/>/.=406O100=42O 4321>3A4>4=45=463756A8 >87A9x=3:9A; >;:A<x=3=<A>x>>=A?x=3@?AA>A@ABx=3CBAD>DC=4E=4F3GEFAHx>HGAI=3JIAK >KJAL=3MLANx>NMAO=3POAQ>QP=4R=4S3TRSAU>UT=4VQOrWVV=4X6O 4YXW>6Y=4ZO[ZZ=4\6O]\\3^[]A_>_^=4`Oa``=4b6Ocbb3dacAe >ed=4fOgff=4h6Oihh3jgiAkx>kj=4lQOrmll=4ngO 4onm>go=4pOqpp=4rgOsrr3tqsAu>ut=4vOwvv=4xgOyxx3zwyA{>{z=4|O}||=4~gO~~3}Ag >= #A =3| A,,,>= #Ax=3| A,,>= #A=3| A,,L>= #A=3| A,,?>= #A =3| A,,S>= #Ax=3| A,,X>= #A=3| A,,]>= #A=3| A,,b>= #Ag =3| A,,i>= #Agx=3| A,,n>A = A,x= >=A = A,x= ~  >#= #A,,x= >*=*= #A,,?= |3= #A,,,= |3= #A,,= |3= #A,,L= |3P4>6= #A,,S= |3= #A,,X= |3= #A,,]= |3= #A,,b= |3P4>Q= #A,,i= |3= #A,,n= |3Pr=4gO 4>g= #A , ,,=  |  >w = wAL,x= | >w=wA,,,= |3=wA,,= |3=wA,,L= |3P=4O 4 > =!wA",!,S= #"|3$#=%wA&,%,X= '&|3('=)wA*,),]= +*|3,+P-$(,>-=.wA/,.,i= 0/|310=2wA3,2,n= 43|354=6wA7,6,= 87|398P:159>:=;wA<,;,= =<|3>==?wA@,?,= A@|3BA=CwAD,C,= ED|3FEPG>BF=4HO 4IHG>IAJ =3KJAL >LKAM =3NMAOx>ONAP =3QPAR>RQAS =3TSAU>UT=4V6OWVV=4XO 4YXW>YAZ>Z=4[=4\3][\A^ >^]A_x=3`_Aa >a`Abx=3cbAdx>dcAex=3feAg>gfAhx=3ihAj>ji=4k=4l3mklAnx>nmAo=3poAq >qpAr=3srAtx>tsAu=3vuAw>wv=4x=4y3zxyA{>{z=4|QOr}||=4~6O 4~}>6=4O=46O3A>=4O=46O3A >=4O=46O3Ax>=4QOr=4gO 4>g=4O=4gO3A>=4O=4gO3A>=4O=4gO3Ag >= #A =3| A,,,>= #Ax=3| A,,>= #A=3| A,,L>= #A=3| A,,?>= #A =3| A,,S>= #Ax=3| A,,X>= #A=3| A,,]>= #A=3| A,,b>= #Ag =3| A,,i>= #Agx=3| A,,n>A = A, = >=A = A, = ~  >#= #A,, = >*=*= #A,,?= |3= #A,,,= |3= #A,,= |3= #A ,,L=  |3  P4  >6 = #A, ,S= |3= #A,,X= |3= #A,,]= |3= #A,,b= |3P4>Q= #A,,i= |3! = "#A#,",n= $#|3%$Pr&!%=4'gO 4('&>g(= /#A0.,/,,= 10|21>w2=3wA4L, = 54|65736>w7=8wA9,8,,= :9|3;:=<wA=,<,= >=|3?>=@wAA,@,L= BA|3CBPD;?C=4EO 4FED>F=GwAH,G,S= IH|3JI=KwAL,K,X= ML|3NM=OwAP,O,]= QP|3RQPSJNR>S=TwAU,T,i= VU|3WV=XwAY,X,n= ZY|3[Z=\wA],\,= ^]|3_^P`W[_>`=awAb,a,= cb|3dc=ewAf,e,= gf|3hg=iwAj,i,= kj|3lkPmdhl=4nO 4onm>oAp =3qpAr >rqAs =3tsAux>utAv =3wvAx>xwAy =3zyA{>{z=4|6O}||=4~O 4~}>A>=4=43A >Ax=3A >Ax=3Ax>Ax=3A>Ax=3A>=4=43Ax>A=3A >A=3Ax>A=3A>=4=43A>=4QOr=46O 4>6=4O=46O3A>=4O=46O3A >=4O=46O3Ax>=4QOr=4gO 4>g=4O=4gO3A>=4O=4gO3A>=4O=4gO3Ag >= #A =3| A,,,>= #Ax=3| A,,>= #A=3| A,,L>= #A=3| A,,?>= #A =3| A,,S>= #Ax=3| A,,X>= #A=3| A,,]>= #A=3| A,,b>= #Ag =3| A,,i>= #Agx=3| A,,n>vv!!8@A batchMainComputeSkinCBuffer inMatrices inSkin0inSkin1inSkin2inSkin3inSkin4 inVertices0 inVertices1 inVertices2 inVertices3 inVertices4 outVertices0  outVertices1  outVertices2  outVertices3 outVertices4# # GLSL.std.450main @mainu_xlatb0 gl_GlobalInvocationIDComputeSkinCBufferg_VertCountsg_BatchOffsetsg_PoseOffsets g_poseBufferMaxIndex#u_xlatu0*u_xlatb126u_xlat19inVertices4_type9value;inVertices4;inVertices4_buf=Ou_xlat2RinSkin4_typeRvalueTinSkin4TinSkin4_bufVku_xlati12wu_xlat3zinMatrices_typezvalue|inMatrices|inMatrices_buf~u_xlat4u_xlat5u_xlat6u_xlat7u_xlat8/u_xlat9Bu_xlat10Su_xlat11 outVertices4_origX4X_typevalueoutVertices4_origX4X outVertices4_origX4X_bufinVertices3_typevalueinVertices3inVertices3_bufinSkin3_typevalueinSkin3inSkin3_buf outVertices3_origX3X_typevalueoutVertices3_origX3X outVertices3_origX3X_bufinVertices2_typevalueinVertices2inVertices2_buf.inSkin2_type.value0inSkin20inSkin2_buf2 JoutVertices2_origX2X_typeJvalueLoutVertices2_origX2X LoutVertices2_origX2X_bufNuinVertices1_typeuvaluewinVertices1winVertices1_bufyinSkin1_typevalueinSkin1inSkin1_buf outVertices1_origX1X_typevalueoutVertices1_origX1X outVertices1_origX1X_bufinVertices0_typevalueinVertices0inVertices0_bufinSkin0_typevalueinSkin0inSkin0_buf outVertices0_origX0X_typevalueoutVertices0_origX0X outVertices0_origX0X_bufu_xlat_precise_vec4u_xlat_precise_ivec4u_xlat_precise_bvec4 u_xlat_precise_uvec4G GGGH#H# H#@H#`GG"G!G8H9#G: H;H;#G;G="G=!GQHR#GSHTHT#GTGV"GV! GyHz#G{@H|H|#G|G~"G~! GH#G H#GG"G!GH#G HH#GG"G!GH#GHH#GG"G!GH#G H#GG"G!GH#G HH#GG"G!G-H.#G/H0H0#G0G2"G2!GIHJ#GK HL#GLGN"GN! GtHu#Gv HwHw#GwGy"Gy!GH#GHH#GG"G!GH#G H#GG"G! GH#G HH#GG"G!GH#GHH#GG"G!GH#G H#GG"G! G" ! ;     ; +   +  ; +  " ;"#;*+,3 43 54;56+ 78 798:9;: <;;<=+GK3;5O+ PQ PRQSRTS UT;UV+di ji;jkl3p  q;5w+ xy xzy{z|{ }|;}~ ;5+++;5++ + ;5+ + +;5 3+ ;5;5/;5B;5S+3? 7 ; 7 ; P ; 7 ; 7 ;- P.-/.0/ 10;12I 7JIKJLK ML;MNt 7utvuwv xw;xy P ; 7 ; 7 ; P ; 7 ; 4   + !@, "!6;;;; A = A = >=!  A$ = %$A& = '&~ (' )%(>#)= +#A-, = .-/+.>*/=0*20121= >#A?=,>,,= @?|3A@= B#AC=,B,= DC|3ED= F#AH=,F,G= IH|3JIPKLAEJ=4M6O 4NML>6N= W#AXV,W,,= YX|3ZY= [#A\V,[,= ]\|3^]= _#A`V,_,G= a`|3ba= c#AeV,c,d= fe|3gfP4hZ^bg>Oh=4mOOlnmm|ionAqrG=srOptss|iutivou>kvAk =A~,,,= |3Ak =A~,,= |3Ak =A~,,G= |3PK=4wO 4>wAk =A~,,= |3Ak =A~,,= |3Ak =A~,,= |3PK=4O 4>Ak =A~,,= |3Ak =A~,,= |3Ak =A~,,= |3PK=4O 4>Ak =A~,,= |3Ak =A~,,= |3Ak =A~,,= |3PK=4O 4>Aw =3A >A =3A>A =3A>A =3A7>Aw=3A >A=3A>A=3A>A=3A7>Aw=3A >A=3A>A=3A>Ak=A~,,,= |3Ak=A~,,= |3Ak=A~,,G= |3PK=4 wO 4  >w A k=  A ~, ,=  |3Ak=A~,,= |3Ak=A~,,= |3PK=4O 4>Ak=A~,,= |3! A"k=#"A$~,#,= %$|3&%A'k=('A)~,(,= *)|3+*PK,!&+=4-O 4.-,>.A0k=10A2~,1,= 32|343A5k=65A7~,6,= 87|398A:k=;:A<~,;,= =<|3>=PK?49>=4@/O 4A@?>/AACw =3DCAEB >EDAF =3GFAHB>HGAI =3JIAKB>KJAL/ =3MLANB7>NM=4OOO 4POO=4QB4RPQ>BRATw=3UTAVS >VUAW=3XWAYS>YXAZ=3[ZA\S>\[A]/=3^]A_S7>_^=4`OO 4a``=4bS4cab>ScAdw=3edAf/ >feAg=3hgAi/>ihAj=3kjAl/>lk=4mOO 4nmm=4o/4pno>wp=4q=4rOO 4srr4tqs=4uB4vtu>v=4w=4xOO 4yxx4zwy=4{S4|z{>|=4}=4~OO 4~~4}=4w4>OA67>=4=463Aw >=4=463Aw>=4O=463Aw>= #Aw =3| A,,,>= #Aw=3| A,,>= #Aw=3| A,,G>22!A = A,7= >=A = A,7= ~  >#= #A,,7= >*=*= #A,,,= |3= #A,,= |3= #A,,G= |3PK=46O 4>6= #A,,,= |3= #A,,= |3= #A,,G= |3= #A,,d= |3P4>O=4OOl|iAqG,=Op|ii>kAk =A~,,,= |3Ak =A~,,= |3Ak =A~,,G= |3PK=4wO 4>wAk =A~,,= |3Ak =A ~,,=  |3  A k =  A~, ,= |3PK =4O 4>Ak =A~,,= |3Ak =A~,,= |3Ak =A ~,,= ! |3"!PK#"=4$O 4%$#>%A&k ='&A(~,',= )(|3*)A+k =,+A-~,,,= .-|3/.A0k =10A2~,1,= 32|343PK5*/4=46O 4765>7A8w =398A: >:9A; =3<;A=>=<A> =3?>A@>@?AA =3BAAC7>CBADw=3EDAF >FEAG=3HGAI>IHAJ=3KJAL>LKAM=3NMAO7>ONAPw=3QPAR >RQAS=3TSAU>UTAV=3WVAX>XWAYk=ZYA[~,Z,,= \[|3]\A^k=_^A`~,_,= a`|3baAck=dcAe~,d,G= fe|3gfPKh]bg=4iwO 4jih>wjAkk=lkAm~,l,= nm|3onApk=qpAr~,q,= sr|3tsAuk=vuAw~,v,= xw|3yxPKzoty=4{O 4|{z>|A}k=~}A~,~,= |3Ak=A~,,= |3Ak=A~,,= |3PK=4O 4>Ak=A~,,= |3Ak=A~,,= |3Ak=A~,,= |3PK=4/O 4>/Aw =3AB >A =3AB>A =3AB>A/ =3AB7>=4OO 4=4B4>BAw=3AS >A=3AS>A=3AS>A/=3AS7>=4OO 4=4S4>SAw=3A/ >A=3A/>A=3A/>=4OO 4=4/4>w=4=4OO 44=4B4>=4=4OO 44=4S4>=4=4OO 44=4w4>OA67>=4=463Aw >=4=463Aw>=4O=463Aw>= #Aw =3| A,,,>= #Aw=3| A,,>= #Aw=3| A,,G>A = A,= >=  ^ A  =  A ,=  ~   >#= #A,,= >*=*= #A,,,= |3! = "#A#,",= $#|3%$= &#A',&,G= ('|3)(PK*!%)=4+6O 4,+*>6,= 3#A42,3,,= 54|365= 7#A82,7,= 98|3:9= ;#A<2,;,G= =<|3>== ?#A@2,?,d= A@|3BAP4C6:>B>OC=4DOOlEDD|iFEAqGG,=HGOpIHH|iJIiKFJ>kKALk =MLAN~,M,,= ON|3POAQk =RQAS~,R,= TS|3UTAVk =WVAX~,W,G= YX|3ZYPK[PUZ=4\wO 4]\[>w]A^k =_^A`~,_,= a`|3baAck =dcAe~,d,= fe|3gfAhk =ihAj~,i,= kj|3lkPKmbgl=4nO 4onm>oApk =qpAr~,q,= sr|3tsAuk =vuAw~,v,= xw|3yxAzk ={zA|~,{,= }||3~}PKty~=4O 4>Ak =A~,,= |3Ak =A~,,= |3Ak =A~,,= |3PK=4O 4>Aw =3A >A =3A>A =3A>A =3A7>Aw=3A >A=3A>A=3A>A=3A7>Aw=3A >A=3A>A=3A>Ak=A~,,,= |3Ak=A~,,= |3Ak=A~,,G= |3PK=4wO 4>wAk=A~,,= |3Ak=A~,,= |3Ak=A~,,= |3PK=4O 4>Ak=A~,,= |3Ak=A~,,= |3Ak=A~,,= |3PK=4O 4>Ak=A~,,= |3Ak=A~,,= |3Ak=A~,,= |3PK=4/O 4>/Aw =3AB >A =3AB>A =3AB>A/ =3AB7>=4 OO 4   =4 B4   >B A w=3 AS >A=3AS>A=3AS>A/=3AS7>=4OO 4=4S4>SAw=3A/ >A =3! A"/>"!A#=3$#A%/>%$=4&OO 4'&&=4(/4)'(>w)=4*=4+OO 4,++4-*,=4.B4/-.>/=40=41OO 42114302=44S4534>5=46=47OO 48774968=4:w4;9:>O;A<67><=4==4>63?=>A@w >@?=4A=4B63CABADw>DC=4EO=4F63GEFAHw>HG= O#APw =3QP| RQASN,O,,>SR= T#AUw=3VU| WVAXN,T,>XW= Y#AZw=3[Z| \[A]N,Y,G>]\ ^A_ = `_Aa,= bac`b>c=dfdeeAg = hgAi,= ji~ kj lhk>#l= m#An,,= onpmo>*p=q*sqrsr= z#A{y,z,,= |{|3}|= ~#Ay,~,= |3= #Ay,,G= |3PK}=46O 4>6= #A,,,= |3= #A,,= |3= #A,,G= |3= #A,,d= |3P4>O=4OOl|iAqG,=Op|ii>kAk =A~,,,= |3Ak =A~,,= |3Ak =A~,,G= |3PK=4wO 4>wAk =A~,,= |3Ak =A~,,= |3Ak =A~,,= |3PK=4O 4>Ak =A~,,= |3Ak =A~,,= |3Ak =A~,,= |3PK=4O 4>Ak =A~,,= |3Ak =A~,,= |3Ak =A~,,= |3PK=4O 4>Aw =3A >A =3A>A =3A>A =3A7>Aw=3A >A=3A>A=3A>A=3A7>Aw=3 A  >  A =3  A >  A=3A>Ak=A~,,,= |3Ak=A~,,= |3Ak=A~,,G= |3PK =4!wO 4"! >w"A#k=$#A%~,$,= &%|3'&A(k=)(A*~,),= +*|3,+A-k=.-A/~,.,= 0/|310PK2',1=43O 4432>4A5k=65A7~,6,= 87|398A:k=;:A<~,;,= =<|3>=A?k=@?AA~,@,= BA|3CBPKD9>C=4EO 4FED>FAGk=HGAI~,H,= JI|3KJALk=MLAN~,M,= ON|3POAQk=RQAS~,R,= TS|3UTPKVKPU=4W/O 4XWV>/XAYw =3ZYA[B >[ZA\ =3]\A^B>^]A_ =3`_AaB>a`Ab/ =3cbAdB7>dc=4eOO 4fee=4gB4hfg>BhAiw=3jiAkS >kjAl=3mlAnS>nmAo=3poAqS>qpAr/=3srAtS7>ts=4uOO 4vuu=4wS4xvw>SxAyw=3zyA{/ >{zA|=3}|A~/>~}A=3A/>=4OO 4=4/4>w=4=4OO 44=4B4>=4=4OO 44=4S4>=4=4OO 44=4w4>OA67>=4=463Aw >=4=463Aw>=4O=463Aw>= #Aw =3| A,,,>= #Aw=3| A,,>= #Aw=3| A,,G>ssfA = A, = >=A = A, = ~  >#= #A,, = >*=*= #A,,,= |3= #A,,= |3= #A,,G= |3PK=46O 4>6= #A,,,= |3= #A,,= |3= #A,,G= |3= #A,,d= |3P4>O=4OOl|iAqG,=Op|ii>kAk =A~,,,= |3A k =  A ~, ,=  |3  Ak =A~,,G= |3PK =4wO 4>wAk =A~,,= |3Ak =A~,,= |3A k =! A"~,!,= #"|3$#PK%$=4&O 4'&%>'A(k =)(A*~,),= +*|3,+A-k =.-A/~,.,= 0/|310A2k =32A4~,3,= 54|365PK7,16=48O 4987>9A:k =;:A<~,;,= =<|3>=A?k =@?AA~,@,= BA|3CBADk =EDAF~,E,= GF|3HGPKI>CH=4JO 4KJI>KALw =3MLAN >NMAO =3POAQ>QPAR =3SRAT>TSAU =3VUAW7>WVAXw=3YXAZ >ZYA[=3\[A]>]\A^=3_^A`>`_Aa=3baAc7>cbAdw=3edAf >feAg=3hgAi>ihAj=3kjAl>lkAmk=nmAo~,n,,= po|3qpArk=srAt~,s,= ut|3vuAwk=xwAy~,x,G= zy|3{zPK|qv{=4}wO 4~}|>w~Ak=A~,,= |3Ak=A~,,= |3Ak=A~,,= |3PK=4O 4>Ak=A~,,= |3Ak=A~,,= |3Ak=A~,,= |3PK=4O 4>Ak=A~,,= |3Ak=A~,,= |3Ak=A~,,= |3PK=4/O 4>/Aw =3AB >A =3AB>A =3AB>A/ =3AB7>=4OO 4=4B4>BAw=3AS >A=3AS>A=3AS>A/=3AS7>=4OO 4=4S4>SAw=3A/ >A=3A/>A=3A/>=4OO 4=4/4>w=4=4OO 44=4B4>=4=4OO 44=4S4>=4=4OO 44=4w4>OA67>=4=463Aw >=4=463Aw>=4O=463Aw>= #Aw =3 |  A ,,,>  = #A w=3 | A, ,>= #Aw=3| A,,G>ff  !!8@A batchMainComputeSkinCBuffer inMatrices inSkin0inSkin1inSkin2inSkin3inSkin4 inVertices0 inVertices1 inVertices2 inVertices3 inVertices4 outVertices0  outVertices1  outVertices2  outVertices3 outVertices4X#   GLSL.std.450main @mainu_xlatb0 gl_GlobalInvocationIDComputeSkinCBufferg_VertCountsg_BatchOffsetsg_PoseOffsets g_poseBufferMaxIndex#u_xlatu0*u_xlatb136u_xlat19inVertices4_type9value;inVertices4;inVertices4_buf=Su_xlat2bu_xlat3einSkin4_typeevalueginSkin4ginSkin4_bufi}u_xlati13u_xlat4inMatrices_typevalueinMatricesinMatrices_bufu_xlat5u_xlat6u_xlat7u_xlat8u_xlat9?u_xlat10Ru_xlat11cu_xlat12 outVertices4_origX4X_typevalueoutVertices4_origX4X outVertices4_origX4X_bufinVertices3_typevalueinVertices3inVertices3_bufinSkin3_typevalueinSkin3inSkin3_buf FoutVertices3_origX3X_typeFvalueHoutVertices3_origX3X HoutVertices3_origX3X_bufJinVertices2_typevalueinVertices2inVertices2_bufinSkin2_typevalueinSkin2inSkin2_buf outVertices2_origX2X_typevalueoutVertices2_origX2X outVertices2_origX2X_bufinVertices1_typevalueinVertices1inVertices1_buf0inSkin1_type0value2inSkin12inSkin1_buf4 boutVertices1_origX1X_typebvaluedoutVertices1_origX1X doutVertices1_origX1X_buffinVertices0_typevalueinVertices0inVertices0_bufinSkin0_typevalueinSkin0inSkin0_buf outVertices0_origX0X_typevalueoutVertices0_origX0X outVertices0_origX0X_bufu_xlat_precise_vec4u_xlat_precise_ivec4u_xlat_precise_bvec4u_xlat_precise_uvec4G GGGH#H# H#@H#`GG"G!G8H9#G:H;H;#G;G="G=!GdHe#GfHgHg#GgGi"Gi! GH#G@HH#GG"G! GH#GH#GG"G!GH#GHH#GG"G!GH#GHH#GG"G!GEHF#GGHH#GHGJ"GJ!GH#GHH#GG"G!GH#GHH#GG"G!GH#GH#GG"G! G H#GHH#GG"G!G/H0#G1H2H2#G2G4"G4!GaHb#GcHd#GdGf"Gf! GH#GHH#GG"G!GH#GHH#GG"G!GH#GH#GG"G! G ! ;     ; +   +  ; +  " ;"#;*+,3 43 54;56+ 78 798:9;: <;;<=+G+LQ3 RQ;RS+U+Z^3;5b+ cd cedfegf hg;hi{ |{;|}  ;5+   ; ;5+;5++ + ;5+ + +;5 3+ + ;5;5?;5R;5c+3? 7 ; 7 ; c ;E 7FEGFHG IH;IJ 7 ; c ; 7 ;  7  ;/ c0/1021 32;34a 7bacbdc ed;ef 7 ; c ; 7 ; 4   + @, 6;;;;A = A = >=!  A$ = %$A& = '&~ (' )%(>#)= +#A-, = .-/+.>*/=0*20121= >#A?=,>,,= @?|3A@= B#AC=,B,= DC|3ED= F#AH=,F,G= IH|3JI= K#AM=,K,L= NM|3ONP4PAEJO>6P= T#AV=,T,U= WV|3XW= Y#A[=,Y,Z= \[|3]\P^_X]=Q`SOQa`_>Sa= j#Aki,j,,= lk|3ml= n#Aoi,n,= po|3qp= r#Asi,r,G= ts|3ut= v#Awi,v,L= xw|3yxP4zmquy>bz=4~bO^~~|{AG=O|{{>}A} =A,,,= |3A} =A,,= |3A} =A,,G= |3PQ=4O 4>A} =A,,U= |3A} =A,,Z= |3A} =A,,= |3PQ=4O 4>A} =A,,= |3A} =A,,= |3A} =A,,= |3PQ=4O 4>A} =A,,= |3A} =A,,= |3A} =A,,= |3PQ=4O 4>A =3A >A =3A>A =3A>A =3A>A=3A >A=3A>A=3A>A=3A>A=3A >A=3A>A=3A>A }=  A , ,,=  |3  A}=A,,= |3A}=A,,G= |3PQ =4O 4>A}=A,,U= |3A }=! A",!,Z= #"|3$#A%}=&%A',&,= ('|3)(PQ*$)=4+O 4,+*>,A-}=.-A/,.,= 0/|310A2}=32A4,3,= 54|365A7}=87A9,8,= :9|3;:PQ<16;=4=O 4>=<>>A@}=A@AB,A,= CB|3DCAE}=FEAG,F,= HG|3IHAJ}=KJAL,K,= ML|3NMPQODIN=4P?O 4QPO>?QAS =3TSAUR >UTAV =3WVAXR>XWAY =3ZYA[R>[ZA\? =3]\A^R>^]=4_bO 4`__=4aR4b`a>RbAd=3edAfc >feAg=3hgAic>ihAj=3kjAlc>lkAm?=3nmAoc>on=4pbO 4qpp=4rc4sqr>csAt=3utAv? >vuAw=3xwAy?>yxAz=3{zA|?>|{=4}bO 4~}}=4?4~>=4=4bO 44=4R4>=4=4bO 44=4c4>=4=4bO 44=44>b=46OQ=4O 4>A>=4=43A >=4=43A>=4b=43A>A6=3AS>=4OQ=QS3A>=4OQ=QS3A6 >=4bOQ=QS3A6>= #A =3| A,,,>= #A=3| A,,>= #A=3| A,,G>= #A=3| A,,L>= #A6 =3| A,,U>= #A6=3| A,,Z>22!A = A,= >=iA = A,= ~  >#= #A,,= >*=*= #A,,,= |3= #A,,= |3= #A,,G= |3= #A,,L= |3P4>6= #A ,,U=  |3  = #A , ,Z=  |3P^ =QSOQ>S= #A,,,= |3= #A,,= |3 = !#A",!,G= #"|3$#= %#A&,%,L= '&|3('P4) $(>b)=4*bO^+**|{,+A-G,=.-O/..|{0/{1,0>}1A2} =32A4,3,,= 54|365A7} =87A9,8,= :9|3;:A<} ==<A>,=,G= ?>|3@?PQA6;@=4BO 4CBA>CAD} =EDAF,E,U= GF|3HGAI} =JIAK,J,Z= LK|3MLAN} =ONAP,O,= QP|3RQPQSHMR=4TO 4UTS>UAV} =WVAX,W,= YX|3ZYA[} =\[A],\,= ^]|3_^A`} =a`Ab,a,= cb|3dcPQeZ_d=4fO 4gfe>gAh} =ihAj,i,= kj|3lkAm} =nmAo,n,= po|3qpAr} =srAt,s,= ut|3vuPQwlqv=4xO 4yxw>yAz =3{zA| >|{A} =3~}A>~A =3A>A =3A>A=3A >A=3A>A=3A>A=3A>A=3A >A=3A>A=3A>A}=A,,,= |3A}=A,,= |3A}=A,,G= |3PQ=4O 4>A}=A,,U= |3A}=A,,Z= |3A}=A,,= |3PQ=4O 4>A}=A,,= |3A}=A,,= |3A}=A,,= |3PQ=4O 4>A}=A,,= |3A}=A,,= |3A}=A,,= |3PQ=4?O 4>?A =3AR >A =3AR>A =3AR>A? =3AR>=4bO 4=4R4>RA=3Ac >A=3Ac>A=3Ac>A?=3Ac>=4bO 4=4c4>cA=3A? >A=3A?>A =3  A ?>  =4 bO 4   =4?4 >=4=4bO 44=4R4>=4=4bO 44=4c4>=4=4bO 44=4 4! >b!=4"6OQ#""=4$O 4%$#>%A&>&=4'=4(3)'(A* >*)=4+=4,3-+,A.>.-=4/b=4031/0A2>21A36=343A5S>54=46OQ766=Q8S3978A:>:9=4;OQ<;;=Q=S3><=A?6 >?>=4@bOQA@@=QBS3CABAD6>DC= K#AL =3ML| NMAOJ,K,,>ON= P#AQ=3RQ| SRATJ,P,>TS= U#AV=3WV| XWAYJ,U,G>YX= Z#A[=3\[| ]\A^J,Z,L>^]= _#A`6 =3a`| baAcJ,_,U>cb= d#Ae6=3fe| gfAhJ,d,Z>hgiAj = kjAl,= mlnkm>n=oqoppAr = srAt,= ut~ vu wsv>#w= x#Ay,,= zy{xz>*{=|*~|}~}= #A,,,= |3= #A,,= |3= #A,,G= |3= #A,,L= |3P4>6= #A,,U= |3= #A,,Z= |3P^=QSOQ>S= #A,,,= |3= #A,,= |3= #A,,G= |3= #A,,L= |3P4>b=4bO^|{AG,=O|{{>}A} =A,,,= |3A} =A,,= |3A} =A,,G= |3PQ=4O 4>A} =A,,U= |3A} =A,,Z= |3A} =A,,= |3PQ=4O 4>A} =A,,= |3A} =A,,= |3A} =A,,= |3PQ=4O 4>A} =A,,= |3A} =A,,= |3A} =A,,= |3PQ=4O 4>A =3 A  >  A  =3  A >  A =3A>A =3A>A=3A >A=3A>A=3A>A=3A>A =3! A" >"!A#=3$#A%>%$A&=3'&A(>('A)}=*)A+,*,,= ,+|3-,A.}=/.A0,/,= 10|321A3}=43A5,4,G= 65|376PQ8-27=49O 4:98>:A;}=<;A=,<,U= >=|3?>A@}=A@AB,A,Z= CB|3DCAE}=FEAG,F,= HG|3IHPQJ?DI=4KO 4LKJ>LAM}=NMAO,N,= PO|3QPAR}=SRAT,S,= UT|3VUAW}=XWAY,X,= ZY|3[ZPQ\QV[=4]O 4^]\>^A_}=`_Aa,`,= ba|3cbAd}=edAf,e,= gf|3hgAi}=jiAk,j,= lk|3mlPQnchm=4o?O 4pon>?pAq =3rqAsR >srAt =3utAvR>vuAw =3xwAyR>yxAz? =3{zA|R>|{=4}bO 4~}}=4R4~>RA=3Ac >A=3Ac>A=3Ac>A?=3Ac>=4bO 4=4c4>cA=3A? >A=3A?>A=3A?>=4bO 4=4?4>=4=4bO 44=4R4>=4=4bO 44=4c4>=4=4bO 44=44>b=46OQ=4O 4>A>=4=43A >=4=43A>=4b=43A>A6=3AS>=4OQ=QS3A>=4OQ=QS3A6 >=4bOQ=QS3A6>= #A =3| A,,,>= #A=3| A,,>= #A=3| A,,G>= #A=3| A,,L>= #A6 =3| A,,U>= #A6=3| A,,Z>~~qA = A,= >=A = A,= ~  >#= #A,,=  >* = *     = #A,,,= |3= #A,,= |3= #A,,G= |3= #A ,,L= ! |3"!P4#">6#= $#A%,$,U= &%|3'&= (#A),(,Z= *)|3+*P^,'+=Q-SOQ.-,>S.= 5#A64,5,,= 76|387= 9#A:4,9,= ;:|3<;= =#A>4,=,G= ?>|3@?= A#AB4,A,L= CB|3DCP4E8<@D>bE=4FbO^GFF|{HGAIG,=JIOKJJ|{LK{MHL>}MAN} =ONAP,O,,= QP|3RQAS} =TSAU,T,= VU|3WVAX} =YXAZ,Y,G= [Z|3\[PQ]RW\=4^O 4_^]>_A`} =a`Ab,a,U= cb|3dcAe} =feAg,f,Z= hg|3ihAj} =kjAl,k,= ml|3nmPQodin=4pO 4qpo>qAr} =srAt,s,= ut|3vuAw} =xwAy,x,= zy|3{zA|} =}|A~,},= ~|3PQv{=4O 4>A} =A,,= |3A} =A,,= |3A} =A,,= |3PQ=4O 4>A =3A >A =3A>A =3A>A =3A>A=3A >A=3A>A=3A>A=3A>A=3A >A=3A>A=3A>A}=A,,,= |3A}=A,,= |3A}=A,,G= |3PQ=4O 4>A}=A,,U= |3A}=A,,Z= |3A}=A,,= |3PQ=4O 4>A}=A,,= |3A}=A,,= |3A}=A,,= |3PQ=4O 4>A}=A,,= |3A}=A,,= |3A}=A,,= |3PQ=4?O 4>?A =3AR >A =3AR>A =3AR>A? =3 A R>  =4 bO 4   =4 R4  >RA=3Ac >A=3Ac>A=3Ac>A?=3Ac>=4bO 4=4c4>cA=3 A!? >! A"=3#"A$?>$#A%=3&%A'?>'&=4(bO 4)((=4*?4+)*>+=4,=4-bO 4.--4/,.=40R41/0>1=42=43bO 44334524=46c4756>7=48=49bO 4:994;8:=4<4=;<>b==4>6OQ?>>=4@O 4A@?>AAB>B=4C=4D3ECDAF >FE=4G=4H3IGHAJ>JI=4Kb=4L3MKLAN>NMAO6=3POAQS>QP=4ROQSRR=QTS3USTAV>VU=4WOQXWW=QYS3ZXYA[6 >[Z=4\bOQ]\\=Q^S3_]^A`6>`_= g#Ah =3ih| jiAkf,g,,>kj= l#Am=3nm| onApf,l,>po= q#Ar=3sr| tsAuf,q,G>ut= v#Aw=3xw| yxAzf,v,L>zy= {#A|6 =3}|| ~}Af,{,U>~= #A6=3| Af,,Z>  A = A, = >=A = A, = ~  >#= #A,, = >*=*= #A,,,= |3= #A,,= |3= #A,,G= |3= #A,,L= |3P4>6= #A,,U= |3= #A,,Z= |3P^=QSOQ>S= #A,,,= |3= #A,,= |3= #A,,G= |3= #A,,L= |3P4>b=4bO^|{AG,=O|{{>}A} =A,,,= |3A} =A,,= |3A} =A,,G= |3PQ=4O 4>A} =A,,U= |3A} =A,,Z= |3A} =A,,= |3PQ=4O 4>A} =A,,= |3A} =A,,= |3 A } =  A , ,=  |3 PQ =4O 4>A} =A,,= |3A} =A,,= |3A} =A,,= |3 PQ! =4"O 4#"!>#A$ =3%$A& >&%A' =3('A)>)(A* =3+*A,>,+A- =3.-A/>/.A0=310A2 >21A3=343A5>54A6=376A8>87A9=3:9A;>;:A<=3=<A> >>=A?=3@?AA>A@AB=3CBAD>DCAE}=FEAG,F,,= HG|3IHAJ}=KJAL,K,= ML|3NMAO}=POAQ,P,G= RQ|3SRPQTINS=4UO 4VUT>VAW}=XWAY,X,U= ZY|3[ZA\}=]\A^,],Z= _^|3`_Aa}=baAc,b,= dc|3edPQf[`e=4gO 4hgf>hAi}=jiAk,j,= lk|3mlAn}=onAp,o,= qp|3rqAs}=tsAu,t,= vu|3wvPQxmrw=4yO 4zyx>zA{}=|{A},|,= ~}|3~A}=A,,= |3A}=A,,= |3PQ=4?O 4>?A =3AR >A =3AR>A =3AR>A? =3AR>=4bO 4=4R4>RA=3Ac >A=3Ac>A=3Ac>A?=3Ac>=4bO 4=4c4>cA=3A? >A=3A?>A=3A?>=4bO 4=4?4>=4=4bO 44=4R4>=4=4bO 44=4c4>=4=4bO 44=44>b=46OQ=4O 4>A>=4=43A >=4=43A>=4b=43A>A6=3AS>=4OQ=QS3A>=4OQ=QS3A6 >=4bOQ=QS3A6>= #A =3| A,,,>= #A=3| A,,>= #A=3| A,,G>= #A=3| A,,L>= #A 6 =3  |  A , ,U>  = #A6=3| A,,Z>qq!!8@A batchMainComputeSkinCBuffer inMatrices inSkin0inSkin1inSkin2inSkin3inSkin4 inVertices0 inVertices1 inVertices2 inVertices3 inVertices4 outVertices0  outVertices1  outVertices2  outVertices3 outVertices4# \  GLSL.std.450main @mainu_xlatb0 gl_GlobalInvocationIDComputeSkinCBufferg_VertCountsg_BatchOffsetsg_PoseOffsets g_poseBufferMaxIndex#u_xlatu0*u_xlatb146u_xlat19inVertices4_type9value;inVertices4;inVertices4_buf=Qu_xlat2gu_xlat3vu_xlat4yinSkin4_typeyvalue{inSkin4{inSkin4_buf}u_xlati14u_xlat5inMatrices_typevalueinMatricesinMatrices_bufu_xlat6u_xlat7u_xlat8u_xlat9u_xlat10Qu_xlat11du_xlat12uu_xlat13 outVertices4_origX4X_typevalueoutVertices4_origX4X outVertices4_origX4X_buf2inVertices3_type2value4inVertices34inVertices3_buf6einSkin3_typeevalueginSkin3ginSkin3_bufi outVertices3_origX3X_typevalueoutVertices3_origX3X outVertices3_origX3X_bufinVertices2_typevalueinVertices2inVertices2_buf2inSkin2_type2value4inSkin24inSkin2_buf6 ~outVertices2_origX2X_type~valueoutVertices2_origX2X outVertices2_origX2X_bufinVertices1_typevalueinVertices1inVertices1_bufinSkin1_typevalueinSkin1inSkin1_buf KoutVertices1_origX1X_typeKvalueMoutVertices1_origX1X MoutVertices1_origX1X_bufOinVertices0_typevalueinVertices0inVertices0_bufinSkin0_typevalueinSkin0inSkin0_buf  outVertices0_origX0X_type value outVertices0_origX0X  outVertices0_origX0X_buf Q u_xlat_precise_vec4T u_xlat_precise_ivec4W u_xlat_precise_bvec4Y u_xlat_precise_uvec4G GGGH#H# H#@H#`GG"G!G8H9#G:(H;H;#G;G="G=!GxHy#GzH{H{#G{G}"G}! GH#G@HH#GG"G! GH#G(H#GG"G!G1H2#G3(H4H4#G4G6"G6!GdHe#GfHgHg#GgGi"Gi!GH#G(H#GG"G!GH#G(HH#GG"G!G1H2#G3H4H4#G4G6"G6!G}H~#G(H#GG"G! GH#G(HH#GG"G!GH#GHH#GG"G!GJHK#GL(HM#GMGO"GO! GH#G(HH#GG"G!GH#GHH#GG"G!G H #G (H #G G "G ! G[ ! ;     ; +   +  ; +  " ;"#;*+,3 43 54;56+ 7 8 798:9;: <;;<=+?+L;5Q+S+X+]+b;5g+i+n r3;5v+ wx wyxzy{z |{;|} ;  ;5+   ; 3;5;5+ ;5+ + +;5 3+ + ;5;5Q;5d;5u+3? 7 ;1 7213243 54;56d wedfegf hg;hi 7 ; 7 ;1 w213243 54;56} 7~}~ ; 7 ; w ;J 7KJLKML NM;NO 7 ; w ; 7        ;   P 4R  S R U  V U X + Z @, [ Z 6;P Q ;S T ;V W ;X Y A = A = >=!  A$ = %$A& = '&~ (' )%(>#)= +#A-, = .-/+.>*/=0*20121= >#A@=,>,?= A@|3BA= C#AD=,C,,= ED|3FE= G#AH=,G,= IH|3JI= K#AM=,K,L= NM|3ONP4PBFJO>6P= R#AT=,R,S= UT|3VU= W#AY=,W,X= ZY|3[Z= \#A^=,\,]= _^|3`_= a#Ac=,a,b= dc|3edP4fV[`e>Qf= h#Aj=,h,i= kj|3lk= m#Ao=,m,n= po|3qpPrslq=4tgO 4uts>gu= ~#A},~,,= |3= #A},,= |3= #A},,L= |3= #A},,?= |3P4>v=4vOr|AL=O|>A =A,,,= |3A =A,,= |3A =A,,L= |3P=4O 4>A =A,,S= |3A =A,,X= |3A =A,,]= |3P=4O 4>A =A,,i= |3A =A,,n= |3A =A,,= |3P=4O 4>A =A,,= |3A =A,,= |3A =A,,= |3P=4O 4>A =3A >A =3A>A =3A>A =3A>A=3A >A =3  A >  A =3  A> A=3A>A=3A >A=3A>A=3A>A=A,,,= |3A =! A",!,= #"|3$#A%=&%A',&,L= ('|3)(P*$)=4+O 4,+*>,A-=.-A/,.,S= 0/|310A2=32A4,3,X= 54|365A7=87A9,8,]= :9|3;:P<16;=4=O 4>=<>>A?=@?AA,@,i= BA|3CBAD=EDAF,E,n= GF|3HGAI=JIAK,J,= LK|3MLPNCHM=4OO 4PON>PAR=SRAT,S,= UT|3VUAW=XWAY,X,= ZY|3[ZA\=]\A^,],= _^|3`_PaV[`=4bQO 4cba>QcAe =3feAgd >gfAh =3ihAjd>jiAk =3lkAmd>mlAnQ =3onApd>po=4qvO 4rqq=4sd4trs>dtAv=3wvAxu >xwAy=3zyA{u>{zA|=3}|A~u>~}AQ=3Au>=4vO 4=4u4>uA=3AQ >A=3AQ>A=3AQ>=4vO 4=4Q4>=4=4vO 44=4d4>=4=4vO 44=4u4>=4=4vO 44=44>v=46O=4O 4>A>=4=43A >=4=43A>=4v=43A>=4QOr=46O 4>6=4O=46O3A>=4O=46O3A >=4vO=46O3A>=4QOr=4gO 4>g=4O=4gO3A>=4O=4gO3A>=4vO=4gO3Ag >= #A =3| A,,,>= #A=3| A,,>= #A=3| A,,L>= #A=3| A,,?>= #A =3| A,,S>= #A=3| A,,X>= #A=3 |  A ,,]>  = #A =3 | A, ,b>= #Ag =3| A,,i>= #Ag=3| A,,n>22!A = A,=  > =!#!""A$ = %$A&,= '&~ (' )%(>#)= *#A+,,= ,+-*,>*-=.*0./0/= 7#A86,7,?= 98|3:9= ;#A<6,;,,= =<|3>== ?#A@6,?,= A@|3BA= C#AD6,C,L= ED|3FEP4G:>BF>6G= H#AI6,H,S= JI|3KJ= L#AM6,L,X= NM|3ON= P#AQ6,P,]= RQ|3SR= T#AU6,T,b= VU|3WVP4XKOSW>QX= Y#AZ6,Y,i= [Z|3\[= ]#A^6,],n= _^|3`_Pra\`=4bgO 4cba>gc= j#Aki,j,,= lk|3ml= n#Aoi,n,= po|3qp= r#Asi,r,L= ts|3ut= v#Awi,v,?= xw|3yxP4zmquy>vz=4{vOr|{{|}|A~L,=~O|}>A =A,,,= |3A =A,,= |3A =A,,L= |3P=4O 4>A =A,,S= |3A =A,,X= |3A =A,,]= |3P=4O 4>A =A,,i= |3A =A,,n= |3A =A,,= |3P=4O 4>A =A,,= |3A =A,,= |3A =A,,= |3P=4O 4>A =3A >A =3A>A =3A>A =3A>A=3A >A=3A>A=3A>A=3A>A=3A >A=3A>A=3A>A=A,,,= |3A=A,,= |3A=A,,L= |3P=4O 4>A=A,,S= |3A=A,,X= |3A= A , ,]=  |3  P  =4O 4 >A=A,,i= |3A=A,,n= |3A=A,,= |3P=4 O 4! >!A"=#"A$,#,= %$|3&%A'=('A),(,= *)|3+*A,=-,A.,-,= /.|30/P1&+0=42QO 4321>Q3A4 =354A6d >65A7 =387A9d>98A: =3;:A<d><;A=Q =3>=A?d>?>=4@vO 4A@@=4Bd4CAB>dCAD=3EDAFu >FEAG=3HGAIu>IHAJ=3KJALu>LKAMQ=3NMAOu>ON=4PvO 4QPP=4Ru4SQR>uSAT=3UTAVQ >VUAW=3XWAYQ>YXAZ=3[ZA\Q>\[=4]vO 4^]]=4_Q4`^_>`=4a=4bvO 4cbb4dac=4ed4fde>f=4g=4hvO 4ihh4jgi=4ku4ljk>l=4m=4nvO 4onn4pmo=4q4rpq>vr=4s6Otss=4uO 4vut>vAw>w=4x=4y3zxyA{ >{z=4|=4}3~|}A>~=4v=43A>=4QOr=46O 4>6=4O=46O3A>=4O=46O3A >=4vO=46O3A>=4QOr=4gO 4>g=4O=4gO3A>=4O=4gO3A>=4vO=4gO3Ag >= #A =3| A,,,>= #A=3| A,,>= #A=3| A,,L>= #A=3| A,,?>= #A =3| A,,S>= #A=3| A,,X>= #A=3| A,,]>= #A=3| A,,b>= #Ag =3| A,,i>= #Ag=3| A,,n>00#A = A,= >=A = A,= ~  >#= #A,,= >*=*= #A,,?= |3= #A ,,,=  |3  = #A , ,=  |3= #A,,L= |3P4 >6= #A,,S= |3= #A,,X= |3= #A,,]= |3 = !#A",!,b= #"|3$#P4% $>Q%= &#A',&,i= ('|3)(= *#A+,*,n= ,+|3-,Pr.)-=4/gO 40/.>g0= 7#A86,7,,= 98|3:9= ;#A<6,;,= =<|3>== ?#A@6,?,L= A@|3BA= C#AD6,C,?= ED|3FEP4G:>BF>vG=4HvOrIHH|JIAKL,=LKOMLL|NMOJN>OAP =QPAR,Q,,= SR|3TSAU =VUAW,V,= XW|3YXAZ =[ZA\,[,L= ]\|3^]P_TY^=4`O 4a`_>aAb =cbAd,c,S= ed|3feAg =hgAi,h,X= ji|3kjAl =mlAn,m,]= on|3poPqfkp=4rO 4srq>sAt =utAv,u,i= wv|3xwAy =zyA{,z,n= |{|3}|A~ =~A,,= |3Px}=4O 4>A =A,,= |3A =A,,= |3A =A,,= |3P=4O 4>A =3A >A =3A>A =3A>A =3A>A=3A >A=3A>A=3A>A=3A>A=3A >A=3A>A=3A>A=A,,,= |3A=A,,= |3A=A,,L= |3P=4O 4>A=A,,S= |3A=A,,X= |3A=A,,]= |3P=4O 4>A=A,,i= |3A=A,,n= |3A=A,,= |3P=4O 4>A=A,,= |3A=A,,= |3A=A,,= |3P=4QO 4>QA =3Ad >A =3Ad>A =3A d> A Q =3  A d>  =4 vO 4  =4d4>dA=3Au >A=3Au>A=3Au>AQ=3Au>=4vO 4=4u4 >u A!=3"!A#Q >#"A$=3%$A&Q>&%A'=3('A)Q>)(=4*vO 4+**=4,Q4-+,>-=4.=4/vO 40//41.0=42d4312>3=44=45vO 46554746=48u4978>9=4:=4;vO 4<;;4=:<=4>4?=>>v?=4@6OA@@=4BO 4CBA>CAD>D=4E=4F3GEFAH >HG=4I=4J3KIJAL>LK=4Mv=4N3OMNAP>PO=4QQOrRQQ=4S6O 4TSR>6T=4UOVUU=4W6OXWW3YVXAZ>ZY=4[O\[[=4]6O^]]3_\^A` >`_=4avObaa=4c6Odcc3ebdAf>fe=4gQOrhgg=4igO 4jih>gj=4kOlkk=4mgOnmm3olnAp>po=4qOrqq=4sgOtss3urtAv>vu=4wvOxww=4ygOzyy3{xzA|g >|{= #A =3| A,,,>= #A=3| A,,>= #A=3| A,,L>= #A=3| A,,?>= #A =3| A,,S>= #A=3| A,,X>= #A=3| A,,]>= #A=3| A,,b>= #Ag =3| A,,i>= #Ag=3| A,,n>A = A,= >=A = A,= ~  >#= #A,,= >*=*= #A,,?= |3= #A,,,= |3= #A,,= |3= #A,,L= |3P4>6= #A,,S= |3= #A,,X= |3= #A,,]= |3= #A,,b= |3P4>Q= #A,,i= |3= #A,,n= |3Pr=4gO 4>g= #A,,,= |3= #A ,,=  |3  = #A , ,L=  |3= #A,,?= |3P4 >v=4vOr|AL,=O|>A =A,,,= |3! A" =#"A$,#,= %$|3&%A' =('A),(,L= *)|3+*P,!&+=4-O 4.-,>.A/ =0/A1,0,S= 21|332A4 =54A6,5,X= 76|387A9 =:9A;,:,]= <;|3=<P>38==4?O 4@?>>@AA =BAAC,B,i= DC|3EDAF =GFAH,G,n= IH|3JIAK =LKAM,L,= NM|3ONPPEJO=4QO 4RQP>RAS =TSAU,T,= VU|3WVAX =YXAZ,Y,= [Z|3\[A] =^]A_,^,= `_|3a`PbW\a=4cO 4dcb>dAe =3feAg >gfAh =3ihAj>jiAk =3lkAm>mlAn =3onAp>poAq=3rqAs >srAt=3utAv>vuAw=3xwAy>yxAz=3{zA|>|{A}=3~}A >~A=3A>A=3A>A=A,,,= |3A=A,,= |3A=A,,L= |3P=4O 4>A=A,,S= |3A=A,,X= |3A=A,,]= |3P=4O 4>A=A,,i= |3A=A,,n= |3A=A,,= |3P=4O 4>A=A,,= |3A=A,,= |3A=A,,= |3P=4QO 4>QA =3Ad >A =3Ad>A =3Ad>AQ =3Ad>=4vO 4=4d4>dA=3Au >A=3Au>A=3Au>AQ=3Au>=4vO 4=4u4>uA=3AQ >A=3AQ>A=3AQ>=4vO 4=4Q4>=4=4vO 44=4d4>=4=4vO 44=4u4>=4=4vO 4 4  =4 4   >v =4 6O  =4O 4>A>=4=43A >=4=43A>=4v=43A>=4QOr=4 6O 4! >6!=4"O#""=4$6O%$$3&#%A'>'&=4(O)((=4*6O+**3,)+A- >-,=4.vO/..=406O10032/1A3>32=44QOr544=46gO 4765>g7=48O988=4:gO;::3<9;A=>=<=4>O?>>=4@gOA@@3B?AAC>CB=4DvOEDD=4FgOGFF3HEGAIg >IH= P#AQ =3RQ| SRATO,P,,>TS= U#AV=3WV| XWAYO,U,>YX= Z#A[=3\[| ]\A^O,Z,L>^]= _#A`=3a`| baAcO,_,?>cb= d#Ae =3fe| gfAhO,d,S>hg= i#Aj=3kj| lkAmO,i,X>ml= n#Ao=3po| qpArO,n,]>rq= s#At=3ut| vuAwO,s,b>wv= x#Ayg =3zy| {zA|O,x,i>|{= }#A~g=3~| AO,},n>A = A, = >=A = A, = ~  >#= #A,, = >*=*= #A,,?= |3= #A,,,= |3= #A,,= |3= #A,,L= |3P4>6= #A,,S= |3= #A,,X= |3= #A,,]= |3= #A,,b= |3P4>Q= #A,,i= |3= #A,,n= |3Pr=4gO 4>g= #A,,,= |3= #A,,= |3= #A,,L= |3= #A,,?= |3P4>v=4vOr|AL,=O|>A =A,,,= |3A =A,,= |3A =A,,L= |3P=4O 4>A =A,,S= |3A =A,,X= |3A =A,,]= |3  P  =4 O 4   > A =A,,i= |3A =A,,n= |3A =A,,= |3P=4O 4>A  =! A",!,= #"|3$#A% =&%A',&,= ('|3)(A* =+*A,,+,= -,|3.-P/$).=40O 410/>1A2 =332A4 >43A5 =365A7>76A8 =398A:>:9A; =3<;A=>=<A>=3?>A@ >@?AA=3BAAC>CBAD=3EDAF>FEAG=3HGAI>IHAJ=3KJAL >LKAM=3NMAO>ONAP=3QPAR>RQAS=TSAU,T,,= VU|3WVAX=YXAZ,Y,= [Z|3\[A]=^]A_,^,L= `_|3a`PbW\a=4cO 4dcb>dAe=feAg,f,S= hg|3ihAj=kjAl,k,X= ml|3nmAo=poAq,p,]= rq|3srPtins=4uO 4vut>vAw=xwAy,x,i= zy|3{zA|=}|A~,},n= ~|3A=A,,= |3P{=4O 4>A=A,,= |3A=A,,= |3A=A,,= |3P=4QO 4>QA =3Ad >A =3Ad>A =3Ad>AQ =3Ad>=4vO 4=4d4>dA=3Au >A=3Au>A=3Au>AQ=3Au>=4vO 4=4u4>uA=3AQ >A=3AQ>A=3AQ>=4vO 4=4Q4>=4=4vO 44=4d4>=4=4vO 44=4u4>=4=4vO 44=44>v=46O=4O 4>A>=4=43A >=4=43A>=4v=43A>=4QOr=46O 4>6=4O=46O3A>=4O=46O3A >=4vO=46O3A > =4 QOr   =4 gO 4   >g =4 O   =4 gO   3   A > =4 O =4 gO 3  A >  =4 vO   =4 gO   3   A g >  =  #A =3  |  A!  , ,,>! = " #A# =3$ # | % $ A&  ," ,>& % = ' #A( =3) ( | * ) A+  ,' ,L>+ * = , #A- =3. - | / . A0  ,, ,?>0 / = 1 #A2 =33 2 | 4 3 A5  ,1 ,S>5 4 = 6 #A7 =38 7 | 9 8 A:  ,6 ,X>: 9 = ; #A< =3= < | > = A?  ,; ,]>? > = @ #AA =3B A | C B AD  ,@ ,b>D C = E #AF g =3G F | H G AI  ,E ,i>I H = J #AK g=3L K | M L AN  ,J ,n>N M ##!!8@A batchMainComputeSkinCBuffer inMatrices inSkin0inSkin1inSkin2inSkin3inSkin4 inVertices0 inVertices1 inVertices2 inVertices3 inVertices4 outVertices0  outVertices1  outVertices2  outVertices3 outVertices4#   GLSL.std.450main @mainu_xlatb0 gl_GlobalInvocationIDComputeSkinCBufferg_VertCountsg_BatchOffsetsg_PoseOffsets g_poseBufferMaxIndex#u_xlatu0*u_xlatb126u_xlat19inVertices4_type9value;inVertices4;inVertices4_buf=Ou_xlat2RinSkin4_typeRvalueTinSkin4TinSkin4_bufVku_xlati3u_xlat12inMatrices_typevalueinMatricesinMatrices_bufu_xlat4u_xlat5u_xlat6u_xlat7u_xlat8:u_xlat9Mu_xlat10^u_xlat11)u_xlat3 outVertices4_origX4X_typevalueoutVertices4_origX4X outVertices4_origX4X_bufinVertices3_typevalueinVertices3inVertices3_bufinSkin3_typevalueinSkin3inSkin3_buf outVertices3_origX3X_typevalueoutVertices3_origX3X outVertices3_origX3X_bufinVertices2_typevalueinVertices2inVertices2_buf)inSkin2_type)value+inSkin2+inSkin2_buf- BoutVertices2_origX2X_typeBvalueDoutVertices2_origX2X DoutVertices2_origX2X_bufFminVertices1_typemvalueoinVertices1oinVertices1_bufqinSkin1_typevalueinSkin1inSkin1_buf outVertices1_origX1X_type value outVertices1_origX1X outVertices1_origX1X_buf  inVertices0_type value inVertices0 inVertices0_buf  inSkin0_type value inSkin0 inSkin0_buf  outVertices0_origX0X_type value outVertices0_origX0X outVertices0_origX0X_buf  u_xlat_precise_vec4 u_xlat_precise_ivec4 u_xlat_precise_bvec4 u_xlat_precise_uvec4G GGGH#H# H#@H#`GG"G!G8H9#G: H;H;#G;G="G=!GQHR#GS HTHT#GTGV"GV! GH#G@HH#GG"G! GH#G H#GG"G!GH#G HH#GG"G!GH#G HH#GG"G!GH#G H#GG"G!GH#G HH#GG"G!G(H)#G* H+H+#G+G-"G-!GAHB#GC HD#GDGF"GF! GlHm#Gn HoHo#GoGq"Gq!GH#G HH#GG"G!G H #G  H #G G "G ! G H #G  H H #G G "G !G H #G  H H #G G "G !G H #G  H #G G "G ! G ! ;     ; +   +  ; +  " ;"#;*+,3 43 54;56+ 78 798:9;: <;;<=+GK3;5O+ PQ PRQSRTS UT;UV+di ji;jk+m+r+w+|  K;+   ; ;5;5++ + ;5+ + +;5 3+ ;5;5:;5M;5^;5)+3? 7 ; 7 ; P ; 7 ; 7 ;( P)(*)+* ,+;,-A 7BACBDC ED;EFl 7mlnmon po;pq P ; 7     ;  7     ;  P     ;  7     ;   4  i     +  @,   6; ; ;  ;  A = A = >=!  A$ = %$A& = '&~ (' )%(>#)= +#A-, = .-/+.>*/=0*20121= >#A?=,>,,= @?|3A@= B#AC=,B,= DC|3ED= F#AH=,F,G= IH|3JIPKLAEJ=4M6O 4NML>6N= W#AXV,W,,= YX|3ZY= [#A\V,[,= ]\|3^]= _#A`V,_,G= a`|3ba= c#AeV,c,d= fe|3gfP4hZ^bg>Oh= l#AnV,l,m= on|po= q#AsV,q,r= ts|ut= v#AxV,v,w= yx|zy= {#A}V,{,|= ~}|~Pipuz>k=ikAG=O |ii>kAk =A,,,= |3Ak =A,,= |3Ak =A,,G= |3PK>Ak =A,,m= |3Ak =A,,r= |3Ak =A,,w= |3PK=4O 4>Ak =A,,= |3Ak =A,,= |3Ak =A,,= |3PK=4O 4>Ak =A,,= |3Ak =A,,= |3Ak =A,,= |3PK=4O 4>A =3A >A =3A>A =3A>A =3A7>A=3A >A=3A>A=3A>A=3A7>A=3A >A=3A>A=3A>Ak=A,,,= |3  A k=  A , ,=  |3Ak=A,,G= |3PK >Ak=A,,m= |3Ak=A,,r= |3A k=! A",!,w= #"|3$#PK%$=4&O 4'&%>'A(k=)(A*,),= +*|3,+A-k=.-A/,.,= 0/|310A2k=32A4,3,= 54|365PK7,16=48O 4987>9A;k=<;A=,<,= >=|3?>A@k=A@AB,A,= CB|3DCAEk=FEAG,F,= HG|3IHPKJ?DI=4K:O 4LKJ>:LAN =3ONAPM >POAQ =3RQASM>SRAT =3UTAVM>VUAW: =3XWAYM7>YX=4ZOO 4[ZZ=4\M4][\>M]A_=3`_Aa^ >a`Ab=3cbAd^>dcAe=3feAg^>gfAh:=3ihAj^7>ji=4kOO 4lkk=4m^4nlm>^nAo=3poAq: >qpAr=3srAt:>tsAu=3vuAw:>wv=4xOO 4yxx=4z:4{yz>{=4|=4}OO 4~}}4|~=4M4>=4=4OO 44=4^4>=4=4OO 44=44>Ak=A,,,= |3Ak=A,,= |3Ak=A,,G= |3PK>Ak=A,,m= |3Ak=A,,r= |3Ak=A,,w= |3PK=4O 4>Ak=A,,= |3Ak=A,,= |3Ak=A,,= |3PK=4O 4>Ak=A,,= |3Ak=A,,= |3Ak=A,,= |3PK=4:O 4>:A =3AM >A =3AM>A =3AM>A: =3AM7>A=3A^ >A=3A^>A=3A^>A:=3A^7>A=3A: >A=3A:>A=3A:>=4M=4OO 44=44>=4^=4OO 44=44>=4:=4OO 44=44>Ak7=A ,,,=  |3  A k7=  A, ,= |3Ak7=A,,G= |3PK >Ak7=A,,m= |3Ak7=A,,r= |3 A!k7="!A#,",w= $#|3%$PK& %=4'OO 4('&>O(A*k7=+*A,,+,= -,|3.-A/k7=0/A1,0,= 21|332A4k7=54A6,5,= 76|387PK9.38=4:)O 4;:9>);A<k7==<A>,=,= ?>|3@?AAk7=BAAC,B,= DC|3EDAFk7=GFAH,G,= IH|3JIPKK@EJ=4LO 4MLK>MAN =3ONAP >POAQO =3RQAS>SRAT) =3UTAV>VUAW =3XWAY7>YXAZ=3[ZA\: >\[A]O=3^]A_:>_^A`)=3a`Ab:>baAc=3dcAe:7>edAf=3gfAh >hgAiO=3jiAk>kjAl)=3mlAn>nm=4o=4pOO 4qpp4roq=4s4trs>)t=4u:=4vOO 4wvv4xuw=4y4zxy>z=4{=4|OO 4}||4~{}=44~>OA67>=4)=463A) >=4=463A)>=4O=463A)>= #A) =3| A,,,>= #A)=3| A,,>= #A)=3| A,,G>22!A = A,7= >=A = A,7= ~  >#= #A,,7= >*=*= #A,,,= |3= #A,,= |3= #A,,G= |3PK=46O 4>6= #A,,,= |3= #A,,= |3= #A,,G= |3= #A,,d= |3P4>O= #A,,m= |= #A,,r= |= #A,,w= |= #A,,|= |Pi>k=ikAG,=O |ii>kAk =A,,,= |3Ak =A,,= |3Ak =A ,,G=  |3  PK  > A k = A,,m= |3Ak =A,,r= |3Ak =A,,w= |3PK=4O 4>Ak = A!, ,= "!|3#"A$k =%$A&,%,= '&|3('A)k =*)A+,*,= ,+|3-,PK.#(-=4/O 40/.>0A1k =21A3,2,= 43|354A6k =76A8,7,= 98|3:9A;k =<;A=,<,= >=|3?>PK@5:?=4AO 4BA@>BAC =3DCAE >EDAF =3GFAH>HGAI =3JIAK>KJAL =3MLAN7>NMAO=3POAQ >QPAR=3SRAT>TSAU=3VUAW>WVAX=3YXAZ7>ZYA[=3\[A] >]\A^=3_^A`>`_Aa=3baAc>cbAdk=edAf,e,,= gf|3hgAik=jiAk,j,= lk|3mlAnk=onAp,o,G= qp|3rqPKshmr>sAtk=utAv,u,m= wv|3xwAyk=zyA{,z,r= |{|3}|A~k=~A,,w= |3PKx}=4O 4>Ak=A,,= |3Ak=A,,= |3Ak=A,,= |3PK=4O 4>Ak=A,,= |3Ak=A,,= |3Ak=A,,= |3PK=4:O 4>:A =3AM >A =3AM>A =3AM>A: =3AM7>=4OO 4=4M4>MA=3A^ >A=3A^>A=3A^>A:=3A^7>=4OO 4=4^4>^A=3A: >A=3A:>A=3A:>=4OO 4=4:4>=4=4OO 44=4M4>=4=4OO 44=4^4>=4=4OO 44=44>Ak=A,,,= |3Ak=A,,= |3Ak=A,,G= |3PK>Ak=A,,m= |3Ak=A,,r= |3Ak=A,,w= |3PK=4 O 4  > A k=  A , ,=  |3Ak=A,,= |3Ak=A,,= |3PK=4O 4>Ak=A,,= |3! A"k=#"A$,#,= %$|3&%A'k=('A),(,= *)|3+*PK,!&+=4-:O 4.-,>:.A/ =30/A1M >10A2 =332A4M>43A5 =365A7M>76A8: =398A:M7>:9A;=3<;A=^ >=<A>=3?>A@^>@?AA=3BAAC^>CBAD:=3EDAF^7>FEAG=3HGAI: >IHAJ=3KJAL:>LKAM=3NMAO:>ON=4PM=4QOO 4RQQ4SPR=4T4UST>U=4V^=4WOO 4XWW4YVX=4Z4[YZ>[=4\:=4]OO 4^]]4_\^=4`4a_`>aAbk7=cbAd,c,,= ed|3feAgk7=hgAi,h,= ji|3kjAlk7=mlAn,m,G= on|3poPKqfkp>qArk7=srAt,s,m= ut|3vuAwk7=xwAy,x,r= zy|3{zA|k7=}|A~,},w= ~|3PKv{=4OO 4>OAk7=A,,= |3Ak7=A,,= |3Ak7=A,,= |3PK=4)O 4>)Ak7=A,,= |3Ak7=A,,= |3Ak7=A,,= |3PK=4O 4>A =3A >AO =3A>A) =3A>A =3A7>A=3A: >AO=3A:>A)=3A:>A=3A:7>A=3A >AO=3A>A)=3A>=4=4OO 44=44>)=4:=4OO 44=44>=4=4OO 44=44>OA67>=4)=463A) >=4=463A)>=4O=463A)>= #A) =3| A,,,>= #A)=3| A,,>= #A)=3| A,,G>A = A,= >=VA = A,= ~    ># = #A ,,=   >*=*= #A,,,= |3= #A,,= |3 = !#A",!,G= #"|3$#PK% $=4&6O 4'&%>6'= .#A/-,.,,= 0/|310= 2#A3-,2,= 43|354= 6#A7-,6,G= 87|398= :#A;-,:,d= <;|3=<P4>159=>O>= ?#A@-,?,m= A@|BA= C#AD-,C,r= ED|FE= G#AH-,G,w= IH|JI= K#AL-,K,|= ML|NMPiOBFJN>kO=iPkAQG,=RQO SRR|iTSiUPT>kUAVk =WVAX,W,,= YX|3ZYA[k =\[A],\,= ^]|3_^A`k =a`Ab,a,G= cb|3dcPKeZ_d>eAfk =gfAh,g,m= ih|3jiAkk =lkAm,l,r= nm|3onApk =qpAr,q,w= sr|3tsPKujot=4vO 4wvu>wAxk =yxAz,y,= {z|3|{A}k =~}A,~,= |3Ak =A,,= |3PK|=4O 4>Ak =A,,= |3Ak =A,,= |3Ak =A,,= |3PK=4O 4>A =3A >A =3A>A =3A>A =3A7>A=3A >A=3A>A=3A>A=3A7>A=3A >A=3A>A=3A>Ak=A,,,= |3Ak=A,,= |3Ak=A,,G= |3PK>Ak=A,,m= |3Ak=A,,r= |3Ak=A,,w= |3PK=4O 4>Ak=A,,= |3Ak=A,,= |3Ak=A,,= |3PK=4O 4>Ak=A,,= |3Ak=A,,= |3Ak=A,,= |3PK=4:O 4>:A =3AM >A =3AM>A  =3  A M>  A : =3  AM7> =4OO 4=4M4>MA=3A^ >A=3A^>A=3A^>A:=3A^7>=4OO 4 =4!^4" !>^"A#=3$#A%: >%$A&=3'&A(:>('A)=3*)A+:>+*=4,OO 4-,,=4.:4/-.>/=40=41OO 42114302=44M4534>5=46=47OO 48774968=4:^4;9:>;=4<=4=OO 4>==4?<>=4@4A?@>AABk=CBAD,C,,= ED|3FEAGk=HGAI,H,= JI|3KJALk=MLAN,M,G= ON|3POPKQFKP>QARk=SRAT,S,m= UT|3VUAWk=XWAY,X,r= ZY|3[ZA\k=]\A^,],w= _^|3`_PKaV[`=4bO 4cba>cAdk=edAf,e,= gf|3hgAik=jiAk,j,= lk|3mlAnk=onAp,o,= qp|3rqPKshmr=4tO 4uts>uAvk=wvAx,w,= yx|3zyA{k=|{A},|,= ~}|3~Ak=A,,= |3PKz=4:O 4>:A =3AM >A =3AM>A =3AM>A: =3AM7>A=3A^ >A=3A^>A=3A^>A:=3A^7>A=3A: >A=3A:>A=3A:>=4M=4OO 44=44>=4^=4OO 44=44>=4:=4OO 44=44>Ak7=A,,,= |3Ak7=A,,= |3Ak7=A,,G= |3PK>Ak7=A,,m= |3Ak7=A,,r= |3Ak7=A,,w= |3PK=4OO 4>OAk7=A,,= |3Ak7=A,,= |3Ak7=A,,= |3PK=4)O 4>)Ak7=A,,= |3Ak7=A,,= |3Ak7=A,,= |3PK=4O 4>A =3A >AO =3A>A) =3A > A  =3  A 7>  A =3 A: >AO=3A:>A)=3A:>A=3A:7>A=3A >AO=3A>A)=3 A!>! =4"=4#OO 4$##4%"$=4&4'%&>)'=4(:=4)OO 4*))4+(*=4,4-+,>-=4.=4/OO 40//41.0=424312>O3A467>4=45)=4663756A8) >87=49=4:63;9:A<)><;=4=O=4>63?=>A@)>@?= G#AH) =3IH| JIAKF,G,,>KJ= L#AM)=3NM| ONAPF,L,>PO= Q#AR)=3SR| TSAUF,Q,G>UTVAW = XWAY,= ZY[XZ>[=\^\] ]A_ = `_Aa,= ba~ cb d`c>#d= e#Af,,= gfheg>*h=i*kijkj= r#Asq,r,,= ts|3ut= v#Awq,v,= xw|3yx= z#A{q,z,G= |{|3}|PK~uy}=46O 4~>6= #A,,,= |3= #A,,= |3= #A,,G= |3= #A,,d= |3P4>O= #A,,m= |= #A,,r= |= #A,,w= |= #A,,|= |Pi>k=ikAG,=O |ii>kAk =A,,,= |3Ak =A,,= |3Ak =A,,G= |3PK>Ak =A,,m= |3Ak =A,,r= |3Ak =A,,w= |3PK=4O 4>Ak =A,,= |3Ak =A,,= |3Ak =A,,= |3PK=4O 4>Ak =A,,= |3Ak =A,,= |3Ak =A,,= |3PK=4O 4>A =3A >A =3A>A =3A>A =3A7>A=3A >A=3A>A=3A > A =3  A 7>  A =3 A >A=3A>A=3A>Ak=A,,,= |3Ak=A,,= |3A k=! A",!,G= #"|3$#PK%$>%A&k='&A(,',m= )(|3*)A+k=,+A-,,,r= .-|3/.A0k=10A2,1,w= 32|343PK5*/4=46O 4765>7A8k=98A:,9,= ;:|3<;A=k=>=A?,>,= @?|3A@ABk=CBAD,C,= ED|3FEPKG<AF=4HO 4IHG>IAJk=KJAL,K,= ML|3NMAOk=POAQ,P,= RQ|3SRATk=UTAV,U,= WV|3XWPKYNSX=4Z:O 4[ZY>:[A\ =3]\A^M >^]A_ =3`_AaM>a`Ab =3cbAdM>dcAe: =3feAgM7>gf=4hOO 4ihh=4jM4kij>MkAl=3mlAn^ >nmAo=3poAq^>qpAr=3srAt^>tsAu:=3vuAw^7>wv=4xOO 4yxx=4z^4{yz>^{A|=3}|A~: >~}A=3A:>A=3A:>=4OO 4=4:4>=4=4OO 44=4M4>=4=4OO 44=4^4>=4=4OO 44=44>Ak=A,,,= |3Ak=A,,= |3Ak=A,,G= |3PK>Ak=A,,m= |3Ak=A,,r= |3Ak=A,,w= |3PK=4O 4>Ak=A,,= |3Ak=A,,= |3Ak=A,,= |3PK=4O 4>Ak=A,,= |3Ak=A,,= |3Ak=A,,= |3PK=4:O 4>:A =3AM >A =3AM>A =3AM>A: =3AM7>A=3A^ >A=3A^>A=3A^>A:=3A^7>A=3A: >A=3A:>A=3 A :> =4 M=4 OO 4   4   =4 4   > =4 ^=4 OO 4 4  =4 4 > =4 :=4 OO 4   4   =4 4   > A k7=  A , ,,=   |3  A k7=  A , ,=   |3  A k7=  A , ,G= ! |3" ! PK#   " ># A$ k7=% $ A& ,% ,m= ' & |3( ' A) k7=* ) A+ ,* ,r= , + |3- , A. k7=/ . A0 ,/ ,w= 1 0 |32 1 PK3 ( - 2 =44 OO 45 4 3 >O5 A6 k7=7 6 A8 ,7 ,= 9 8 |3: 9 A; k7=< ; A= ,< ,= > = |3? > A@ k7=A @ AB ,A ,= C B |3D C PKE : ? D =4F )O 4G F E >)G AH k7=I H AJ ,I ,= K J |3L K AM k7=N M AO ,N ,= P O |3Q P AR k7=S R AT ,S ,= U T |3V U PKW L Q V =4X O 4Y X W >Y AZ =3[ Z A\ >\ [ A] O =3^ ] A_ >_ ^ A` ) =3a ` Ab >b a Ac =3d c Ae 7>e d Af =3g f Ah : >h g Ai O=3j i Ak :>k j Al )=3m l An :>n m Ao =3p o Aq :7>q p Ar =3s r At >t s Au O=3v u Aw >w v Ax )=3y x Az >z y =4{ =4| OO 4} | | 4~ { } =4 4 ~  >) =4 :=4 OO 4 4 =4 4 > =4 =4 OO 4 4 =4 4 >O A 67> =4 )=4 63 A ) > =4 =4 63 A )> =4 O=4 63 A )> = #A ) =3 | A , ,,> = #A )=3 | A , ,> = #A )=3 | A , ,G> kk^ A = A , =  > =    A = A , = ~  ># = #A ,, =  >* = *   = #A , ,,= |3 = #A , ,= |3 = #A , ,G= |3 PK =4 6O 4 >6 = #A , ,,= |3 = #A , ,= |3 = #A , ,G= |3 = #A , ,d= |3 P4 >O = #A , ,m= | = #A , ,r= | = #A , ,w= | = #A , ,|= | Pi >k =i kA G,=  O    |i  i   >k A k =  A , ,,= |3 A k = A , ,=   |3  A k =  A , ,G=   |3  PK   > A k =  A , ,m=   |3  A k =  A , ,r=  |3! A" k =# " A$ ,# ,w= % $ |3& % PK'  ! & =4( O 4) ( ' >) A* k =+ * A, ,+ ,= - , |3. - A/ k =0 / A1 ,0 ,= 2 1 |33 2 A4 k =5 4 A6 ,5 ,= 7 6 |38 7 PK9 . 3 8 =4: O 4; : 9 >; A< k == < A> ,= ,= ? > |3@ ? AA k =B A AC ,B ,= D C |3E D AF k =G F AH ,G ,= I H |3J I PKK @ E J =4L O 4M L K >M AN =3O N AP >P O AQ =3R Q AS >S R AT =3U T AV >V U AW =3X W AY 7>Y X AZ =3[ Z A\ >\ [ A] =3^ ] A_ >_ ^ A` =3a ` Ab >b a Ac =3d c Ae 7>e d Af =3g f Ah >h g Ai =3j i Ak >k j Al =3m l An >n m Ao k=p o Aq ,p ,,= r q |3s r At k=u t Av ,u ,= w v |3x w Ay k=z y A{ ,z ,G= | { |3} | PK~ s x } >~ A k=  A , ,m= |3 A k= A , ,r= |3 A k= A , ,w= |3 PK =4 O 4 > A k= A , ,= |3 A k= A , ,= |3 A k= A , ,= |3 PK =4 O 4 > A k= A , ,= |3 A k= A , ,= |3 A k= A , ,= |3 PK =4 :O 4 >: A =3 A M > A =3 A M> A =3 A M> A : =3 A M7> =4 OO 4 =4 M4 >M A =3 A ^ > A =3 A ^> A =3 A ^> A :=3 A ^7> =4 OO 4 =4 ^4 >^ A =3 A : > A =3 A :> A =3 A :> =4 OO 4 =4 :4 > =4 =4 OO 4 4 =4 M4 > =4 =4 OO 4 4 =4 ^4 > =4 =4 OO 4 4 =4 4 > A k= A , ,,= |3 A k= A , ,= |3 A k= A , ,G=  |3  PK  > A k=  A , ,m=   |3  A k= A , ,r= |3 A k=  A , ,w=   |3  PK   =4 O 4   > A k=  A , ,=   |3  A k=  A , ,=   |3  A k=! A" ,! ,= # " |3$ # PK%   $ =4& O 4' & % >' A( k=) ( A* ,) ,= + * |3, + A- k=. - A/ ,. ,= 0 / |31 0 A2 k=3 2 A4 ,3 ,= 5 4 |36 5 PK7 , 1 6 =48 :O 49 8 7 >:9 A: =3; : A< M >< ; A= =3> = A? M>? > A@ =3A @ AB M>B A AC : =3D C AE M7>E D AF =3G F AH ^ >H G AI =3J I AK ^>K J AL =3M L AN ^>N M AO :=3P O AQ ^7>Q P AR =3S R AT : >T S AU =3V U AW :>W V AX =3Y X AZ :>Z Y =4[ M=4\ OO 4] \ \ 4^ [ ] =4_ 4` ^ _ >` =4a ^=4b OO 4c b b 4d a c =4e 4f d e >f =4g :=4h OO 4i h h 4j g i =4k 4l j k >l Am k7=n m Ao ,n ,,= p o |3q p Ar k7=s r At ,s ,= u t |3v u Aw k7=x w Ay ,x ,G= z y |3{ z PK| q v { >| A} k7=~ } A ,~ ,m=  |3 A k7= A , ,r= |3 A k7= A , ,w= |3 PK =4 OO 4 >O A k7= A , ,= |3 A k7= A , ,= |3 A k7= A , ,= |3 PK =4 )O 4 >) A k7= A , ,= |3 A k7= A , ,= |3 A k7= A , ,= |3 PK =4 O 4 > A =3 A > A O =3 A > A ) =3 A > A =3 A 7> A =3 A : > A O=3 A :> A )=3 A :> A =3 A :7> A =3 A > A O=3 A > A )=3 A > =4 =4 OO 4 4 =4 4 >) =4 :=4 OO 4 4 =4 4 > =4 =4 OO 4 4 =4 4 >O A 67> =4 )=4 63 A ) > =4 =4 63 A )> =4 O=4 63 A )> = #A ) =3 | A , ,,> = #A )=3 |  A , ,>  =  #A )=3  |   A , ,G>      ^^!!8@A batchMainComputeSkinCBuffer inMatrices inSkin0inSkin1inSkin2inSkin3inSkin4 inVertices0 inVertices1 inVertices2 inVertices3 inVertices4 outVertices0  outVertices1  outVertices2  outVertices3 outVertices4x-#   GLSL.std.450main @mainu_xlatb0 gl_GlobalInvocationIDComputeSkinCBufferg_VertCountsg_BatchOffsetsg_PoseOffsets g_poseBufferMaxIndex#u_xlatu0*u_xlatb136u_xlat19inVertices4_type9value;inVertices4;inVertices4_buf=Su_xlat2bu_xlat3einSkin4_typeevalueginSkin4ginSkin4_bufi}u_xlati4u_xlat13inMatrices_typevalueinMatricesinMatrices_bufu_xlat5u_xlat6u_xlat7u_xlat8u_xlat9Ju_xlat10]u_xlat11nu_xlat129u_xlat4 outVertices4_origX4X_typevalueoutVertices4_origX4X outVertices4_origX4X_bufinVertices3_typevalueinVertices3inVertices3_bufinSkin3_typevalueinSkin3inSkin3_buf AoutVertices3_origX3X_typeAvalueCoutVertices3_origX3X CoutVertices3_origX3X_bufE{inVertices2_type{value}inVertices2}inVertices2_bufinSkin2_typevalueinSkin2inSkin2_buf outVertices2_origX2X_typevalueoutVertices2_origX2X outVertices2_origX2X_bufinVertices1_typevalueinVertices1inVertices1_buf (inSkin1_type(value*inSkin1*inSkin1_buf, W outVertices1_origX1X_typeW valueY outVertices1_origX1X Y outVertices1_origX1X_buf[  inVertices0_type value inVertices0 inVertices0_buf  inSkin0_type value inSkin0 inSkin0_buf  outVertices0_origX0X_type value outVertices0_origX0X outVertices0_origX0X_buf  u_xlat_precise_vec4 u_xlat_precise_ivec4 u_xlat_precise_bvec4 u_xlat_precise_uvec4G GGGH#H# H#@H#`GG"G!G8H9#G:H;H;#G;G="G=!GdHe#Gf HgHg#GgGi"Gi! GH#G@HH#GG"G! GH#GH#GG"G!GH#GHH#GG"G!GH#G HH#GG"G!G@HA#GBHC#GCGE"GE!GzH{#G|H}H}#G}G"G!GH#G HH#GG"G!GH#GH#GG"G! GH#GHH#GG "G !G'H(#G) H*H*#G*G,"G,!GV HW #GX HY #GY G[ "G[ ! G H #G H H #G G "G !G H #G  H H #G G "G !G H #G H #G G "G ! G ! ;     ; +   +  ; +  " ;"#;*+,3 43 54;56+ 78 798:9;: <;;<=+G+LQ3 RQ;RS+U+Z^3;5b+ cd cedfegf hg;hi{ |{;|}++ ;R+   ; ;5;5++ + ;5+ + +;5 3+ + ;5;5J;5];5n;59+3? 7 ; 7 ; c ;@ 7A@BACB DC;DEz 7{z|{}| ~};~ c ; 7 ; 7  ;  ' c(')(*) +*;+,V 7W V X W Y X Z Y ;Z [  7     ;  c     ;  7     ;   4  {     +  @,   6;  ; ; ;  A = A = >=!  A$ = %$A& = '&~ (' )%(>#)= +#A-, = .-/+.>*/=0*20121= >#A?=,>,,= @?|3A@= B#AC=,B,= DC|3ED= F#AH=,F,G= IH|3JI= K#AM=,K,L= NM|3ONP4PAEJO>6P= T#AV=,T,U= WV|3XW= Y#A[=,Y,Z= \[|3]\P^_X]=Q`SOQa`_>Sa= j#Aki,j,,= lk|3ml= n#Aoi,n,= po|3qp= r#Asi,r,G= ts|3ut= v#Awi,v,L= xw|3yxP4zmquy>bz= ~#Ai,~,U= |= #Ai,,Z= |= #Ai,,= |= #Ai,,= |P{>}={}AG=O |{{>}A} =A,,,= |3A} =A,,= |3A} =A,,G= |3PQ>A} =A,,U= |3A} =A,,Z= |3A} =A,,= |3PQ=4O 4>A} =A,,= |3A} =A,,= |3A} =A,,= |3PQ=4O 4>A} =A,,= |3A} =A,,= |3A} =A,,= |3PQ=4O 4>A =3A >A =3A>A =3A>A =3A>A=3A >A=3A>A=3A > A =3  A >  A =3 A >A=3A>A=3A>A}=A,,,= |3A}=A,,= |3A }=! A",!,G= #"|3$#PQ%$>%A&}='&A(,',U= )(|3*)A+}=,+A-,,,Z= .-|3/.A0}=10A2,1,= 32|343PQ5*/4=46O 4765>7A8}=98A:,9,= ;:|3<;A=}=>=A?,>,= @?|3A@AB}=CBAD,C,= ED|3FEPQG<AF=4HO 4IHG>IAK}=LKAM,L,= NM|3ONAP}=QPAR,Q,= SR|3TSAU}=VUAW,V,= XW|3YXPQZOTY=4[JO 4\[Z>J\A^ =3_^A`] >`_Aa =3baAc]>cbAd =3edAf]>feAgJ =3hgAi]>ih=4jbO 4kjj=4l]4mkl>]mAo=3poAqn >qpAr=3srAtn>tsAu=3vuAwn>wvAxJ=3yxAzn>zy=4{bO 4|{{=4}n4~|}>n~A=3AJ >A=3AJ>A=3AJ>=4bO 4=4J4>=4=4bO 44=4]4>=4=4bO 44=4n4>=4=4bO 44=44>A}=A,,,= |3A}=A,,= |3A}=A,,G= |3PQ>A}=A,,U= |3A}=A,,Z= |3A}=A,,= |3PQ=4O 4>A}=A,,= |3A}=A,,= |3A}=A,,= |3PQ=4O 4>A}=A,,= |3A}=A,,= |3A}=A,,= |3PQ=4JO 4>JA =3A] >A =3A]>A =3A]>AJ =3A]>A=3An >A=3An>A=3An>AJ=3An>A=3AJ >A=3AJ>A=3AJ>=4]=4bO 44=4 4  > =4 n=4 bO 4   4  =44>=4J=4bO 44=44>A}=A,,,= |3A}=A,,= |3 A!}="!A#,",G= $#|3%$PQ& %>&A'}=('A),(,U= *)|3+*A,}=-,A.,-,Z= /.|30/A1}=21A3,2,= 43|354PQ6+05=47bO 4876>b8A:}=;:A<,;,= =<|3>=A?}=@?AA,@,= BA|3CBAD}=EDAF,E,= GF|3HGPQI>CH=4J9O 4KJI>9KAL}=MLAN,M,= ON|3POAQ}=RQAS,R,= TS|3UTAV}=WVAX,W,= YX|3ZYPQ[PUZ=4\O 4]\[>]A^ =3_^A` >`_Aab =3baAc>cbAd9 =3edAf>feAg =3hgAi>ihAj=3kjAlJ >lkAmb=3nmAoJ>onAp9=3qpArJ>rqAs=3tsAuJ>utAv=3wvAx >xwAyb=3zyA{>{zA|9=3}|A~>~}=4=4bO 44=44>9=4J=4bO 44=44>=4=4bO 44=44>b=46OQ=4O 4>A>=49=43A >=4=43A>=4b=43A>A6=3AS>=49OQ=QS3A>=4OQ=QS3A6 >=4bOQ=QS3A6>= #A =3| A,,,>= #A=3| A,,>= #A=3| A,,G>= #A=3| A,,L>= #A6 =3| A,,U>= #A6=3| A,,Z>22!A = A,= >=dA = A,= ~  >#= #A,,= >*=*= #A,,,= |3= #A,,= |3= #A,,G= |3= #A,,L= |3P4>6= #A,,U= |3 = #A , ,Z=  |3  P^  =QSOQ>S= #A,,,= |3= #A,,= |3= #A ,,G= ! |3"!= ##A$,#,L= %$|3&%P4'"&>b'= (#A),(,U= *)|+*= ,#A-,,,Z= .-|/.= 0#A1,0,= 21|32= 4#A5,4,= 65|76P{8+/37>}8={9}A:G,=;:O <;;|{=<{>9=>}>A?} =@?AA,@,,= BA|3CBAD} =EDAF,E,= GF|3HGAI} =JIAK,J,G= LK|3MLPQNCHM>NAO} =POAQ,P,U= RQ|3SRAT} =UTAV,U,Z= WV|3XWAY} =ZYA[,Z,= \[|3]\PQ^SX]=4_O 4`_^>`Aa} =baAc,b,= dc|3edAf} =gfAh,g,= ih|3jiAk} =lkAm,l,= nm|3onPQpejo=4qO 4rqp>rAs} =tsAu,t,= vu|3wvAx} =yxAz,y,= {z|3|{A}} =~}A,~,= |3PQw|=4O 4>A =3A >A =3A>A =3A>A =3A>A=3A >A=3A>A=3A>A=3A>A=3A >A=3A>A=3A>A}=A,,,= |3A}=A,,= |3A}=A,,G= |3PQ>A}=A,,U= |3A}=A,,Z= |3A}=A,,= |3PQ=4O 4>A}=A,,= |3A}=A,,= |3A}=A,,= |3PQ=4O 4>A}=A,,= |3A}=A,,= |3A}=A,,= |3PQ=4JO 4>JA =3A] >A =3A]>A =3A]>AJ =3A]>=4bO 4=4]4>]A=3An >A=3An>A=3An>AJ=3An>=4bO 4 =4 n4   >n A =3  AJ > A=3AJ>A=3AJ>=4bO 4=4J4>=4=4bO 44=4]4>=4=4 bO 4!  4"!=4#n4$"#>$=4%=4&bO 4'&&4(%'=4)4*()>*A+}=,+A-,,,,= .-|3/.A0}=10A2,1,= 32|343A5}=65A7,6,G= 87|398PQ:/49>:A;}=<;A=,<,U= >=|3?>A@}=A@AB,A,Z= CB|3DCAE}=FEAG,F,= HG|3IHPQJ?DI=4KO 4LKJ>LAM}=NMAO,N,= PO|3QPAR}=SRAT,S,= UT|3VUAW}=XWAY,X,= ZY|3[ZPQ\QV[=4]O 4^]\>^A_}=`_Aa,`,= ba|3cbAd}=edAf,e,= gf|3hgAi}=jiAk,j,= lk|3mlPQnchm=4oJO 4pon>JpAq =3rqAs] >srAt =3utAv]>vuAw =3xwAy]>yxAzJ =3{zA|]>|{A}=3~}An >~A=3An>A=3An>AJ=3An>A=3AJ >A=3AJ>A=3AJ>=4]=4bO 44=44>=4n=4bO 44=44>=4J=4bO 44=44>A}=A,,,= |3A}=A,,= |3A}=A,,G= |3PQ>A}=A,,U= |3A}=A,,Z= |3A}=A,,= |3PQ=4bO 4>bA}=A,,= |3A}=A,,= |3A}=A,,= |3PQ=49O 4>9A}=A,,= |3A}=A,,= |3A}=A,,= |3PQ=4O 4>A =3A >Ab =3A>A9 =3A>A =3A>A=3AJ >Ab=3AJ>A9=3AJ>A=3AJ>A=3A >Ab=3A>A9=3 A >  =4 =4 bO 4   4  =44>9=4J=4bO 44=44>=4=4bO 44=44>b=46OQ=4O 4 > A!>!=4"9=4#3$"#A% >%$=4&=4'3(&'A)>)(=4*b=4+3,*+A->-,A.6=3/.A0S>0/=419OQ211=Q3S3423A5>54=46OQ766=Q8S3978A:6 >:9=4;bOQ<;;=Q=S3><=A?6>?>= F#AG =3HG| IHAJE,F,,>JI= K#AL=3ML| NMAOE,K,>ON= P#AQ=3RQ| SRATE,P,G>TS= U#AV=3WV| XWAYE,U,L>YX= Z#A[6 =3\[| ]\A^E,Z,U>^]= _#A`6=3a`| baAcE,_,Z>cbdAe = feAg,= hgifh>i=jljkkAm = nmAo,= po~ qp rnq>#r= s#At,,= utvsu>*v=w*ywxyx= #A,,,= |3= #A,,= |3= #A,,G= |3= #A,,L= |3P4>6= #A,,U= |3= #A,,Z= |3P^=QSOQ>S= #A,,,= |3= #A,,= |3= #A,,G= |3= #A,,L= |3P4>b= #A,,U= |= #A,,Z= |= #A,,= |= #A,,= |P{>}={}AG,=O |{{>}A} =A,,,= |3A} =A,,= |3A} =A,,G= |3PQ>A} =A,,U= |3A} =A,,Z= |3A} =A,,= |3PQ=4O 4>A} =A,,= |3A} =A,,= |3A} =A,,= |3PQ=4O 4>A} =A,,= |3A} =A,,= |3A} = A , ,=  |3  PQ  =4O 4 >A =3A >A =3A>A =3A>A =3A>A=3A >A=3 A!>! A"=3#"A$>$#A%=3&%A'>'&A(=3)(A* >*)A+=3,+A->-,A.=3/.A0>0/A1}=21A3,2,,= 43|354A6}=76A8,7,= 98|3:9A;}=<;A=,<,G= >=|3?>PQ@5:?>@AA}=BAAC,B,U= DC|3EDAF}=GFAH,G,Z= IH|3JIAK}=LKAM,L,= NM|3ONPQPEJO=4QO 4RQP>RAS}=TSAU,T,= VU|3WVAX}=YXAZ,Y,= [Z|3\[A]}=^]A_,^,= `_|3a`PQbW\a=4cO 4dcb>dAe}=feAg,f,= hg|3ihAj}=kjAl,k,= ml|3nmAo}=poAq,p,= rq|3srPQtins=4uJO 4vut>JvAw =3xwAy] >yxAz =3{zA|]>|{A} =3~}A]>~AJ =3A]>=4bO 4=4]4>]A=3An >A=3An>A=3An>AJ=3An>=4bO 4=4n4>nA=3AJ >A=3AJ>A=3AJ>=4bO 4=4J4>=4=4bO 44=4]4>=4=4bO 44=4n4>=4=4bO 44=44>A}=A,,,= |3A}=A,,= |3A}=A,,G= |3PQ>A}=A,,U= |3A}=A,,Z= |3A}=A,,= |3PQ=4O 4>A}=A,,= |3A}=A,,= |3A}=A,,= |3PQ=4O 4>A}=A,,= |3A}=A,,= |3A}=A,,= |3PQ=4JO 4>JA =3A] >A =3A]>A =3A]>AJ =3A]>A=3 A n >  A =3  A n>  A=3An>AJ=3An>A=3AJ >A=3AJ>A=3AJ>=4]=4bO 44 =4!4" !>"=4#n=4$bO 4%$$4&#%=4'4(&'>(=4)J=4*bO 4+**4,)+=4-4.,->.A/}=0/A1,0,,= 21|332A4}=54A6,5,= 76|387A9}=:9A;,:,G= <;|3=<PQ>38=>>A?}=@?AA,@,U= BA|3CBAD}=EDAF,E,Z= GF|3HGAI}=JIAK,J,= LK|3MLPQNCHM=4ObO 4PON>bPAQ}=RQAS,R,= TS|3UTAV}=WVAX,W,= YX|3ZYA[}=\[A],\,= ^]|3_^PQ`UZ_=4a9O 4ba`>9bAc}=dcAe,d,= fe|3gfAh}=ihAj,i,= kj|3lkAm}=nmAo,n,= po|3qpPQrglq=4sO 4tsr>tAu =3vuAw >wvAxb =3yxAz>zyA{9 =3|{A}>}|A~ =3~A>A=3AJ >Ab=3AJ>A9=3AJ>A=3AJ>A=3A >Ab=3A>A9=3A>=4=4bO 44=44>9=4J=4bO 44=44>=4=4bO 44=44>b=46OQ=4O 4>A>=49=43A >=4=43A>=4b=43A>A6=3AS>=49OQ=QS3A>=4OQ=QS3A6 >=4bOQ=QS3A6>= #A =3| A,,,>= #A=3| A,,>= #A=3| A,,G>= #A=3| A,,L>= #A6 =3| A,,U>= #A6=3| A,,Z>yylA = A,= >=z A = A,= ~  >#= #A,,= >*=*= #A  , ,,=  |3 = #A ,,= |3= #A ,,G= |3= #A ,,L= |3P4>6= #A ,,U= |3= #A! , ,Z= "!|3#"P^$#=Q%SOQ&%$>S&= -#A.,,-,,= /.|30/= 1#A2,,1,= 32|343= 5#A6,,5,G= 76|387= 9#A:,,9,L= ;:|3<;P4=048<>b== >#A?,,>,U= @?|A@= B#AC,,B,Z= DC|ED= F#AG,,F,= HG|IH= J#AK,,J,= LK|MLP{NAEIM>}N={O}APG,=QPO RQQ|{SR{TOS>}TAU} =VUAW,V,,= XW|3YXAZ} =[ZA\,[,= ]\|3^]A_} =`_Aa,`,G= ba|3cbPQdY^c>dAe} =feAg,f,U= hg|3ihAj} =kjAl,k,Z= ml|3nmAo} =poAq,p,= rq|3srPQtins=4uO 4vut>vAw} =xwAy,x,= zy|3{zA|} =}|A~,},= ~|3A} =A,,= |3PQ{=4O 4>A} =A,,= |3A} =A,,= |3A} =A,,= |3PQ=4O 4>A =3A >A =3A>A =3A>A =3A>A=3A >A=3A>A=3A>A=3A>A=3A >A=3A>A=3A>A}=A,,,= |3A}=A,,= |3A}=A,,G= |3PQ>A}=A,,U= |3A}=A,,Z= |3A}=A,,= |3PQ=4O 4>A}=A,,= |3A}=A,,= |3A}=A,,= |3PQ=4O 4>A}=A,,= |3A}=A,,= |3A}=A,,= |3PQ=4 JO 4 >J A =3  A ] >  A =3  A ]>  A =3  A ]> A J =3 A ]> =4 bO 4   =4 ]4   >] A =3  A n >  A =3  A n>  A =3  A n>  A J=3  A n>  =4 bO 4   =4 n4!  >n! A" =3# " A$ J >$ # A% =3& % A' J>' & A( =3) ( A* J>* ) =4+ bO 4, + + =4- J4. , - >. =4/ =40 bO 41 0 0 42 / 1 =43 ]44 2 3 >4 =45 =46 bO 47 6 6 48 5 7 =49 n4: 8 9 >: =4; =4< bO 4= < < 4> ; = =4? 4@ > ? >@ AA }=B A AC ,B ,,= D C |3E D AF }=G F AH ,G ,= I H |3J I AK }=L K AM ,L ,G= N M |3O N PQP E J O >P AQ }=R Q AS ,R ,U= T S |3U T AV }=W V AX ,W ,Z= Y X |3Z Y A[ }=\ [ A] ,\ ,= ^ ] |3_ ^ PQ` U Z _ =4a O 4b a ` >b Ac }=d c Ae ,d ,= f e |3g f Ah }=i h Aj ,i ,= k j |3l k Am }=n m Ao ,n ,= p o |3q p PQr g l q =4s O 4t s r >t Au }=v u Aw ,v ,= x w |3y x Az }={ z A| ,{ ,= } | |3~ } A }=  A , ,= |3 PQ y ~ =4 JO 4 >J A =3 A ] > A =3 A ]> A  =3 A ]> A J =3 A ]> A =3 A n > A =3 A n> A =3 A n> A J=3 A n> A =3 A J > A =3 A J> A =3 A J> =4 ]=4 bO 4 4 =4 4 > =4 n=4 bO 4 4 =4 4 > =4 J=4 bO 4 4 =4 4 > A }= A , ,,= |3 A }= A , ,= |3 A }= A , ,G= |3 PQ > A }= A , ,U= |3 A }= A , ,Z= |3 A }= A , ,= |3 PQ =4 bO 4 >b A }= A , ,= |3 A }= A , ,= |3 A }= A , ,= |3 PQ =4 9O 4 >9 A }= A , ,= |3 A }= A , ,= |3 A }= A , ,= |3 PQ =4 O 4 > A =3 A  >  A b =3  A >  A 9 =3  A >  A =3 A > A =3 A J > A b=3  A J>  A 9=3  A J>  A =3  A J>  A =3  A >  A b=3  A >  A 9=3  A >  =4! =4" bO 4# " " 4$ ! # =4% 4& $ % >9& =4' J=4( bO 4) ( ( 4* ' ) =4+ 4, * + >, =4- =4. bO 4/ . . 40 - / =41 42 0 1 >b2 =43 6OQ4 3 3 =45 O 46 5 4 >6 A7 >7 =48 9=49 3: 8 9 A; >; : =4< =4= 3> < = A? >? > =4@ b=4A 3B @ A AC >C B AD 6=3E D AF S>F E =4G 9OQH G G =QI S3J H I AK >K J =4L OQM L L =QN S3O M N AP 6 >P O =4Q bOQR Q Q =QS S3T R S AU 6>U T = \ #A] =3^ ] | _ ^ A` [ ,\ ,,>` _ = a #Ab =3c b | d c Ae [ ,a ,>e d = f #Ag =3h g | i h Aj [ ,f ,G>j i = k #Al =3m l | n m Ao [ ,k ,L>o n = p #Aq 6 =3r q | s r At [ ,p ,U>t s = u #Av 6=3w v | x w Ay [ ,u ,Z>y x z A{ = | { A} , = ~ }  | ~ > =    A = A , = ~  ># = #A ,, =  >* = *   = #A , ,,= |3 = #A , ,= |3 = #A , ,G= |3 = #A , ,L= |3 P4 >6 = #A , ,U= |3 = #A , ,Z= |3 P^ =Q SOQ >S = #A , ,,= |3 = #A , ,= |3 = #A , ,G= |3 = #A , ,L= |3 P4 >b = #A , ,U= | = #A , ,Z= | = #A , ,= | = #A , ,= | P{ >} ={ }A G,= O  |{ { >} A } = A , ,,= |3 A } = A , ,= |3 A } = A , ,G= |3 PQ > A } = A , ,U= |3 A } = A , ,Z= |3 A } = A , ,= |3 PQ =4 O 4 > A } =  A , ,=   |3  A } =  A , ,= |3 A } = A , ,=   |3  PQ   =4 O 4   > A } =  A , ,=   |3  A } =  A , ,=   |3  A } =  A , ,= ! |3" ! PQ#   " =4$ O 4% $ # >% A& =3' & A( >( ' A) =3* ) A+ >+ * A, =3- , A. >. - A/ =30 / A1 >1 0 A2 =33 2 A4  >4 3 A5 =36 5 A7 >7 6 A8 =39 8 A: >: 9 A; =3< ; A= >= < A> =3? > A@ >@ ? AA =3B A AC >C B AD =3E D AF >F E AG }=H G AI ,H ,,= J I |3K J AL }=M L AN ,M ,= O N |3P O AQ }=R Q AS ,R ,G= T S |3U T PQV K P U >V AW }=X W AY ,X ,U= Z Y |3[ Z A\ }=] \ A^ ,] ,Z= _ ^ |3` _ Aa }=b a Ac ,b ,= d c |3e d PQf [ ` e =4g O 4h g f >h Ai }=j i Ak ,j ,= l k |3m l An }=o n Ap ,o ,= q p |3r q As }=t s Au ,t ,= v u |3w v PQx m r w =4y O 4z y x >z A{ }=| { A} ,| ,= ~ } |3 ~ A }= A , ,= |3 A }= A , ,= |3 PQ  =4 JO 4 >J A =3 A ] > A =3 A ]> A =3 A ]> A J =3 A ]> =4 bO 4 =4 ]4 >] A =3 A n > A =3 A n> A =3 A n> A J=3 A n> =4 bO 4 =4 n4 >n A =3 A J > A =3 A J> A =3 A J> =4 bO 4 =4 J4 > =4 =4 bO 4 4 =4 ]4 > =4 =4 bO 4 4 =4 n4 > =4 =4 bO 4 4 =4 4 > A }= A , ,,= |3 A }= A , ,= |3 A }= A , ,G= |3 PQ > A }= A , ,U= |3 A }= A , ,Z= |3 A }= A , ,= |3 PQ =4 O 4 > A }= A , ,= |3 A }= A , ,= |3 A }= A , ,= |3 PQ =4 O 4 > A }= A , ,=   |3  A }=  A , ,=   |3  A }= A , ,= |3 PQ   =4 JO 4   >J A =3  A ] >  A =3  A ]>  A  =3  A ]>  A J =3  A ]>  A =3  A n >  A! =3" ! A# n># " A$ =3% $ A& n>& % A' J=3( ' A) n>) ( A* =3+ * A, J >, + A- =3. - A/ J>/ . A0 =31 0 A2 J>2 1 =43 ]=44 bO 45 4 4 46 3 5 =47 48 6 7 >8 =49 n=4: bO 4; : : 4< 9 ; =4= 4> < = >> =4? J=4@ bO 4A @ @ 4B ? A =4C 4D B C >D AE }=F E AG ,F ,,= H G |3I H AJ }=K J AL ,K ,= M L |3N M AO }=P O AQ ,P ,G= R Q |3S R PQT I N S >T AU }=V U AW ,V ,U= X W |3Y X AZ }=[ Z A\ ,[ ,Z= ] \ |3^ ] A_ }=` _ Aa ,` ,= b a |3c b PQd Y ^ c =4e bO 4f e d >bf Ag }=h g Ai ,h ,= j i |3k j Al }=m l An ,m ,= o n |3p o Aq }=r q As ,r ,= t s |3u t PQv k p u =4w 9O 4x w v >9x Ay }=z y A{ ,z ,= | { |3} | A~ }= ~ A , ,= |3 A }= A , ,= |3 PQ } =4 O 4 > A =3 A  > A b =3 A > A 9 =3 A > A =3 A > A =3 A J > A b=3 A J> A 9=3 A J> A =3 A J> A =3 A > A b=3 A > A 9=3 A > =4 =4 bO 4 4 =4 4 >9 =4 J=4 bO 4 4 =4 4 > =4 =4 bO 4 4 =4 4 >b =4 6OQ =4 O 4 > A > =4 9=4 3 A > =4 =4 3 A > =4 b=4 3 A > A 6=3 A S> =4 9OQ =Q S3 A > =4 OQ =Q S3 A 6 > =4 bOQ =Q S3 A 6> = #A =3 | A , ,,> = #A =3 | A , ,> = #A =3 | A , ,G> = #A =3 | A , ,L> = #A 6 =3 | A , ,U> = #A 6=3  |   A , ,Z>      ll!!8@A batchMainComputeSkinCBuffer inMatrices inSkin0inSkin1inSkin2inSkin3inSkin4 inVertices0 inVertices1 inVertices2 inVertices3 inVertices4 outVertices0  outVertices1  outVertices2  outVertices3 outVertices4J# M GLSL.std.450main @mainu_xlatb0 gl_GlobalInvocationIDComputeSkinCBufferg_VertCountsg_BatchOffsetsg_PoseOffsets g_poseBufferMaxIndex#u_xlatu0*u_xlatb146u_xlat19inVertices4_type9value;inVertices4;inVertices4_buf=Qu_xlat2gu_xlat3vu_xlat4yinSkin4_typeyvalue{inSkin4{inSkin4_buf}u_xlati5u_xlat14inMatrices_typevalueinMatricesinMatrices_bufu_xlat6u_xlat7u_xlat8u_xlat9u_xlat10\u_xlat11ou_xlat12u_xlat13Ku_xlat5 outVertices4_origX4X_typevalueoutVertices4_origX4X outVertices4_origX4X_buf0inVertices3_type0value2inVertices32inVertices3_buf4cinSkin3_typecvalueeinSkin3einSkin3_bufg outVertices3_origX3X_typevalueoutVertices3_origX3X outVertices3_origX3X_bufinVertices2_typevalueinVertices2inVertices2_buf-inSkin2_type-value/inSkin2/inSkin2_buf1 voutVertices2_origX2X_typevvaluexoutVertices2_origX2X xoutVertices2_origX2X_bufzinVertices1_typevalueinVertices1inVertices1_bufinSkin1_typevalueinSkin1inSkin1_buf @ outVertices1_origX1X_type@ valueB outVertices1_origX1X B outVertices1_origX1X_bufD  inVertices0_type value inVertices0 inVertices0_buf  inSkin0_type value inSkin0 inSkin0_buf  outVertices0_origX0X_type value outVertices0_origX0X outVertices0_origX0X_bufCu_xlat_precise_vec4Eu_xlat_precise_ivec4Hu_xlat_precise_bvec4Ju_xlat_precise_uvec4G GGGH#H# H#@H#`GG"G!G8H9#G:(H;H;#G;G="G=!GxHy#Gz H{H{#G{G}"G}! GH#G@HH#GG"G! GH#G(H#GG"G!G/H0#G1(H2H2#G2G4"G4!GbHc#Gd HeHe#GeGg"Gg!GH#G(H#GG"G!GH#G(HH#GG"G!G,H-#G. H/H/#G/G1"G1!GuHv#Gw(Hx#GxGz"Gz! GH#G(HH#GG"G!GH#G HH#GG"G!G? H@ #GA (HB #GB GD "GD ! G H #G (H H #G G "G !G H #G  H H #G G "G !G H #G (H #G G"G! GL ! ;     ; +   +  ; +  " ;"#;*+,3 43 54;56+ 7 8 798:9;: <;;<=+?+L;5Q+S+X+]+b;5g+i+n r3;5v+ wx wyxzy{z |{;|} ; 3 ;+   ; ;5;5+ ;5+ + +;5 3+ + ;5;5\;5o;5;5K+3? 7 ;/ 70/1021 32;34b wcbdced fe;fg 7 ; 7 ;, w-,.-/. 0/;01u 7vuwvxw yx;yz 7 ; w ;? 7@ ? A @ B A C B ;C D  7     ;  w     ;   7         ;  B4 DF GF I+ K@, LK  6;BC;DE;GH;IJA = A = >=!  A$ = %$A& = '&~ (' )%(>#)= +#A-, = .-/+.>*/=0*20121= >#A@=,>,?= A@|3BA= C#AD=,C,,= ED|3FE= G#AH=,G,= IH|3JI= K#AM=,K,L= NM|3ONP4PBFJO>6P= R#AT=,R,S= UT|3VU= W#AY=,W,X= ZY|3[Z= \#A^=,\,]= _^|3`_= a#Ac=,a,b= dc|3edP4fV[`e>Qf= h#Aj=,h,i= kj|3lk= m#Ao=,m,n= po|3qpPrslq=4tgO 4uts>gu= ~#A},~,,= |3= #A},,= |3= #A},,L= |3= #A},,?= |3P4>v= #A},,S= |= #A},,X= |= #A},,]= |= #A},,b= |P>=AL=O |>A =A,,,= |3A =A,,= |3A =A,,L= |3P>A =A,,S= |3A =A,,X= |3A =A,,]= |3P=4O 4>A =A,,i= |3A =A,,n= |3A =A,,= |3P=4O 4>A =A,,= |3A =A,,= |3A =A,,= |3P=4O 4>A =3A >A =3A  > A  =3  A >  A =3A>A =3A >A =3A >A =3A>A =3A>A=3 A! >! A"=3#"A$ >$#A%=3&%A'>'&A( =)(A*,),,= +*|3,+A- =.-A/,.,= 0/|310A2 =32A4,3,L= 54|365P7,16>7A8 =98A:,9,S= ;:|3<;A= =>=A?,>,X= @?|3A@AB =CBAD,C,]= ED|3FEPG<AF=4HO 4IHG>IAJ =KJAL,K,i= ML|3NMAO =POAQ,P,n= RQ|3SRAT =UTAV,U,= WV|3XWPYNSX=4ZO 4[ZY>[A] =^]A_,^,= `_|3a`Ab =cbAd,c,= ed|3feAg =hgAi,h,= ji|3kjPlafk=4m\O 4nml>\nAp =3qpAro >rqAs =3tsAuo >utAv =3wvAxo>xwAy\ =3zyA{o>{z=4|vO 4}||=4~o4}~>oA =3A >A =3A >A =3A>A\ =3A>=4vO 4=44>A=3A\ >A=3A\ >A=3A\>=4vO 4=4\4>=4=4vO 44=4o4>=4=4vO 44=44>=4=4vO 44=44>A=A,,,= |3A=A,,= |3A=A,,L= |3P>A=A,,S= |3A=A,,X= |3A=A,,]= |3P=4O 4>A=A,,i= |3A=A,,n= |3A=A,,= |3P=4O 4>A=A,,= |3A=A,,= |3A=A,,= |3P=4\O 4>\A =3Ao >A =3Ao >A =3Ao>A\ =3Ao>A =3A >A =3A >A =3 A >  A \ =3  A >  A=3A\ >A=3A\ >A=3A\>=4o=4vO 44=44>=4=4vO 44 =4!4" !>"=4#\=4$vO 4%$$4&#%=4'4(&'>(A)=*)A+,*,,= ,+|3-,A.=/.A0,/,= 10|321A3=43A5,4,L= 65|376P8-27>8A9=:9A;,:,S= <;|3=<A>=?>A@,?,X= A@|3BAAC=DCAE,D,]= FE|3GFPH=BG=4IvO 4JIH>vJAL=MLAN,M,i= ON|3POAQ=RQAS,R,n= TS|3UTAV=WVAX,W,= YX|3ZYP[PUZ=4\KO 4]\[>K]A^=_^A`,_,= a`|3baAc=dcAe,d,= fe|3gfAh=ihAj,i,= kj|3lkPmbgl=4nO 4onm>oAp =3qpAr >rqAsv =3tsAu >utAvK =3wvAx>xwAy =3zyA{>{zA| =3}|A~\ >~}Av =3A\ >AK =3A\>A =3A\>A=3A >Av=3A >AK=3A>=4=4vO 44=44>K=4\=4vO 44=44>=4=4vO 44=44>v=46O=4O 4>A>=4K=43A >=4=43A >=4v=43A>=4QOr=46O 4>6=4KO=46O3A>=4O=46O3A >=4vO=46O3A >=4QOr=4gO 4>g=4KO=4gO3A>=4O=4gO3A>=4vO=4gO3Ag >= #A =3| A,,,>= #A =3| A,,>= #A=3| A,,L>= #A=3| A,,?>= #A =3| A,,S>= #A =3| A,,X>= #A=3| A ,,]> = #A =3  |  A, ,b> = #Ag =3| A,,i>= #Ag =3| A,,n>22!A = A,= >=!  A" = #"A$,= %$~ &% '#&>#'= (#A),,= *)+(*>*+=,*.,-.-= 5#A64,5,?= 76|387= 9#A:4,9,,= ;:|3<;= =#A>4,=,= ?>|3@?= A#AB4,A,L= CB|3DCP4E8<@D>6E= F#AG4,F,S= HG|3IH= J#AK4,J,X= LK|3ML= N#AO4,N,]= PO|3QP= R#AS4,R,b= TS|3UTP4VIMQU>QV= W#AX4,W,i= YX|3ZY= [#A\4,[,n= ]\|3^]Pr_Z^=4`gO 4a`_>ga= h#Aig,h,,= ji|3kj= l#Amg,l,= nm|3on= p#Aqg,p,L= rq|3sr= t#Aug,t,?= vu|3wvP4xkosw>vx= y#Azg,y,S= {z||{= }#A~g,},X= ~|= #Ag,,]= |= #Ag,,b= |P|>=AL,=O |>A =A,,,= |3A =A,,= |3A =A,,L= |3P>A =A,,S= |3A =A,,X= |3A =A,,]= |3P=4O 4>A =A,,i= |3A =A,,n= |3A =A,,= |3P=4O 4>A =A,,= |3A =A,,= |3A =A,,= |3P=4O 4>A =3A >A =3A >A =3A>A =3A>A =3A >A =3A >A =3A>A =3A>A=3A >A=3A >A=3A>A =A,,,= |3A =A,,= |3A =A,,L= |3P>A =A ,,S=  |3  A  =  A, ,X= |3A =A,,]= |3P =4O 4>A =A,,i= |3A =A ,,n= ! |3"!A# =$#A%,$,= &%|3'&P("'=4)O 4*)(>*A+ =,+A-,,,= .-|3/.A0 =10A2,1,= 32|343A5 =65A7,6,= 87|398P:/49=4;\O 4<;:>\<A= =3>=A?o >?>A@ =3A@ABo >BAAC =3DCAEo>EDAF\ =3GFAHo>HG=4IvO 4JII=4Ko4LJK>oLAM =3NMAO >ONAP =3QPAR >RQAS =3TSAU>UTAV\ =3WVAX>XW=4YvO 4ZYY=4[4\Z[>\A]=3^]A_\ >_^A`=3a`Ab\ >baAc=3dcAe\>ed=4fvO 4gff=4h\4igh>i=4j=4kvO 4lkk4mjl=4no4omn>o=4p=4qvO 4rqq4spr=4t4ust>u=4v=4wvO 4xww4yvx=4z4{yz>{A|=}|A~,},,= ~|3A=A,,= |3A=A,,L= |3P>A=A,,S= |3A=A,,X= |3A=A,,]= |3P=4O 4>A=A,,i= |3A=A,,n= |3A=A,,= |3P=4O 4>A=A,,= |3A=A,,= |3A=A,,= |3P=4\O 4>\A =3Ao >A =3Ao >A =3Ao>A\ =3Ao>A =3A >A =3A >A =3A>A\ =3A>A=3A\ >A=3A\ >A=3A\>=4o=4vO 44=44>=4=4vO 44=44>=4\=4vO 44=44>A=A,,,= |3A=A,,= |3A=A,,L= |3P>A=A,,S= |3 A =  A , ,X=  |3 A=A,,]= |3P =4vO 4>vA=A,,i= |3A=A,,n= |3 A!="!A#,",= $#|3%$P& %=4'KO 4('&>K(A)=*)A+,*,= ,+|3-,A.=/.A0,/,= 10|321A3=43A5,4,= 65|376P8-27=49O 4:98>:A; =3<;A= >=<A>v =3?>A@ >@?AAK =3BAAC>CBAD =3EDAF>FEAG =3HGAI\ >IHAJv =3KJAL\ >LKAMK =3NMAO\>ONAP =3QPAR\>RQAS=3TSAU >UTAVv=3WVAX >XWAYK=3ZYA[>[Z=4\=4]vO 4^]]4_\^=4`4a_`>Ka=4b\=4cvO 4dcc4ebd=4f4gef>g=4h=4ivO 4jii4khj=4l4mkl>vm=4n6Oonn=4pO 4qpo>qAr>r=4sK=4t3ustAv >vu=4w=4x3ywxAz >zy=4{v=4|3}{|A~>~}=4QOr=46O 4>6=4KO=46O3A>=4O=46O3A >=4vO=46O3A >=4QOr=4gO 4>g=4KO=4gO3A>=4O=4gO3A>=4vO=4gO3Ag >= #A =3| A,,,>= #A =3| A,,>= #A=3| A,,L>= #A=3| A,,?>= #A =3| A,,S>= #A =3| A,,X>= #A=3| A,,]>= #A=3| A,,b>= #Ag =3| A,,i>= #Ag =3| A,,n>..!A = A,= >=A = A,= ~  >#= #A,,= >*=*= #A,,?= |3= #A,,,= |3= #A,,= |3  = #A , ,L=  |3 P4 >6= #A,,S= |3= #A,,X= |3= #A,,]= |3= #A,,b= |3P4 >Q = !#A",!,i= #"|3$#= %#A&,%,n= '&|3('Pr)$(=4*gO 4+*)>g+= 2#A31,2,,= 43|354= 6#A71,6,= 87|398= :#A;1,:,L= <;|3=<= >#A?1,>,?= @?|3A@P4B59=A>vB= C#AD1,C,S= ED|FE= G#AH1,G,X= IH|JI= K#AL1,K,]= ML|NM= O#AP1,O,b= QP|RQPSFJNR>S=TAUL,=VUO WVV|XWYTX>YAZ =[ZA\,[,,= ]\|3^]A_ =`_Aa,`,= ba|3cbAd =edAf,e,L= gf|3hgPi^ch>iAj =kjAl,k,S= ml|3nmAo =poAq,p,X= rq|3srAt =utAv,u,]= wv|3xwPynsx=4zO 4{zy>{A| =}|A~,},i= ~|3A =A,,n= |3A =A,,= |3P=4O 4>A =A,,= |3A =A,,= |3A =A,,= |3P=4O 4>A =3A >A =3A >A =3A>A =3A>A =3A >A =3A >A =3A>A =3A>A=3A >A=3A >A=3A>A =A,,,= |3A =A,,= |3A =A,,L= |3P>A =A,,S= |3A =A,,X= |3A =A,,]= |3P=4O 4>A =A,,i= |3A =A,,n= |3A =A,,= |3P=4O 4>A =A,,= |3A =A,,= |3A =A,,= |3P=4\O 4>\A =3A o > A  =3  A o >  A  =3 Ao>A\ =3Ao>=4vO 4=4o4>oA =3A >A =3A >A =3A>A \ =3! A">"!=4#vO 4$##=4%4&$%>&A'=3('A)\ >)(A*=3+*A,\ >,+A-=3.-A/\>/.=40vO 4100=42\4312>3=44=45vO 46554746=48o4978>9=4:=4;vO 4<;;4=:<=4>4?=>>?=4@=4AvO 4BAA4C@B=4D4ECD>EAF=GFAH,G,,= IH|3JIAK=LKAM,L,= NM|3ONAP=QPAR,Q,L= SR|3TSPUJOT>UAV=WVAX,W,S= YX|3ZYA[=\[A],\,X= ^]|3_^A`=a`Ab,a,]= cb|3dcPeZ_d=4fO 4gfe>gAh=ihAj,i,i= kj|3lkAm=nmAo,n,n= po|3qpAr=srAt,s,= ut|3vuPwlqv=4xO 4yxw>yAz={zA|,{,= }||3~}A=A,,= |3A=A,,= |3P~=4\O 4>\A =3Ao >A =3Ao >A =3Ao>A\ =3Ao>A =3A >A =3A >A =3A>A\ =3A>A=3A\ >A=3A\ >A=3A\>=4o=4vO 44=44>=4=4vO 44=44>=4\=4vO 44=44>A=A,,,= |3A=A,,= |3A=A,,L= |3P>A=A,,S= |3A=A,,X= |3A=A,,]= |3P=4vO 4>vA=A,,i= |3A=A,,n= |3A=A,,= |3P=4KO 4>KA=A,,= |3A=A,,= |3A=A,,= |3P=4O 4>A =3A >Av =3 A  >  A K =3  A >  A =3A>A =3A\ >Av =3A\ >AK =3A\>A =3A\>A=3A >A v=3! A" >"!A#K=3$#A%>%$=4&=4'vO 4(''4)&(=4*4+)*>K+=4,\=4-vO 4.--4/,.=4041/0>1=42=43vO 44334524=464756>v7=486O988=4:O 4;:9>;A<><=4=K=4>3?=>A@ >@?=4A=4B3CABAD >DC=4Ev=4F3GEFAH>HG=4IQOrJII=4K6O 4LKJ>6L=4MKONMM=4O6OPOO3QNPAR>RQ=4SOTSS=4U6OVUU3WTVAX >XW=4YvOZYY=4[6O\[[3]Z\A^ >^]=4_QOr`__=4agO 4ba`>gb=4cKOdcc=4egOfee3gdfAh>hg=4iOjii=4kgOlkk3mjlAn>nm=4ovOpoo=4qgOrqq3sprAtg >ts= {#A| =3}|| ~}Az,{,,>~= #A =3| Az,,>= #A=3| Az,,L>= #A=3| Az,,?>= #A =3| Az,,S>= #A =3| Az,,X>= #A=3| Az,,]>= #A=3| Az,,b>= #Ag =3| Az,,i>= #Ag =3| Az,,n>A = A, = >=w A = A, = ~  >#= #A,, = >*=*= #A,,?= |3= #A,,,= |3= #A,,= |3= #A,,L= |3P4>6= #A,,S= |3= #A,,X= |3= #A,,]= |3= #A,,b= |3P4>Q= #A,,i= |3= #A,,n= |3Pr=4gO 4>g= #A,,,= |3= #A , ,=   |3  =  #A , ,L=   |3  =  #A , ,?= |3 P4   >v = #A , ,S=   |  =  #A , ,X=   |  =  #A , ,]=   |  =  #A , ,b=   |  P     > = A L,=  O ! |" ! #  " ># A$ =% $ A& ,% ,,= ' & |3( ' A) =* ) A+ ,* ,= , + |3- , A. =/ . A0 ,/ ,L= 1 0 |32 1 P3 ( - 2 >3 A4 =5 4 A6 ,5 ,S= 7 6 |38 7 A9 =: 9 A; ,: ,X= < ; |3= < A> =? > A@ ,? ,]= A @ |3B A PC 8 = B =4D O 4E D C >E AF =G F AH ,G ,i= I H |3J I AK =L K AM ,L ,n= N M |3O N AP =Q P AR ,Q ,= S R |3T S PU J O T =4V O 4W V U >W AX =Y X AZ ,Y ,= [ Z |3\ [ A] =^ ] A_ ,^ ,= ` _ |3a ` Ab =c b Ad ,c ,= e d |3f e Pg \ a f =4h O 4i h g >i Aj =3k j Al  >l k Am =3n m Ao  >o n Ap =3q p Ar >r q As =3t s Au >u t Av =3w v Ax  >x w Ay =3z y A{  >{ z A| =3} | A~ >~ } A =3  A > A =3 A > A =3 A > A =3 A > A = A , ,,= |3 A = A , ,= |3 A = A , ,L= |3 P > A = A , ,S= |3 A = A , ,X= |3 A = A , ,]= |3 P =4 O 4 > A = A , ,i= |3 A = A , ,n= |3 A = A , ,= |3 P =4 O 4 > A = A , ,= |3 A = A , ,= |3 A = A , ,= |3 P =4 \O 4 >\ A =3 A o > A =3 A o > A =3 A o> A \ =3 A o> =4 vO 4 =4 o4 >o A =3 A  > A =3 A  > A =3 A > A \ =3 A > =4 vO 4 =4 4 > A =3 A \ > A =3 A \ > A =3 A \> =4 vO 4 =4 \4 > =4 =4 vO 4 4 =4 o4   > =4 =4 vO 4   4   =4 4   > =4 =4 vO 4 4 =4 4  > A =  A , ,,=   |3  A =  A , ,=   |3  A =  A , ,L=   |3  P    > A =! A" ,! ,S= # " |3$ # A% =& % A' ,& ,X= ( ' |3) ( A* =+ * A, ,+ ,]= - , |3. - P/ $ ) . =40 O 41 0 / >1 A2 =3 2 A4 ,3 ,i= 5 4 |36 5 A7 =8 7 A9 ,8 ,n= : 9 |3; : A< == < A> ,= ,= ? > |3@ ? PA 6 ; @ =4B O 4C B A >C AD =E D AF ,E ,= G F |3H G AI =J I AK ,J ,= L K |3M L AN =O N AP ,O ,= Q P |3R Q PS H M R =4T \O 4U T S >\U AV =3W V AX o >X W AY =3Z Y A[ o >[ Z A\  =3] \ A^ o>^ ] A_ \ =3` _ Aa o>a ` Ab =3c b Ad  >d c Ae =3f e Ag  >g f Ah  =3i h Aj >j i Ak \ =3l k Am >m l An =3o n Ap \ >p o Aq =3r q As \ >s r At =3u t Av \>v u =4w o=4x vO 4y x x 4z w y =4{ 4| z { >| =4} =4~ vO 4 ~ ~ 4 }  =4 4 > =4 \=4 vO 4 4 =4 4 > A = A , ,,= |3 A = A , ,= |3 A = A , ,L= |3 P > A = A , ,S= |3 A = A , ,X= |3 A = A , ,]= |3 P =4 vO 4 >v A = A , ,i= |3 A = A , ,n= |3 A = A , ,= |3 P =4 KO 4 >K A = A , ,= |3 A = A , ,= |3 A = A , ,= |3 P =4 O 4 > A =3 A  > A v =3 A  > A K =3 A > A  =3 A > A =3 A \ > A v =3 A \ > A K =3 A \> A  =3 A \> A =3 A  > A v=3 A  > A K=3 A > =4 =4 vO 4 4 =4 4 >K =4 \=4 vO 4 4 =4 4 > =4 =4 vO 4 4 =4 4 >v =4 6O   =4 O 4   > A > =4 K=4 3   A > =4 =4 3 A > =4 v=4 3   A >  =4 QOr   =4 6O 4   >6 =4 KO   =4 6O   3   A >  =4 O   =4 6O   3!  A" >" ! =4# vO$ # # =4% 6O& % % 3' $ & A( >( ' =4) QOr* ) ) =4+ gO 4, + * >g, =4- KO. - - =4/ gO0 / / 31 . 0 A2 >2 1 =43 O4 3 3 =45 gO6 5 5 37 4 6 A8 >8 7 =49 vO: 9 9 =4; gO< ; ; 3= : < A> g >> = = E #AF =3G F | H G AI D ,E ,,>I H = J #AK =3L K | M L AN D ,J ,>N M = O #AP =3Q P | R Q AS D ,O ,L>S R = T #AU =3V U | W V AX D ,T ,?>X W = Y #AZ =3[ Z | \ [ A] D ,Y ,S>] \ = ^ #A_ =3` _ | a ` Ab D ,^ ,X>b a = c #Ad =3e d | f e Ag D ,c ,]>g f = h #Ai =3j i | k j Al D ,h ,b>l k = m #An g =3o n | p o Aq D ,m ,i>q p = r #As g =3t s | u t Av D ,r ,n>v u w Ax = y x Az , = { z | y { >| =}  } ~  ~ A = A , = ~  ># = #A ,, =  >* = *   = #A , ,?= |3 = #A , ,,= |3 = #A , ,= |3 = #A , ,L= |3 P4 >6 = #A , ,S= |3 = #A , ,X= |3 = #A , ,]= |3 = #A , ,b= |3 P4 >Q = #A , ,i= |3 = #A , ,n= |3 Pr =4 gO 4 >g = #A , ,,= |3 = #A , ,= |3 = #A , ,L= |3 = #A , ,?= |3 P4 >v = #A , ,S= | = #A , ,X= | = #A , ,]= | = #A , ,b= | P > = A L,= O  |  > A = A , ,,= |3 A = A , ,= |3 A = A , ,L= |3 P > A = A , ,S=  |3  A =  A , ,X=   |3  A =  A , ,]= |3 P   =4 O 4  > A =  A , ,i=   |3  A =  A , ,n=   |3  A =  A , ,=   |3  P    =4 O 4!  >! A" =# " A$ ,# ,= % $ |3& % A' =( ' A) ,( ,= * ) |3+ * A, =- , A. ,- ,= / . |30 / P1 & + 0 =42 O 43 2 1 >3 A4 =35 4 A6  >6 5 A7 =38 7 A9  >9 8 A: =3; : A< >< ; A= =3> = A? >? > A@ =3A @ AB  >B A AC =3D C AE  >E D AF =3G F AH >H G AI =3J I AK >K J AL =3M L AN >N M AO =3P O AQ >Q P AR =3S R AT >T S AU =V U AW ,V ,,= X W |3Y X AZ =[ Z A\ ,[ ,= ] \ |3^ ] A_ =` _ Aa ,` ,L= b a |3c b Pd Y ^ c >d Ae =f e Ag ,f ,S= h g |3i h Aj =k j Al ,k ,X= m l |3n m Ao =p o Aq ,p ,]= r q |3s r Pt i n s =4u O 4v u t >v Aw =x w Ay ,x ,i= z y |3{ z A| =} | A~ ,} ,n=  ~ |3  A = A , ,= |3 P { =4 O 4 > A = A , ,= |3 A = A , ,= |3 A = A , ,= |3 P =4 \O 4 >\ A =3 A o > A =3 A o > A =3 A o> A \ =3 A o> =4 vO 4 =4 o4 >o A =3 A  > A =3 A  > A =3 A > A \ =3 A > =4 vO 4 =4 4 > A =3 A \ > A =3 A \ > A =3 A \> =4 vO 4 =4 \4 > =4 =4 vO 4 4 =4 o4 > =4 =4 vO 4 4 =4 4 > =4 =4 vO 4 4 =4 4 > A = A , ,,= |3 A = A , ,= |3 A = A , ,L= |3 P > A = A , ,S= |3 A = A , ,X= |3 A = A , ,]= |3 P =4 O 4 > A = A , ,i= |3 A =  A , ,n=   |3  A =  A , ,=  |3 P  =4 O 4 > A =  A , ,=   |3  A =  A , ,=   |3  A =  A , ,=   |3  P    =4 \O 4   >\ A =3! A" o >" ! A# =3$ # A% o >% $ A&  =3' & A( o>( ' A) \ =3* ) A+ o>+ * A, =3- , A.  >. - A/ =30 / A1  >1 0 A2  =33 2 A4 >4 3 A5 \ =36 5 A7 >7 6 A8 =39 8 A: \ >: 9 A; =3< ; A= \ >= < A> =3? > A@ \>@ ? =4A o=4B vO 4C B B 4D A C =4E 4F D E >F =4G =4H vO 4I H H 4J G I =4K 4L J K >L =4M \=4N vO 4O N N 4P M O =4Q 4R P Q >R AS =T S AU ,T ,,= V U |3W V AX =Y X AZ ,Y ,= [ Z |3\ [ A] =^ ] A_ ,^ ,L= ` _ |3a ` Pb W \ a >b Ac =d c Ae ,d ,S= f e |3g f Ah =i h Aj ,i ,X= k j |3l k Am =n m Ao ,n ,]= p o |3q p Pr g l q =4s vO 4t s r >vt Au =v u Aw ,v ,i= x w |3y x Az ={ z A| ,{ ,n= } | |3~ } A =  A , ,= |3 P y ~ =4 KO 4 >K A = A , ,= |3 A = A , ,= |3 A = A , ,= |3 P =4 O 4 > A =3 A  > A v =3 A  > A K =3 A > A  =3 A > A =3 A \ > A v =3 A \ > A K =3 A \> A  =3 A \> A =3 A  > A v=3 A  > A K=3 A > =4 =4 vO 4 4 =4 4 >K =4 \=4 vO 4 4 =4 4 > =4 =4 vO 4 4 =4 4 >v =4 6O =4 O 4 > A > =4 K=4 3 A > =4 =4 3 A > =4 v=4 3 A > =4 QOr =4 6O 4 >6 =4 KO =4 6O 3 A > =4 O =4 6O 3 A > =4 vO =4 6O 3 A > =4 QOr =4 gO 4 >g =4 KO =4 gO 3 A > =4 O =4 gO 3 A>=4vO=4gO3Ag >= #A =3| A,,,>= #A =3| A,,>= #A=3| A,,L>= #A=3 | ! A",,?>"!= ##A$ =3%$| &%A',#,S>'&= (#A) =3*)| +*A,,(,X>,+= -#A.=3/.| 0/A1,-,]>10= 2#A3=343| 54A6,2,b>65= 7#A8g =398| :9A;,7,i>;:= <#A=g =3>=| ?>A@,<,n>@?    !!!!8@AbatchMainInPlaceComputeSkinInPlaceCBuffer inMatricesinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6inOutVertices0inOutVertices1 inOutVertices2 inOutVertices3 inOutVertices4 inOutVertices5 inOutVertices6#  GLSL.std.450main @mainu_xlatb0 gl_GlobalInvocationID ComputeSkinInPlaceCBufferg_VertCountsg_BatchOffsetsg_PoseOffsets g_poseBufferMaxIndex#u_xlatu0*u_xlatb126u_xlat1 9inOutVertices6_origX6X_type9value;inOutVertices6_origX6X ;inOutVertices6_origX6X_buf=Ou_xlatu12RinSkin6_typeRvalueTinSkin6TinSkin6_bufV[u_xlati24_u_xlatu24cu_xlat2ju_xlat3ou_xlat4uu_xlatu_loop_1u_xlatu5u_xlatu17u_xlat17u_xlati5u_xlat6inMatrices_typevalueinMatricesinMatrices_bufu_xlat7u_xlat8u_xlat9u_xlat10u_xlat11 LinOutVertices5_origX5X_typeLvalueNinOutVertices5_origX5X NinOutVertices5_origX5X_bufPainSkin5_typeavaluecinSkin5cinSkin5_bufe{u_xlatu_loop_2 4inOutVertices4_origX4X_type4value6inOutVertices4_origX4X 6inOutVertices4_origX4X_buf8IinSkin4_typeIvalueKinSkin4KinSkin4_bufMcu_xlatu_loop_3 inOutVertices3_origX3X_typevalueinOutVertices3_origX3X inOutVertices3_origX3X_buf 1inSkin3_type1value3inSkin33inSkin3_buf5Ku_xlatu_loop_4 inOutVertices2_origX2X_typevalueinOutVertices2_origX2X inOutVertices2_origX2X_bufinSkin2_typevalueinSkin2inSkin2_buf3u_xlatu_loop_5 inOutVertices1_origX1X_typevalueinOutVertices1_origX1X inOutVertices1_origX1X_bufinSkin1_typevalueinSkin1inSkin1_bufu_xlatu_loop_6 inOutVertices0_origX0X_typevalueinOutVertices0_origX0X inOutVertices0_origX0X_bufinSkin0_typevalueinSkin0inSkin0_bufu_xlatu_loop_7u_xlat_precise_vec4u_xlat_precise_ivec4u_xlat_precise_bvec4u_xlat_precise_uvec4u_xlatb5u_xlatu36G GGGH#H# H#@H#`GG"G!G8H9#G: H;#G;G="G=!GQHR#GSHTHT#GTGV"GV!GH#G@HH#GG"G!GKHL#GM HN#GNGP"GP! G`Ha#GbHcHc#GcGe"Ge!G3H4#G5 H6#G6G8"G8! GHHI#GJHKHK#GKGM"GM!GH#G H#GG "G ! G0H1#G2H3H3#G3G5"G5!GH#G H#GG"G! GH#GHH#GG"G!GH#G H#GG"G! GH#GHH#GG"G!GH#G H#GG"G!GH#GHH#GG"G!G ! ;     ; +   +  ; +  " ;"#;*+,3 43 54;56+ 78 798:9;: <;;<=+GK3;"O+ PQ PRQSRTS UT;UV Z;Z[;"_;5c+3d e3;5j;5o t ;";"+ ;e+37;Z+ K;  ;;+++;++ + ;5+ + +;5;5+3?K 7LKMLNM ON;OP` Pa`bacb dc;de3 7435465 76;78H PIHJIKJ LK;LM 7 ; 0 P102132 43;45 7 ; P ; 7 ; P ; 7 ; P ; 4   ;;"+ @, PP6;tu;t{;tc;tK;t3;t;t;;;;A = A= >=! 5 A$ = %$A&= '&~ (' )%(>#)= +#A-,= .-/+.>*/=0*20121= >#A?=,>,,= @?|3A@= B#AC=,B,= DC|3ED= F#AH=,F,G= IH|3JIPKLAEJ=4M6O 4NML>6N= W#AXV,W,,= YX>OY= \#|]\^]>[^=`[AaV,`,,= ba>_bAefc >fdAegcP>gdAehc>hdAeic7>idAekj >kdAeljP>ldAemj>mdAenj7>ndAepo >pdAeqoP>qdAero>rdAeso7>sd= vO>uvwwyz{{= |u= }_~|}~xyx= uAV,,,= >=  >= p3>=33>=  |>=AG= |>=A,,,= |3=A,,= |3=A,,G= |3PK>=A,,= |3=A,,= |3=A,,= |3PK>=A,,= |3=A,,= |3=A,,= |3PK>=A,,= |3=A,,= |3=A,,= |3PK=4O 4>Ae =3Ae >Ae =3AeP>Ae =3Ae>Ae =3Ae7>AeP=3Ae >AeP=3AeP>AeP=3Ae>AeP=3Ae7>Ae=3Ae >Ae=3AeP>Ae=3Ae>=4=3P44=4c4 >c =4 =3 P4     4   =4j4 >j=4=3P44=4o4>ozz= u >uwyAe67>=4c=463Aec >=4j=463 Ae!cP>! =4"o=4#63$"#Ae%c>%$= &#Ae'c =3('| )(A*=,&,,>*)= +#Ae,cP=3-,| .-A/=,+,>/.= 0#Ae1c=321| 32A4=,0,G>4322!5A6 = 76A8P= 98:79>:=;=;<<A> = ?>A@P= A@~ BA C?B>#C= D#AE,P= FEGDF>*G=H*JHIJI= Q#ARP,Q,,= SR|3TS= U#AVP,U,= WV|3XW= Y#AZP,Y,G= [Z|3\[PK]TX\=4^6O 4_^]>6_= f#Age,f,,= hg>Oh= i#|jikj>[k=l[Ame,l,,= nm>_nAeoc >odAepcP>pdAeqc>qdAerc7>rdAesj >sdAetjP>tdAeuj>udAevj7>vdAewo >wdAexoP>xdAeyo>ydAezo7>zd= |O>{|}}= {= _~~= {Ae,,,= >=  >= p3>=33>=  |>=AGP= |>=A,,,= |3=A,,= |3=A,,G= |3PK>=A,,= |3=A,,= |3=A,,= |3PK>=A,,= |3=A,,= |3=A,,= |3PK>=A,,= |3=A,,= |3=A,,= |3PK=4O 4>Ae =3Ae >Ae =3AeP>Ae =3Ae>Ae =3Ae7>AeP=3Ae >AeP=3AeP>AeP=3Ae>AeP=3Ae7>Ae=3Ae >Ae=3AeP>Ae=3Ae>=4=3P44=4c4>c=4=3P44=4j4>j=4=3P44=4o4>o= { >{}Ae67>=4c=463Aec >=4j=463Ae cP> =4 o=4 63   Ae c>  = #Aec =3| AP,,,>= #AecP=3| AP,,>= #Aec=3| AP,,G>JJ=A = A  = ! "!>"=#%#$$A& = '&A( = )(~ *) +'*>#+= ,#A-, = .-/,.>*/=0*20121= 9#A:8,9,,= ;:|3<;= =#A>8,=,= ?>|3@?= A#AB8,A,G= CB|3DCPKE<@D=4F6O 4GFE>6G= N#AOM,N,,= PO>OP= Q#|RQSR>[S=T[AUM,T,,= VU>_VAeWc >WdAeXcP>XdAeYc>YdAeZc7>ZdAe[j >[dAe\jP>\dAe]j>]dAe^j7>^dAe_o >_dAe`oP>`dAeao>adAebo7>bd= dO>cdeeghii= jc= k_ljklfgf= mcAnM,m,,= on>o= p qp>q= rp3sr>s=3t3ut>u= v wv|xw>x=yAzG = {z||{}y|>}=~A,~,,= |3=A,,= |3=A,,G= |3PK>=A,,= |3=A,,= |3=A,,= |3PK>=A,,= |3=A,,= |3=A,,= |3PK>=A,,= |3=A,,= |3=A,,= |3PK=4O 4>Ae =3Ae >Ae =3AeP>Ae =3Ae>Ae =3Ae7>AeP=3Ae >AeP=3AeP>AeP=3Ae>AeP=3Ae7>Ae=3Ae >Ae=3AeP>Ae=3Ae>=4=3P44=4c4>c=4=3P44=4j4>j=4=3P44=4o4>ohh= c >cegAe67>=4c=463Aec >=4j=463AecP>=4o=463Aec>= #Aec =3| A8,,,>= #AecP=3| A8,,>= #Aec=3| A8,,G>22%A = A,7=   > =     A = A,7= ~  >#= #A,,7= >*=*= !#A" ,!,,= #"|3$#= %#A& ,%,= '&|3('= )#A* ,),G= +*|3,+PK-$(,=4.6O 4/.->6/= 6#A75,6,,= 87>O8= 9#|:9;:>[;=<[A=5,<,,= >=>_>Ae?c >?dAe@cP>@dAeAc>AdAeBc7>BdAeCj >CdAeDjP>DdAeEj>EdAeFj7>FdAeGo >GdAeHoP>HdAeIo>IdAeJo7>Jd= LO>KLMMOPQQ= RK= S_TRSTNON= UKAV5,U,,= WV>W= X YX>Y= Zp3[Z>[=3\3]\>]= ^ _^|`_>`=aAbG,7= cb|dcead>e=fAg,f,,= hg|3ih=jAk,j,= lk|3ml=nAo,n,G= po|3qpPKrimq>r=sAt,s,= ut|3vu=wAx,w,= yx|3zy={A|,{,= }||3~}PKvz~>=A,,= |3=A,,= |3=A,,= |3PK>=A,,= |3=A,,= |3=A,,= |3PK=4O 4>Ae =3Ae >Ae =3AeP>Ae =3Ae>Ae =3Ae7>AeP=3Ae >AeP=3AeP>AeP=3Ae>AeP=3Ae7>Ae=3Ae >Ae=3AeP>Ae=3Ae>=4=3P44=4c4>c=4=3P44=4j4>j=4=3P44=4o4>oPP= K >KMOAe67>=4c=463Aec >=4j=463AecP>=4o=463Aec>= #Aec =3| A ,,,>= #AecP=3| A ,,>= #Aec=3| A ,,G> A = A,= >=A = A,= ~  >#= #A,,= >*=*= #A , ,,=  |3  = #A, ,= |3= #A,,G= |3PK =46O 4>6= #A,,,= >O = !#|"!#">[#=$[A%,$,,= &%>_&Ae'c >'dAe(cP>(dAe)c>)dAe*c7>*dAe+j >+dAe,jP>,dAe-j>-dAe.j7>.dAe/o >/dAe0oP>0dAe1o>1dAe2o7>2d= 4O>34557899= :3= ;_<:;<676= =3A>,=,,= ?>>?= @ A@>A= Bp3CB>C=3D3ED>E= F GF|HG>H=IAJG,= KJ|LKMIL>M=NAO,N,,= PO|3QP=RAS,R,= TS|3UT=VAW,V,G= XW|3YXPKZQUY>Z=[A\,[,= ]\|3^]=_A`,_,= a`|3ba=cAd,c,= ed|3fePKg^bf>g=hAi,h,= ji|3kj=lAm,l,= nm|3on=pAq,p,= rq|3srPKtkos>t=uAv,u,= wv|3xw=yAz,y,= {z|3|{=}A~,},= ~|3PKx|=4O 4>Ae =3Ae >Ae =3AeP>Ae =3Ae>Ae =3Ae7>AeP=3Ae >AeP=3AeP>AeP=3Ae>AeP=3Ae7>Ae=3Ae >Ae=3AeP>Ae=3Ae>=4=3P44=4c4>c=4=3P44=4j4>j=4=3P44=4o4>o88= 3 >357Ae67>=4c=463Aec >=4j=463AecP>=4o=463Aec>= #Aec =3| A,,,>= #AecP=3| A,,>= #Aec=3| A,,G>A = A,P= >=A = A,P= ~  >#= #A,,P= >*=*= #A,,,= |3= #A,,= |3= #A,,G= |3PK=46O 4>6= #A,,,= >O= #|    >[ = [A , ,,=  >_Aec >dAecP>dAec>dAec7>dAej >dAejP>dAej>dAej7>dAeo >dAeoP>dAeo>dAeo7>d= O> !!= "= #_$"#$= %A&,%,,= '&>'= ( )(>)= *p3+*>+=3,3-,>-= . /.|0/>0=1A2G,P= 32|43514>5=6A7,6,,= 87|398=:A;,:,= <;|3=<=>A?,>,G= @?|3A@PKB9=A>B=CAD,C,= ED|3FE=GAH,G,= IH|3JI=KAL,K,= ML|3NMPKOFJN>O=PAQ,P,= RQ|3SR=TAU,T,= VU|3WV=XAY,X,= ZY|3[ZPK\SW[>\=]A^,],= _^|3`_=aAb,a,= cb|3dc=eAf,e,= gf|3hgPKi`dh=4jO 4kji>kAel =3mlAen >nmAeo =3poAeqP>qpAer =3srAet>tsAeu =3vuAew7>wvAexP=3yxAez >zyAe{P=3|{Ae}P>}|Ae~P=3~Ae>AeP=3Ae7>Ae=3Ae >Ae=3AeP>Ae=3Ae>=4=3P44=4c4>c=4=3P44=4j4>j=4=3P44=4o4>o  =  >Ae67>=4c=463Aec >=4j=463AecP>=4o=463Aec>= #Aec =3| A,,,>= #AecP=3| A,,>= #Aec=3| A,,G>A = A, = >=A = A, = ~  >#= #A,, = >*=*= #A,,,= |3= #A,,= |3= #A,,G= |3PK=46O 4>6= #A,,,= >O= #|>[=[A,,,= >_Aec >dAecP>dAec>dAec7>dAej >dAejP>dAej>dAej7>dAeo >dAeoP>dAeo>dAeo7>d= O>  = = _    = A, ,,= >=  >= p3>=33>=  |>=AG, = |>=A,,,= |3! ="A#,",= $#|3%$=&A',&,G= ('|3)(PK*!%)>*=+A,,+,= -,|3.-=/A0,/,= 10|321=3A4,3,= 54|365PK7.26>7=8A9,8,= :9|3;:=<A=,<,= >=|3?>=@AA,@,= BA|3CBPKD;?C>D=EAF,E,= GF|3HG=IAJ,I,= KJ|3LK=MAN,M,= ON|3POPKQHLP=4RO 4SRQ>SAeT =3UTAeV >VUAeW =3XWAeYP>YXAeZ =3[ZAe\>\[Ae] =3^]Ae_7>_^Ae`P=3a`Aeb >baAecP=3dcAeeP>edAefP=3gfAeh>hgAeiP=3jiAek7>kjAel=3mlAen >nmAeo=3poAeqP>qpAer=3srAet>ts=4u=3vP4wvvvv4xuw=4yc4zxy>cz=4{=3|P4}||||4~{}=4j4~>j=4=3P44=4o4>o=  >Ae67>=4c=463Aec >=4j=463AecP>=4o=463Aec>= #Aec =3| A,,,>= #AecP=3| A,,>= #Aec=3| A,,G>  %%==!!8@AbatchMainInPlaceComputeSkinInPlaceCBuffer inMatricesinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6inOutVertices0inOutVertices1 inOutVertices2 inOutVertices3 inOutVertices4 inOutVertices5 inOutVertices6# 9 GLSL.std.450main @mainu_xlatb0 gl_GlobalInvocationID ComputeSkinInPlaceCBufferg_VertCountsg_BatchOffsetsg_PoseOffsets g_poseBufferMaxIndex#u_xlatu0*u_xlatb126u_xlat1 9inOutVertices6_origX6X_type9value;inOutVertices6_origX6X ;inOutVertices6_origX6X_buf=Su_xlat2bu_xlatu12einSkin6_typeevalueginSkin6ginSkin6_bufinu_xlati24ru_xlatu24vu_xlat3~u_xlat4u_xlat5u_xlatu_loop_1u_xlatu38u_xlatu6u_xlat6u_xlati38u_xlat18inMatrices_typevalueinMatricesinMatrices_bufu_xlat7u_xlat8u_xlat9u_xlat10u_xlat11 inOutVertices5_origX5X_typevalueinOutVertices5_origX5X inOutVertices5_origX5X_bufinSkin5_typevalueinSkin5inSkin5_bufu_xlatu_loop_2 inOutVertices4_origX4X_typevalueinOutVertices4_origX4X inOutVertices4_origX4X_bufinSkin4_typevalueinSkin4inSkin4_bufu_xlatu_loop_3 inOutVertices3_origX3X_typevalueinOutVertices3_origX3X inOutVertices3_origX3X_bufinSkin3_typevalueinSkin3inSkin3_bufu_xlatu_loop_4 inOutVertices2_origX2X_typevalueinOutVertices2_origX2X inOutVertices2_origX2X_bufinSkin2_typevalueinSkin2inSkin2_buf  u_xlatu_loop_5 inOutVertices1_origX1X_typevalueinOutVertices1_origX1X inOutVertices1_origX1X_buf%inSkin1_type%value'inSkin1'inSkin1_buf)?u_xlatu_loop_6 "inOutVertices0_origX0X_type"value$inOutVertices0_origX0X $inOutVertices0_origX0X_buf&DinSkin0_typeDvalueFinSkin0FinSkin0_bufH^u_xlatu_loop_7,u_xlat_precise_vec4/u_xlat_precise_ivec42u_xlat_precise_bvec44u_xlat_precise_uvec45u_xlatu366u_xlatb38G GGGH#H# H#@H#`GG"G!G8H9#G:H;#G;G="G=!GdHe#GfHgHg#GgGi"Gi!GH#G@HH#GG"G!GH#GH#GG"G! GH#GHH#GG"G!GH#GH#GG"G! GH#GHH#GG"G!GH#GH#GG"G! GH#GHH#GG"G!GH#GH#GG"G! GH#GHH#GG "G !GH#GH#GG"G! G$H%#G&H'H'#G'G)"G)!G!H"#G#H$#G$G&"G&!GCHD#GEHFHF#GFGH"GH!G8 ! ;     ; +   +  ; +  " ;"#;*+,3 43 54;56+ 78 798:9;: <;;<=+G+LQ3 RQ;RS+U+Z^3;"b+ cd cedfegf hg;hi m;mn;"r;5v+3w x3+ |;5~;5  ;";"+ ;5+37;m+ ;R  ;;5+;R++ + ;5+ + +;5;5+32? 7 ; c ; 7 ; c ; 7 ; c ; 7 ; c  ;   7 ;$ c%$&%'& (';()! 7"!#"$# %$;%&C cDCEDFE GF;GH +4- .-0 10 3;"5;6+ 7@, 87cc6;;;;; ;?;^;+,;./;12;34A = A= >=! p A$ = %$A&= '&~ (' )%(>#)= +#A-,= .-/+.>*/=0*20121= >#A?=,>,,= @?|3A@= B#AC=,B,= DC|3ED= F#AH=,F,G= IH|3JI= K#AM=,K,L= NM|3ONP4PAEJO>6P= T#AV=,T,U= WV|3XW= Y#A[=,Y,Z= \[|3]\P^_X]=Q`SOQa`_>Sa= j#Aki,j,,= lk>bl= o#|poqp>nq=snAti,s,,= ut>ruAxyv >ywAxzvc>zwAx{v>{wAx}v|>}wAx~ >wAx~c>wAx~>wAx~|>wAx >wAxc>wAx>wAx|>w= b>= = r= Ai,,,= >=  >= p3Ax >Ax =33Ax >=  |>=AG= |>=A,,,= |3=A,,= |3=A,,G= |3PQ>=A,,U= |3=A,,Z= |3=A,,= |3PQ=4O 4>=A,,= |3=A,,= |3=A,,= |3PQ>=A,,= |3=A,,= |3=A,,= |3PQ=4O 4>Ax =3Ax >Ax =3Axc>Ax =3Ax>Ax =3Ax|>Axc=3Ax >Axc=3 Ax c>  Ax c=3  Ax >  Axc=3Ax|>Ax=3Ax >Ax=3Axc>Ax=3Ax>=4=4O 44=4v4>v=4 =4!O 4"!!4# "=4$~4%#$>~%=4&=4'O 4(''4)&(=4*4+)*>+= , -,>-=4.6OQ/..=40O 410/>1Ax3|>32=44v=453645Ax7 >76=48~=493:89Ax;c>;:=4<=4=3><=Ax?>?>Ax@6|=3A@AxBS>BA=4CvOQDCC=QES3FDEAxG|>GF=4H~OQIHH=QJS3KIJAxL6 >LK=4MOQNMM=QOS3PNOAxQ6c>QP= R#AxS =3TS| UTAV=,R,,>VU= W#AxXc=3YX| ZYA[=,W,>[Z= \#Ax]=3^]| _^A`=,\,G>`_= a#Axb|=3cb| dcAe=,a,L>ed= f#Axg6 =3hg| ihAj=,f,U>ji= k#Axl6c=3ml| nmAo=,k,Z>on22!pAq = rqAsc= tsurt>u=vxvwwAy = zyA{c= |{~ }| ~z}>#~= #A,c= >*=*= #A,,,= |3= #A,,= |3= #A,,G= |3= #A,,L= |3P4>6= #A,,U= |3= #A,,Z= |3P^=QSOQ>S= #A,,,= >b= #|>n=nA,,,= >rAxv >wAxvc>wAxv>wAxv|>wAx~ >wAx~c>wAx~>wAx~|>wAx >wAxc>wAx>wAx|>w= b>= = r= A,,,= >=  >= p3Ax >Ax =33Ax >=  |>=AGc= |>=A,,,= |3=A,,= |3=A,,G= |3PQ>=A,,U= |3=A,,Z= |3=A,,= |3PQ=4O 4>=A,,= |3=A,,= |3=A,,= |3PQ > = A , ,=  |3  =A,,= |3=A,,= |3PQ =4O 4>Ax =3Ax >Ax =3Axc>Ax =3 Ax!>! Ax" =3#"Ax$|>$#Ax%c=3&%Ax' >'&Ax(c=3)(Ax*c>*)Ax+c=3,+Ax->-,Ax.c=3/.Ax0|>0/Ax1=321Ax3 >32Ax4=354Ax6c>65Ax7=387Ax9>98=4:=4;O 4<;;4=:<=4>v4?=>>v?=4@=4AO 4BAA4C@B=4D~4ECD>~E=4F=4GO 4HGG4IFH=4J4KIJ>K= L ML>M=4N6OQONN=4PO 4QPO>QAxR|>R2=4Sv=4T3USTAxV >VU=4W~=4X3YWXAxZc>ZY=4[=4\3][\Ax^>^]Ax_6|=3`_AxaS>a`=4bvOQcbb=QdS3ecdAxf|>fe=4g~OQhgg=QiS3jhiAxk6 >kj=4lOQmll=QnS3omnAxp6c>po= q#Axr =3sr| tsAu,q,,>ut= v#Axwc=3xw| yxAz,v,>zy= {#Ax|=3}|| ~}A,{,G>~= #Ax|=3| A,,L>= #Ax6 =3| A,,U>= #Ax6c=3| A,,Z>xA = A = >=A = A = ~  >#= #A, = >*=*= #A,,,= |3= #A,,= |3= #A,,G= |3= #A,,L= |3P4>6= #A,,U= |3= #A,,Z= |3P^=QSOQ>S= #A,,,= >b= #|>n=nA,,,= >rAxv >wAxvc>wAxv>wAxv|>wAx~ >wAx~c>wAx~>wAx~|>wAx >wAxc>wAx>wAx|>w= b>= = r= A,,,= >=  >= p3Ax >Ax =33Ax >=  |>=AG = |>=A,,,= |3=A,,= |3=A ,,G=  |3  PQ  > = A, ,U= |3=A,,Z= |3=A,,= |3PQ=4O 4>=A,,= |3= A!, ,= "!|3#"=$A%,$,= &%|3'&PQ(#'>(=)A*,),= +*|3,+=-A.,-,= /.|30/=1A2,1,= 32|343PQ5,04=46O 4765>7Ax8 =398Ax: >:9Ax; =3<;Ax=c>=<Ax> =3?>Ax@>@?AxA =3BAAxC|>CBAxDc=3EDAxF >FEAxGc=3HGAxIc>IHAxJc=3KJAxL>LKAxMc=3NMAxO|>ONAxP=3QPAxR >RQAxS=3TSAxUc>UTAxV=3WVAxX>XW=4Y=4ZO 4[ZZ4\Y[=4]v4^\]>v^=4_=4`O 4a``4b_a=4c~4dbc>~d=4e=4fO 4gff4heg=4i4jhi>j= k lk>l=4m6OQnmm=4oO 4pon>pAxq|>q2=4rv=4s3trsAxu >ut=4v~=4w3xvwAxyc>yx=4z=4{3|z{Ax}>}|Ax~6|=3~AxS>=4vOQ=QS3Ax|>=4~OQ=QS3Ax6 >=4OQ=QS3Ax6c>= #Ax =3| A,,,>= #Axc=3| A,,>= #Ax=3| A,,G>= #Ax|=3| A,,L>= #Ax6 =3| A,,U>= #Ax6c=3| A,,Z>A = A,|= >=A = A,|= ~  >#= #A,,|= >*=*= #A,,,= |3= #A,,= |3= #A,,G= |3= #A,,L= |3P4>6= #A,,U= |3= #A,,Z= |3P^=QSOQ>S= #A,,,= >b= #|>n=nA,,,= >rAxv >wAxvc>wAxv>wAxv|>wAx~ >wAx~c>wAx~>wAx~|>wAx >wAxc>wAx>wAx|>w= b>= = r   = A , ,,=  > =  >= p3Ax >Ax =33Ax >=  |>=AG,|= |>=A ,,,= ! |3"!=#A$,#,= %$|3&%='A(,',G= )(|3*)PQ+"&*>+=,A-,,,U= .-|3/.=0A1,0,Z= 21|332=4A5,4,= 65|376PQ8/37=49O 4:98>:=;A<,;,= =<|3>==?A@,?,= A@|3BA=CAD,C,= ED|3FEPQG>BF>G=HAI,H,= JI|3KJ=LAM,L,= NM|3ON=PAQ,P,= RQ|3SRPQTKOS=4UO 4VUT>VAxW =3XWAxY >YXAxZ =3[ZAx\c>\[Ax] =3^]Ax_>_^Ax` =3a`Axb|>baAxcc=3dcAxe >edAxfc=3gfAxhc>hgAxic=3jiAxk>kjAxlc=3mlAxn|>nmAxo=3poAxq >qpAxr=3srAxtc>tsAxu=3vuAxw>wv=4x=4yO 4zyy4{xz=4|v4}{|>v}=4~=4O 44~=4~4>~=4=4O 44=44>=  >=46OQ=4O 4>Ax|>2=4v=43Ax >=4~=43Axc>=4=43Ax>Ax6|=3AxS>=4vOQ=QS3Ax|>=4~OQ=QS3Ax6 >=4OQ=QS3Ax6c>= #Ax =3| A,,,>= #Axc=3| A,,>= #Ax=3| A,,G>= #Ax|=3| A,,L>= #Ax6 =3| A,,U>= #Ax6c=3| A,,Z>A = A,= >=A = A,= ~  >#= #A,,= >*=*= #A,,,= |3= #A,,= |3= #A,,G= |3= #A,,L= |3P4>6= #A,,U= |3= #A,,Z= |3P^=QSOQ>S= #A  , ,,=  >b = #|>n=nA ,,,= >rAxv >wAxvc>wAxv>wAxv|>wAx~ >wAx~c>wAx~>wAx~|>wAx >wAxc>wAx>wAx|>w= !b> !""$%&&= ' = (r)'()#$#= * A+ ,*,,= ,+>,= - .->.= /p30/Ax1 >10Ax2 =332343Ax5 >54= 6 76|87>8=9A:G,= ;:|<;=9<>==>A?,>,,= @?|3A@=BAC,B,= DC|3ED=FAG,F,G= HG|3IHPQJAEI>J=KAL,K,U= ML|3NM=OAP,O,Z= QP|3RQ=SAT,S,= UT|3VUPQWNRV=4XO 4YXW>Y=ZA[,Z,= \[|3]\=^A_,^,= `_|3a`=bAc,b,= dc|3edPQf]ae>f=gAh,g,= ih|3ji=kAl,k,= ml|3nm=oAp,o,= qp|3rqPQsjnr=4tO 4uts>uAxv =3wvAxx >xwAxy =3zyAx{c>{zAx| =3}|Ax~>~}Ax =3Ax|>Axc=3Ax >Axc=3Axc>Axc=3Ax>Axc=3Ax|>Ax=3Ax >Ax=3Axc>Ax=3Ax>=4=4O 44=4v4>v=4=4O 44=4~4>~=4=4O 44=44>%%=   > "$=46OQ=4O 4>Ax|>2=4v=43Ax >=4~=43Axc>=4=43Ax>Ax6|=3AxS>=4vOQ=QS3Ax|>=4~OQ=QS3Ax6 >=4OQ=QS3Ax6c>= #Ax =3| A,,,>= #Axc=3| A,,>= #Ax=3| A,,G>= #Ax|=3| A,,L>= #Ax6 =3| A,,U>= #Ax6c=3| A,,Z>A = A,c= >= A = A,c= ~  >#= #A,,c= >*=*= #A ,,,=  |3  = #A , ,=  |3= #A,,G= |3= #A,,L= |3P4 >6= #A,,U= |3= #A,,Z= |3 P^! =Q"SOQ#"!>S#= *#A+),*,,= ,+>b,= -#|.-/.>n/=0nA1),0,,= 21>r2Ax3v >3wAx4vc>4wAx5v>5wAx6v|>6wAx7~ >7wAx8~c>8wAx9~>9wAx:~|>:wAx; >;wAx<c><wAx=>=wAx>|>>w= @b>?@AACDEE= F?= GrHFGHBCB= I?AJ),I,,= KJ>K= L ML>M= Np3ONAxP >POAxQ =3RQ3SRAxT >TS= U VU|WV>W=XAYG,c= ZY|[Z\X[>\=]A^,],,= _^|3`_=aAb,a,= cb|3dc=eAf,e,G= gf|3hgPQi`dh>i=jAk,j,U= lk|3ml=nAo,n,Z= po|3qp=rAs,r,= ts|3utPQvmqu=4wO 4xwv>x=yAz,y,= {z|3|{=}A~,},= ~|3=A,,= |3PQ|>=A,,= |3=A,,= |3=A,,= |3PQ=4O 4>Ax =3Ax >Ax =3Axc>Ax =3Ax>Ax =3Ax|>Axc=3Ax >Axc=3Axc>Axc=3Ax>Axc=3Ax|>Ax=3Ax >Ax=3Axc>Ax=3Ax>=4=4O 44=4v4>v=4=4O 44=4~4>~=4=4O 44=44>DD= ? >?AC=46OQ=4O 4>Ax|>2=4v=43Ax >=4~=43Axc>=4=43Ax>Ax6|=3AxS>=4vOQ=QS3Ax|>=4~OQ=QS3Ax6 >=4OQ=QS3Ax6c>= #Ax =3| A,,,>= #Axc=3| A,,>= #Ax=3| A,,G>= #Ax|=3| A,,L>= #Ax6 =3| A,,U>= #Ax6c=3| A ,,Z>   A  =  A, =  >=A = A, = ~  >#= #A,, = >*=*  = '#A(&,',,= )(|3*)= +#A,&,+,= -,|3.-= /#A0&,/,G= 10|321= 3#A4&,3,L= 54|365P47*.26>67= 8#A9&,8,U= :9|3;:= <#A=&,<,Z= >=|3?>P^@;?=QASOQBA@>SB= I#AJH,I,,= KJ>bK= L#|MLNM>nN=OnAPH,O,,= QP>rQAxRv >RwAxSvc>SwAxTv>TwAxUv|>UwAxV~ >VwAxW~c>WwAxX~>XwAxY~|>YwAxZ >ZwAx[c>[wAx\>\wAx]|>]w= _b>^_``bcdd= e^= frgefgaba= h^AiH,h,,= ji>j= k lk>l= mp3nmAxo >onAxp =3qp3rqAxs >sr= t ut|vu>v=wAxG, = yx|zy{wz>{=|A},|,,= ~}|3~=A,,= |3=A,,G= |3PQ>=A,,U= |3=A,,Z= |3=A,,= |3PQ=4O 4>=A,,= |3=A,,= |3=A,,= |3PQ>=A,,= |3=A,,= |3=A,,= |3PQ=4O 4>Ax =3Ax >Ax =3Axc>Ax =3Ax>Ax =3Ax|>Axc=3Ax >Axc=3Axc>Axc=3Ax>Axc=3Ax|>Ax=3Ax >Ax=3Axc>Ax=3Ax>=4=4O 44=4v4>v=4=4O 44=4~4>~=4=4O 44=44>cc= ^ >^`b=46OQ=4O 4>Ax|>2=4v=43Ax >=4~=43Axc>=4=43Ax>Ax6|=3AxS>=4vOQ=QS3Ax|>=4~OQ=QS3Ax6 >=4OQ=Q S3  Ax 6c>  = #Ax  =3 | A&, ,,>= #Axc=3| A&,,>= #Ax=3| A&,,G>= #Ax|=3| A&,,L>= #Ax!6 =3"!| #"A$&, ,U>$#= %#Ax&6c=3'&| ('A)&,%,Z>)(  xx!!8@AbatchMainInPlaceComputeSkinInPlaceCBuffer inMatricesinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6inOutVertices0inOutVertices1 inOutVertices2 inOutVertices3 inOutVertices4 inOutVertices5 inOutVertices6#   GLSL.std.450main @mainu_xlatb0 gl_GlobalInvocationID ComputeSkinInPlaceCBufferg_VertCountsg_BatchOffsetsg_PoseOffsets g_poseBufferMaxIndex#u_xlatu0*u_xlatb136u_xlat1 9inOutVertices6_origX6X_type9value;inOutVertices6_origX6X ;inOutVertices6_origX6X_buf=Qu_xlat2iu_xlat3qu_xlatu13tinSkin6_typetvaluevinSkin6vinSkin6_bufx}u_xlati26u_xlatu26u_xlat4u_xlat5u_xlat6u_xlatu_loop_1u_xlatu42u_xlatu7u_xlat7u_xlati42u_xlat20inMatrices_typevalueinMatricesinMatrices_bufu_xlat8u_xlat9u_xlat10u_xlat11u_xlat12qu_xlat13 inOutVertices5_origX5X_typevalueinOutVertices5_origX5X inOutVertices5_origX5X_bufinSkin5_typevalueinSkin5inSkin5_bufu_xlatu_loop_2 inOutVertices4_origX4X_typevalue inOutVertices4_origX4X inOutVertices4_origX4X_buf 4inSkin4_type4value6inSkin46inSkin4_buf8Nu_xlatu_loop_3 UinOutVertices3_origX3X_typeUvalueWinOutVertices3_origX3X WinOutVertices3_origX3X_bufYinSkin3_typevalueinSkin3inSkin3_bufu_xlatu_loop_4 inOutVertices2_origX2X_typevalueinOutVertices2_origX2X inOutVertices2_origX2X_bufinSkin2_typevalueinSkin2inSkin2_bufu_xlatu_loop_5 inOutVertices1_origX1X_typevalueinOutVertices1_origX1X inOutVertices1_origX1X_bufinSkin1_typevalue inSkin1 inSkin1_buf"8u_xlatu_loop_6 ?inOutVertices0_origX0X_type?valueAinOutVertices0_origX0X AinOutVertices0_origX0X_bufClinSkin0_typelvalueninSkin0ninSkin0_bufpu_xlatu_loop_7x u_xlat_precise_vec4{ u_xlat_precise_ivec4~ u_xlat_precise_bvec4 u_xlat_precise_uvec4 u_xlatu39 u_xlatb42G GGGH#H# H#@H#`GG"G!G8H9#G:(H;#G;G="G=!GsHt#GuHvHv#GvGx"Gx!GH#G@HH#GG"G!GH#G(H#GG"G! GH#GHH#GG"G!GH#G(H #G G "G ! G3H4#G5H6H6#G6G8"G8!GTHU#GV(HW#GWGY"GY! GH#GHH#GG"G!GH#G(H#GG"G! GH#GHH#GG"G!GH#G(H#GG"G! GH#GH H #G G""G"!G>H?#G@(HA#GAGC"GC!GkHl#GmHnHn#GnGp"Gp!G ! ;     ; +   +  ; +  " ;"#;*+,3 43 54;56+ 7 8 798:9;: <;;<=+?+L;5Q+S+X+]+bg3 hg;hi+k o3;"q+ rs rtsutvu wv;wx |;|};";5+3+ ;5;5  ;";"+ ;5+37;|+ ;h  ;;5;h+ + ;5+ + +;5;5+3>?L3;oq 7 ; r ; 7    ;  3 r435465 76;78T 7UTVUWV XW;XY r ; 7 ; r ; 7 ; r  ! ;!"> 7?>@?A@ BA;BCk rlkmlnm on;op w 4y  z y |  } |  ;" ; + @, rr6;;;N;;;8;;w x ;z { ;} ~ ; A = A= >=!  A$ = %$A&= '&~ (' )%(>#)= +#A-,= .-/+.>*/=0*20121= >#A@=,>,?= A@|3BA= C#AD=,C,,= ED|3FE= G#AH=,G,= IH|3JI= K#AM=,K,L= NM|3ONP4PBFJO>6P= R#AT=,R,S= UT|3VU= W#AY=,W,X= ZY|3[Z= \#A^=,\,]= _^|3`_= a#Ac=,a,b= dc|3edP4fV[`e>Qf= j#Al=,j,k= ml|3nmAopi>pn= y#Azx,y,,= {z>q{= ~#|~>}=}Ax,,,= >Ao >Aor>Ao>Ao>Ao >Aor>Ao>Ao>Ao >Aor>Ao>Ao>= q>= = = Ax,,,= >=  >= p3Ao >Ao =33Ao >=  |>=AL= |>=A,,,= |3=A,,= |3=A,,L= |3Pg>=A,,S= |3=A,,X= |3=A,,]= |3Pg=4O 4>=A,,k= |3=A,,= |3=A,,= |3Pg>=A,,= |3=A,,= |3=A,,= |3Pg=4O 4>Ao =3Ao >Ao =3Ao r> Ao  =3  Ao >  Ao  =3 Ao>Aor=3Ao >Aor=3Aor>Aor=3Ao>Aor=3Ao>Ao=3Ao >Ao =3! Ao"r>"!Ao#=3$#Ao%>%$=4&=4'O 4(''4)&(=4*4+)*>+=4,=4-O 4.--4/,.=4041/0>1=42=43O 44334524=464756>7= 8 98>9=4:6Og;::=4<O 4=<;>=Ao?>?>=4@=4A3B@AAoC >CB=4D=4E3FDEAoGr>GF=4H=4I3JHIAoK>KJ=4MQOLNMM=4O6O 4PON>6P=4QOgRQQ=4S6OgTSS3URTAoV>VU=4WOgXWW=4Y6OgZYY3[XZAo\ >\[=4]Og^]]=4_6Og`__3a^`Aobr>ba=4cQOLdcc=geiOgfed>if=4gOghgg=gii3jhiAok>kj=4lOgmll=gni3omnAop>po=4rOgsrr=gti3ust>qu= v#Aow =3xw| yxAz=,v,,>zy= {#Ao|r=3}|| ~}A=,{,>~= #Ao=3| A=,,L>= #Ao=3| A=,,?>= #Ao =3| A=,,S>= #Aor=3| A=,,X>= #Ao=3| A=,,]>= #Ao=3| A=,,b>= #=3q| A=,,k>22!A = Ar= >=A = Ar= ~  >#= #A,r= >*=*= #A,,?= |3= #A,,,= |3= #A,,= |3= #A,,L= |3P4>6= #A,,S= |3= #A,,X= |3= #A,,]= |3= #A,,b= |3P4>Q= #A,,k= |3Aoi>= #A,,,= >q= #|>}=}A,,,= >Ao >Aor>Ao>Ao>Ao >Aor>Ao>Ao>Ao >Aor>Ao>Ao>= q>= =   = A , ,,=  > =   >= p3Ao >Ao =33Ao >=  |>=ALr= |>=A,,,= |3! ="A#,",= $#|3%$=&A',&,L= ('|3)(Pg*!%)>*=+A,,+,S= -,|3.-=/A0,/,X= 10|321=3A4,3,]= 54|365Pg7.26=48O 4987>9=:A;,:,k= <;|3=<=>A?,>,= @?|3A@=BAC,B,= DC|3EDPgF=AE>F=GAH,G,= IH|3JI=KAL,K,= ML|3NM=OAP,O,= QP|3RQPgSJNR=4TO 4UTS>UAoV =3WVAoX >XWAoY =3ZYAo[r>[ZAo\ =3]\Ao^>^]Ao_ =3`_Aoa>a`Aobr=3cbAod >dcAoer=3feAogr>gfAohr=3ihAoj>jiAokr=3lkAom>mlAon=3onAop >poAoq=3rqAosr>srAot=3utAov>vu=4w=4xO 4yxx4zwy=4{4|z{>|=4}=4~O 4~~4}=44>=4=4O 44=44>=  >=46Og=4O 4>Ao>>=4=43Ao >=4=43Aor>=4=43Ao>=4QOL=46O 4>6=4Og=46Og3Ao>=4Og=46Og3Ao >=4Og=46Og3Aor>=4QOL=giOg>i=4Og=gi3Ao>=4Og=gi3Ao>=4Og=gi3>q= #Ao =3| A,,,>= #Aor=3| A,,>= #Ao=3| A,,L>= #Ao=3| A,,?>= #Ao =3| A,,S>= #Aor=3| A,,X>= #Ao=3| A,,]>= #Ao=3| A,,b>= #=3q| A,,k>A = A = >=>A = A = ~  >#= #A, = >*=*= #A  , ,?=  |3= #A ,,,= |3= #A ,,= |3= #A ,,L= |3P4>6= #A ,,S= |3 = !#A" ,!,X= #"|3$#= %#A& ,%,]= '&|3('= )#A* ,),b= +*|3,+P4- $(,>Q-= .#A/ ,.,k= 0/|310Ao2i>21= 9#A:8,9,,= ;:>q;= <#|=<>=>}>=?}A@8,?,,= A@>AAoB >BAoCr>CAoD>DAoE>EAoF >FAoGr>GAoH>HAoI>IAoJ >JAoKr>KAoL>LAoM>M= Oq>NOPPRSTT= UN= VWUVWQRQ= XNAY8,X,,= ZY>Z= [ \[>\= ]p3^]Ao_ >_^Ao` =3a`3baAoc >cb= d ed|fe>f=gAhL = ih|jikgj>k=lAm,l,,= nm|3on=pAq,p,= rq|3sr=tAu,t,L= vu|3wvPgxosw>x=yAz,y,S= {z|3|{=}A~,},X= ~|3=A,,]= |3Pg|=4O 4>=A,,k= |3=A,,= |3=A,,= |3Pg>=A,,= |3=A,,= |3=A,,= |3Pg=4O 4>Ao =3Ao >Ao =3Aor>Ao =3Ao>Ao =3Ao>Aor=3Ao >Aor=3Aor>Aor=3Ao>Aor=3Ao>Ao=3Ao >Ao=3Aor>Ao=3Ao>=4=4O 44=44>=4=4O 44=44>=4=4O 44=44>SS= N >NPR=46Og=4O 4>Ao>>=4=43Ao >=4=43Aor>=4=43Ao>=4QOL=46O 4>6=4Og=46Og3Ao>=4Og=46Og3Ao >=4Og=46Og3Aor>=4QOL=giOg>i=4Og=gi3Ao>=4 Og   =g i3   Ao >  =4Og=gi3>q= #Ao =3| A ,,,>= #Aor=3| A ,,>= #Ao=3| A  ,,L> = !#Ao"=3#"| $#A% ,!,?>%$= &#Ao' =3('| )(A* ,&,S>*)= +#Ao,r=3-,| .-A/ ,+,X>/.= 0#Ao1=321| 32A4 ,0,]>43= 5#Ao6=376| 87A9 ,5,b>98= :#=3;q| <;A= ,:,k>=<>A? = @?AA,= BAC@B>C=DFDEEAG = HGAI,= JI~ KJ LHK>#L= M#AN,,= ONPMO>*P=Q*SQRSR= Z#A[Y,Z,?= \[|3]\= ^#A_Y,^,,= `_|3a`= b#AcY,b,= dc|3ed= f#AgY,f,L= hg|3ihP4j]aei>6j= k#AlY,k,S= ml|3nm= o#ApY,o,X= qp|3rq= s#AtY,s,]= ut|3vu= w#AxY,w,b= yx|3zyP4{nrvz>Q{= |#A}Y,|,k= ~}|3~Aoi>= #A,,,= >q= #|>}=}A,,,= >Ao >Aor>Ao>Ao>Ao >Aor>Ao>Ao>Ao >Aor>Ao>Ao>= q>= = = A,,,= >=  >= p3Ao >Ao =33Ao >=  |>=AL,= |>=A,,,= |3=A,,= |3=A,,L= |3Pg>=A,,S= |3=A,,X= |3=A,,]= |3Pg=4O 4>=A,,k= |3=A,,= |3=A,,= |3Pg>=A,,= |3=A,,= |3=A,,= |3Pg=4O 4>Ao =3Ao >Ao =3Aor>Ao =3Ao>Ao =3Ao>Aor=3Ao >Aor=3Aor>Aor=3Ao>Aor=3Ao > Ao =3  Ao  >  Ao =3 Aor>Ao=3Ao>=4=4O 44=44>=4=4O 44=44>=4=4 O 4!  4"!=4#4$"#>$= % &%>&=4'6Og(''=4)O 4*)(>*Ao+>+>=4,=4-3.,-Ao/ >/.=40=413201Ao3r>32=44=453645Ao7>76=48QOL988=4:6O 4;:9>6;=4<Og=<<=4>6Og?>>3@=?AoA>A@=4BOgCBB=4D6OgEDD3FCEAoG >GF=4HOgIHH=4J6OgKJJ3LIKAoMr>ML=4NQOLONN=gPiOgQPO>iQ=4ROgSRR=gTi3USTAoV>VU=4WOgXWW=gYi3ZXYAo[>[Z=4\Og]\\=g^i3_]^>q_= `#Aoa =3ba| cbAdY,`,,>dc= e#Aofr=3gf| hgAiY,e,>ih= j#Aok=3lk| mlAnY,j,L>nm= o#Aop=3qp| rqAsY,o,?>sr= t#Aou =3vu| wvAxY,t,S>xw= y#Aozr=3{z| |{A}Y,y,X>}|= ~#Ao=3| AY,~,]>= #Ao=3| AY,,b>= #=3q| AY,,k>SSFA = A,= >=A = A,= ~  >#= #A,,= >*=*= #A,,?= |3= #A,,,= |3= #A,,= |3= #A,,L= |3P4>6= #A,,S= |3= #A,,X= |3= #A,,]= |3= #A,,b= |3P4>Q= #A,,k= |3Aoi>= #A,,,= >q= #|>}=}A,,,= >Ao >Aor>Ao>Ao>Ao >Aor>Ao>Ao>Ao >Aor>Ao>Ao>= q>= = = A,,,= >=  >= p3Ao >Ao =33Ao >=  |>=AL,= |>=A ,,,=  |3  = A , ,=  |3=A,,L= |3Pg >=A,,S= |3=A,,X= |3=A,,]= |3 Pg! =4"O 4#"!>#=$A%,$,k= &%|3'&=(A),(,= *)|3+*=,A-,,,= .-|3/.Pg0'+/>0=1A2,1,= 32|343=5A6,5,= 76|387=9A:,9,= ;:|3<;Pg=48<=4>O 4?>=>?Ao@ =3A@AoB >BAAoC =3DCAoEr>EDAoF =3GFAoH>HGAoI =3JIAoK>KJAoLr=3MLAoN >NMAoOr=3POAoQr>QPAoRr=3SRAoT>TSAoUr=3VUAoW>WVAoX=3YXAoZ >ZYAo[=3\[Ao]r>]\Ao^=3_^Ao`>`_=4a=4bO 4cbb4dac=4e4fde>f=4g=4hO 4ihh4jgi=4k4ljk>l=4m=4nO 4onn4pmo=4q4rpq>r= s ts>t=4u6Ogvuu=4wO 4xwv>xAoy>y>=4z=4{3|z{Ao} >}|=4~=43~Aor>=4=43Ao>=4QOL=46O 4>6=4Og=46Og3Ao>=4Og=46Og3Ao >=4Og=46Og3Aor>=4QOL=giOg>i=4Og=gi3Ao>=4Og=gi3Ao>=4Og=gi3>q= #Ao =3| A,,,>= #Aor=3| A,,>= #Ao=3| A,,L>= #Ao=3| A,,?>= #Ao =3| A,,S>= #Aor=3| A,,X>= #Ao=3| A,,]>= #Ao=3| A,,b>= #=3q| A,,k>A = A,r= >=(A = A,r= ~  >#= #A,,r= >*=*= #A,,?= |3= #A,,,= |3= #A,,= |3= #A,,L= |3P4>6= #A,,S= |3  = #A , ,X=  |3 = #A,,]= |3= #A,,b= |3P4 >Q= #A,,k= |3Aoi>= ##A$",#,,= %$>q%= &#|'&('>}(=)}A*",),,= +*>+Ao, >,Ao-r>-Ao.>.Ao/>/Ao0 >0Ao1r>1Ao2>2Ao3>3Ao4 >4Ao5r>5Ao6>6Ao7>7= 9q>89::<=>>= ?8= @A?@A;<;= B8AC",B,,= DC>D= E FE>F= Gp3HGAoI >IHAoJ =3KJ3LKAoM >ML= N ON|PO>P=QARL,r= SR|TSUQT>U=VAW,V,,= XW|3YX=ZA[,Z,= \[|3]\=^A_,^,L= `_|3a`PgbY]a>b=cAd,c,S= ed|3fe=gAh,g,X= ih|3ji=kAl,k,]= ml|3nmPgofjn=4pO 4qpo>q=rAs,r,k= ts|3ut=vAw,v,= xw|3yx=zA{,z,= |{|3}|Pg~uy}>~=A,,= |3=A,,= |3=A,,= |3Pg=4O 4>Ao =3Ao >Ao =3Aor>Ao =3Ao>Ao =3Ao>Aor=3Ao >Aor=3Aor>Aor=3Ao>Aor=3Ao>Ao=3Ao >Ao=3Aor>Ao=3Ao>=4=4O 44=44>=4=4O 44=44>=4=4O 44=44>=== 8 >8:<=46Og=4O 4>Ao>>=4=43Ao >=4=43Aor>=4=43Ao>=4QOL=46O 4>6=4Og=46Og3Ao>=4Og=46Og3Ao >=4Og=46Og3Aor>=4QOL=giOg>i=4Og=gi3Ao>=4Og=gi3Ao>=4Og=gi3>q= #Ao =3| A,,,>= #Aor=3| A,,>= #Ao=3| A ,,L>  = #Ao =3  |  A, ,?>= #Ao =3| A,,S>= #Aor=3| A,,X>= #Ao=3| A,,]>= #Ao =3! | "!A#,,b>#"= $#=3%q| &%A',$,k>'&(A) = *)A+, = ,+-*,>-=.0./0/A1 = 21A3, = 43~ 54 625>#6= 7#A8,, = 98:79>*:=;*=;<=<= D#AEC,D,?= FE|3GF= H#AIC,H,,= JI|3KJ= L#AMC,L,= NM|3ON= P#AQC,P,L= RQ|3SRP4TGKOS>6T= U#AVC,U,S= WV|3XW= Y#AZC,Y,X= [Z|3\[= ]#A^C,],]= _^|3`_= a#AbC,a,b= cb|3dcP4eX\`d>Qe= f#AgC,f,k= hg|3ihAoji>ji= q#Arp,q,,= sr>qs= t#|utvu>}v=w}Axp,w,,= yx>yAoz >zAo{r>{Ao|>|Ao}>}Ao~ >~Aor>Ao>Ao>Ao >Aor>Ao>Ao>= q>= = = Ap,,,= >=  >= p3Ao >Ao =33Ao >=  |>=AL, = |>=A,,,= |3=A,,= |3=A,,L= |3Pg>=A,,S= |3=A,,X= |3=A,,]= |3Pg=4O 4>=A,,k= |3=A,,= |3=A,,= |3Pg>=A,,= |3=A,,= |3=A,,= |3Pg=4O 4>Ao =3Ao >Ao =3Aor>Ao =3Ao>Ao =3Ao>Aor=3Ao >Aor=3Aor>Aor=3Ao>Aor=3Ao>Ao=3Ao >Ao=3Aor>Ao=3Ao>=4=4O 44 =4 4  > =4 =4 O 4   4   =4 4   > =4 =4 O 4 4 =4 4 > =     > =4 6Og   =4 O 4   > Ao > >=4 =4 3   Ao >  =4 =4 3   Ao r>  =4 =4 3   Ao! >! =4" QOL# " " =4$ 6O 4% $ # >6% =4& Og' & & =4( 6Og) ( ( 3* ' ) Ao+ >+ * =4, Og- , , =4. 6Og/ . . 30 - / Ao1 >1 0 =42 Og3 2 2 =44 6Og5 4 4 36 3 5 Ao7 r>7 6 =48 QOL9 8 8 =g: iOg; : 9 >i; =4< Og= < < =g> i3? = > Ao@ >@ ? =4A OgB A A =gC i3D B C AoE >E D =4F OgG F F =gH i3I G H >qI = J #AoK =3L K | M L AN C,J ,,>N M = O #AoP r=3Q P | R Q AS C,O ,>S R = T #AoU =3V U | W V AX C,T ,L>X W = Y #AoZ =3[ Z | \ [ A] C,Y ,?>] \ = ^ #Ao_ =3` _ | a ` Ab C,^ ,S>b a = c #Aod r=3e d | f e Ag C,c ,X>g f = h #Aoi =3j i | k j Al C,h ,]>l k = m #Aon =3o n | p o Aq C,m ,b>q p = r #=3s q| t s Au C,r ,k>u t ==00FF!!8@AbatchMainInPlaceComputeSkinInPlaceCBuffer inMatricesinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6inOutVertices0inOutVertices1 inOutVertices2 inOutVertices3 inOutVertices4 inOutVertices5 inOutVertices6\{#  GLSL.std.450main @mainu_xlatb0 gl_GlobalInvocationID ComputeSkinInPlaceCBufferg_VertCountsg_BatchOffsetsg_PoseOffsets g_poseBufferMaxIndex#u_xlatu0*u_xlatb86u_xlat1 9inOutVertices6_origX6X_type9value;inOutVertices6_origX6X ;inOutVertices6_origX6X_buf=Pu_xlati8SinSkin6_typeSvalueUinSkin6UinSkin6_bufWbu_xlat2einMatrices_typeevalueginMatricesginMatrices_bufiwu_xlat3u_xlat4u_xlat5u_xlat6u_xlat7 inOutVertices5_origX5X_typevalueinOutVertices5_origX5X inOutVertices5_origX5X_bufinSkin5_typevalueinSkin5inSkin5_buf inOutVertices4_origX4X_typevalueinOutVertices4_origX4X inOutVertices4_origX4X_bufinSkin4_typevalueinSkin4inSkin4_buf ^inOutVertices3_origX3X_type^value`inOutVertices3_origX3X `inOutVertices3_origX3X_bufbsinSkin3_typesvalueuinSkin3uinSkin3_bufw inOutVertices2_origX2X_type value inOutVertices2_origX2X inOutVertices2_origX2X_buf inSkin2_type value"inSkin2"inSkin2_buf$ inOutVertices1_origX1X_typevalueinOutVertices1_origX1X inOutVertices1_origX1X_bufinSkin1_typevalueinSkin1inSkin1_buf einOutVertices0_origX0X_typeevalueginOutVertices0_origX0X ginOutVertices0_origX0X_bufizinSkin0_typezvalue|inSkin0|inSkin0_buf~u_xlat_precise_vec4u_xlat_precise_ivec4u_xlat_precise_bvec4u_xlat_precise_uvec4G GGGH#H# H#@H#`GG"G!G8H9#G: H;#G;G="G=!GRHS#GTHUHU#GUGW"GW!GdHe#Gf@HgHg#GgGi"Gi!GH#G H#GG"G! GH#GHH#GG"G!GH#G H#GG"G! GH#GHH#GG"G!G]H^#G_ H`#G`Gb"Gb! GrHs#GtHuHu#GuGw"Gw!G H #G  H #G G"G! GH #G!H"H"#G"G$"G$!GH#G H#GG"G! GH#GHH#GG"G!GdHe#Gf Hg#GgGi"Gi!GyHz#G{H|H|#G|G~"G~!G ! ;     ; +   +  ; +  " ;"#;*+,3 43 54;56+ 78 798:9;: <;;<=+GK3 O;OP+ QR QSRTSUT VU;VW aK;ab+ cd cedfegf hg;hi;aw+y+~+;a++ + ;5+ + +;5 3+3?;5 7 ; Q ; 7 ; Q ;] 7^]_^`_ a`;abr Qsrtsut vu;vw  7        ; Q ! "! #";#$ 7 ; Q ;d 7edfegf hg;hiy Qzy{z|{ }|;}~ 4   + @, QQ6;;;;A = A= >=!  A$ = %$A&= '&~ (' )%(>#)= +#A-,= .-/+.>*/=0*20121= >#A?=,>,,= @?|3A@= B#AC=,B,= DC|3ED= F#AH=,F,G= IH|3JIPKLAEJ=4M6O 4NML>6N= X#AYW,X,,= ZY|[Z>P[=\PA]G= ^]|_^`\_>P`=jPAki,j,,= lk|3ml=nPAoi,n,= po|3qp=rPAsi,r,G= ts|3utPKvmqu>bv=xPAzi,x,y= {z|3|{=}PAi,},~= |3=PAi,,= |3PK|>w=PAi,,= |3=PAi,,= |3=PAi,,= |3PK>=PAi,,= |3=PAi,,= |3=PAi,,= |3PK=4O 4>Ab =3A >Aw =3AQ>A =3A>A =3A7>A67>=4=463A >AbQ=3A >AwQ=3AQ>AQ=3A>AQ=3A7>=4=463AQ>Ab=3A >Aw=3AQ>A=3A>=4=463A>= #A =3| A=,,,>= #AQ=3| A=,,>= #A=3| A=,,G>22!A = AQ= >=A = AQ= ~  >#= #A,Q= >*=*= #A , ,,=  |3  = #A, ,= |3= #A,,G= |3PK =46O 4>6= #A,,,= |! >P!="PA#GQ= $#|%$&"%>P&='PA(i,',,= )(|3*)=+PA,i,+,= -,|3.-=/PA0i,/,G= 10|321PK3*.2>b3=4PA5i,4,y= 65|376=8PA9i,8,~= :9|3;:=<PA=i,<,= >=|3?>PK@7;?>w@=APABi,A,= CB|3DC=EPAFi,E,= GF|3HG=IPAJi,I,= KJ|3LKPKMDHL>M=NPAOi,N,= PO|3QP=RPASi,R,= TS|3UT=VPAWi,V,= XW|3YXPKZQUY=4[O 4\[Z>\A]b =3^]A_ >_^A`w =3a`AbQ>baAc =3dcAe>edAf =3gfAh7>hgAi67>i=4j=4k63ljkAm >mlAnbQ=3onAp >poAqwQ=3rqAsQ>srAtQ=3utAv>vuAwQ=3xwAy7>yx=4z=4{63|z{A}Q>}|A~b=3~A >Aw=3AQ>A=3A>=4=463A>= #A =3| A,,,>= #AQ=3| A,,>= #A=3| A,,G>A = A = >=GA = A = ~  >#= #A, = >*=*= #A,,,= |3= #A,,= |3= #A,,G= |3PK=46O 4>6= #A,,,= |>P=PAG = |>P=PAi,,,= |3=PAi,,= |3=PAi,,G= |3PK>b=PAi,,y= |3=PAi,,~= |3=PAi,,= |3PK>w=PAi,,= |3=PAi,,= |3=PAi,,= |3PK>=PAi,,= |3=PAi,,= |3=PAi,,= |3PK=4O 4 > A b =3  A  >  A w =3 AQ>A =3A>A =3A7>A67>=4=463A >AbQ=3A >AwQ=3A Q> A!Q=3"!A#>#"A$Q=3%$A&7>&%=4'=4(63)'(A*Q>*)A+b=3,+A- >-,A.w=3/.A0Q>0/A1=321A3>32=44=4563645A7>76= 8#A9 =3:9| ;:A<,8,,><;= =#A>Q=3?>| @?AA,=,>A@= B#AC=3DC| EDAF,B,G>FEGAH = IHAJ,7= KJLIK>L=MOMNNAP = QPAR,7= SR~ TS UQT>#U= V#AW,,7= XWYVX>*Y=Z*\Z[\[= c#Adb,c,,= ed|3fe= g#Ahb,g,= ih|3ji= k#Alb,k,G= ml|3nmPKofjn=4p6O 4qpo>6q= x#Ayw,x,,= zy|{z>P{=|PA}G,7= ~}|~|>P=PAi,,,= |3=PAi,,= |3=PAi,,G= |3PK>b=PAi,,y= |3=PAi,,~= |3=PAi,,= |3PK>w=PAi,,= |3=PAi,,= |3=PAi,,= |3PK>=PAi,,= |3=PAi,,= |3=PAi,,= |3PK=4O 4>Ab =3A >Aw =3AQ>A =3A>A =3A7>A67>=4=463A >AbQ=3A >AwQ=3AQ>AQ=3A>AQ=3A7>=4=463AQ>Ab=3A >Aw=3AQ>A=3A>=4=463A>= #A =3| Ab,,,>= #AQ=3| Ab,,>= #A=3| Ab,,G>\\OA = A,= >=A = A,= ~  >#= #A,,= >*=*  = #A,,,= |3= #A,,= |3= #A,,G= |3PK=46O 4>6= %#A&$,%,,= '&|('>P(=)PA*G,= +*|,+-),>P-=.PA/i,.,,= 0/|310=2PA3i,2,= 43|354=6PA7i,6,G= 87|398PK:159>b:=;PA<i,;,y= =<|3>==?PA@i,?,~= A@|3BA=CPADi,C,= ED|3FEPKG>BF>wG=HPAIi,H,= JI|3KJ=LPAMi,L,= NM|3ON=PPAQi,P,= RQ|3SRPKTKOS>T=UPAVi,U,= WV|3XW=YPAZi,Y,= [Z|3\[=]PA^i,],= _^|3`_PKaX\`=4bO 4cba>cAdb =3edAf >feAgw =3hgAiQ>ihAj =3kjAl>lkAm =3nmAo7>onAp67>p=4q=4r63sqrAt >tsAubQ=3vuAw >wvAxwQ=3yxAzQ>zyA{Q=3|{A}>}|A~Q=3~A7>=4=463AQ>Ab=3A >Aw=3AQ>A=3A>=4=463A>= #A =3| A,,,>= #AQ=3| A,,>= #A=3| A,,G>  A = A,Q= >=NA = A,Q= ~  >#= #A,,Q= >*=*= #A,,,= |3= #A,,= |3= #A,,G= |3PK=46O 4>6= #A,,,= |>P=PAG,Q= |>P=PAi,,,= |3=PAi,,= |3=PAi,,G= |3PK>b=PAi,,y= |3=PAi,,~= |3=PAi,,= |3PK>w=PAi,,= |3=PAi,,= |3=PAi,,= |3PK>=PAi,,= |3=PAi,,= |3 = PA i, ,=  |3  PK  =4O 4>Ab =3A >Aw =3AQ>A =3A>A =3A7>A67>=4=463 A! >! A"bQ=3#"A$ >$#A%wQ=3&%A'Q>'&A(Q=3)(A*>*)A+Q=3,+A-7>-,=4.=4/630./A1Q>10A2b=332A4 >43A5w=365A7Q>76A8=398A:>:9=4;=4<63=;<A>>>== ?#A@ =3A@| BAAC,?,,>CB= D#AEQ=3FE| GFAH,D,>HG= I#AJ=3KJ| LKAM,I,G>MLNAO = POAQ, = RQSPR>S=TVTUVUAW = XWAY, = ZY~ [Z \X[>#\= ]#A^,, = _^`]_>*`=a*cabcb= j#Aki,j,,= lk|3ml= n#Aoi,n,= po|3qp= r#Asi,r,G= ts|3utPKvmqu=4w6O 4xwv>6x= #A~,,,= |>P=PAG, = |>P=PAi,,,= |3=PAi,,= |3=PAi,,G= |3PK>b=PAi,,y= |3=PAi,,~= |3=PAi,,= |3PK>w=PAi,,= |3=PAi,,= |3=PAi,,= |3PK>=PAi,,= |3=PAi,,= |3=PAi,,= |3PK=4O 4>Ab =3A >Aw =3AQ>A =3A>A =3A7>A67>=4=463A >AbQ=3A >AwQ=3AQ>AQ=3A>AQ=3A7>=4=463AQ>Ab=3A >Aw=3AQ>A=3A>=4=463A>= #A =3| Ai,,,>= #AQ=3| Ai,,>= #A=3| Ai,,G>ccVVOO!!8@AbatchMainInPlaceComputeSkinInPlaceCBuffer inMatricesinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6inOutVertices0inOutVertices1 inOutVertices2 inOutVertices3 inOutVertices4 inOutVertices5 inOutVertices6# l GLSL.std.450main @mainu_xlatb0 gl_GlobalInvocationID ComputeSkinInPlaceCBufferg_VertCountsg_BatchOffsetsg_PoseOffsets g_poseBufferMaxIndex#u_xlatu0*u_xlatb116u_xlat1 9inOutVertices6_origX6X_type9value;inOutVertices6_origX6X ;inOutVertices6_origX6X_buf=Su_xlat2cu_xlati11finSkin6_typefvaluehinSkin6hinSkin6_bufjtu_xlat3winMatrices_typewvalueyinMatricesyinMatrices_buf{u_xlat4u_xlat5u_xlat6u_xlat7u_xlat8u_xlat9u_xlat10 <inOutVertices5_origX5X_type<value>inOutVertices5_origX5X >inOutVertices5_origX5X_buf@^inSkin5_type^value`inSkin5`inSkin5_bufb inOutVertices4_origX4X_typevalueinOutVertices4_origX4X inOutVertices4_origX4X_buf=inSkin4_type=value?inSkin4?inSkin4_bufA inOutVertices3_origX3X_typevalueinOutVertices3_origX3X inOutVertices3_origX3X_bufinSkin3_typevalueinSkin3inSkin3_buf  inOutVertices2_origX2X_typevalueinOutVertices2_origX2X inOutVertices2_origX2X_bufinSkin2_typevalueinSkin2inSkin2_buf inOutVertices1_origX1X_typevalueinOutVertices1_origX1X inOutVertices1_origX1X_bufinSkin1_typevalueinSkin1inSkin1_buf inOutVertices0_origX0X_typevalueinOutVertices0_origX0X inOutVertices0_origX0X_bufinSkin0_typevalueinSkin0inSkin0_bufau_xlat_precise_vec4du_xlat_precise_ivec4gu_xlat_precise_bvec4iu_xlat_precise_uvec4G GGGH#H# H#@H#`GG"G!G8H9#G:H;#G;G="G=!GeHf#GgHhHh#GhGj"Gj!GvHw#Gx@HyHy#GyG{"G{!G;H<#G=H>#G>G@"G@! G]H^#G_H`H`#G`Gb"Gb!GH#GH#GG"G! G<H=#G>H?H?#G?GA"GA!GH#GH#GG"G! GH#GHH#GG "G !GH#GH#GG"G! GH#GHH#GG"G!GH#GH#GG"G! GH#GHH#GG"G!GH#GH#GG"G!GH#GHH#GG"G!Gk ! ;     ; +   +  ; +  " ;"#;*+,3 43 54;56+ 78 798:9;: <;;<=+G+LQ3 RQ;RS+U+Z^3 b;bc+ de dfegfhg ih;ij;Rt+ uv uwvxwyx zy;z{;R+;R++ + ;5+ + +;5 3+ ;5+3?;5;5; 7<;=<>= ?>;?@] d^]_^`_ a`;ab 7 ;< d=<>=?> @?;@A 7 ; d ;  7 ; d ; 7 ; d ; 7 ; d ; `4b cbe fe h+ j@, kjdd6;`a;cd;fg;hiA = A= >=! % A$ = %$A&= '&~ (' )%(>#)= +#A-,= .-/+.>*/=0*20121= >#A?=,>,,= @?|3A@= B#AC=,B,= DC|3ED= F#AH=,F,G= IH|3JI= K#AM=,K,L= NM|3ONP4PAEJO>6P= T#AV=,T,U= WV|3XW= Y#A[=,Y,Z= \[|3]\P^_X]=Q`SOQa`_>Sa= k#Alj,k,,= ml|nm>cn=ocApG= qp|rqsor>cs=|cA}{,|,,= ~}|3~=cA{,,= |3=cA{,,G= |3PQ>t=cA{,,U= |3=cA{,,Z= |3=cA{,,= |3PQ>=cA{,,= |3=cA{,,= |3=cA{,,= |3PQ>=cA{,,= |3=cA{,,= |3=cA{,,= |3PQ=4O 4>At =3A >A =3Ad>A =3A>A =3A>=46OQ=4O 4>A>=4=43A >Atd=3A >Ad=3Ad>Ad=3A>Ad=3A>=4=43Ad>At=3A >A=3Ad>A=3A>=4=43A>A6=3AS>=4OQ=QS3A>=4OQ=QS3A6 >=4OQ=QS3A6d>= #A =3 |  A =,,,>  = #A d=3 | A=, ,>= #A=3| A=,,G>= #A=3| A=,,L>= #A6 =3| A=,,U>= #A!6d=3"!| #"A$=, ,Z>$#22!%A& = '&A(d= )(*')>*=+-+,,A. = /.A0d= 10~ 21 3/2>#3= 4#A5,d= 65746>*7=8*:89:9= A#AB@,A,,= CB|3DC= E#AF@,E,= GF|3HG= I#AJ@,I,G= KJ|3LK= M#AN@,M,L= ON|3POP4QDHLP>6Q= R#AS@,R,U= TS|3UT= V#AW@,V,Z= XW|3YXP^ZUY=Q[SOQ\[Z>S\= c#Adb,c,,= ed|fe>cf=gcAhGd= ih|jikgj>ck=lcAm{,l,,= nm|3on=pcAq{,p,= rq|3sr=tcAu{,t,G= vu|3wvPQxosw>tx=ycAz{,y,U= {z|3|{=}cA~{,},Z= ~|3=cA{,,= |3PQ|>=cA{,,= |3=cA{,,= |3=cA{,,= |3PQ>=cA{,,= |3=cA{,,= |3=cA{,,= |3PQ=4O 4>At =3A >A =3Ad>A =3A>A =3A>=46OQ=4O 4>A>=4=43A >Atd=3A >Ad=3Ad>Ad=3A>Ad=3A>=4=43Ad>At=3A >A=3Ad>A=3A>=4=43A>A6=3AS>=4OQ=QS3A>=4OQ=QS3A6 >=4OQ=QS3A6d>= #A =3| A@,,,>= #Ad=3| A@,,>= #A=3| A@,,G>= #A=3| A@,,L>= #A6 =3| A@,,U>= #A6d=3| A@,,Z>::-A = A =  > =     A  =  A = ~  >#= #A, = >*=*= #A!, ,,= "!|3#"= $#A%,$,= &%|3'&= (#A),(,G= *)|3+*= ,#A-,,,L= .-|3/.P40#'+/>60= 1#A2,1,U= 32|343= 5#A6,5,Z= 76|387P^948=Q:SOQ;:9>S;= B#ACA,B,,= DC|ED>cE=FcAGG = HG|IHJFI>cJ=KcAL{,K,,= ML|3NM=OcAP{,O,= QP|3RQ=ScAT{,S,G= UT|3VUPQWNRV>tW=XcAY{,X,U= ZY|3[Z=\cA]{,\,Z= ^]|3_^=`cAa{,`,= ba|3cbPQd[_c>d=ecAf{,e,= gf|3hg=icAj{,i,= kj|3lk=mcAn{,m,= on|3poPQqhlp>q=rcAs{,r,= ts|3ut=vcAw{,v,= xw|3yx=zcA{{,z,= |{|3}|PQ~uy}=4O 4~>At =3A >A =3Ad>A =3A>A =3A>=46OQ=4O 4>A>=4=43A >Atd=3A >Ad=3Ad>Ad=3A>Ad=3A>=4=43Ad>At=3A >A=3Ad>A=3A>=4=43A>A6=3AS>=4OQ=QS3A>=4OQ=QS3A6 >=4OQ=QS3A6d>= #A =3| A,,,>= #Ad=3| A,,>= #A=3| A,,G>= #A=3| A,,L>= #A6 =3| A,,U>= #A6d=3| A,,Z> A = A,= >=A = A,= ~  >#= #A,,= >*=*= #A,,,= |3= #A,,= |3= #A,,G= |3  = #A , ,L=  |3 P4 >6= #A,,U= |3= #A,,Z= |3P^=QSOQ>S= !#A" ,!,,= #"|$#>c$=%cA&G,= '&|(')%(>c)=*cA+{,*,,= ,+|3-,=.cA/{,.,= 0/|310=2cA3{,2,G= 43|354PQ6-15>t6=7cA8{,7,U= 98|3:9=;cA<{,;,Z= =<|3>==?cA@{,?,= A@|3BAPQC:>B>C=DcAE{,D,= FE|3GF=HcAI{,H,= JI|3KJ=LcAM{,L,= NM|3ONPQPGKO>P=QcAR{,Q,= SR|3TS=UcAV{,U,= WV|3XW=YcAZ{,Y,= [Z|3\[PQ]TX\=4^O 4_^]>_A`t =3a`Ab >baAc =3dcAed>edAf =3gfAh>hgAi =3jiAk>kj=4l6OQmll=4nO 4onm>oAp>p=4q=4r3sqrAt >tsAutd=3vuAw >wvAxd=3yxAzd>zyA{d=3|{A}>}|A~d=3~A>=4=43Ad>At=3A >A=3Ad>A=3A>=4=43A>A6=3AS>=4OQ=QS3A>=4OQ=QS3A6 >=4OQ=QS3A6d>= #A =3| A,,,>= #Ad=3| A,,>= #A=3| A,,G>= #A=3| A,,L>= #A6 =3| A,,U>= #A6d=3| A,,Z>A = A,= >=A = A,= ~  >#= #A,,= >*=*= #A,,,= |3= #A,,= |3= #A,,G= |3= #A,,L= |3P4>6= #A,,U= |3= #A,,Z= |3P^=QSOQ>S= #A,,,= |>c=cAG,= |>c= cA {, ,,=  |3  = cA{, ,= |3=cA{,,G= |3PQ >t=cA{,,U= |3=cA{,,Z= |3=cA{,,= |3! PQ"!>"=#cA${,#,= %$|3&%='cA({,',= )(|3*)=+cA,{,+,= -,|3.-PQ/&*.>/=0cA1{,0,= 21|332=4cA5{,4,= 65|376=8cA9{,8,= :9|3;:PQ<37;=4=O 4>=<>>A?t =3@?AA >A@AB =3CBADd>DCAE =3FEAG>GFAH =3IHAJ>JI=4K6OQLKK=4MO 4NML>NAO>O=4P=4Q3RPQAS >SRATtd=3UTAV >VUAWd=3XWAYd>YXAZd=3[ZA\>\[A]d=3^]A_>_^=4`=4a3b`aAcd>cbAdt=3edAf >feAg=3hgAid>ihAj=3kjAl>lk=4m=4n3omnAp>poAq6=3rqAsS>sr=4tOQutt=QvS3wuvAx>xw=4yOQzyy=Q{S3|z{A}6 >}|=4~OQ~~=QS3A6d>= #A =3| A,,,>= #Ad=3| A,,>= #A=3| A,,G>= #A=3| A,,L>= #A6 =3| A,,U>= #A6d=3| A,,Z>A = A,d= >=A = A,d= ~  >#= #A,,d= >*=*= #A,,,= |3= #A,,= |3= #A,,G= |3= #A,,L= |3P4>6= #A,,U= |3= #A,,Z= |3P^=QSOQ>S= #A,,,= |>c=cAG,d= |>c=cA{,,,= |3=cA{,,= |3=cA{,,G= |3PQ>t=cA{,,U= |3=cA{,,Z= |3=cA{,,= |3PQ>=cA{,,= |3=cA{,,= |3 = cA {, ,=  |3  PQ  >=cA{,,= |3=cA{,,= |3=cA{,,= |3PQ=4O 4>At =3A  > A! =3"!A#d>#"A$ =3%$A&>&%A' =3('A)>)(=4*6OQ+**=4,O 4-,+>-A.>.=4/=4031/0A2 >21A3td=343A5 >54A6d=376A8d>87A9d=3:9A;>;:A<d=3=<A>>>==4?=4@3A?@ABd>BAACt=3DCAE >EDAF=3GFAHd>HGAI=3JIAK>KJ=4L=4M3NLMAO>ONAP6=3QPARS>RQ=4SOQTSS=QUS3VTUAW>WV=4XOQYXX=QZS3[YZA\6 >\[=4]OQ^]]=Q_S3`^_Aa6d>a`= b#Ac =3dc| edAf,b,,>fe= g#Ahd=3ih| jiAk,g,>kj= l#Am=3nm| onAp,l,G>po= q#Ar=3sr| tsAu,q,L>ut= v#Aw6 =3xw| yxAz,v,U>zy= {#A|6d=3}|| ~}A,{,Z>~A = A, = >=A = A, = ~  >#= #A,, = >*=*= #A,,,= |3= #A,,= |3= #A,,G= |3= #A,,L= |3P4>6= #A,,U= |3= #A,,Z= |3P^=QSOQ>S= #A,,,= |>c=cAG, = |>c=cA{,,,= |3=cA{,,= |3=cA{,,G= |3PQ>t=cA{,,U= |3=cA{,,Z= |3=cA{,,= |3PQ>=cA{,,= |3=cA{,,= |3=cA{,,= |3PQ>=cA{,,= |3=cA{,,= |3=cA{,,= |3PQ=4O 4>At =3A >A =3Ad>A =3A>A =3A>=4 6OQ   =4 O 4   > A > =4=43A >Atd=3A >Ad=3Ad>Ad=3A>Ad=3A>=4=43 A!d>! A"t=3#"A$ >$#A%=3&%A'd>'&A(=3)(A*>*)=4+=4,3-+,A.>.-A/6=30/A1S>10=42OQ322=Q4S3534A6>65=47OQ877=Q9S3:89A;6 >;:=4<OQ=<<=Q>S3?=>A@6d>@?= A#AB =3CB| DCAE,A,,>ED= F#AGd=3HG| IHAJ,F,>JI= K#AL=3ML| NMAO,K,G>ON= P#AQ=3RQ| SRAT,P,L>TS= U#AV6 =3WV| XWAY,U,U>YX= Z#A[6d=3\[| ]\A^,Z,Z>^]  --!!8@AbatchMainInPlaceComputeSkinInPlaceCBuffer inMatricesinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6inOutVertices0inOutVertices1 inOutVertices2 inOutVertices3 inOutVertices4 inOutVertices5 inOutVertices6H#  GLSL.std.450main @mainu_xlatb0 gl_GlobalInvocationID ComputeSkinInPlaceCBufferg_VertCountsg_BatchOffsetsg_PoseOffsets g_poseBufferMaxIndex#u_xlatu0*u_xlatb126u_xlat1 9inOutVertices6_origX6X_type9value;inOutVertices6_origX6X ;inOutVertices6_origX6X_buf=Qu_xlat2iu_xlat3ru_xlati12uinSkin6_typeuvaluewinSkin6winSkin6_bufyu_xlat4inMatrices_typevalueinMatricesinMatrices_bufu_xlat5u_xlat6u_xlat7u_xlat8u_xlat9u_xlat10u_xlat11(u_xlat12 pinOutVertices5_origX5X_typepvaluerinOutVertices5_origX5X rinOutVertices5_origX5X_buftinSkin5_typevalueinSkin5inSkin5_buf inOutVertices4_origX4X_typevalueinOutVertices4_origX4X inOutVertices4_origX4X_bufinSkin4_typevalueinSkin4inSkin4_buf inOutVertices3_origX3X_typevalueinOutVertices3_origX3X inOutVertices3_origX3X_bufinSkin3_typevalueinSkin3inSkin3_buf inOutVertices2_origX2X_typevalueinOutVertices2_origX2X inOutVertices2_origX2X_bufinSkin2_typevalueinSkin2inSkin2_buf inOutVertices1_origX1X_typevalueinOutVertices1_origX1X inOutVertices1_origX1X_bufinSkin1_typevalueinSkin1inSkin1_buf inOutVertices0_origX0X_typevalueinOutVertices0_origX0X inOutVertices0_origX0X_bufinSkin0_typevalueinSkin0inSkin0_bufu_xlat_precise_vec4u_xlat_precise_ivec4u_xlat_precise_bvec4u_xlat_precise_uvec4G GGGH#H# H#@H#`GG"G!G8H9#G:(H;#G;G="G=!GtHu#GvHwHw#GwGy"Gy!GH#G@HH#GG"G!GoHp#Gq(Hr#GrGt"Gt! GH#GHH#GG"G!GH#G(H#GG"G! GH#GHH#GG"G!GH#G(H#GG"G! GH#GHH#GG"G!GH#G(H#GG"G! GH#GHH#GG"G!GH#G(H#GG"G! GH#GHH#GG"G!GH#G(H#GG"G!GH#GHH#GG"G!G ! ;     ; +   +  ; +  " ;"#;*+,3 43 54;56+ 7 8 798:9;: <;;<=+?+L;5Q+S+X+]+bg3 hg;hi+k o3 q;qr+ st sutvuwv xw;xy;5+   ;;h;h+ + ;5+ + +;5+ ;5+3?;5;53;o(o 7poqprq sr;st s ; 7 ; s ; 7 ; s ; 7 ; s ; 7 ; s ; 7 ; s ; 4   + @, ss6;;;;A = A= >=! Y A$ = %$A&= '&~ (' )%(>#)= +#A-,= .-/+.>*/=0*20121= >#A@=,>,?= A@|3BA= C#AD=,C,,= ED|3FE= G#AH=,G,= IH|3JI= K#AM=,K,L= NM|3ONP4PBFJO>6P= R#AT=,R,S= UT|3VU= W#AY=,W,X= ZY|3[Z= \#A^=,\,]= _^|3`_= a#Ac=,a,b= dc|3edP4fV[`e>Qf= j#Al=,j,k= ml|3nmAopi>pn= z#A{y,z,,= |{|}|>r}=~rAL= |~>r=rA,,,= |3=rA,,= |3=rA,,L= |3Pg=4O 4>=rA,,S= |3=rA,,X= |3=rA,,]= |3Pg>=rA,,k= |3=rA,,= |3=rA,,= |3Pg>=rA,,= |3=rA,,= |3=rA,,= |3Pg=4O 4>Ao =3Ao >Ao =3Aos>Ao =3Ao>Ao =3Ao>=46Og=4O 4>Ao>=4=43Ao >Aos=3Ao >Aos=3Aos>Aos=3Ao>Aos=3Ao>=4=43Aos>Ao=3Ao >Ao=3Aos>Ao=3Ao>=4=43Ao>=4QO=46O 4>6=4Og =4 6Og   3   Ao >  =4Og=46Og3Ao >=4Og=46Og3Aos>=4QO=giOg>i=4Og=g i3! Ao">"!=4#Og$##=g%i3&$%Ao'>'&=4)Og*))=g+i3,*+>(,= -#Ao. =3/.| 0/A1=,-,,>10= 2#Ao3s=343| 54A6=,2,>65= 7#Ao8=398| :9A;=,7,L>;:= <#Ao==3>=| ?>A@=,<,?>@?= A#AoB =3CB| DCAE=,A,S>ED= F#AoGs=3HG| IHAJ=,F,X>JI= K#AoL=3ML| NMAO=,K,]>ON= P#AoQ=3RQ| SRAT=,P,b>TS= U#=3V(| WVAX=,U,k>XW22!YAZ = [ZA\s= ]\^[]>^=_a_`i`Ab = cbAds= ed~ fe gcf>#g= h#Ai,s= jikhj>*k=l*nlmnm= u#Avt,u,?= wv|3xw= y#Azt,y,,= {z|3|{= }#A~t,},= ~|3= #At,,L= |3P4x|>6= #At,,S= |3= #At,,X= |3= #At,,]= |3= #At,,b= |3P4>Q= #At,,k= |3Aoi>= #A,,,= |>r=rALs= |>r=rA,,,= |3=rA,,= |3=rA,,L= |3Pg=4O 4>=rA,,S= |3=rA,,X= |3=rA,,]= |3Pg>=rA,,k= |3=rA,,= |3=rA,,= |3Pg>=rA,,= |3=rA,,= |3=rA,,= |3Pg=4O 4>Ao =3Ao >Ao =3Aos>Ao =3Ao>Ao =3Ao>=46Og=4O 4>Ao>=4=43Ao >Aos=3Ao >Aos=3Aos>Aos=3Ao>Aos=3Ao>=4=43Aos>Ao=3 Ao  >  Ao =3  Ao s>  Ao=3Ao>=4=43Ao>=4QO=46O 4>6=4Og=46Og3Ao>=4Og =4!6Og"!!3# "Ao$ >$#=4%Og&%%=4'6Og(''3)&(Ao*s>*)=4+QO,++=g-iOg.-,>i.=4/Og0//=g1i3201Ao3>32=44Og544=g6i3756Ao8>87=49Og:99=g;i3<:;>(<= =#Ao> =3?>| @?AAt,=,,>A@= B#AoCs=3DC| EDAFt,B,>FE= G#AoH=3IH| JIAKt,G,L>KJ= L#AoM=3NM| ONAPt,L,?>PO= Q#AoR =3SR| TSAUt,Q,S>UT= V#AoWs=3XW| YXAZt,V,X>ZY= [#Ao\=3]\| ^]A_t,[,]>_^= `#Aoa=3ba| cbAdt,`,b>dc= e#=3f(| gfAht,e,k>hgnnaiAj = kjAl = mlnkm>n=oqopypAr = srAt = ut~ vu wsv>#w= x#Ay, = zy{xz>*{=|*~|}~}= #A,,?= |3= #A,,,= |3= #A,,= |3= #A,,L= |3P4>6= #A,,S= |3= #A,,X= |3= #A,,]= |3= #A,,b= |3P4>Q= #A,,k= |3Aoi>= #A,,,= |>r=rAL = |>r=rA,,,= |3=rA,,= |3=rA,,L= |3Pg=4O 4>=rA,,S= |3=rA,,X= |3=rA,,]= |3Pg>=rA,,k= |3=rA,,= |3=rA,,= |3Pg>=rA,,= |3=rA,,= |3=rA,,= |3Pg=4O 4>Ao =3Ao >Ao =3Aos>Ao =3Ao>Ao =3Ao>=46Og=4O 4>Ao>=4=43Ao >Aos=3 Ao  >  Ao s=3  Ao s>  Aos=3Ao>Aos=3Ao>=4=43Aos>Ao=3Ao >Ao=3Aos>Ao=3Ao > =4!=4"3#!"Ao$>$#=4%QO&%%=4'6O 4('&>6(=4)Og*))=4+6Og,++3-*,Ao.>.-=4/Og0//=416Og2113302Ao4 >43=45Og655=476Og8773968Ao:s>:9=4;QO<;;=g=iOg>=<>i>=4?Og@??=gAi3B@AAoC>CB=4DOgEDD=gFi3GEFAoH>HG=4IOgJII=gKi3LJK>(L= M#AoN =3ON| POAQ,M,,>QP= R#AoSs=3TS| UTAV,R,>VU= W#AoX=3YX| ZYA[,W,L>[Z= \#Ao]=3^]| _^A`,\,?>`_= a#Aob =3cb| dcAe,a,S>ed= f#Aogs=3hg| ihAj,f,X>ji= k#Aol=3ml| nmAo,k,]>on= p#Aoq=3rq| srAt,p,b>ts= u#=3v(| wvAx,u,k>xw~~qyAz = {zA|,= }|~{}>~=A = A,= ~  >#= #A,,= >*=*= #A,,?= |3= #A,,,= |3= #A,,= |3= #A,,L= |3P4>6= #A,,S= |3= #A,,X= |3= #A,,]= |3= #A,,b= |3P4>Q= #A,,k= |3Aoi>= #A,,,= |>r=rAL,= |>r=rA,,,= |3=rA,,= |3=rA,,L= |3Pg=4O 4>=rA,,S= |3=rA,,X= |3=rA,,]= |3Pg>=rA,,k= |3=rA,,= |3=rA,,= |3Pg>=rA,,= |3=rA,,= |3=rA,,= |3Pg=4O 4>Ao =3Ao >Ao =3Aos>Ao  =3  Ao >  Ao  =3  Ao> =46Og=4O 4>Ao>=4=43Ao >Aos=3Ao >Aos=3Aos>Aos=3Ao > Ao!s=3"!Ao#>#"=4$=4%3&$%Ao's>'&Ao(=3)(Ao* >*)Ao+=3,+Ao-s>-,Ao.=3/.Ao0>0/=41=423312Ao4>43=45QO655=476O 4876>68=49Og:99=4;6Og<;;3=:<Ao>>>==4?Og@??=4A6OgBAA3C@BAoD >DC=4EOgFEE=4G6OgHGG3IFHAoJs>JI=4KQOLKK=gMiOgNML>iN=4OOgPOO=gQi3RPQAoS>SR=4TOgUTT=gVi3WUVAoX>XW=4YOgZYY=g[i3\Z[>(\= ]#Ao^ =3_^| `_Aa,],,>a`= b#Aocs=3dc| edAf,b,>fe= g#Aoh=3ih| jiAk,g,L>kj= l#Aom=3nm| onAp,l,?>po= q#Aor =3sr| tsAu,q,S>ut= v#Aows=3xw| yxAz,v,X>zy= {#Ao|=3}|| ~}A,{,]>~= #Ao=3| A,,b>= #=3(| A,,k>A = A,= >=A = A,= ~  >#= #A,,= >*=*= #A,,?= |3= #A,,,= |3= #A,,= |3= #A,,L= |3P4>6= #A,,S= |3= #A,,X= |3= #A,,]= |3= #A,,b= |3P4>Q= #A,,k= |3Aoi>= #A,,,= |>r=rAL,= |>r=rA,,,= |3=rA,,= |3=rA,,L= |3Pg=4O 4>=rA,,S= |3=rA,,X= |3=rA,,]= |3Pg>=rA,,k= |3=rA,,= |3=rA,,= |3Pg>=rA,,= |3=rA ,,=  |3  = rA , ,=  |3Pg =4O 4>Ao =3Ao >Ao =3Aos>Ao =3Ao>Ao =3Ao>=46Og =4!O 4"! >"Ao#>#=4$=4%3&$%Ao' >'&Ao(s=3)(Ao* >*)Ao+s=3,+Ao-s>-,Ao.s=3/.Ao0>0/Ao1s=321Ao3>32=44=453645Ao7s>76Ao8=398Ao: >:9Ao;=3<;Ao=s>=<Ao>=3?>Ao@>@?=4A=4B3CABAoD>DC=4EQOFEE=4G6O 4HGF>6H=4IOgJII=4K6OgLKK3MJLAoN>NM=4OOgPOO=4Q6OgRQQ3SPRAoT >TS=4UOgVUU=4W6OgXWW3YVXAoZs>ZY=4[QO\[[=g]iOg^]\>i^=4_Og`__=gai3b`aAoc>cb=4dOgedd=gfi3gefAoh>hg=4iOgjii=gki3ljk>(l= m#Aon =3on| poAq,m,,>qp= r#Aoss=3ts| utAv,r,>vu= w#Aox=3yx| zyA{,w,L>{z= |#Ao}=3~}| ~A,|,?>= #Ao =3| A,,S>= #Aos=3| A,,X>= #Ao=3| A,,]>= #Ao=3| A,,b>= #=3(| A,,k>A = A,s= >=A = A,s= ~  >#= #A,,s= >*=*= #A,,?= |3= #A,,,= |3= #A,,= |3= #A,,L= |3P4>6= #A,,S= |3= #A,,X= |3= #A,,]= |3= #A,,b= |3P4>Q= #A,,k= |3Aoi>= #A,,,= |>r=rAL,s= |>r=rA,,,= |3=rA,,= |3=rA,,L= |3Pg=4O 4>=rA,,S= |3=rA,,X= |3=rA,,]= |3Pg>=rA,,k= |3  = rA , ,=  |3 =rA,,= |3Pg >=rA,,= |3=rA,,= |3=rA,,= |3Pg =4!O 4"! >"Ao# =3$#Ao% >%$Ao& =3'&Ao(s>('Ao) =3*)Ao+>+*Ao, =3-,Ao.>.-=4/6Og0//=41O 4210>2Ao3>3=44=453645Ao7 >76Ao8s=398Ao: >:9Ao;s=3<;Ao=s>=<Ao>s=3?>Ao@>@?AoAs=3BAAoC>CB=4D=4E3FDEAoGs>GFAoH=3IHAoJ >JIAoK=3LKAoMs>MLAoN=3ONAoP>PO=4Q=4R3SQRAoT>TS=4UQOVUU=4W6O 4XWV>6X=4YOgZYY=4[6Og\[[3]Z\Ao^>^]=4_Og`__=4a6Ogbaa3c`bAod >dc=4eOgfee=4g6Oghgg3ifhAojs>ji=4kQOlkk=gmiOgnml>in=4oOgpoo=gqi3rpqAos>sr=4tOgutt=gvi3wuvAox>xw=4yOgzyy=g{i3|z{>(|= }#Ao~ =3~| A,},,>= #Aos=3| A,,>= #Ao=3| A,,L>= #Ao=3| A,,?>= #Ao =3| A,,S>= #Aos=3| A,,X>= #Ao=3| A,,]>= #Ao=3| A,,b>= #=3(| A,,k>A = A, = >=A = A, = ~  >#= #A,, = >*=*= #A,,?= |3= #A,,,= |3= #A,,= |3= #A,,L= |3P4>6= #A,,S= |3= #A,,X= |3= #A,,]= |3= #A,,b= |3P4>Q= #A,,k= |3Aoi>= #A,,,= |>r=rAL, = |>r=rA,,,= |3=rA,,= |3=rA,,L= |3Pg=4O 4 > = rA , ,S=  |3  =rA,,X= |3=rA,,]= |3Pg >=rA,,k= |3=rA,,= |3=rA ,,= ! |3"!Pg#">#=$rA%,$,= &%|3'&=(rA),(,= *)|3+*=,rA-,,,= .-|3/.Pg0'+/=41O 4210>2Ao3 =343Ao5 >54Ao6 =376Ao8s>87Ao9 =3:9Ao;>;:Ao< =3=<Ao>>>==4?6Og@??=4AO 4BA@>BAoC>C=4D=4E3FDEAoG >GFAoHs=3IHAoJ >JIAoKs=3LKAoMs>MLAoNs=3ONAoP>POAoQs=3RQAoS>SR=4T=4U3VTUAoWs>WVAoX=3YXAoZ >ZYAo[=3\[Ao]s>]\Ao^=3_^Ao`>`_=4a=4b3cabAod>dc=4eQOfee=4g6O 4hgf>6h=4iOgjii=4k6Oglkk3mjlAon>nm=4oOgpoo=4q6Ogrqq3sprAot >ts=4uOgvuu=4w6Ogxww3yvxAozs>zy=4{QO|{{=g}iOg~}|>i~=4Og=gi3Ao>=4Og=gi3Ao>=4Og=gi3>(= #Ao =3| A,,,>= #Aos=3| A,,>= #Ao=3| A,,L>= #Ao=3| A,,?>= #Ao =3| A,,S>= #Aos=3| A,,X>= #Ao=3| A,,]>= #Ao=3| A,,b>= #=3(| A,,k>qqaa!!8@AbatchMainInPlaceComputeSkinInPlaceCBuffer inMatricesinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6inOutVertices0inOutVertices1 inOutVertices2 inOutVertices3 inOutVertices4 inOutVertices5 inOutVertices6#   GLSL.std.450main @mainu_xlatb0 gl_GlobalInvocationID ComputeSkinInPlaceCBufferg_VertCountsg_BatchOffsetsg_PoseOffsets g_poseBufferMaxIndex#u_xlatu0*u_xlatb126u_xlat1 9inOutVertices6_origX6X_type9value;inOutVertices6_origX6X ;inOutVertices6_origX6X_buf=Ou_xlat2RinSkin6_typeRvalueTinSkin6TinSkin6_bufVku_xlati12wu_xlat3zinMatrices_typezvalue|inMatrices|inMatrices_buf~u_xlat4u_xlat5u_xlat6u_xlat7u_xlat8/u_xlat9Bu_xlat10Su_xlat11 inOutVertices5_origX5X_typevalueinOutVertices5_origX5X inOutVertices5_origX5X_bufinSkin5_typevalueinSkin5inSkin5_buf inOutVertices4_origX4X_type valueinOutVertices4_origX4X inOutVertices4_origX4X_buf"inSkin4_type"value$inSkin4$inSkin4_buf& cinOutVertices3_origX3X_typecvalueeinOutVertices3_origX3X einOutVertices3_origX3X_bufgxinSkin3_typexvaluezinSkin3zinSkin3_buf| inOutVertices2_origX2X_typevalueinOutVertices2_origX2X inOutVertices2_origX2X_bufinSkin2_typevalueinSkin2inSkin2_buf inOutVertices1_origX1X_typevalueinOutVertices1_origX1X inOutVertices1_origX1X_buf$inSkin1_type$value&inSkin1&inSkin1_buf( einOutVertices0_origX0X_typeevalueginOutVertices0_origX0X ginOutVertices0_origX0X_bufizinSkin0_typezvalue|inSkin0|inSkin0_buf~ u_xlat_precise_vec4 u_xlat_precise_ivec4 u_xlat_precise_bvec4 u_xlat_precise_uvec4G GGGH#H# H#@H#`GG"G!G8H9#G: H;#G;G="G=!GQHR#GSHTHT#GTGV"GV!GyHz#G{@H|H|#G|G~"G~!GH#G H#GG"G! GH#GHH#GG"G!G H #G H#GG"G! G!H"#G#H$H$#G$G&"G&!GbHc#Gd He#GeGg"Gg! GwHx#GyHzHz#GzG|"G|!GH#G H#GG"G! GH#GHH#GG"G!GH#G H#GG"G! G#H$#G%H&H&#G&G("G(!GdHe#Gf Hg#GgGi"Gi!GyHz#G{H|H|#G|G~"G~!G ! ;     ; +   +  ; +  " ;"#;*+,3 43 54;56+ 78 798:9;: <;;<=+GK3;5O+ PQ PRQSRTS UT;UV+di ji;jkl3p  q;5w+ xy xzy{z|{ }|;}~ ;5+++;5++ + ;5+ + +;5 3+ ;5;5/;5B;5S+3? 7 ; P ;  7    ;! P"!#"$# %$;%&b 7cbdced fe;fgw Pxwyxzy {z;{| 7 ; P ; 7 ;# P$#%$&% '&;'(d 7edfegf hg;hiy Pzy{z|{ }|;}~  4         + @, 6; ; ; ; A = A= >=!  A$ = %$A&= '&~ (' )%(>#)= +#A-,= .-/+.>*/=0*20121= >#A?=,>,,= @?|3A@= B#AC=,B,= DC|3ED= F#AH=,F,G= IH|3JIPKLAEJ=4M6O 4NML>6N= W#AXV,W,,= YX|3ZY= [#A\V,[,= ]\|3^]= _#A`V,_,G= a`|3ba= c#AeV,c,d= fe|3gfP4hZ^bg>Oh=4mOOlnmm|ionAqrG=srOptss|iutivou>kvAk =A~,,,= |3Ak =A~,,= |3Ak =A~,,G= |3PK=4wO 4>wAk =A~,,= |3Ak =A~,,= |3Ak =A~,,= |3PK=4O 4>Ak =A~,,= |3Ak =A~,,= |3Ak =A~,,= |3PK=4O 4>Ak =A~,,= |3Ak =A~,,= |3Ak =A~,,= |3PK=4O 4>Aw =3A >A =3A>A =3A>A =3A7>Aw=3A >A=3A>A=3A>A=3A7>Aw=3A >A=3A>A=3A>Ak=A~,,,= |3Ak=A~,,= |3Ak=A~,,G= |3PK=4 wO 4  >w A k=  A ~, ,=  |3Ak=A~,,= |3Ak=A~,,= |3PK=4O 4>Ak=A~,,= |3! A"k=#"A$~,#,= %$|3&%A'k=('A)~,(,= *)|3+*PK,!&+=4-O 4.-,>.A0k=10A2~,1,= 32|343A5k=65A7~,6,= 87|398A:k=;:A<~,;,= =<|3>=PK?49>=4@/O 4A@?>/AACw =3DCAEB >EDAF =3GFAHB>HGAI =3JIAKB>KJAL/ =3MLANB7>NM=4OOO 4POO=4QB4RPQ>BRATw=3UTAVS >VUAW=3XWAYS>YXAZ=3[ZA\S>\[A]/=3^]A_S7>_^=4`OO 4a``=4bS4cab>ScAdw=3edAf/ >feAg=3hgAi/>ihAj=3kjAl/>lk=4mOO 4nmm=4o/4pno>wp=4q=4rOO 4srr4tqs=4uB4vtu>v=4w=4xOO 4yxx4zwy=4{S4|z{>|=4}=4~OO 4~~4}=4w4>OA67>=4=463Aw >=4=463Aw>=4O=463Aw>= #Aw =3| A=,,,>= #Aw=3| A=,,>= #Aw=3| A=,,G>22!A = A= >=A = A= ~  >#= #A,= >*=*= #A,,,= |3= #A,,= |3= #A,,G= |3PK=46O 4>6= #A,,,= |3= #A,,= |3= #A,,G= |3= #A,,d= |3P4>O=4OOl|iAqG=Op|ii>kAk =A~,,,= |3Ak =A~,,= |3Ak =A~,,G= |3PK=4wO 4>wAk =A~,,= |3Ak =A~,,= |3Ak =A~,,= |3  PK  =4 O 4   > Ak =A~,,= |3Ak =A~,,= |3Ak =A~,,= |3PK=4O 4>A k =! A"~,!,= #"|3$#A%k =&%A'~,&,= ('|3)(A*k =+*A,~,+,= -,|3.-PK/$).=40O 410/>1A2w =332A4 >43A5 =365A7>76A8 =398A:>:9A; =3<;A=7>=<A>w=3?>A@ >@?AA=3BAAC>CBAD=3EDAF>FEAG=3HGAI7>IHAJw=3KJAL >LKAM=3NMAO>ONAP=3QPAR>RQASk=TSAU~,T,,= VU|3WVAXk=YXAZ~,Y,= [Z|3\[A]k=^]A_~,^,G= `_|3a`PKbW\a=4cwO 4dcb>wdAek=feAg~,f,= hg|3ihAjk=kjAl~,k,= ml|3nmAok=poAq~,p,= rq|3srPKtins=4uO 4vut>vAwk=xwAy~,x,= zy|3{zA|k=}|A~~,},= ~|3Ak=A~,,= |3PK{=4O 4>Ak=A~,,= |3Ak=A~,,= |3Ak=A~,,= |3PK=4/O 4>/Aw =3AB >A =3AB>A =3AB>A/ =3AB7>=4OO 4=4B4>BAw=3AS >A=3AS>A=3AS>A/=3AS7>=4OO 4=4S4>SAw=3A/ >A=3A/>A=3A/>=4OO 4=4/4>w=4=4OO 44=4B4>=4=4OO 44=4S4>=4=4OO 44=4w4>OA67>=4=463Aw >=4=463Aw>=4O=463Aw>= #Aw =3| A,,,>= #Aw=3| A,,>= #Aw=3| A,,G>A = A = >=LA = A = ~  >#= #A, = >*= *     = #A,,,= |3= #A,,= |3= #A,,G= |3PK=46O 4 >6 = '#A(&,',,= )(|3*)= +#A,&,+,= -,|3.-= /#A0&,/,G= 10|321= 3#A4&,3,d= 54|365P47*.26>O7=48OOl988|i:9Aq;G=<;Op=<<|i>=i?:>>k?A@k =A@AB~,A,,= CB|3DCAEk =FEAG~,F,= HG|3IHAJk =KJAL~,K,G= ML|3NMPKODIN=4PwO 4QPO>wQARk =SRAT~,S,= UT|3VUAWk =XWAY~,X,= ZY|3[ZA\k =]\A^~,],= _^|3`_PKaV[`=4bO 4cba>cAdk =edAf~,e,= gf|3hgAik =jiAk~,j,= lk|3mlAnk =onAp~,o,= qp|3rqPKshmr=4tO 4uts>uAvk =wvAx~,w,= yx|3zyA{k =|{A}~,|,= ~}|3~Ak =A~,,= |3PKz=4O 4>Aw =3A >A =3A>A =3A>A =3A7>Aw=3A >A=3A>A=3A>A=3A7>Aw=3A >A=3A>A=3A>Ak=A~,,,= |3Ak=A~,,= |3Ak=A~,,G= |3PK=4wO 4>wAk=A~,,= |3Ak=A~,,= |3Ak=A~,,= |3PK=4O 4>Ak=A~,,= |3Ak=A~,,= |3Ak=A~,,= |3PK=4O 4>Ak=A~,,= |3Ak=A~,,= |3Ak=A~,,= |3PK=4/O 4>/Aw =3AB >A =3AB>A =3AB>A/ =3AB7>=4OO 4=4B4>BAw=3AS >A=3AS>A=3A S> A /=3  A S7>  =4 OO 4  =4S4>SAw=3A/ >A=3A/>A=3A/>=4OO 4=4/4>w=4=4OO 4 4! =4"B4#!">#=4$=4%OO 4&%%4'$&=4(S4)'(>)=4*=4+OO 4,++4-*,=4.w4/-.>O/A067>0=41=4263312A4w >43=45=4663756A8w>87=49O=4:63;9:A<w><;= =#A>w =3?>| @?AA,=,,>A@= B#ACw=3DC| EDAF,B,>FE= G#AHw=3IH| JIAK,G,G>KJ  LAM = NMAO,7= POQNP>Q=RTRSSAU = VUAW,7= XW~ YX ZVY>#Z= [#A\,,7= ]\^[]>*^=_*a_`a`= h#Aig,h,,= ji|3kj= l#Amg,l,= nm|3on= p#Aqg,p,G= rq|3srPKtkos=4u6O 4vut>6v= }#A~|,},,= ~|3= #A|,,= |3= #A|,,G= |3= #A|,,d= |3P4>O=4OOl|iAqG,=Op|ii>kAk =A~,,,= |3Ak =A~,,= |3Ak =A~,,G= |3PK=4wO 4>wAk =A~,,= |3Ak =A~,,= |3Ak =A~,,= |3PK=4O 4>Ak =A~,,= |3Ak =A~,,= |3Ak =A~,,= |3PK=4O 4>Ak =A~,,= |3Ak =A~,,= |3Ak =A~,,= |3PK=4O 4>Aw =3A >A =3A>A =3A>A =3A7>Aw=3A >A=3A>A=3A>A=3A7>Aw=3A >A=3A>A=3A>Ak=A~,,,= |3Ak=A~,,= |3A k=  A ~, ,G=  |3  PK =4wO 4>wAk=A~,,= |3Ak=A~,,= |3Ak=A~,,= |3PK =4!O 4"! >"A#k=$#A%~,$,= &%|3'&A(k=)(A*~,),= +*|3,+A-k=.-A/~,.,= 0/|310PK2',1=43O 4432>4A5k=65A7~,6,= 87|398A:k=;:A<~,;,= =<|3>=A?k=@?AA~,@,= BA|3CBPKD9>C=4E/O 4FED>/FAGw =3HGAIB >IHAJ =3KJALB>LKAM =3NMAOB>ONAP/ =3QPARB7>RQ=4SOO 4TSS=4UB4VTU>BVAWw=3XWAYS >YXAZ=3[ZA\S>\[A]=3^]A_S>_^A`/=3a`AbS7>ba=4cOO 4dcc=4eS4fde>SfAgw=3hgAi/ >ihAj=3kjAl/>lkAm=3nmAo/>on=4pOO 4qpp=4r/4sqr>ws=4t=4uOO 4vuu4wtv=4xB4ywx>y=4z=4{OO 4|{{4}z|=4~S4}~>=4=4OO 44=4w4>OA67>=4=463Aw >=4=463Aw>=4O=463Aw>= #Aw =3| Ag,,,>= #Aw=3| Ag,,>= #Aw=3| Ag,,G>aaTA = A,= >=A = A,= ~  >#= #A,,= >*=*= #A,,,= |3= #A,,= |3= #A,,G= |3PK=46O 4>6= #A,,,= |3= #A,,= |3= #A,,G= |3= #A,,d= |3P4>O=4OOl|iAqG,=Op|ii>kAk =A~,,,= |3Ak =A~,,= |3Ak =A~,,G= |3PK=4wO 4>wAk =A~,,= |3Ak =A~,,= |3Ak = A ~, ,=  |3  PK  =4O 4 >Ak =A~,,= |3Ak =A~,,= |3Ak =A~,,= |3PK=4 O 4! >!A"k =#"A$~,#,= %$|3&%A'k =('A)~,(,= *)|3+*A,k =-,A.~,-,= /.|30/PK1&+0=42O 4321>3A4w =354A6 >65A7 =387A9>98A: =3;:A<><;A= =3>=A?7>?>A@w=3A@AB >BAAC=3DCAE>EDAF=3GFAH>HGAI=3JIAK7>KJALw=3MLAN >NMAO=3POAQ>QPAR=3SRAT>TSAUk=VUAW~,V,,= XW|3YXAZk=[ZA\~,[,= ]\|3^]A_k=`_Aa~,`,G= ba|3cbPKdY^c=4ewO 4fed>wfAgk=hgAi~,h,= ji|3kjAlk=mlAn~,m,= on|3poAqk=rqAs~,r,= ts|3utPKvkpu=4wO 4xwv>xAyk=zyA{~,z,= |{|3}|A~k=~A~,,= |3Ak=A~,,= |3PK}=4O 4>Ak=A~,,= |3Ak=A~,,= |3Ak=A~,,= |3PK=4/O 4>/Aw =3AB >A =3AB>A =3AB>A/ =3AB7>=4OO 4=4B4>BAw=3AS >A=3AS>A=3AS>A/=3AS7>=4OO 4=4S4>SAw=3A/ >A=3A/>A=3A/>=4OO 4=4/4>w=4=4OO 44=4B4>=4=4OO 44=4S4>=4=4OO 44=4w4>OA67>=4=463Aw >=4=463Aw>=4O=463Aw>= #Aw =3| A,,,>= #Aw=3| A,,>= #Aw=3| A,,G>A = A,= >=NA = A,= ~  >#= #A,,=   >* = *     = #A,,,= |3= #A,,= |3= #A,,G= |3PK =4!6O 4"! >6"= )#A*(,),,= +*|3,+= -#A.(,-,= /.|30/= 1#A2(,1,G= 32|343= 5#A6(,5,d= 76|387P49,048>O9=4:OOl;::|i<;Aq=G,=>=Op?>>|i@?iA<@>kAABk =CBAD~,C,,= ED|3FEAGk =HGAI~,H,= JI|3KJALk =MLAN~,M,G= ON|3POPKQFKP=4RwO 4SRQ>wSATk =UTAV~,U,= WV|3XWAYk =ZYA[~,Z,= \[|3]\A^k =_^A`~,_,= a`|3baPKcX]b=4dO 4edc>eAfk =gfAh~,g,= ih|3jiAkk =lkAm~,l,= nm|3onApk =qpAr~,q,= sr|3tsPKujot=4vO 4wvu>wAxk =yxAz~,y,= {z|3|{A}k =~}A~,~,= |3Ak =A~,,= |3PK|=4O 4>Aw =3A >A =3A>A =3A>A =3A7>Aw=3A >A=3A>A=3A>A=3A7>Aw=3A >A=3A>A=3A>Ak=A~,,,= |3Ak=A~,,= |3Ak=A~,,G= |3PK=4wO 4>wAk=A~,,= |3Ak=A~,,= |3Ak=A~,,= |3PK=4O 4>Ak=A~,,= |3Ak=A~,,= |3Ak=A~,,= |3PK=4O 4>Ak=A~,,= |3Ak=A~,,= |3Ak=A~,,= |3PK=4/O 4>/Aw =3AB >A =3AB>A =3AB>A/ =3AB7>=4OO 4=4B4>BAw=3AS >A=3AS>A =3  A S>  A /=3  AS7> =4OO 4=4S4>SAw=3A/ >A=3A/>A=3A/>=4OO 4=4/4>w=4 =4!OO 4"!!4# "=4$B4%#$>%=4&=4'OO 4(''4)&(=4*S4+)*>+=4,=4-OO 4.--4/,.=40w41/0>O1A267>2=43=4463534A6w >65=47=4863978A:w>:9=4;O=4<63=;<A>w>>== ?#A@w =3A@| BAAC,?,,>CB= D#AEw=3FE| GFAH,D,>HG= I#AJw=3KJ| LKAM,I,G>ML  NAO = POAQ, = RQSPR>S=TVTUVUAW = XWAY, = ZY~ [Z \X[>#\= ]#A^,, = _^`]_>*`=a*cabcb= j#Aki,j,,= lk|3ml= n#Aoi,n,= po|3qp= r#Asi,r,G= ts|3utPKvmqu=4w6O 4xwv>6x= #A~,,,= |3= #A~,,= |3= #A~,,G= |3= #A~,,d= |3P4>O=4OOl|iAqG,=Op|ii>kAk =A~,,,= |3Ak =A~,,= |3Ak =A~,,G= |3PK=4wO 4>wAk =A~,,= |3Ak =A~,,= |3Ak =A~,,= |3PK=4O 4>Ak =A~,,= |3Ak =A~,,= |3Ak =A~,,= |3PK=4O 4>Ak =A~,,= |3Ak =A~,,= |3Ak =A~,,= |3PK=4O 4>Aw =3A >A =3A>A =3A>A =3A7>Aw=3A >A=3A>A=3A>A=3A7>Aw=3A >A=3A>A=3A > A k=  A ~, ,,=   |3  A k=  A ~, ,=  |3 A k= A ~, ,G=  |3  PK   =4 wO 4   >w A k=  A ~, ,=   |3  A k=  A ~, ,=   |3  A k=  A ~, ,=  |3! PK"   ! =4# O 4$ # " >$ A% k=& % A' ~,& ,= ( ' |3) ( A* k=+ * A, ~,+ ,= - , |3. - A/ k=0 / A1 ~,0 ,= 2 1 |33 2 PK4 ) . 3 =45 O 46 5 4 >6 A7 k=8 7 A9 ~,8 ,= : 9 |3; : A< k== < A> ~,= ,= ? > |3@ ? AA k=B A AC ~,B ,= D C |3E D PKF ; @ E =4G /O 4H G F >/H AI w =3J I AK B >K J AL =3M L AN B>N M AO =3P O AQ B>Q P AR / =3S R AT B7>T S =4U OO 4V U U =4W B4X V W >BX AY w=3Z Y A[ S >[ Z A\ =3] \ A^ S>^ ] A_ =3` _ Aa S>a ` Ab /=3c b Ad S7>d c =4e OO 4f e e =4g S4h f g >Sh Ai w=3j i Ak / >k j Al =3m l An />n m Ao =3p o Aq />q p =4r OO 4s r r =4t /4u s t >wu =4v =4w OO 4x w w 4y v x =4z B4{ y z >{ =4| =4} OO 4~ } } 4 | ~ =4 S4  > =4 =4 OO 4 4 =4 w4 >O A 67> =4 =4 63 A w > =4 =4 63 A w> =4 O=4 63 A w> = #A w =3 | A i, ,,> = #A w=3 | A i, ,> = #A w=3 | A i, ,G> ccVVTT!!8@AbatchMainInPlaceComputeSkinInPlaceCBuffer inMatricesinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6inOutVertices0inOutVertices1 inOutVertices2 inOutVertices3 inOutVertices4 inOutVertices5 inOutVertices6#   GLSL.std.450main @mainu_xlatb0 gl_GlobalInvocationID ComputeSkinInPlaceCBufferg_VertCountsg_BatchOffsetsg_PoseOffsets g_poseBufferMaxIndex#u_xlatu0*u_xlatb136u_xlat1 9inOutVertices6_origX6X_type9value;inOutVertices6_origX6X ;inOutVertices6_origX6X_buf=Su_xlat2bu_xlat3einSkin6_typeevalueginSkin6ginSkin6_bufi}u_xlati13u_xlat4inMatrices_typevalueinMatricesinMatrices_bufu_xlat5u_xlat6u_xlat7u_xlat8u_xlat9?u_xlat10Ru_xlat11cu_xlat12 inOutVertices5_origX5X_typevalueinOutVertices5_origX5X inOutVertices5_origX5X_bufinSkin5_typevalueinSkin5inSkin5_buf tinOutVertices4_origX4X_typetvaluevinOutVertices4_origX4X vinOutVertices4_origX4X_bufxinSkin4_typevalueinSkin4inSkin4_buf inOutVertices3_origX3X_typevalueinOutVertices3_origX3X inOutVertices3_origX3X_bufinSkin3_typevalue inSkin3 inSkin3_buf" inOutVertices2_origX2X_typevalueinOutVertices2_origX2X inOutVertices2_origX2X_bufinSkin2_typevalueinSkin2inSkin2_buf inOutVertices1_origX1X_type valueinOutVertices1_origX1X inOutVertices1_origX1X_buf.inSkin1_type.value0inSkin10inSkin1_buf2 inOutVertices0_origX0X_type value inOutVertices0_origX0X inOutVertices0_origX0X_buf  inSkin0_type value inSkin0 inSkin0_buf  u_xlat_precise_vec4 u_xlat_precise_ivec4 u_xlat_precise_bvec4 u_xlat_precise_uvec4G GGGH#H# H#@H#`GG"G!G8H9#G:H;#G;G="G=!GdHe#GfHgHg#GgGi"Gi!GH#G@HH#GG"G!GH#GH#GG"G! G H#GHH#GG"G!GsHt#GuHv#GvGx"Gx! GH#GHH#GG"G!GH#GH#GG"G! GH#GH H #G G""G"!GH#GH#GG"G! GH#GHH#GG"G!G H #G H#GG"G! G-H.#G/H0H0#G0G2"G2!G H #G H #G G "G !G H #G H H #G G "G !G ! ;     ; +   +  ; +  " ;"#;*+,3 43 54;56+ 78 798:9;: <;;<=+G+LQ3 RQ;RS+U+Z^3;5b+ cd cedfegf hg;hi{ |{;|}  ;5+   ; ;5+;5++ + ;5+ + +;5 3+ + ;5;5?;5R;5c+3? 7 ;  c  ;s 7tsutvu wv;wx c ; 7 ; c  ! ;!" 7 ; c ;  7      ;- c.-/.0/ 10;12 7     ;  c     ;   4         +  @,   6;  ; ; ;  A = A= >=!  A$ = %$A&= '&~ (' )%(>#)= +#A-,= .-/+.>*/=0*20121= >#A?=,>,,= @?|3A@= B#AC=,B,= DC|3ED= F#AH=,F,G= IH|3JI= K#AM=,K,L= NM|3ONP4PAEJO>6P= T#AV=,T,U= WV|3XW= Y#A[=,Y,Z= \[|3]\P^_X]=Q`SOQa`_>Sa= j#Aki,j,,= lk|3ml= n#Aoi,n,= po|3qp= r#Asi,r,G= ts|3ut= v#Awi,v,L= xw|3yxP4zmquy>bz=4~bO^~~|{AG=O|{{>}A} =A,,,= |3A} =A,,= |3A} =A,,G= |3PQ=4O 4>A} =A,,U= |3A} =A,,Z= |3A} =A,,= |3PQ=4O 4>A} =A,,= |3A} =A,,= |3A} =A,,= |3PQ=4O 4>A} =A,,= |3A} =A,,= |3A} =A,,= |3PQ=4O 4>A =3A >A =3A>A =3A>A =3A>A=3A >A=3A>A=3A>A=3A>A=3A >A=3A>A=3A>A }=  A , ,,=  |3  A}=A,,= |3A}=A,,G= |3PQ =4O 4>A}=A,,U= |3A }=! A",!,Z= #"|3$#A%}=&%A',&,= ('|3)(PQ*$)=4+O 4,+*>,A-}=.-A/,.,= 0/|310A2}=32A4,3,= 54|365A7}=87A9,8,= :9|3;:PQ<16;=4=O 4>=<>>A@}=A@AB,A,= CB|3DCAE}=FEAG,F,= HG|3IHAJ}=KJAL,K,= ML|3NMPQODIN=4P?O 4QPO>?QAS =3TSAUR >UTAV =3WVAXR>XWAY =3ZYA[R>[ZA\? =3]\A^R>^]=4_bO 4`__=4aR4b`a>RbAd=3edAfc >feAg=3hgAic>ihAj=3kjAlc>lkAm?=3nmAoc>on=4pbO 4qpp=4rc4sqr>csAt=3utAv? >vuAw=3xwAy?>yxAz=3{zA|?>|{=4}bO 4~}}=4?4~>=4=4bO 44=4R4>=4=4bO 44=4c4>=4=4bO 44=44>b=46OQ=4O 4>A>=4=43A >=4=43A>=4b=43A>A6=3AS>=4OQ=QS3A>=4OQ=QS3A6 >=4bOQ=QS3A6>= #A =3| A=,,,>= #A=3| A=,,>= #A=3| A=,,G>= #A=3| A=,,L>= #A6 =3| A=,,U>= #A6=3| A=,,Z>22!A = A= >=]A = A= ~  >#= #A,= >*=*= #A,,,= |3= #A,,= |3= #A,,G= |3= #A,,L= |3P4>6= #A,,U= |3= #A,,Z= |3 P^  =Q SOQ   >S = #A,,,= |3= #A,,= |3= #A,,G= |3= #A ,,L= ! |3"!P4#">b#=4$bO^%$$|{&%A'G=('O)((|{*){+&*>}+A,} =-,A.,-,,= /.|30/A1} =21A3,2,= 43|354A6} =76A8,7,G= 98|3:9PQ;05:=4<O 4=<;>=A>} =?>A@,?,U= A@|3BAAC} =DCAE,D,Z= FE|3GFAH} =IHAJ,I,= KJ|3LKPQMBGL=4NO 4ONM>OAP} =QPAR,Q,= SR|3TSAU} =VUAW,V,= XW|3YXAZ} =[ZA\,[,= ]\|3^]PQ_TY^=4`O 4a`_>aAb} =cbAd,c,= ed|3feAg} =hgAi,h,= ji|3kjAl} =mlAn,m,= on|3poPQqfkp=4rO 4srq>sAt =3utAv >vuAw =3xwAy>yxAz =3{zA|>|{A} =3~}A>~A=3A >A=3A>A=3A>A=3A>A=3A >A=3A>A=3A>A}=A,,,= |3A}=A,,= |3A}=A,,G= |3PQ=4O 4>A}=A,,U= |3A}=A,,Z= |3A}=A,,= |3PQ=4O 4>A}=A,,= |3A}=A,,= |3A}=A,,= |3PQ=4O 4>A}=A,,= |3A}=A,,= |3A}=A,,= |3PQ=4?O 4>?A =3AR >A =3AR>A =3AR>A? =3AR>=4bO 4=4R4>RA=3Ac >A=3Ac>A=3Ac>A?=3Ac>=4bO 4=4c4>cA=3A? >A=3A?>A=3A?>=4bO 4=4?4 > =4 =4 bO 4   4   =4R4 >=4=4bO 44=4c4>=4=4bO 44=44>b=46OQ=4O 4>A > =4!=4"3#!"A$ >$#=4%=4&3'%&A(>('=4)b=4*3+)*A,>,+A-6=3.-A/S>/.=40OQ100=Q2S3312A4>43=45OQ655=Q7S3867A96 >98=4:bOQ;::=Q<S3=;<A>6>>== ?#A@ =3A@| BAAC,?,,>CB= D#AE=3FE| GFAH,D,>HG= I#AJ=3KJ| LKAM,I,G>ML= N#AO=3PO| QPAR,N,L>RQ= S#AT6 =3UT| VUAW,S,U>WV= X#AY6=3ZY| [ZA\,X,Z>\[]A^ = _^A` = a`b_a>b=cecddAf = gfAh = ih~ ji kgj>#k= l#Am, = nmoln>*o=p*rpqrq= y#Azx,y,,= {z|3|{= }#A~x,},= ~|3= #Ax,,G= |3= #Ax,,L= |3P4|>6= #Ax,,U= |3= #Ax,,Z= |3P^=QSOQ>S= #A,,,= |3= #A,,= |3= #A,,G= |3= #A,,L= |3P4>b=4bO^|{AG=O|{{>}A} =A,,,= |3A} =A,,= |3A} =A,,G= |3PQ=4O 4>A} =A,,U= |3A} =A,,Z= |3A} =A,,= |3PQ=4O 4>A} =A,,= |3A} =A,,= |3A} =A,,= |3PQ=4O 4>A} =A,,= |3A} =A,,= |3A} =A,,= |3PQ=4O 4>A =3A >A =3A>A =3A>A =3A>A=3 A  >  A =3  A >  A=3A>A=3A>A=3A >A=3A>A=3A>A}=A,,,= |3! A"}=#"A$,#,= %$|3&%A'}=('A),(,G= *)|3+*PQ,!&+=4-O 4.-,>.A/}=0/A1,0,U= 21|332A4}=54A6,5,Z= 76|387A9}=:9A;,:,= <;|3=<PQ>38==4?O 4@?>>@AA}=BAAC,B,= DC|3EDAF}=GFAH,G,= IH|3JIAK}=LKAM,L,= NM|3ONPQPEJO=4QO 4RQP>RAS}=TSAU,T,= VU|3WVAX}=YXAZ,Y,= [Z|3\[A]}=^]A_,^,= `_|3a`PQbW\a=4c?O 4dcb>?dAe =3feAgR >gfAh =3ihAjR>jiAk =3lkAmR>mlAn? =3onApR>po=4qbO 4rqq=4sR4trs>RtAu=3vuAwc >wvAx=3yxAzc>zyA{=3|{A}c>}|A~?=3~Ac>=4bO 4=4c4>cA=3A? >A=3A?>A=3A?>=4bO 4=4?4>=4=4bO 44=4R4>=4=4bO 44=4c4>=4=4bO 44=44>b=46OQ=4O 4>A>=4=43A >=4=43A>=4b=43A>A6=3AS>=4OQ=QS3A>=4OQ=QS3A6 >=4bOQ=QS3A6>= #A =3| Ax,,,>= #A=3| Ax,,>= #A=3| Ax,,G>= #A=3| Ax,,L>= #A6 =3| Ax,,U>= #A6=3| Ax,,Z>rreA = A,= >=mA = A,= ~  >#= #A,,= >*=*= #A,,,= |3= #A,,= |3= #A , ,G=  |3  = #A, ,L= |3P4 >6= #A,,U= |3= #A,,Z= |3P^=QSOQ>S= ##A$",#,,= %$|3&%= '#A(",',= )(|3*)= +#A,",+,G= -,|3.-= /#A0",/,L= 10|321P43&*.2>b3=44bO^544|{65A7G,=87O988|{:9{;6:>};A<} ==<A>,=,,= ?>|3@?AA} =BAAC,B,= DC|3EDAF} =GFAH,G,G= IH|3JIPQK@EJ=4LO 4MLK>MAN} =ONAP,O,U= QP|3RQAS} =TSAU,T,Z= VU|3WVAX} =YXAZ,Y,= [Z|3\[PQ]RW\=4^O 4_^]>_A`} =a`Ab,a,= cb|3dcAe} =feAg,f,= hg|3ihAj} =kjAl,k,= ml|3nmPQodin=4pO 4qpo>qAr} =srAt,s,= ut|3vuAw} =xwAy,x,= zy|3{zA|} =}|A~,},= ~|3PQv{=4O 4>A =3A >A =3A>A =3A>A =3A>A=3A >A=3A>A=3A>A=3A>A=3A >A=3A>A=3A>A}=A,,,= |3A}=A,,= |3A}=A,,G= |3PQ=4O 4>A}=A,,U= |3A}=A,,Z= |3A}=A,,= |3PQ=4O 4>A}=A,,= |3A}=A,,= |3A}=A,,= |3PQ=4O 4>A}=A,,= |3A}=A,,= |3A}=A,,= |3PQ=4?O 4>?A =3AR >A =3AR>A =3AR>A? =3AR>=4bO 4=4R4>RA=3Ac >A=3Ac>A=3Ac>A?=3Ac>=4 bO 4   =4 c4   >c A =3 A? >A=3A?>A=3A?>=4bO 4=4?4>=4=4bO 44=4R4>=4 =4!bO 4"!!4# "=4$c4%#$>%=4&=4'bO 4(''4)&(=4*4+)*>b+=4,6OQ-,,=4.O 4/.->/A0>0=41=423312A4 >43=45=463756A8>87=49b=4:3;9:A<><;A=6=3>=A?S>?>=4@OQA@@=QBS3CABAD>DC=4EOQFEE=QGS3HFGAI6 >IH=4JbOQKJJ=QLS3MKLAN6>NM= O#AP =3QP| RQAS,O,,>SR= T#AU=3VU| WVAX,T,>XW= Y#AZ=3[Z| \[A],Y,G>]\= ^#A_=3`_| a`Ab,^,L>ba= c#Ad6 =3ed| feAg,c,U>gf= h#Ai6=3ji| kjAl,h,Z>lkmAn = onAp,= qproq>r=susttAv = wvAx,= yx~ zy {wz>#{= |#A},,= ~}|~>*=*= #A,,,= |3= #A,,= |3= #A,,G= |3= #A,,L= |3P4>6= #A,,U= |3= #A,,Z= |3P^=QSOQ>S= #A,,,= |3= #A,,= |3= #A,,G= |3= #A,,L= |3P4>b=4bO^|{AG,=O|{{>}A} =A,,,= |3A} =A,,= |3A} =A,,G= |3PQ=4O 4>A} =A,,U= |3A} =A,,Z= |3A} =A,,= |3PQ=4O 4>A} =A,,= |3A} =A,,= |3A} =A,,= |3PQ=4O 4>A} =A,,= |3A} =A,,= |3A} =A,,= |3PQ =4 O 4   > A  =3  A > A =3A>A =3A>A =3A>A=3A >A=3A>A=3A > A!=3"!A#>#"A$=3%$A& >&%A'=3('A)>)(A*=3+*A,>,+A-}=.-A/,.,,= 0/|310A2}=32A4,3,= 54|365A7}=87A9,8,G= :9|3;:PQ<16;=4=O 4>=<>>A?}=@?AA,@,U= BA|3CBAD}=EDAF,E,Z= GF|3HGAI}=JIAK,J,= LK|3MLPQNCHM=4OO 4PON>PAQ}=RQAS,R,= TS|3UTAV}=WVAX,W,= YX|3ZYA[}=\[A],\,= ^]|3_^PQ`UZ_=4aO 4ba`>bAc}=dcAe,d,= fe|3gfAh}=ihAj,i,= kj|3lkAm}=nmAo,n,= po|3qpPQrglq=4s?O 4tsr>?tAu =3vuAwR >wvAx =3yxAzR>zyA{ =3|{A}R>}|A~? =3~AR>=4bO 4=4R4>RA=3Ac >A=3Ac>A=3Ac>A?=3Ac>=4bO 4=4c4>cA=3A? >A=3A?>A=3A?>=4bO 4=4?4>=4=4bO 44=4R4>=4=4bO 44=4c4>=4=4bO 44=44>b=46OQ=4O 4>A>=4=43A >=4=43A>=4b=43A>A6=3AS>=4OQ=QS3A>=4OQ=QS3A6 >=4bOQ=QS3A6>= #A =3| A,,,>= #A=3| A,,>= #A=3| A,,G>= #A=3| A,,L>= #A6 =3| A,,U>= #A6=3| A,,Z>uA = A,= >=} A = A,= ~  >#= #A,,= >*=*    = #A,,,= |3= #A,,= |3= #A,,G= |3= #A,,L= |3 P4! >6!= "#A#,",U= $#|3%$= &#A',&,Z= ('|3)(P^*%)=Q+SOQ,+*>S,= 3#A42,3,,= 54|365= 7#A82,7,= 98|3:9= ;#A<2,;,G= =<|3>== ?#A@2,?,L= A@|3BAP4C6:>B>bC=4DbO^EDD|{FEAGG,=HGOIHH|{JI{KFJ>}KAL} =MLAN,M,,= ON|3POAQ} =RQAS,R,= TS|3UTAV} =WVAX,W,G= YX|3ZYPQ[PUZ=4\O 4]\[>]A^} =_^A`,_,U= a`|3baAc} =dcAe,d,Z= fe|3gfAh} =ihAj,i,= kj|3lkPQmbgl=4nO 4onm>oAp} =qpAr,q,= sr|3tsAu} =vuAw,v,= xw|3yxAz} ={zA|,{,= }||3~}PQty~=4O 4>A} =A,,= |3A} =A,,= |3A} =A,,= |3PQ=4O 4>A =3A >A =3A>A =3A>A =3A>A=3A >A=3A>A=3A>A=3A>A=3A >A=3A>A=3A>A}=A,,,= |3A}=A,,= |3A}=A,,G= |3PQ=4O 4>A}=A,,U= |3A}=A,,Z= |3A}=A,,= |3PQ=4O 4>A}=A,,= |3A}=A,,= |3A}=A,,= |3PQ=4O 4>A}=A,,= |3A}=A,,= |3A}=A,,= |3PQ=4?O 4>?A =3AR >A =3 A R>  A =3  A R>  A ? =3  A R>  =4 bO 4 =4 R4 >R A =3 A c >  A =3  A c>  A =3  A c>  A ?=3  A c>  =4 bO 4   =4 c4   >c A =3  A ? >  A =3! A" ?>" ! A# =3$ # A% ?>% $ =4& bO 4' & & =4( ?4) ' ( >) =4* =4+ bO 4, + + 4- * , =4. R4/ - . >/ =40 =41 bO 42 1 1 43 0 2 =44 c45 3 4 >5 =46 =47 bO 48 7 7 49 6 8 =4: 4; 9 : >b; =4< 6OQ= < < =4> O 4? > = >? A@ >@ =4A =4B 3C A B AD >D C =4E =4F 3G E F AH >H G =4I b=4J 3K I J AL >L K AM 6=3N M AO S>O N =4P OQQ P P =QR S3S Q R AT >T S =4U OQV U U =QW S3X V W AY 6 >Y X =4Z bOQ[ Z Z =Q\ S3] [ \ A^ 6>^ ] = _ #A` =3a ` | b a Ac ,_ ,,>c b = d #Ae =3f e | g f Ah ,d ,>h g = i #Aj =3k j | l k Am ,i ,G>m l = n #Ao =3p o | q p Ar ,n ,L>r q = s #At 6 =3u t | v u Aw ,s ,U>w v = x #Ay 6=3z y | { z A| ,x ,Z>| {   } A~ =  ~ A , =   > =    A = A , = ~  ># = #A ,, =  >* = *   = #A , ,,= |3 = #A , ,= |3 = #A , ,G= |3 = #A , ,L= |3 P4 >6 = #A , ,U= |3 = #A , ,Z= |3 P^ =Q SOQ >S = #A , ,,= |3 = #A , ,= |3 = #A , ,G= |3 = #A , ,L= |3 P4 >b =4 bO^ |{ A G,= O |{ { >} A } = A , ,,= |3 A } = A , ,= |3 A } = A , ,G= |3 PQ =4 O 4 > A } = A , ,U= |3 A } = A , ,Z= |3 A } = A , ,= |3 PQ =4 O 4 > A } = A , ,= |3 A } = A , ,= |3 A } =  A , ,=   |3  PQ   =4 O 4   > A } = A , ,= |3 A } =  A , ,=   |3  A } =  A , ,=   |3  PQ    =4 O 4   > A =3  A >  A =3  A! >! A" =3# " A$ >$ # A% =3& % A' >' & A( =3) ( A* >* ) A+ =3, + A- >- , A. =3/ . A0 >0 / A1 =32 1 A3 >3 2 A4 =35 4 A6 >6 5 A7 =38 7 A9 >9 8 A: =3; : A< >< ; A= }=> = A? ,> ,,= @ ? |3A @ AB }=C B AD ,C ,= E D |3F E AG }=H G AI ,H ,G= J I |3K J PQL A F K =4M O 4N M L >N AO }=P O AQ ,P ,U= R Q |3S R AT }=U T AV ,U ,Z= W V |3X W AY }=Z Y A[ ,Z ,= \ [ |3] \ PQ^ S X ] =4_ O 4` _ ^ >` Aa }=b a Ac ,b ,= d c |3e d Af }=g f Ah ,g ,= i h |3j i Ak }=l k Am ,l ,= n m |3o n PQp e j o =4q O 4r q p >r As }=t s Au ,t ,= v u |3w v Ax }=y x Az ,y ,= { z |3| { A} }=~ } A ,~ ,=  |3 PQ w | =4 ?O 4 >? A =3 A R > A =3 A R> A =3 A R> A ? =3 A R> =4 bO 4 =4 R4 >R A =3 A c > A =3 A c> A =3 A c> A ?=3 A c> =4 bO 4 =4 c4 >c A =3 A ? > A =3 A ?> A =3 A ?> =4 bO 4 =4 ?4 > =4 =4 bO 4 4 =4 R4 > =4 =4 bO 4 4 =4 c4 > =4 =4 bO 4 4 =4 4 >b =4 6OQ =4 O 4 > A > =4 =4 3 A > =4 =4 3 A > =4 b=4 3 A > A 6=3 A S> =4 OQ =Q S3 A > =4 OQ =Q S3 A 6 > =4 bOQ =Q S3 A 6> = #A =3 | A , ,,> = #A =3 | A , ,> = #A =3 | A , ,G> = #A =3 | A , ,L> = #A 6 =3 | A , ,U> = #A 6=3  |   A , ,Z>      uuee!!8@AbatchMainInPlaceComputeSkinInPlaceCBuffer inMatricesinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6inOutVertices0inOutVertices1 inOutVertices2 inOutVertices3 inOutVertices4 inOutVertices5 inOutVertices6 # ^  GLSL.std.450main @mainu_xlatb0 gl_GlobalInvocationID ComputeSkinInPlaceCBufferg_VertCountsg_BatchOffsetsg_PoseOffsets g_poseBufferMaxIndex#u_xlatu0*u_xlatb146u_xlat1 9inOutVertices6_origX6X_type9value;inOutVertices6_origX6X ;inOutVertices6_origX6X_buf=Qu_xlat2iu_xlat3qu_xlat4tinSkin6_typetvaluevinSkin6vinSkin6_bufxu_xlati14u_xlat5inMatrices_typevalueinMatricesinMatrices_bufu_xlat6u_xlat7u_xlat8u_xlat9u_xlat10Lu_xlat11_u_xlat12pu_xlat13u_xlat14 inOutVertices5_origX5X_typevalue inOutVertices5_origX5X inOutVertices5_origX5X_buf"KinSkin5_typeKvalueMinSkin5MinSkin5_bufO inOutVertices4_origX4X_typevalueinOutVertices4_origX4X inOutVertices4_origX4X_bufinSkin4_typevalueinSkin4inSkin4_buf inOutVertices3_origX3X_typevalueinOutVertices3_origX3X inOutVertices3_origX3X_bufinSkin3_typevalueinSkin3inSkin3_buf CinOutVertices2_origX2X_typeCvalueEinOutVertices2_origX2X EinOutVertices2_origX2X_bufGpinSkin2_typepvaluerinSkin2rinSkin2_buft inOutVertices1_origX1X_typevalueinOutVertices1_origX1X inOutVertices1_origX1X_buf' inSkin1_type' value) inSkin1) inSkin1_buf+  inOutVertices0_origX0X_type value inOutVertices0_origX0X inOutVertices0_origX0X_buf  inSkin0_type value inSkin0 inSkin0_buf S u_xlat_precise_vec4V u_xlat_precise_ivec4Y u_xlat_precise_bvec4[ u_xlat_precise_uvec4G GGGH#H# H#@H#`GG"G!G8H9#G:(H;#G;G="G=!GsHt#GuHvHv#GvGx"Gx!GH#G@HH#GG"G!GH#G(H #G G""G"! GJHK#GLHMHM#GMGO"GO!GH#G(H#GG"G! GH#GHH#GG"G!GH#G(H#GG"G! GH#GHH#GG"G!GBHC#GD(HE#GEGG"GG! GoHp#GqHrHr#GrGt"Gt!GH#G(H#GG"G! G& H' #G( H) H) #G) G+ "G+ !G H #G (H #G G "G !G H #G H H #G G "G !G] ! ;     ; +   +  ; +  " ;"#;*+,3 43 54;56+ 7 8 798:9;: <;;<=+?+L;5Q+S+X+]+bg3 hg;hi+k o3;5q+ rs rtsutvu wv;wx ;3  ;5+   ; ;5;5+ + ;5+ + +;5+ + ;5;5L;5_;5p+3?;o 7  ! ;!"J rKJLKML NM;NO 7 ; r ; 7 ; r ;B 7CBDCED FE;FGo rpoqprq sr;st 7 ;& r' & ( ' ) ( * ) ;* +  7     ;  r     ;  R 4T  U T W  X W Z + \ @, ] \ 6;R S ;U V ;X Y ;Z [ A = A= >=!  A$ = %$A&= '&~ (' )%(>#)= +#A-,= .-/+.>*/=0*20121= >#A@=,>,?= A@|3BA= C#AD=,C,,= ED|3FE= G#AH=,G,= IH|3JI= K#AM=,K,L= NM|3ONP4PBFJO>6P= R#AT=,R,S= UT|3VU= W#AY=,W,X= ZY|3[Z= \#A^=,\,]= _^|3`_= a#Ac=,a,b= dc|3edP4fV[`e>Qf= j#Al=,j,k= ml|3nmAopi>pn= y#Azx,y,,= {z|3|{= }#A~x,},= ~|3= #Ax,,L= |3= #Ax,,?= |3P4|>q=4qO|AL=O|>A =A,,,= |3A =A,,= |3A =A,,L= |3Pg=4O 4>A =A,,S= |3A =A,,X= |3A =A,,]= |3Pg=4O 4>A =A,,k= |3A =A,,= |3A =A,,= |3Pg=4O 4>A =A,,= |3A =A,,= |3A =A,,= |3Pg=4O 4>Ao =3Ao >Ao =3Ao>Ao =3Ao>Ao =3Ao>Ao=3Ao >Ao=3Ao>Ao=3Ao > Ao =3  Ao >  Ao =3 Ao >Ao=3Ao>Ao=3Ao>A=A,,,= |3A=A,,= |3A =! A",!,L= #"|3$#Pg%$=4&O 4'&%>'A(=)(A*,),S= +*|3,+A-=.-A/,.,X= 0/|310A2=32A4,3,]= 54|365Pg7,16=48O 4987>9A:=;:A<,;,k= =<|3>=A?=@?AA,@,= BA|3CBAD=EDAF,E,= GF|3HGPgI>CH=4JO 4KJI>KAM=NMAO,N,= PO|3QPAR=SRAT,S,= UT|3VUAW=XWAY,X,= ZY|3[ZPg\QV[=4]LO 4^]\>L^Ao` =3a`Aob_ >baAoc =3dcAoe_>edAof =3gfAoh_>hgAoiL =3jiAok_>kj=4lqO 4mll=4n_4omn>_oAoq=3rqAosp >srAot=3utAovp>vuAow=3xwAoyp>yxAozL=3{zAo|p>|{=4}qO 4~}}=4p4~>pAo=3AoL >Ao=3AoL>Ao=3AoL>=4qO 4=4L4>=4=4qO 44=4_4>=4=4qO 44=4p4>=4=4qO 44=44>q=46Og=4O 4>Ao>=4=43Ao >=4=43Ao>=4q=43Ao>=4QO=46O 4>6=4Og=46Og3Ao>=4Og=46Og3Ao >=4qOg=46Og3Ao>=4QO=giOg>i=4Og=gi3Ao>=4Og=gi3Ao>=4qOg=gi3>= #Ao =3| A=,,,>= #Ao=3| A=,,>= #Ao=3| A=,,L>= #Ao=3| A=,,?>= #Ao =3| A=,,S>= #Ao=3| A=,,X>= #Ao=3| A=,,]>= #Ao=3| A=,,b>= #=3| A=,,k>22!A = A =     > =  A = A= ~  >#= #A,= >*=*= ##A$",#,?= %$|3&%= '#A(",',,= )(|3*)= +#A,",+,= -,|3.-= /#A0",/,L= 10|321P43&*.2>63= 4#A5",4,S= 65|376= 8#A9",8,X= :9|3;:= <#A=",<,]= >=|3?>= @#AA",@,b= BA|3CBP4D7;?C>QD= E#AF",E,k= GF|3HGAoIi>IH= P#AQO,P,,= RQ|3SR= T#AUO,T,= VU|3WV= X#AYO,X,L= ZY|3[Z= \#A]O,\,?= ^]|3_^P4`SW[_>q`=4aqObaa|cbAdL=edOfee|gfhcg>hAi =jiAk,j,,= lk|3mlAn =onAp,o,= qp|3rqAs =tsAu,t,L= vu|3wvPgxmrw=4yO 4zyx>zA{ =|{A},|,S= ~}|3~A =A,,X= |3A =A,,]= |3Pg=4O 4>A =A,,k= |3A =A,,= |3A =A,,= |3Pg=4O 4>A =A,,= |3A =A,,= |3A =A,,= |3Pg=4O 4>Ao =3Ao >Ao =3Ao>Ao =3Ao>Ao =3Ao>Ao=3Ao >Ao=3Ao>Ao=3Ao>Ao=3Ao>Ao=3Ao >Ao=3Ao>Ao=3Ao>A=A,,,= |3A=A,,= |3A=A,,L= |3Pg=4O 4>A=A,,S= |3A=A,,X= |3A=A,,]= |3Pg=4O 4>A=A,,k= |3A=A,,= |3A=A,,= |3Pg=4O 4>A= A , ,=  |3  A = A,,= |3A=A,,= |3Pg =4LO 4>LAo =3Ao_ >Ao =3Ao_>Ao  =3! Ao"_>"!Ao#L =3$#Ao%_>%$=4&qO 4'&&=4(_4)'(>_)Ao*=3+*Ao,p >,+Ao-=3.-Ao/p>/.Ao0=310Ao2p>21Ao3L=343Ao5p>54=46qO 4766=48p4978>p9Ao:=3;:Ao<L ><;Ao==3>=Ao?L>?>Ao@=3A@AoBL>BA=4CqO 4DCC=4EL4FDE>F=4G=4HqO 4IHH4JGI=4K_4LJK>L=4M=4NqO 4ONN4PMO=4Qp4RPQ>R=4S=4TqO 4UTT4VSU=4W4XVW>qX=4Y6OgZYY=4[O 4\[Z>\Ao]>]=4^=4_3`^_Aoa >a`=4b=4c3dbcAoe>ed=4fq=4g3hfgAoi>ih=4jQOkjj=4l6O 4mlk>6m=4nOgonn=4p6Ogqpp3roqAos>sr=4tOgutt=4v6Ogwvv3xuwAoy >yx=4zqOg{zz=4|6Og}||3~{}Ao>~=4QO=giOg>i=4Og=gi3Ao>=4Og=gi3Ao>=4qOg=gi3>= #Ao =3| A",,,>= #Ao=3| A",,>= #Ao=3| A",,L>= #Ao=3| A",,?>= #Ao =3| A",,S>= #Ao=3| A",,X>= #Ao=3| A",,]>= #Ao=3| A",,b>= #=3| A",,k>A = A = >=uA = A = ~  >#= #A, = >*=*= #A,,?= |3= #A,,,= |3= #A,,= |3= #A,,L= |3P4>6= #A,,S= |3= #A,,X= |3= #A,,]= |3= #A,,b= |3P4>Q= #A,,k= |3Aoi>= #A,,,= |3  = #A , ,=  |3 = #A,,L= |3= #A,,?= |3P4 >q=4qO|AL=O|>A  =! A",!,,= #"|3$#A% =&%A',&,= ('|3)(A* =+*A,,+,L= -,|3.-Pg/$).=40O 410/>1A2 =32A4,3,S= 54|365A7 =87A9,8,X= :9|3;:A< ==<A>,=,]= ?>|3@?PgA6;@=4BO 4CBA>CAD =EDAF,E,k= GF|3HGAI =JIAK,J,= LK|3MLAN =ONAP,O,= QP|3RQPgSHMR=4TO 4UTS>UAV =WVAX,W,= YX|3ZYA[ =\[A],\,= ^]|3_^A` =a`Ab,a,= cb|3dcPgeZ_d=4fO 4gfe>gAoh =3ihAoj >jiAok =3lkAom>mlAon =3onAop>poAoq =3rqAos>srAot=3utAov >vuAow=3xwAoy>yxAoz=3{zAo|>|{Ao}=3~}Ao>~Ao=3Ao >Ao=3Ao>Ao=3Ao>A=A,,,= |3A=A,,= |3A=A,,L= |3Pg=4O 4>A=A,,S= |3A=A,,X= |3A=A,,]= |3Pg=4O 4>A=A,,k= |3A=A,,= |3A=A,,= |3Pg=4O 4>A=A,,= |3A=A,,= |3A=A,,= |3Pg=4LO 4>LAo =3Ao_ >Ao =3Ao_>Ao =3Ao_>AoL =3Ao_>=4qO 4=4_4>_Ao=3Aop >Ao=3Aop>Ao=3Aop>AoL=3Aop>=4qO 4=4p4>pAo=3AoL >Ao=3AoL>Ao=3AoL>=4qO 4=4L4>=4=4qO 44=4_4>=4=4qO 44=4p4 > =4 =4 qO 4   4   =44 >q=46Og=4O 4>Ao>=4=43Ao >=4=43Ao>=4q=43Ao > =4!QO"!!=4#6O 4$#">6$=4%Og&%%=4'6Og(''3)&(Ao*>*)=4+Og,++=4-6Og.--3/,.Ao0 >0/=41qOg211=436Og4333524Ao6>65=47QO877=g9iOg:98>i:=4;Og<;;=g=i3><=Ao?>?>=4@OgA@@=gBi3CABAoD>DC=4EqOgFEE=gGi3HFG>H= I#AoJ =3KJ| LKAM,I,,>ML= N#AoO=3PO| QPAR,N,>RQ= S#AoT=3UT| VUAW,S,L>WV= X#AoY=3ZY| [ZA\,X,?>\[= ]#Ao^ =3_^| `_Aa,],S>a`= b#Aoc=3dc| edAf,b,X>fe= g#Aoh=3ih| jiAk,g,]>kj= l#Aom=3nm| onAp,l,b>po= q#=3r| srAt,q,k>tsuAv = wvAx,= yxzwy>z={}{|,|A~ = ~A,= ~  >#= #A,,= >*=*= #A,,?= |3= #A,,,= |3= #A,,= |3= #A,,L= |3P4>6= #A,,S= |3= #A,,X= |3= #A,,]= |3= #A,,b= |3P4>Q= #A,,k= |3Aoi>= #A,,,= |3= #A,,= |3= #A,,L= |3= #A,,?= |3P4>q=4qO|AL,=O|>A =A,,,= |3A =A,,= |3A =A,,L= |3Pg=4O 4>A =A,,S= |3A =A,,X= |3A =A,,]= |3Pg=4O 4>A =A,,k= |3A =A,,= |3A =A,,= |3 Pg  =4 O 4   > A  = A,,= |3A =A,,= |3A =A,,= |3Pg=4O 4>Ao =3 Ao! >! Ao" =3#"Ao$>$#Ao% =3&%Ao'>'&Ao( =3)(Ao*>*)Ao+=3,+Ao- >-,Ao.=3/.Ao0>0/Ao1=321Ao3>32Ao4=354Ao6>65Ao7=387Ao9 >98Ao:=3;:Ao<><;Ao==3>=Ao?>?>A@=A@AB,A,,= CB|3DCAE=FEAG,F,= HG|3IHAJ=KJAL,K,L= ML|3NMPgODIN=4PO 4QPO>QAR=SRAT,S,S= UT|3VUAW=XWAY,X,X= ZY|3[ZA\=]\A^,],]= _^|3`_PgaV[`=4bO 4cba>cAd=edAf,e,k= gf|3hgAi=jiAk,j,= lk|3mlAn=onAp,o,= qp|3rqPgshmr=4tO 4uts>uAv=wvAx,w,= yx|3zyA{=|{A},|,= ~}|3~A=A,,= |3Pgz=4LO 4>LAo =3Ao_ >Ao =3Ao_>Ao =3Ao_>AoL =3Ao_>=4qO 4=4_4>_Ao=3Aop >Ao=3Aop>Ao=3Aop>AoL=3Aop>=4qO 4=4p4>pAo=3AoL >Ao=3AoL>Ao=3AoL>=4qO 4=4L4>=4=4qO 44=4_4>=4=4qO 44=4p4>=4=4qO 44=44>q=46Og=4O 4>Ao>=4=43Ao >=4=43Ao>=4q=43Ao>=4QO=46O 4>6=4Og=46Og3Ao>=4Og=46Og3Ao >=4qOg=46Og3Ao>=4QO=giOg>i=4Og=gi3Ao>=4Og=gi3Ao>=4qOg=gi3>= #Ao =3| A,,,>= #Ao=3| A ,,> = #Ao =3  |  A, ,L> = #Ao=3| A,,?>= #Ao =3| A,,S>= #Ao=3| A,,X>= #Ao=3 | ! A",,]>"!= ##Ao$=3%$| &%A',#,b>'&= (#=3)| *)A+,(,k>+*},A- = .-A/,= 0/1.0>1=24233A5 = 65A7,= 87~ 98 :69>#:= ;#A<,,= =<>;=>*>=?*A?@A@= H#AIG,H,?= JI|3KJ= L#AMG,L,,= NM|3ON= P#AQG,P,= RQ|3SR= T#AUG,T,L= VU|3WVP4XKOSW>6X= Y#AZG,Y,S= [Z|3\[= ]#A^G,],X= _^|3`_= a#AbG,a,]= cb|3dc= e#AfG,e,b= gf|3hgP4i\`dh>Qi= j#AkG,j,k= lk|3mlAoni>nm= u#Avt,u,,= wv|3xw= y#Azt,y,= {z|3|{= }#A~t,},L= ~|3= #At,,?= |3P4x|>q=4qO|AL,=O|>A =A,,,= |3A =A,,= |3A =A,,L= |3Pg=4O 4>A =A,,S= |3A =A,,X= |3A =A,,]= |3Pg=4O 4>A =A,,k= |3A =A,,= |3A =A,,= |3Pg=4O 4>A =A,,= |3A =A,,= |3A =A,,= |3Pg=4O 4>Ao =3Ao >Ao =3Ao>Ao =3Ao>Ao =3Ao>Ao=3Ao >Ao=3Ao>Ao=3Ao>Ao=3Ao>Ao=3Ao >Ao=3Ao>Ao=3Ao>A=A,,,= |3A=A,,= |3A=A,,L= |3Pg=4O 4>A =  A , ,S=  |3  A=A,,X= |3A=A,,]= |3Pg =4O 4>A=A,,k= |3A =! A",!,= #"|3$#A%=&%A',&,= ('|3)(Pg*$)=4+O 4,+*>,A-=.-A/,.,= 0/|310A2=32A4,3,= 54|365A7=87A9,8,= :9|3;:Pg<16;=4=LO 4>=<>L>Ao? =3@?AoA_ >A@AoB =3CBAoD_>DCAoE =3FEAoG_>GFAoHL =3IHAoJ_>JI=4KqO 4LKK=4M_4NLM>_NAoO=3POAoQp >QPAoR=3SRAoTp>TSAoU=3VUAoWp>WVAoXL=3YXAoZp>ZY=4[qO 4\[[=4]p4^\]>p^Ao_=3`_AoaL >a`Aob=3cbAodL>dcAoe=3feAogL>gf=4hqO 4ihh=4jL4kij>k=4l=4mqO 4nmm4oln=4p_4qop>q=4r=4sqO 4tss4urt=4vp4wuv>w=4x=4yqO 4zyy4{xz=4|4}{|>q}=4~6Og~~=4O 4>Ao>=4=43Ao >=4=43Ao>=4q=43Ao>=4QO=46O 4>6=4Og=46Og3Ao>=4Og=46Og3Ao >=4qOg=46Og3Ao>=4QO=giOg>i=4Og=gi3Ao>=4Og=gi3Ao>=4qOg=gi3>= #Ao =3| AG,,,>= #Ao=3| AG,,>= #Ao=3| AG,,L>= #Ao=3| AG,,?>= #Ao =3| AG,,S>= #Ao=3| AG,,X>= #Ao=3| AG,,]>= #Ao=3| AG,,b>= #=3| AG,,k>AA4A = A,= >= A = A,= ~  >#= #A,,= >*=*= #A ,,?=  |3  =  #A , ,,=   |3  =  #A , ,=  |3 = #A , ,L= |3 P4    >6 =  #A , ,S=   |3  =  #A , ,X=   |3  =  #A , ,]=   |3  =  #A , ,b=   |3  P4     >Q = ! #A" ,! ,k= # " |3$ # Ao% i>% $ = , #A- + ,, ,,= . - |3/ . = 0 #A1 + ,0 ,= 2 1 |33 2 = 4 #A5 + ,4 ,L= 6 5 |37 6 = 8 #A9 + ,8 ,?= : 9 |3; : P4< / 3 7 ; >q< =4= qO> = = |? > A@ L,=A @ OB A A |C B D ? C >D AE =F E AG ,F ,,= H G |3I H AJ =K J AL ,K ,= M L |3N M AO =P O AQ ,P ,L= R Q |3S R PgT I N S =4U O 4V U T >V AW =X W AY ,X ,S= Z Y |3[ Z A\ =] \ A^ ,] ,X= _ ^ |3` _ Aa =b a Ac ,b ,]= d c |3e d Pgf [ ` e =4g O 4h g f >h Ai =j i Ak ,j ,k= l k |3m l An =o n Ap ,o ,= q p |3r q As =t s Au ,t ,= v u |3w v Pgx m r w =4y O 4z y x >z A{ =| { A} ,| ,= ~ } |3 ~ A = A , ,= |3 A = A , ,= |3 Pg  =4 O 4 > Ao =3 Ao > Ao =3 Ao > Ao =3 Ao > Ao =3 Ao > Ao =3 Ao  > Ao =3 Ao > Ao =3 Ao > Ao =3 Ao > Ao =3 Ao > Ao =3 Ao > Ao =3 Ao > A = A , ,,= |3 A = A , ,= |3 A = A , ,L= |3 Pg =4 O 4 > A = A , ,S= |3 A = A , ,X= |3 A = A , ,]= |3 Pg =4 O 4 > A = A , ,k= |3 A = A , ,= |3 A = A , ,= |3 Pg =4 O 4 > A = A , ,= |3 A = A , ,= |3 A = A , ,= |3 Pg =4 LO 4 >L Ao =3 Ao _ > Ao =3 Ao _> Ao =3 Ao _> Ao L =3 Ao _> =4 qO 4   =4 _4   >_ Ao =3  Ao p >  Ao =3 Ao p> Ao =3 Ao p> Ao L=3  Ao p>  =4 qO 4   =4 p4   >p Ao =3  Ao L >  Ao =3  Ao L>  Ao =3  Ao L>  =4 qO 4   =4! L4" ! >" =4# =4$ qO 4% $ $ 4& # % =4' _4( & ' >( =4) =4* qO 4+ * * 4, ) + =4- p4. , - >. =4/ =40 qO 41 0 0 42 / 1 =43 44 2 3 >q4 =45 6Og6 5 5 =47 O 48 7 6 >8 Ao9 >9 =4: =4; 3< : ; Ao= >= < =4> =4? 3@ > ? AoA >A @ =4B q=4C 3D B C AoE >E D =4F QOG F F =4H 6O 4I H G >6I =4J OgK J J =4L 6OgM L L 3N K M AoO >O N =4P OgQ P P =4R 6OgS R R 3T Q S AoU >U T =4V qOgW V V =4X 6OgY X X 3Z W Y Ao[ >[ Z =4\ QO] \ \ =g^ iOg_ ^ ] >i_ =4` Oga ` ` =gb i3c a b Aod >d c =4e Ogf e e =gg i3h f g Aoi >i h =4j qOgk j j =gl i3m k l >m = n #Aoo =3p o | q p Ar ,n ,,>r q = s #Aot =3u t | v u Aw ,s ,>w v = x #Aoy =3z y | { z A| ,x ,L>| { = } #Ao~ =3 ~ |  A ,} ,?> = #Ao =3 | A , ,S> = #Ao =3 | A , ,X> = #Ao =3 | A , ,]> = #Ao =3 | A , ,b> = #=3 | A , ,k>  A = A , =  > =    A = A , = ~  ># = #A ,, =  >* = *   = #A , ,?= |3 = #A , ,,= |3 = #A , ,= |3 = #A , ,L= |3 P4 >6 = #A , ,S= |3 = #A , ,X= |3 = #A , ,]= |3 = #A , ,b= |3 P4 >Q = #A , ,k= |3 Ao i> = #A , ,,= |3 = #A , ,= |3 = #A , ,L= |3 = #A , ,?= |3 P4 >q =4 qO | A L,= O |  > A = A , ,,= |3 A =  A , ,=   |3  A =  A , ,L=  |3 Pg  =4 O 4 > A =  A , ,S=   |3  A =  A , ,X=   |3  A =  A , ,]=   |3  Pg    =4 O 4   > A =! A" ,! ,k= # " |3$ # A% =& % A' ,& ,= ( ' |3) ( A* =+ * A, ,+ ,= - , |3. - Pg/ $ ) . =40 O 41 0 / >1 A2 =3 2 A4 ,3 ,= 5 4 |36 5 A7 =8 7 A9 ,8 ,= : 9 |3; : A< == < A> ,= ,= ? > |3@ ? PgA 6 ; @ =4B O 4C B A >C AoD =3E D AoF >F E AoG =3H G AoI >I H AoJ =3K J AoL >L K AoM =3N M AoO >O N AoP =3Q P AoR  >R Q AoS =3T S AoU >U T AoV =3W V AoX >X W AoY =3Z Y Ao[ >[ Z Ao\ =3] \ Ao^ >^ ] Ao_ =3` _ Aoa >a ` Aob =3c b Aod >d c Ae =f e Ag ,f ,,= h g |3i h Aj =k j Al ,k ,= m l |3n m Ao =p o Aq ,p ,L= r q |3s r Pgt i n s =4u O 4v u t >v Aw =x w Ay ,x ,S= z y |3{ z A| =} | A~ ,} ,X=  ~ |3  A = A , ,]= |3 Pg { =4 O 4 > A = A , ,k= |3 A = A , ,= |3 A = A , ,= |3 Pg =4 O 4 > A = A , ,= |3 A = A , ,= |3 A = A , ,= |3 Pg =4 LO 4 >L Ao =3 Ao _ > Ao =3 Ao _> Ao =3 Ao _> Ao L =3 Ao _> =4 qO 4 =4 _4 >_ Ao =3 Ao p > Ao =3 Ao p> Ao =3 Ao p> Ao L=3 Ao p> =4 qO 4 =4 p4 >p Ao =3 Ao L > Ao =3 Ao L> Ao =3 Ao L> =4 qO 4 =4 L4 > =4 =4 qO 4 4 =4 _4 > =4 =4 qO 4 4 =4 p4 > =4 =4 qO 4 4 =4 4 >q =4 6Og =4 O 4 > Ao > =4 =4 3 Ao > =4 =4 3 Ao > =4 q=4 3 Ao > =4 QO =4 6O 4 >6 =4 Og   =4 6Og   3   Ao >  =4 Og   =4 6Og 3  Ao > =4 qOg =4 6Og   3   Ao >  =4 QO   =g iOg   >i =4 Og   =g i3   Ao >  =4 Og   =g i3   Ao >  =4! qOg" ! ! =g# i3$ " # >$ = % #Ao& =3' & | ( ' A) ,% ,,>) ( = * #Ao+ =3, + | - , A. ,* ,>. - = / #Ao0 =31 0 | 2 1 A3 ,/ ,L>3 2 = 4 #Ao5 =36 5 | 7 6 A8 ,4 ,?>8 7 = 9 #Ao: =3; : | < ; A= ,9 ,S>= < = > #Ao? =3@ ? | A @ AB ,> ,X>B A = C #AoD =3E D | F E AG ,C ,]>G F = H #AoI =3J I | K J AL ,H ,b>L K = M #=3N | O N AP ,M ,k>P O     44}}!!8@AbatchMainInPlaceComputeSkinInPlaceCBuffer inMatricesinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6inOutVertices0inOutVertices1 inOutVertices2 inOutVertices3 inOutVertices4 inOutVertices5 inOutVertices6y#  GLSL.std.450main @mainu_xlatb0 gl_GlobalInvocationID ComputeSkinInPlaceCBufferg_VertCountsg_BatchOffsetsg_PoseOffsets g_poseBufferMaxIndex#u_xlatu0*u_xlatb126u_xlat1 9inOutVertices6_origX6X_type9value;inOutVertices6_origX6X ;inOutVertices6_origX6X_buf=Ou_xlat2RinSkin6_typeRvalueTinSkin6TinSkin6_bufVku_xlati3u_xlat12inMatrices_typevalueinMatricesinMatrices_bufu_xlat4u_xlat5u_xlat6u_xlat7u_xlat8:u_xlat9Mu_xlat10^u_xlat11)u_xlat3 inOutVertices5_origX5X_typevalueinOutVertices5_origX5X inOutVertices5_origX5X_bufinSkin5_typevalueinSkin5inSkin5_buf inOutVertices4_origX4X_typevalue inOutVertices4_origX4X inOutVertices4_origX4X_buf inSkin4_typevalueinSkin4inSkin4_buf! [inOutVertices3_origX3X_type[value]inOutVertices3_origX3X ]inOutVertices3_origX3X_buf_pinSkin3_typepvaluerinSkin3rinSkin3_buft inOutVertices2_origX2X_type value inOutVertices2_origX2X inOutVertices2_origX2X_buf  inSkin2_type value inSkin2 inSkin2_buf   inOutVertices1_origX1X_type value inOutVertices1_origX1X  inOutVertices1_origX1X_buf  inSkin1_type value inSkin1 inSkin1_buf  TinOutVertices0_origX0X_typeTvalueVinOutVertices0_origX0X VinOutVertices0_origX0X_bufXiinSkin0_typeivaluekinSkin0kinSkin0_bufmu_xlat_precise_vec4u_xlat_precise_ivec4u_xlat_precise_bvec4u_xlat_precise_uvec4G GGGH#H# H#@H#`GG"G!G8H9#G: H;#G;G="G=!GQHR#GS HTHT#GTGV"GV!GH#G@HH#GG"G!GH#G H#GG"G! GH#G HH#GG"G!GH#G  H #G G "G ! GH#G HH#GG!"G!!GZH[#G\ H]#G]G_"G_! GoHp#Gq HrHr#GrGt"Gt!G H #G  H #G G "G ! G H #G  H H #G G "G !G H #G  H #G G "G ! G H #G  H H #G G "G !GSHT#GU HV#GVGX"GX!GhHi#Gj HkHk#GkGm"Gm!G ! ;     ; +   +  ; +  " ;"#;*+,3 43 54;56+ 78 798:9;: <;;<=+GK3;5O+ PQ PRQSRTS UT;UV+di ji;jk+m+r+w+|  K;+   ; ;5;5++ + ;5+ + +;5 3+ ;5;5:;5M;5^;5)+3? 7 ; P ; 7      ;   P  ; !Z 7[Z\[]\ ^];^_o Ppoqprq sr;st 7     ;  P     ;  7       ;   P        ;  S 7TSUTVU WV;WXh Pihjikj lk;lm 4 i  + @, 6;;;;A = A= >=!  A$ = %$A&= '&~ (' )%(>#)= +#A-,= .-/+.>*/=0*20121= >#A?=,>,,= @?|3A@= B#AC=,B,= DC|3ED= F#AH=,F,G= IH|3JIPKLAEJ=4M6O 4NML>6N= W#AXV,W,,= YX|3ZY= [#A\V,[,= ]\|3^]= _#A`V,_,G= a`|3ba= c#AeV,c,d= fe|3gfP4hZ^bg>Oh= l#AnV,l,m= on|po= q#AsV,q,r= ts|ut= v#AxV,v,w= yx|zy= {#A}V,{,|= ~}|~Pipuz>k=ikAG=O |ii>kAk =A,,,= |3Ak =A,,= |3Ak =A,,G= |3PK>Ak =A,,m= |3Ak =A,,r= |3Ak =A,,w= |3PK=4O 4>Ak =A,,= |3Ak =A,,= |3Ak =A,,= |3PK=4O 4>Ak =A,,= |3Ak =A,,= |3Ak =A,,= |3PK=4O 4>A =3A >A =3A>A =3A>A =3A7>A=3A >A=3A>A=3A>A=3A7>A=3A >A=3A>A=3A>Ak=A,,,= |3  A k=  A , ,=  |3Ak=A,,G= |3PK >Ak=A,,m= |3Ak=A,,r= |3A k=! A",!,w= #"|3$#PK%$=4&O 4'&%>'A(k=)(A*,),= +*|3,+A-k=.-A/,.,= 0/|310A2k=32A4,3,= 54|365PK7,16=48O 4987>9A;k=<;A=,<,= >=|3?>A@k=A@AB,A,= CB|3DCAEk=FEAG,F,= HG|3IHPKJ?DI=4K:O 4LKJ>:LAN =3ONAPM >POAQ =3RQASM>SRAT =3UTAVM>VUAW: =3XWAYM7>YX=4ZOO 4[ZZ=4\M4][\>M]A_=3`_Aa^ >a`Ab=3cbAd^>dcAe=3feAg^>gfAh:=3ihAj^7>ji=4kOO 4lkk=4m^4nlm>^nAo=3poAq: >qpAr=3srAt:>tsAu=3vuAw:>wv=4xOO 4yxx=4z:4{yz>{=4|=4}OO 4~}}4|~=4M4>=4=4OO 44=4^4>=4=4OO 44=44>Ak=A,,,= |3Ak=A,,= |3Ak=A,,G= |3PK>Ak=A,,m= |3Ak=A,,r= |3Ak=A,,w= |3PK=4O 4>Ak=A,,= |3Ak=A,,= |3Ak=A,,= |3PK=4O 4>Ak=A,,= |3Ak=A,,= |3Ak=A,,= |3PK=4:O 4>:A =3AM >A =3AM>A =3AM>A: =3AM7>A=3A^ >A=3A^>A=3A^>A:=3A^7>A=3A: >A=3A:>A=3A:>=4M=4OO 44=44>=4^=4OO 44=44>=4:=4OO 44=44>Ak7=A ,,,=  |3  A k7=  A, ,= |3Ak7=A,,G= |3PK >Ak7=A,,m= |3Ak7=A,,r= |3 A!k7="!A#,",w= $#|3%$PK& %=4'OO 4('&>O(A*k7=+*A,,+,= -,|3.-A/k7=0/A1,0,= 21|332A4k7=54A6,5,= 76|387PK9.38=4:)O 4;:9>);A<k7==<A>,=,= ?>|3@?AAk7=BAAC,B,= DC|3EDAFk7=GFAH,G,= IH|3JIPKK@EJ=4LO 4MLK>MAN =3ONAP >POAQO =3RQAS>SRAT) =3UTAV>VUAW =3XWAY7>YXAZ=3[ZA\: >\[A]O=3^]A_:>_^A`)=3a`Ab:>baAc=3dcAe:7>edAf=3gfAh >hgAiO=3jiAk>kjAl)=3mlAn>nm=4o=4pOO 4qpp4roq=4s4trs>)t=4u:=4vOO 4wvv4xuw=4y4zxy>z=4{=4|OO 4}||4~{}=44~>OA67>=4)=463A) >=4=463A)>=4O=463A)>= #A) =3| A=,,,>= #A)=3| A=,,>= #A)=3| A=,,G>22!A = A= >=A = A= ~  >#= #A,= >*=*= #A,,,= |3= #A,,= |3= #A,,G= |3PK=46O 4>6= #A,,,= |3= #A,,= |3= #A,,G= |3= #A,,d= |3P4>O= #A,,m= |= #A,,r= |= #A,,w= |= #A,,|= |Pi>k=ikAG=O |ii>kAk =A,,,= |3Ak =A,,= |3Ak =A,,G= |3PK>Ak =A ,,m=  |3  A k =  A, ,r= |3Ak =A,,w= |3PK =4O 4>Ak =A,,= |3Ak =A ,,= ! |3"!A#k =$#A%,$,= &%|3'&PK("'=4)O 4*)(>*A+k =,+A-,,,= .-|3/.A0k =10A2,1,= 32|343A5k =65A7,6,= 87|398PK:/49=4;O 4<;:><A= =3>=A? >?>A@ =3A@AB>BAAC =3DCAE>EDAF =3GFAH7>HGAI=3JIAK >KJAL=3MLAN>NMAO=3POAQ>QPAR=3SRAT7>TSAU=3VUAW >WVAX=3YXAZ>ZYA[=3\[A]>]\A^k=_^A`,_,,= a`|3baAck=dcAe,d,= fe|3gfAhk=ihAj,i,G= kj|3lkPKmbgl>mAnk=onAp,o,m= qp|3rqAsk=tsAu,t,r= vu|3wvAxk=yxAz,y,w= {z|3|{PK}rw|=4~O 4~}>Ak=A,,= |3Ak=A,,= |3Ak=A,,= |3PK=4O 4>Ak=A,,= |3Ak=A,,= |3Ak=A,,= |3PK=4:O 4>:A =3AM >A =3AM>A =3AM>A: =3AM7>=4OO 4=4M4>MA=3A^ >A=3A^>A=3A^>A:=3A^7>=4OO 4=4^4>^A=3A: >A=3A:>A=3A:>=4OO 4=4:4>=4=4OO 44=4M4>=4=4OO 44=4^4>=4=4OO 44=44>Ak=A,,,= |3Ak=A,,= |3Ak=A,,G= |3PK>Ak=A,,m= |3Ak=A,,r= |3Ak=A,,w= |3PK=4O 4>Ak=A,,= |3 A k=  A , ,=  |3 Ak=A,,= |3PK =4O 4>Ak=A,,= |3Ak=A,,= |3 A!k="!A#,",= $#|3%$PK& %=4':O 4('&>:(A) =3*)A+M >+*A, =3-,A.M>.-A/ =30/A1M>10A2: =332A4M7>43A5=365A7^ >76A8=398A:^>:9A;=3<;A=^>=<A>:=3?>A@^7>@?AA=3BAAC: >CBAD=3EDAF:>FEAG=3HGAI:>IH=4JM=4KOO 4LKK4MJL=4N4OMN>O=4P^=4QOO 4RQQ4SPR=4T4UST>U=4V:=4WOO 4XWW4YVX=4Z4[YZ>[A\k7=]\A^,],,= _^|3`_Aak7=baAc,b,= dc|3edAfk7=gfAh,g,G= ih|3jiPKk`ej>kAlk7=mlAn,m,m= on|3poAqk7=rqAs,r,r= ts|3utAvk7=wvAx,w,w= yx|3zyPK{puz=4|OO 4}|{>O}A~k7=~A,,= |3Ak7=A,,= |3Ak7=A,,= |3PK=4)O 4>)Ak7=A,,= |3Ak7=A,,= |3Ak7=A,,= |3PK=4O 4>A =3A >AO =3A>A) =3A>A =3A7>A=3A: >AO=3A:>A)=3A:>A=3A:7>A=3A >AO=3A>A)=3A>=4=4OO 44=44>)=4:=4OO 44=44>=4=4OO 44=44>OA67>=4)=463A) >=4=463A)>=4O=463A)>= #A) =3| A,,,>= #A)=3| A,,>= #A)=3| A,,G>A = A = >=DA = A = ~  >#= #A, = >*=*= #A , ,,= |3= #A ,,= |3= #A ,,G= |3PK=46O 4>6= "#A#!,",,= $#|3%$= &#A'!,&,= ('|3)(= *#A+!,*,G= ,+|3-,= .#A/!,.,d= 0/|310P42%)-1>O2= 3#A4!,3,m= 54|65= 7#A8!,7,r= 98|:9= ;#A<!,;,w= =<|>== ?#A@!,?,|= A@|BAPiC6:>B>kC=iDkAEG=FEO GFF|iHGiIDH>kIAJk =KJAL,K,,= ML|3NMAOk =POAQ,P,= RQ|3SRATk =UTAV,U,G= WV|3XWPKYNSX>YAZk =[ZA\,[,m= ]\|3^]A_k =`_Aa,`,r= ba|3cbAdk =edAf,e,w= gf|3hgPKi^ch=4jO 4kji>kAlk =mlAn,m,= on|3poAqk =rqAs,r,= ts|3utAvk =wvAx,w,= yx|3zyPK{puz=4|O 4}|{>}A~k =~A,,= |3Ak =A,,= |3Ak =A,,= |3PK=4O 4>A =3A >A =3A>A =3A>A =3A7>A=3A >A=3A>A=3A>A=3A7>A=3A >A=3A>A=3A>Ak=A,,,= |3Ak=A,,= |3Ak=A,,G= |3PK>Ak=A,,m= |3Ak=A,,r= |3Ak=A,,w= |3PK=4O 4>Ak=A,,= |3Ak=A,,= |3Ak=A,,= |3PK=4O 4>Ak=A,,= |3Ak=A,,= |3Ak=A,,= |3PK=4:O 4>:A =3AM >A =3AM>A =3AM>A: =3AM7>=4OO 4=4M4>MA=3A ^ > A =3  A ^>  A =3 A^>A:=3A^7>=4OO 4=4^4>^A=3A: >A=3A:>A=3A:>=4 OO 4!  =4":4#!">#=4$=4%OO 4&%%4'$&=4(M4)'(>)=4*=4+OO 4,++4-*,=4.^4/-.>/=40=41OO 42114302=444534>5A6k=76A8,7,,= 98|3:9A;k=<;A=,<,= >=|3?>A@k=A@AB,A,G= CB|3DCPKE:?D>EAFk=GFAH,G,m= IH|3JIAKk=LKAM,L,r= NM|3ONAPk=QPAR,Q,w= SR|3TSPKUJOT=4VO 4WVU>WAXk=YXAZ,Y,= [Z|3\[A]k=^]A_,^,= `_|3a`Abk=cbAd,c,= ed|3fePKg\af=4hO 4ihg>iAjk=kjAl,k,= ml|3nmAok=poAq,p,= rq|3srAtk=utAv,u,= wv|3xwPKynsx=4z:O 4{zy>:{A| =3}|A~M >~}A =3AM>A =3AM>A: =3AM7>A=3A^ >A=3A^>A=3A^>A:=3A^7>A=3A: >A=3A:>A=3A:>=4M=4OO 44=44>=4^=4OO 44=44>=4:=4OO 44=44>Ak7=A,,,= |3Ak7=A,,= |3Ak7=A,,G= |3PK>Ak7=A,,m= |3Ak7=A,,r= |3Ak7=A,,w= |3PK=4OO 4>OAk7=A,,= |3Ak7=A,,= |3Ak7=A,,= |3PK=4)O 4>)Ak7=A,,= |3Ak7=A,,= |3Ak7=A,,= |3PK=4O 4>A =3A >AO =3A>A) =3A>A =3A7>A=3A: >AO=3A:>A)=3A :> A =3  A :7>  A =3 A >AO=3A>A)=3A>=4=4OO 44=44>)=4:=4OO 44=4 4! >!=4"=4#OO 4$##4%"$=4&4'%&>O'A(67>(=4))=4*63+)*A,) >,+=4-=4.63/-.A0)>0/=41O=4263312A4)>43= 5#A6) =376| 87A9 ,5,,>98= :#A;)=3<;| =<A> ,:,>>== ?#A@)=3A@| BAAC ,?,G>CBDAE = FEAG,7= HGIFH>I=JLJK KAM = NMAO,7= PO~ QP RNQ>#R= S#AT,,7= UTVSU>*V=W*YWXYX= `#Aa_,`,,= ba|3cb= d#Ae_,d,= fe|3gf= h#Ai_,h,G= ji|3kjPKlcgk=4m6O 4nml>6n= u#Avt,u,,= wv|3xw= y#Azt,y,= {z|3|{= }#A~t,},G= ~|3= #At,,d= |3P4x|>O= #At,,m= |= #At,,r= |= #At,,w= |= #At,,|= |Pi>k=ikAG,=O |ii>kAk =A,,,= |3Ak =A,,= |3Ak =A,,G= |3PK>Ak =A,,m= |3Ak =A,,r= |3Ak =A,,w= |3PK=4O 4>Ak =A,,= |3Ak =A,,= |3Ak =A,,= |3PK=4O 4>Ak =A,,= |3Ak =A,,= |3Ak =A,,= |3PK=4O 4>A =3A >A =3A>A =3A>A =3A7>A=3A >A=3A>A=3A>A=3A7>A=3A >A=3A>A=3A>Ak=A,,,= |3A k=  A , ,=  |3  Ak=A,,G= |3PK >Ak=A,,m= |3Ak=A,,r= |3Ak=A ,,w= ! |3"!PK#"=4$O 4%$#>%A&k='&A(,',= )(|3*)A+k=,+A-,,,= .-|3/.A0k=10A2,1,= 32|343PK5*/4=46O 4765>7A8k=98A:,9,= ;:|3<;A=k=>=A?,>,= @?|3A@ABk=CBAD,C,= ED|3FEPKG<AF=4H:O 4IHG>:IAJ =3KJALM >LKAM =3NMAOM>ONAP =3QPARM>RQAS: =3TSAUM7>UT=4VOO 4WVV=4XM4YWX>MYAZ=3[ZA\^ >\[A]=3^]A_^>_^A`=3a`Ab^>baAc:=3dcAe^7>ed=4fOO 4gff=4h^4igh>^iAj=3kjAl: >lkAm=3nmAo:>onAp=3qpAr:>rq=4sOO 4tss=4u:4vtu>v=4w=4xOO 4yxx4zwy=4{M4|z{>|=4}=4~OO 4~~4}=4^4>=4=4OO 44=44>Ak=A,,,= |3Ak=A,,= |3Ak=A,,G= |3PK>Ak=A,,m= |3Ak=A,,r= |3Ak=A,,w= |3PK=4O 4>Ak=A,,= |3Ak=A,,= |3Ak=A,,= |3PK=4O 4>Ak=A,,= |3Ak=A,,= |3Ak=A,,= |3PK=4:O 4>:A =3AM >A =3AM>A =3AM>A: =3AM7>A=3A^ >A=3A^>A=3A^>A:=3A^7>A=3A: >A=3A:>A=3A:>=4M=4OO 44=44>=4^=4OO 44=44>=4:=4OO 44=4 4  > A k7=  A , ,,=   |3  A k7=  A , ,= |3 A k7= A , ,G=   |3  PK   > A k7=  A , ,m=   |3  A k7=  A , ,r=   |3  A k7=  A , ,w=   |3  PK!   =4" OO 4# " ! >O# A$ k7=% $ A& ,% ,= ' & |3( ' A) k7=* ) A+ ,* ,= , + |3- , A. k7=/ . A0 ,/ ,= 1 0 |32 1 PK3 ( - 2 =44 )O 45 4 3 >)5 A6 k7=7 6 A8 ,7 ,= 9 8 |3: 9 A; k7=< ; A= ,< ,= > = |3? > A@ k7=A @ AB ,A ,= C B |3D C PKE : ? D =4F O 4G F E >G AH =3I H AJ >J I AK O =3L K AM >M L AN ) =3O N AP >P O AQ =3R Q AS 7>S R AT =3U T AV : >V U AW O=3X W AY :>Y X AZ )=3[ Z A\ :>\ [ A] =3^ ] A_ :7>_ ^ A` =3a ` Ab >b a Ac O=3d c Ae >e d Af )=3g f Ah >h g =4i =4j OO 4k j j 4l i k =4m 4n l m >)n =4o :=4p OO 4q p p 4r o q =4s 4t r s >t =4u =4v OO 4w v v 4x u w =4y 4z x y >Oz A{ 67>{ =4| )=4} 63~ | } A ) > ~ =4 =4 63 A )> =4 O=4 63 A )> = #A ) =3 | A _, ,,> = #A )=3 | A _, ,> = #A )=3 | A _, ,G> YYL A = A ,=  > =    A = A ,= ~  ># = #A ,,=  >* = *   = #A , ,,= |3 = #A , ,= |3 = #A , ,G= |3 PK =4 6O 4 >6 = #A , ,,= |3 = #A , ,= |3 = #A , ,G= |3 = #A , ,d= |3 P4 >O = #A , ,m= | = #A , ,r= | = #A , ,w= | = #A , ,|= | Pi >k =i kA G,= O  |i i >k A k = A , ,,= |3 A k = A , ,= |3 A k = A , ,G= |3 PK > A k = A , ,m=   |3  A k =  A , ,r=   |3  A k = A , ,w= |3 PK   =4 O 4   > A k =  A , ,=   |3  A k =  A , ,=   |3  A k =  A , ,=   |3  PK!   =4" O 4# " ! ># A$ k =% $ A& ,% ,= ' & |3( ' A) k =* ) A+ ,* ,= , + |3- , A. k =/ . A0 ,/ ,= 1 0 |32 1 PK3 ( - 2 =44 O 45 4 3 >5 A6 =37 6 A8 >8 7 A9 =3: 9 A; >; : A< =3= < A> >> = A? =3@ ? AA 7>A @ AB =3C B AD >D C AE =3F E AG >G F AH =3I H AJ >J I AK =3L K AM 7>M L AN =3O N AP >P O AQ =3R Q AS >S R AT =3U T AV >V U AW k=X W AY ,X ,,= Z Y |3[ Z A\ k=] \ A^ ,] ,= _ ^ |3` _ Aa k=b a Ac ,b ,G= d c |3e d PKf [ ` e >f Ag k=h g Ai ,h ,m= j i |3k j Al k=m l An ,m ,r= o n |3p o Aq k=r q As ,r ,w= t s |3u t PKv k p u =4w O 4x w v >x Ay k=z y A{ ,z ,= | { |3} | A~ k= ~ A , ,= |3 A k= A , ,= |3 PK } =4 O 4 > A k= A , ,= |3 A k= A , ,= |3 A k= A , ,= |3 PK =4 :O 4 >: A =3 A M > A =3 A M> A =3 A M> A : =3 A M7> =4 OO 4 =4 M4 >M A =3 A ^ > A =3 A ^> A =3 A ^> A :=3 A ^7> =4 OO 4 =4 ^4 >^ A =3 A : > A =3 A :> A =3 A :> =4 OO 4 =4 :4 > =4 =4 OO 4 4 =4 M4 > =4 =4 OO 4 4 =4 ^4 > =4 =4 OO 4 4 =4 4 > A k= A , ,,= |3 A k= A , ,= |3 A k= A , ,G= |3 PK > A k= A , ,m= |3 A k= A , ,r= |3 A k= A , ,w= |3 PK =4 O 4 > A k= A , ,=  |3  A k=  A , ,=   |3  A k=  A , ,= |3 PK   =4 O 4  > A k=  A , ,=   |3  A k=  A , ,=   |3  A k=  A , ,=   |3  PK    =4 :O 4!  >:! A" =3# " A$ M >$ # A% =3& % A' M>' & A( =3) ( A* M>* ) A+ : =3, + A- M7>- , A. =3/ . A0 ^ >0 / A1 =32 1 A3 ^>3 2 A4 =35 4 A6 ^>6 5 A7 :=38 7 A9 ^7>9 8 A: =3; : A< : >< ; A= =3> = A? :>? > A@ =3A @ AB :>B A =4C M=4D OO 4E D D 4F C E =4G 4H F G >H =4I ^=4J OO 4K J J 4L I K =4M 4N L M >N =4O :=4P OO 4Q P P 4R O Q =4S 4T R S >T AU k7=V U AW ,V ,,= X W |3Y X AZ k7=[ Z A\ ,[ ,= ] \ |3^ ] A_ k7=` _ Aa ,` ,G= b a |3c b PKd Y ^ c >d Ae k7=f e Ag ,f ,m= h g |3i h Aj k7=k j Al ,k ,r= m l |3n m Ao k7=p o Aq ,p ,w= r q |3s r PKt i n s =4u OO 4v u t >Ov Aw k7=x w Ay ,x ,= z y |3{ z A| k7=} | A~ ,} ,=  ~ |3  A k7= A , ,= |3 PK { =4 )O 4 >) A k7= A , ,= |3 A k7= A , ,= |3 A k7= A , ,= |3 PK =4 O 4 > A =3 A > A O =3 A > A ) =3 A > A =3 A 7> A =3 A : > A O=3 A :> A )=3 A :> A =3 A :7> A =3 A > A O=3 A > A )=3 A > =4 =4 OO 4 4 =4 4 >) =4 :=4 OO 4 4 =4 4 > =4 =4 OO 4 4 =4 4 >O A 67> =4 )=4 63 A ) > =4 =4 63 A )> =4 O=4 63 A )> = #A ) =3 | A , ,,> = #A )=3 | A , ,> = #A )=3 | A , ,G>     A = A ,=  > =   = A = A ,= ~  ># = #A ,,=  >* = *   =  #A  , ,,=   |3  = #A  , ,= |3 =  #A  , ,G=   |3  PK  =4 6O 4   >6 =  #A  , ,,=   |3  =  #A  , ,= ! |3" ! = # #A$  ,# ,G= % $ |3& % = ' #A(  ,' ,d= ) ( |3* ) P4+  " & * >O+ = , #A-  ,, ,m= . - |/ . = 0 #A1  ,0 ,r= 2 1 |3 2 = 4 #A5  ,4 ,w= 6 5 |7 6 = 8 #A9  ,8 ,|= : 9 |; : Pi< / 3 7 ; >k< =i= kA> G,=? > O @ ? ? |iA @ iB = A >kB AC k =D C AE ,D ,,= F E |3G F AH k =I H AJ ,I ,= K J |3L K AM k =N M AO ,N ,G= P O |3Q P PKR G L Q >R AS k =T S AU ,T ,m= V U |3W V AX k =Y X AZ ,Y ,r= [ Z |3\ [ A] k =^ ] A_ ,^ ,w= ` _ |3a ` PKb W \ a =4c O 4d c b >d Ae k =f e Ag ,f ,= h g |3i h Aj k =k j Al ,k ,= m l |3n m Ao k =p o Aq ,p ,= r q |3s r PKt i n s =4u O 4v u t >v Aw k =x w Ay ,x ,= z y |3{ z A| k =} | A~ ,} ,=  ~ |3  A k = A , ,= |3 PK { =4 O 4 > A =3 A > A =3 A > A =3 A > A =3 A 7> A =3 A > A =3 A > A =3 A > A =3 A 7> A =3 A > A =3 A > A =3 A > A k= A , ,,= |3 A k= A , ,= |3 A k= A , ,G= |3 PK > A k= A , ,m= |3 A k= A , ,r= |3 A k= A , ,w= |3 PK =4 O 4 > A k= A , ,= |3 A k= A , ,= |3 A k= A , ,= |3 PK =4 O 4 > A k= A , ,= |3 A k= A , ,= |3 A k= A , ,= |3 PK =4 :O 4 >: A =3 A M > A =3 A M> A =3 A M> A : =3 A M7> =4 OO 4 =4 M4 >M A =3 A ^ >  A =3  A ^>  A =3  A ^>  A :=3 A ^7> =4 OO 4 =4 ^4  >^ A =3  A : >  A =3  A :>  A =3  A :>  =4 OO 4   =4 :4   > =4 =4 OO 4   4   =4! M4" ! >" =4# =4$ OO 4% $ $ 4& # % =4' ^4( & ' >( =4) =4* OO 4+ * * 4, ) + =4- 4. , - >. A/ k=0 / A1 ,0 ,,= 2 1 |33 2 A4 k=5 4 A6 ,5 ,= 7 6 |38 7 A9 k=: 9 A; ,: ,G= < ; |3= < PK> 3 8 = >> A? k=@ ? AA ,@ ,m= B A |3C B AD k=E D AF ,E ,r= G F |3H G AI k=J I AK ,J ,w= L K |3M L PKN C H M =4O O 4P O N >P AQ k=R Q AS ,R ,= T S |3U T AV k=W V AX ,W ,= Y X |3Z Y A[ k=\ [ A] ,\ ,= ^ ] |3_ ^ PK` U Z _ =4a O 4b a ` >b Ac k=d c Ae ,d ,= f e |3g f Ah k=i h Aj ,i ,= k j |3l k Am k=n m Ao ,n ,= p o |3q p PKr g l q =4s :O 4t s r >:t Au =3v u Aw M >w v Ax =3y x Az M>z y A{ =3| { A} M>} | A~ : =3 ~ A M7>  A =3 A ^ > A =3 A ^> A =3 A ^> A :=3 A ^7> A =3 A : > A =3 A :> A =3 A :> =4 M=4 OO 4 4 =4 4 > =4 ^=4 OO 4 4 =4 4 > =4 :=4 OO 4 4 =4 4 > A k7= A , ,,= |3 A k7= A , ,= |3 A k7= A , ,G= |3 PK > A k7= A , ,m= |3 A k7= A , ,r= |3 A k7= A , ,w= |3 PK =4 OO 4 >O A k7= A , ,= |3 A k7= A , ,= |3 A k7= A , ,= |3 PK =4 )O 4 >) A k7= A , ,= |3 A k7= A , ,= |3 A k7= A , ,= |3 PK =4 O 4 > A =3 A > A O =3 A > A ) =3 A > A =3 A 7> A =3 A : > A O=3 A :> A)=3A:>A=3A:7>A=3A >A O=3  A >  A )=3  A> =4=4OO 44=44>)=4:=4OO 44=44>=4=4OO 44=44 >O A!67>!=4")=4#63$"#A%) >%$=4&=4'63(&'A))>)(=4*O=4+63,*+A-)>-,= .#A/) =30/| 10A2 ,.,,>21= 3#A4)=354| 65A7 ,3,>76= 8#A9)=3:9| ;:A< ,8,G><;   =A> = ?>A@, = A@B?A>B=CECDEDAF = GFAH, = IH~ JI KGJ>#K= L#AM,, = NMOLN>*O=P*RPQRQ= Y#AZX,Y,,= [Z|3\[= ]#A^X,],= _^|3`_= a#AbX,a,G= cb|3dcPKe\`d=4f6O 4gfe>6g= n#Aom,n,,= po|3qp= r#Asm,r,= ts|3ut= v#Awm,v,G= xw|3yx= z#A{m,z,d= |{|3}|P4~quy}>O~= #Am,,m= |= #Am,,r= |= #Am,,w= |= #Am,,|= |Pi>k=ikAG,=O |ii>kAk =A,,,= |3Ak =A,,= |3Ak =A,,G= |3PK>Ak =A,,m= |3Ak =A,,r= |3Ak =A,,w= |3PK=4O 4>Ak =A,,= |3Ak =A,,= |3Ak =A,,= |3PK=4O 4>Ak =A,,= |3Ak =A,,= |3Ak =A,,= |3PK=4O 4>A =3A >A =3A>A =3A>A =3A7>A=3A >A=3A>A=3A>A=3A7>A=3A >A=3A>A=3A>Ak=A,,,= |3Ak=A,,= |3Ak=A ,,G=  |3  PK  > A k= A,,m= |3Ak=A,,r= |3Ak=A,,w= |3PK=4O 4>Ak= A!, ,= "!|3#"A$k=%$A&,%,= '&|3('A)k=*)A+,*,= ,+|3-,PK.#(-=4/O 40/.>0A1k=21A3,2,= 43|354A6k=76A8,7,= 98|3:9A;k=<;A=,<,= >=|3?>PK@5:?=4A:O 4BA@>:BAC =3DCAEM >EDAF =3GFAHM>HGAI =3JIAKM>KJAL: =3MLANM7>NM=4OOO 4POO=4QM4RPQ>MRAS=3TSAU^ >UTAV=3WVAX^>XWAY=3ZYA[^>[ZA\:=3]\A^^7>^]=4_OO 4`__=4a^4b`a>^bAc=3dcAe: >edAf=3gfAh:>hgAi=3jiAk:>kj=4lOO 4mll=4n:4omn>o=4p=4qOO 4rqq4spr=4tM4ust>u=4v=4wOO 4xww4yvx=4z^4{yz>{=4|=4}OO 4~}}4|~=44>Ak=A,,,= |3Ak=A,,= |3Ak=A,,G= |3PK>Ak=A,,m= |3Ak=A,,r= |3Ak=A,,w= |3PK=4O 4>Ak=A,,= |3Ak=A,,= |3Ak=A,,= |3PK=4O 4>Ak=A,,= |3Ak=A,,= |3Ak=A,,= |3PK=4:O 4>:A =3AM >A =3AM>A =3AM>A: =3AM7>A=3A^ >A=3A^>A=3A^>A:=3A^7>A=3A: >A=3A:>A=3A:>=4M=4OO 44=44>=4^=4OO 44=44>=4:=4OO 44=44>Ak7=A,,,= |3Ak7=A,,= |3Ak7=A,,G= |3 PK  > A k7=  A , ,m=  |3Ak7=A,,r= |3Ak7=A,,w= |3PK=4OO 4>OAk7=A,,= |3! A"k7=#"A$,#,= %$|3&%A'k7=('A),(,= *)|3+*PK,!&+=4-)O 4.-,>).A/k7=0/A1,0,= 21|332A4k7=54A6,5,= 76|387A9k7=:9A;,:,= <;|3=<PK>38==4?O 4@?>>@AA =3BAAC >CBADO =3EDAF>FEAG) =3HGAI>IHAJ =3KJAL7>LKAM=3NMAO: >ONAPO=3QPAR:>RQAS)=3TSAU:>UTAV=3WVAX:7>XWAY=3ZYA[ >[ZA\O=3]\A^>^]A_)=3`_Aa>a`=4b=4cOO 4dcc4ebd=4f4gef>)g=4h:=4iOO 4jii4khj=4l4mkl>m=4n=4oOO 4poo4qnp=4r4sqr>OsAt67>t=4u)=4v63wuvAx) >xw=4y=4z63{yzA|)>|{=4}O=4~63}~A)>= #A) =3| AX,,,>= #A)=3| AX,,>= #A)=3| AX,,G>RREE    LL!!8@AbatchMainInPlaceComputeSkinInPlaceCBuffer inMatricesinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6inOutVertices0inOutVertices1 inOutVertices2 inOutVertices3 inOutVertices4 inOutVertices5 inOutVertices64#  GLSL.std.450main @mainu_xlatb0 gl_GlobalInvocationID ComputeSkinInPlaceCBufferg_VertCountsg_BatchOffsetsg_PoseOffsets g_poseBufferMaxIndex#u_xlatu0*u_xlatb136u_xlat1 9inOutVertices6_origX6X_type9value;inOutVertices6_origX6X ;inOutVertices6_origX6X_buf=Su_xlat2bu_xlat3einSkin6_typeevalueginSkin6ginSkin6_bufi}u_xlati4u_xlat13inMatrices_typevalueinMatricesinMatrices_bufu_xlat5u_xlat6u_xlat7u_xlat8u_xlat9Ju_xlat10]u_xlat11nu_xlat129u_xlat4 inOutVertices5_origX5X_typevalueinOutVertices5_origX5X inOutVertices5_origX5X_buf inSkin5_type valueinSkin5inSkin5_buf oinOutVertices4_origX4X_typeovalueqinOutVertices4_origX4X qinOutVertices4_origX4X_bufsinSkin4_typevalueinSkin4inSkin4_buf inOutVertices3_origX3X_typevalueinOutVertices3_origX3X inOutVertices3_origX3X_bufinSkin3_typevalueinSkin3inSkin3_buf y inOutVertices2_origX2X_typey value{ inOutVertices2_origX2X { inOutVertices2_origX2X_buf}  inSkin2_type value inSkin2 inSkin2_buf  inOutVertices1_origX1X_type value inOutVertices1_origX1X inOutVertices1_origX1X_buf  inSkin1_type value" inSkin1" inSkin1_buf$  inOutVertices0_origX0X_typevalueinOutVertices0_origX0X inOutVertices0_origX0X_bufinSkin0_typevalueinSkin0inSkin0_bufu_xlat_precise_vec4u_xlat_precise_ivec4u_xlat_precise_bvec4u_xlat_precise_uvec4G GGGH#H# H#@H#`GG"G!G8H9#G:H;#G;G="G=!GdHe#Gf HgHg#GgGi"Gi!GH#G@HH#GG"G!GH#GH#GG"G! G H #G  HH#GG"G!GnHo#GpHq#GqGs"Gs! GH#G HH#GG"G!GH#GH#GG"G! GH#G HH#GG"G!Gx Hy #Gz H{ #G{ G} "G} ! G H #G  H H #G G "G !G H #G H #G G "G ! G H #G!  H" H" #G" G$ "G$ !GH#GH#GG"G!GH#G HH#GG"G!G ! ;     ; +   +  ; +  " ;"#;*+,3 43 54;56+ 78 798:9;: <;;<=+G+LQ3 RQ;RS+U+Z^3;5b+ cd cedfegf hg;hi{ |{;|}++ ;R+   ; ;5;5++ + ;5+ + +;5 3+ + ;5;5J;5];5n;59+3? 7 ;  c      ;n 7onpoqp rq;rs c ; 7 ; c ;x 7y x z y { z | { ;| }  c     ;  7     ;   c  ! " ! # " ;# $  7 ; c ; 4 {  + @, 6;;;;A = A= >=!  A$ = %$A&= '&~ (' )%(>#)= +#A-,= .-/+.>*/=0*20121= >#A?=,>,,= @?|3A@= B#AC=,B,= DC|3ED= F#AH=,F,G= IH|3JI= K#AM=,K,L= NM|3ONP4PAEJO>6P= T#AV=,T,U= WV|3XW= Y#A[=,Y,Z= \[|3]\P^_X]=Q`SOQa`_>Sa= j#Aki,j,,= lk|3ml= n#Aoi,n,= po|3qp= r#Asi,r,G= ts|3ut= v#Awi,v,L= xw|3yxP4zmquy>bz= ~#Ai,~,U= |= #Ai,,Z= |= #Ai,,= |= #Ai,,= |P{>}={}AG=O |{{>}A} =A,,,= |3A} =A,,= |3A} =A,,G= |3PQ>A} =A,,U= |3A} =A,,Z= |3A} =A,,= |3PQ=4O 4>A} =A,,= |3A} =A,,= |3A} =A,,= |3PQ=4O 4>A} =A,,= |3A} =A,,= |3A} =A,,= |3PQ=4O 4>A =3A >A =3A>A =3A>A =3A>A=3A >A=3A>A=3A > A =3  A >  A =3 A >A=3A>A=3A>A}=A,,,= |3A}=A,,= |3A }=! A",!,G= #"|3$#PQ%$>%A&}='&A(,',U= )(|3*)A+}=,+A-,,,Z= .-|3/.A0}=10A2,1,= 32|343PQ5*/4=46O 4765>7A8}=98A:,9,= ;:|3<;A=}=>=A?,>,= @?|3A@AB}=CBAD,C,= ED|3FEPQG<AF=4HO 4IHG>IAK}=LKAM,L,= NM|3ONAP}=QPAR,Q,= SR|3TSAU}=VUAW,V,= XW|3YXPQZOTY=4[JO 4\[Z>J\A^ =3_^A`] >`_Aa =3baAc]>cbAd =3edAf]>feAgJ =3hgAi]>ih=4jbO 4kjj=4l]4mkl>]mAo=3poAqn >qpAr=3srAtn>tsAu=3vuAwn>wvAxJ=3yxAzn>zy=4{bO 4|{{=4}n4~|}>n~A=3AJ >A=3AJ>A=3AJ>=4bO 4=4J4>=4=4bO 44=4]4>=4=4bO 44=4n4>=4=4bO 44=44>A}=A,,,= |3A}=A,,= |3A}=A,,G= |3PQ>A}=A,,U= |3A}=A,,Z= |3A}=A,,= |3PQ=4O 4>A}=A,,= |3A}=A,,= |3A}=A,,= |3PQ=4O 4>A}=A,,= |3A}=A,,= |3A}=A,,= |3PQ=4JO 4>JA =3A] >A =3A]>A =3A]>AJ =3A]>A=3An >A=3An>A=3An>AJ=3An>A=3AJ >A=3AJ>A=3AJ>=4]=4bO 44=4 4  > =4 n=4 bO 4   4  =44>=4J=4bO 44=44>A}=A,,,= |3A}=A,,= |3 A!}="!A#,",G= $#|3%$PQ& %>&A'}=('A),(,U= *)|3+*A,}=-,A.,-,Z= /.|30/A1}=21A3,2,= 43|354PQ6+05=47bO 4876>b8A:}=;:A<,;,= =<|3>=A?}=@?AA,@,= BA|3CBAD}=EDAF,E,= GF|3HGPQI>CH=4J9O 4KJI>9KAL}=MLAN,M,= ON|3POAQ}=RQAS,R,= TS|3UTAV}=WVAX,W,= YX|3ZYPQ[PUZ=4\O 4]\[>]A^ =3_^A` >`_Aab =3baAc>cbAd9 =3edAf>feAg =3hgAi>ihAj=3kjAlJ >lkAmb=3nmAoJ>onAp9=3qpArJ>rqAs=3tsAuJ>utAv=3wvAx >xwAyb=3zyA{>{zA|9=3}|A~>~}=4=4bO 44=44>9=4J=4bO 44=44>=4=4bO 44=44>b=46OQ=4O 4>A>=49=43A >=4=43A>=4b=43A>A6=3AS>=49OQ=QS3A>=4OQ=QS3A6 >=4bOQ=QS3A6>= #A =3| A=,,,>= #A=3| A=,,>= #A=3| A=,,G>= #A=3| A=,,L>= #A6 =3| A=,,U>= #A6=3| A=,,Z>22!A = A= >=XA = A= ~  >#= #A,= >*=*= #A,,,= |3= #A,,= |3= #A,,G= |3= #A,,L= |3P4>6= #A,,U= |3= #A,,Z= |3P^=Q SOQ  >S = #A,,,= |3= #A,,= |3= #A,,G= |3= #A,,L= |3 P4! >b!= "#A#,",U= $#|%$= &#A',&,Z= ('|)(= *#A+,*,= ,+|-,= .#A/,.,= 0/|10P{2%)-1>}2={3}A4G=54O 655|{76{837>}8A9} =:9A;,:,,= <;|3=<A>} =?>A@,?,= A@|3BAAC} =DCAE,D,G= FE|3GFPQH=BG>HAI} =JIAK,J,U= LK|3MLAN} =ONAP,O,Z= QP|3RQAS} =TSAU,T,= VU|3WVPQXMRW=4YO 4ZYX>ZA[} =\[A],\,= ^]|3_^A`} =a`Ab,a,= cb|3dcAe} =feAg,f,= hg|3ihPQj_di=4kO 4lkj>lAm} =nmAo,n,= po|3qpAr} =srAt,s,= ut|3vuAw} =xwAy,x,= zy|3{zPQ|qv{=4}O 4~}|>~A =3A >A =3A>A =3A>A =3A>A=3A >A=3A>A=3A>A=3A>A=3A >A=3A>A=3A>A}=A,,,= |3A}=A,,= |3A}=A,,G= |3PQ>A}=A,,U= |3A}=A,,Z= |3A}=A,,= |3PQ=4O 4>A}=A,,= |3A}=A,,= |3A}=A,,= |3PQ=4O 4>A}=A,,= |3A}=A,,= |3A}=A,,= |3PQ=4JO 4>JA =3A] >A =3A]>A =3A]>AJ =3A]>=4bO 4=4]4>]A=3An >A=3An>A=3An>AJ=3An>=4bO 4=4n4>nA=3AJ >A =3  A J>  A =3  AJ> =4bO 4=4J4>=4=4bO 44=4]4>=4=4bO 44=4n4>=4=4 bO 4!  4"!=4#4$"#>$A%}=&%A',&,,= ('|3)(A*}=+*A,,+,= -,|3.-A/}=0/A1,0,G= 21|332PQ4).3>4A5}=65A7,6,U= 87|398A:}=;:A<,;,Z= =<|3>=A?}=@?AA,@,= BA|3CBPQD9>C=4EO 4FED>FAG}=HGAI,H,= JI|3KJAL}=MLAN,M,= ON|3POAQ}=RQAS,R,= TS|3UTPQVKPU=4WO 4XWV>XAY}=ZYA[,Z,= \[|3]\A^}=_^A`,_,= a`|3baAc}=dcAe,d,= fe|3gfPQh]bg=4iJO 4jih>JjAk =3lkAm] >mlAn =3onAp]>poAq =3rqAs]>srAtJ =3utAv]>vuAw=3xwAyn >yxAz=3{zA|n>|{A}=3~}An>~AJ=3An>A=3AJ >A=3AJ>A=3AJ>=4]=4bO 44=44>=4n=4bO 44=44>=4J=4bO 44=44>A}=A,,,= |3A}=A,,= |3A}=A,,G= |3PQ>A}=A,,U= |3A}=A,,Z= |3A}=A,,= |3PQ=4bO 4>bA}=A,,= |3A}=A,,= |3A}=A,,= |3PQ=49O 4>9A}=A,,= |3A}=A,,= |3A}=A,,= |3PQ=4O 4>A =3A >Ab =3A>A9 =3A>A =3A>A=3AJ >Ab=3AJ>A9=3AJ>A=3AJ>A=3A >Ab=3A>A9=3A>=4=4bO 44=4 4  >9 =4 J=4 bO 4   4  =44>=4=4bO 44=44>b=46OQ=4O 4>A>=49=43A >=4 =4!3" !A#>#"=4$b=4%3&$%A'>'&A(6=3)(A*S>*)=4+9OQ,++=Q-S3.,-A/>/.=40OQ100=Q2S3312A46 >43=45bOQ655=Q7S3867A96>98= :#A; =3<;| =<A>,:,,>>== ?#A@=3A@| BAAC,?,>CB= D#AE=3FE| GFAH,D,G>HG= I#AJ=3KJ| LKAM,I,L>ML= N#AO6 =3PO| QPAR,N,U>RQ= S#AT6=3UT| VUAW,S,Z>WVXAY = ZYA[ = \[]Z\>]=^`^__Aa = baAc = dc~ ed fbe>#f= g#Ah, = ihjgi>*j=k*mklml= t#Aus,t,,= vu|3wv= x#Ays,x,= zy|3{z= |#A}s,|,G= ~}|3~= #As,,L= |3P4w{>6= #As,,U= |3= #As,,Z= |3P^=QSOQ>S= #A,,,= |3= #A,,= |3= #A,,G= |3= #A,,L= |3P4>b= #A,,U= |= #A,,Z= |= #A,,= |= #A,,= |P{>}={}AG=O |{{>}A} =A,,,= |3A} =A,,= |3A} =A,,G= |3PQ>A} =A,,U= |3A} =A,,Z= |3A} =A,,= |3PQ=4O 4>A} =A,,= |3A} =A,,= |3A} =A,,= |3PQ=4O 4>A} =A,,= |3A} =A,,= |3A} =A,,= |3PQ=4O 4>A =3A >A =3A > A  =3  A >  A  =3 A>A=3A >A=3A>A=3A>A=3A>A=3A >A=3 A!>! A"=3#"A$>$#A%}=&%A',&,,= ('|3)(A*}=+*A,,+,= -,|3.-A/}=0/A1,0,G= 21|332PQ4).3>4A5}=65A7,6,U= 87|398A:}=;:A<,;,Z= =<|3>=A?}=@?AA,@,= BA|3CBPQD9>C=4EO 4FED>FAG}=HGAI,H,= JI|3KJAL}=MLAN,M,= ON|3POAQ}=RQAS,R,= TS|3UTPQVKPU=4WO 4XWV>XAY}=ZYA[,Z,= \[|3]\A^}=_^A`,_,= a`|3baAc}=dcAe,d,= fe|3gfPQh]bg=4iJO 4jih>JjAk =3lkAm] >mlAn =3onAp]>poAq =3rqAs]>srAtJ =3utAv]>vu=4wbO 4xww=4y]4zxy>]zA{=3|{A}n >}|A~=3~An>A=3An>AJ=3An>=4bO 4=4n4>nA=3AJ >A=3AJ>A=3AJ>=4bO 4=4J4>=4=4bO 44=4]4>=4=4bO 44=4n4>=4=4bO 44=44>A}=A,,,= |3A}=A,,= |3A}=A,,G= |3PQ>A}=A,,U= |3A}=A,,Z= |3A}=A,,= |3PQ=4O 4>A}=A,,= |3A}=A,,= |3A}=A,,= |3PQ=4O 4>A}=A,,= |3A}=A,,= |3A}=A,,= |3PQ=4JO 4>JA =3A] >A =3A]>A =3A]>AJ =3A]>A=3An >A=3An>A=3An>AJ=3An>A=3 A J >  A =3  A J>  A=3AJ>=4]=4bO 44=44>=4n=4bO 44=44>=4J=4bO 44 =4!4" !>"A#}=$#A%,$,,= &%|3'&A(}=)(A*,),= +*|3,+A-}=.-A/,.,G= 0/|310PQ2',1>2A3}=43A5,4,U= 65|376A8}=98A:,9,Z= ;:|3<;A=}=>=A?,>,= @?|3A@PQB7<A=4CbO 4DCB>bDAE}=FEAG,F,= HG|3IHAJ}=KJAL,K,= ML|3NMAO}=POAQ,P,= RQ|3SRPQTINS=4U9O 4VUT>9VAW}=XWAY,X,= ZY|3[ZA\}=]\A^,],= _^|3`_Aa}=baAc,b,= dc|3edPQf[`e=4gO 4hgf>hAi =3jiAk >kjAlb =3mlAn>nmAo9 =3poAq>qpAr =3srAt>tsAu=3vuAwJ >wvAxb=3yxAzJ>zyA{9=3|{A}J>}|A~=3~AJ>A=3A >Ab=3A>A9=3A>=4=4bO 44=44>9=4J=4bO 44=44>=4=4bO 44=44>b=46OQ=4O 4>A>=49=43A >=4=43A>=4b=43A>A6=3AS>=49OQ=QS3A>=4OQ=QS3A6 >=4bOQ=QS3A6>= #A =3| As,,,>= #A=3| As,,>= #A=3| As,,G>= #A=3| As,,L>= #A6 =3| As,,U>= #A6=3| As,,Z>mm`A = A,= >=b A = A,= ~  >#= #A,,= >*=*= #A,,,= |3= #A,,= |3= #A,,G= |3= #A,,L= |3P4 >6 = #A , ,U=  |3  = #A,,Z= |3P^ =QSOQ>S= #A,,,= |3= #A ,,= ! |3"!= ##A$,#,G= %$|3&%= '#A(,',L= )(|3*)P4+"&*>b+= ,#A-,,,U= .-|/.= 0#A1,0,Z= 21|32= 4#A5,4,= 65|76= 8#A9,8,= :9|;:P{</37;>}<={=}A>G,=?>O @??|{A@{B=A>}BAC} =DCAE,D,,= FE|3GFAH} =IHAJ,I,= KJ|3LKAM} =NMAO,N,G= PO|3QPPQRGLQ>RAS} =TSAU,T,U= VU|3WVAX} =YXAZ,Y,Z= [Z|3\[A]} =^]A_,^,= `_|3a`PQbW\a=4cO 4dcb>dAe} =feAg,f,= hg|3ihAj} =kjAl,k,= ml|3nmAo} =poAq,p,= rq|3srPQtins=4uO 4vut>vAw} =xwAy,x,= zy|3{zA|} =}|A~,},= ~|3A} =A,,= |3PQ{=4O 4>A =3A >A =3A>A =3A>A =3A>A=3A >A=3A>A=3A>A=3A>A=3A >A=3A>A=3A>A}=A,,,= |3A}=A,,= |3A}=A,,G= |3PQ>A}=A,,U= |3A}=A,,Z= |3A}=A,,= |3PQ=4O 4>A}=A,,= |3A}=A,,= |3A}=A,,= |3PQ=4O 4>A}=A,,= |3A}=A,,= |3A}=A,,= |3PQ=4JO 4>JA =3A] >A =3A]>A =3A]>AJ =3A]>=4bO 4=4]4>]A =3 A n >  A =3  A n>  A =3  A n>  A J=3 A n> =4 bO 4 =4 n4  >n A =3  A J >  A =3  A J>  A =3  A J>  =4 bO 4   =4 J4   > =4 =4 bO 4   4   =4! ]4" ! >" =4# =4$ bO 4% $ $ 4& # % =4' n4( & ' >( =4) =4* bO 4+ * * 4, ) + =4- 4. , - >. A/ }=0 / A1 ,0 ,,= 2 1 |33 2 A4 }=5 4 A6 ,5 ,= 7 6 |38 7 A9 }=: 9 A; ,: ,G= < ; |3= < PQ> 3 8 = >> A? }=@ ? AA ,@ ,U= B A |3C B AD }=E D AF ,E ,Z= G F |3H G AI }=J I AK ,J ,= L K |3M L PQN C H M =4O O 4P O N >P AQ }=R Q AS ,R ,= T S |3U T AV }=W V AX ,W ,= Y X |3Z Y A[ }=\ [ A] ,\ ,= ^ ] |3_ ^ PQ` U Z _ =4a O 4b a ` >b Ac }=d c Ae ,d ,= f e |3g f Ah }=i h Aj ,i ,= k j |3l k Am }=n m Ao ,n ,= p o |3q p PQr g l q =4s JO 4t s r >Jt Au =3v u Aw ] >w v Ax =3y x Az ]>z y A{  =3| { A} ]>} | A~ J =3 ~ A ]>  A =3 A n > A =3 A n> A =3 A n> A J=3 A n> A =3 A J > A =3 A J> A =3 A J> =4 ]=4 bO 4 4 =4 4 > =4 n=4 bO 4 4 =4 4 > =4 J=4 bO 4 4 =4 4 > A }= A , ,,= |3 A }= A , ,= |3 A }= A , ,G= |3 PQ > A }= A , ,U= |3 A }= A , ,Z= |3 A }= A , ,= |3 PQ =4 bO 4 >b A }= A , ,= |3 A }= A , ,= |3 A }= A , ,= |3 PQ =4 9O 4 >9 A }= A , ,= |3 A }= A , ,= |3 A }= A , ,= |3 PQ =4 O 4 > A =3 A  > A b =3 A > A 9 =3 A > A =3 A > A =3 A J > A b=3 A J> A 9=3 A J>  A =3  A J>  A =3  A >  A b=3 A > A 9=3 A > =4 =4 bO 4   4   =4 4   >9 =4 J=4 bO 4   4   =4 4   > =4 =4 bO 4   4   =4 4   >b =4! 6OQ" ! ! =4# O 4$ # " >$ A% >% =4& 9=4' 3( & ' A) >) ( =4* =4+ 3, * + A- >- , =4. b=4/ 30 . / A1 >1 0 A2 6=33 2 A4 S>4 3 =45 9OQ6 5 5 =Q7 S38 6 7 A9 >9 8 =4: OQ; : : =Q< S3= ; < A> 6 >> = =4? bOQ@ ? ? =QA S3B @ A AC 6>C B = D #AE =3F E | G F AH ,D ,,>H G = I #AJ =3K J | L K AM ,I ,>M L = N #AO =3P O | Q P AR ,N ,G>R Q = S #AT =3U T | V U AW ,S ,L>W V = X #AY 6 =3Z Y | [ Z A\ ,X ,U>\ [ = ] #A^ 6=3_ ^ | ` _ Aa ,] ,Z>a ` b Ac = d c Ae ,= f e g d f >g =h j h i i Ak = l k Am ,= n m ~ o n  p l o >#p = q #Ar ,,= s r t q s >*t =u *w u v w v = ~ #A } ,~ ,,=  |3 = #A } , ,= |3 = #A } , ,G= |3 = #A } , ,L= |3 P4 >6 = #A } , ,U= |3 = #A } , ,Z= |3 P^ =Q SOQ >S = #A , ,,= |3 = #A , ,= |3 = #A , ,G= |3 = #A , ,L= |3 P4 >b = #A , ,U= | = #A , ,Z= | = #A , ,= | = #A , ,= | P{ >} ={ }A G,= O  |{ { >} A } = A , ,,= |3 A } = A , ,= |3 A } = A , ,G= |3 PQ > A } = A , ,U= |3 A } = A , ,Z= |3 A } = A , ,= |3 PQ =4 O 4 > A } = A , ,= |3 A } = A , ,= |3 A } = A , ,= |3 PQ =4 O 4 > A } = A , ,= |3 A } =  A , ,=   |3  A } =  A , ,=  |3 PQ  =4 O 4 > A =3  A >  A =3  A >  A =3  A >  A =3  A >  A =3  A  >  A =3  A >  A =3! A" >" ! A# =3$ # A% >% $ A& =3' & A( >( ' A) =3* ) A+ >+ * A, =3- , A. >. - A/ }=0 / A1 ,0 ,,= 2 1 |33 2 A4 }=5 4 A6 ,5 ,= 7 6 |38 7 A9 }=: 9 A; ,: ,G= < ; |3= < PQ> 3 8 = >> A? }=@ ? AA ,@ ,U= B A |3C B AD }=E D AF ,E ,Z= G F |3H G AI }=J I AK ,J ,= L K |3M L PQN C H M =4O O 4P O N >P AQ }=R Q AS ,R ,= T S |3U T AV }=W V AX ,W ,= Y X |3Z Y A[ }=\ [ A] ,\ ,= ^ ] |3_ ^ PQ` U Z _ =4a O 4b a ` >b Ac }=d c Ae ,d ,= f e |3g f Ah }=i h Aj ,i ,= k j |3l k Am }=n m Ao ,n ,= p o |3q p PQr g l q =4s JO 4t s r >Jt Au =3v u Aw ] >w v Ax =3y x Az ]>z y A{ =3| { A} ]>} | A~ J =3 ~ A ]>  =4 bO 4 =4 ]4 >] A =3 A n > A =3 A n> A =3 A n> A J=3 A n> =4 bO 4 =4 n4 >n A =3 A J > A =3 A J> A =3 A J> =4 bO 4 =4 J4 > =4 =4 bO 4 4 =4 ]4 > =4 =4 bO 4 4 =4 n4 > =4 =4 bO 4 4 =4 4 > A }= A , ,,= |3 A }= A , ,= |3 A }= A , ,G= |3 PQ > A }= A , ,U= |3 A }= A , ,Z= |3 A }= A , ,= |3 PQ =4 O 4 > A }= A , ,= |3 A }= A , ,= |3 A }= A , ,= |3 PQ =4 O 4 > A }= A , ,= |3 A }= A , ,= |3 A }= A , ,= |3 PQ =4 JO 4 >J A =3 A ] > A =3 A ]> A  =3 A ]>  A J =3  A ]>  A =3  A n >  A =3 A n> A =3 A n> A J=3  A n>  A =3  A J >  A =3  A J>  A =3  A J>  =4 ]=4 bO 4   4   =4 4   > =4! n=4" bO 4# " " 4$ ! # =4% 4& $ % >& =4' J=4( bO 4) ( ( 4* ' ) =4+ 4, * + >, A- }=. - A/ ,. ,,= 0 / |31 0 A2 }=3 2 A4 ,3 ,= 5 4 |36 5 A7 }=8 7 A9 ,8 ,G= : 9 |3; : PQ< 1 6 ; >< A= }=> = A? ,> ,U= @ ? |3A @ AB }=C B AD ,C ,Z= E D |3F E AG }=H G AI ,H ,= J I |3K J PQL A F K =4M bO 4N M L >bN AO }=P O AQ ,P ,= R Q |3S R AT }=U T AV ,U ,= W V |3X W AY }=Z Y A[ ,Z ,= \ [ |3] \ PQ^ S X ] =4_ 9O 4` _ ^ >9` Aa }=b a Ac ,b ,= d c |3e d Af }=g f Ah ,g ,= i h |3j i Ak }=l k Am ,l ,= n m |3o n PQp e j o =4q O 4r q p >r As =3t s Au  >u t Av b =3w v Ax >x w Ay 9 =3z y A{ >{ z A| =3} | A~ >~ } A =3  A J > A b=3 A J> A 9=3 A J> A =3 A J> A =3 A > A b=3 A > A 9=3 A > =4 =4 bO 4 4 =4 4 >9 =4 J=4 bO 4 4 =4 4 > =4 =4 bO 4 4 =4 4 >b =4 6OQ =4 O 4 > A > =4 9=4 3 A > =4 =4 3 A > =4 b=4 3 A > A 6=3 A S> =4 9OQ =Q S3 A > =4 OQ =Q S3 A 6 > =4 bOQ =Q S3 A 6> = #A =3 | A } , ,,> = #A =3 | A } , ,> = #A =3 | A } , ,G> = #A =3 | A } , ,L> = #A 6 =3 | A } , ,U> = #A 6=3 | A } , ,Z> w w j  A = A ,=  > =   l A = A ,= ~  ># = #A ,,=  >* = *   =  #A  , ,,=   |3  =  #A  , ,=  |3 = #A  , ,G= |3 =  #A  , ,L=   |3  P4    >6 =  #A  , ,U=   |3  =  #A  , ,Z=   |3  P^   =Q SOQ   >S = % #A& $ ,% ,,= ' & |3( ' = ) #A* $ ,) ,= + * |3, + = - #A. $ ,- ,G= / . |30 / = 1 #A2 $ ,1 ,L= 3 2 |34 3 P45 ( , 0 4 >b5 = 6 #A7 $ ,6 ,U= 8 7 |9 8 = : #A; $ ,: ,Z= < ; |= < = > #A? $ ,> ,= @ ? |A @ = B #AC $ ,B ,= D C |E D P{F 9 = A E >}F ={G }AH G,=I H O J I I |{K J {L G K >}L AM } =N M AO ,N ,,= P O |3Q P AR } =S R AT ,S ,= U T |3V U AW } =X W AY ,X ,G= Z Y |3[ Z PQ\ Q V [ >\ A] } =^ ] A_ ,^ ,U= ` _ |3a ` Ab } =c b Ad ,c ,Z= e d |3f e Ag } =h g Ai ,h ,= j i |3k j PQl a f k =4m O 4n m l >n Ao } =p o Aq ,p ,= r q |3s r At } =u t Av ,u ,= w v |3x w Ay } =z y A{ ,z ,= | { |3} | PQ~ s x } =4 O 4  ~ > A } = A , ,= |3 A } = A , ,= |3 A } = A , ,= |3 PQ =4 O 4 > A =3 A > A =3 A > A =3 A > A =3 A > A =3 A  > A =3 A > A =3 A > A =3 A > A =3 A > A =3 A > A =3 A > A }= A , ,,= |3 A }= A , ,= |3 A }= A , ,G= |3 PQ > A }= A , ,U= |3 A }= A , ,Z= |3 A }= A , ,= |3 PQ =4 O 4 > A }= A , ,= |3 A }= A , ,= |3 A }= A , ,= |3 PQ =4 O 4 > A }= A , ,= |3 A }= A , ,= |3 A }= A , ,= |3 PQ =4 JO 4 >J A =3 A ] > A =3 A ]> A =3A]>AJ =3A]>=4bO 4=4]4 >] A =3  A n >  A =3 An>A=3An>AJ=3An>=4bO 4=4n4>nA=3AJ >A=3AJ>A =3! A"J>"!=4#bO 4$##=4%J4&$%>&=4'=4(bO 4)((4*')=4+]4,*+>,=4-=4.bO 4/..40-/=41n4201>2=43=44bO 45444635=474867>8A9}=:9A;,:,,= <;|3=<A>}=?>A@,?,= A@|3BAAC}=DCAE,D,G= FE|3GFPQH=BG>HAI}=JIAK,J,U= LK|3MLAN}=ONAP,O,Z= QP|3RQAS}=TSAU,T,= VU|3WVPQXMRW=4YO 4ZYX>ZA[}=\[A],\,= ^]|3_^A`}=a`Ab,a,= cb|3dcAe}=feAg,f,= hg|3ihPQj_di=4kO 4lkj>lAm}=nmAo,n,= po|3qpAr}=srAt,s,= ut|3vuAw}=xwAy,x,= zy|3{zPQ|qv{=4}JO 4~}|>J~A =3A] >A =3A]>A =3A]>AJ =3A]>A=3An >A=3An>A=3An>AJ=3An>A=3AJ >A=3AJ>A=3AJ>=4]=4bO 44=44>=4n=4bO 44=44>=4J=4bO 44=44>A}=A,,,= |3A}=A,,= |3A}=A,,G= |3PQ>A}=A,,U= |3A}=A,,Z= |3A}=A,,= |3PQ=4bO 4>bA}=A,,= |3A}=A,,= |3A}=A,,= |3PQ=49O 4>9A}=A,,= |3A}=A,,= |3A}=A,,= |3PQ=4O 4>A =3A >Ab =3A>A9 =3A>A =3A>A=3AJ >Ab=3A J> A 9=3  A J>  A =3 AJ>A=3A >Ab=3A>A9=3A>=4=4bO 44=44>9=4J=4 bO 4!  4"!=4#4$"#>$=4%=4&bO 4'&&4(%'=4)4*()>b*=4+6OQ,++=4-O 4.-,>.A/>/=409=413201A3 >32=44=453645A7>76=48b=493:89A;>;:A<6=3=<A>S>>==4?9OQ@??=QAS3B@AAC>CB=4DOQEDD=QFS3GEFAH6 >HG=4IbOQJII=QKS3LJKAM6>ML= N#AO =3PO| QPAR ,N,,>RQ= S#AT=3UT| VUAW ,S,>WV= X#AY=3ZY| [ZA\ ,X,G>\[= ]#A^=3_^| `_Aa ,],L>a`= b#Ac6 =3dc| edAf ,b,U>fe= g#Ah6=3ih| jiAk ,g,Z>kj   lAm = nmAo, = poqnp>q=rtrstsAu = vuAw, = xw~ yx zvy>#z= {#A|,, = }|~{}>*~=*= #A,,,= |3= #A,,= |3= #A,,G= |3= #A,,L= |3P4>6= #A,,U= |3= #A,,Z= |3P^=QSOQ>S= #A,,,= |3= #A,,= |3= #A,,G= |3= #A,,L= |3P4>b= #A,,U= |= #A,,Z= |= #A,,= |= #A,,= |P{>}={}AG,=O |{{>}A} =A,,,= |3A} =A,,= |3A} =A,,G= |3PQ>A} =A,,U= |3A} =A,,Z= |3A} =A,,= |3PQ=4O 4>A} =A,,= |3A} =A,,= |3A} =A,,= |3PQ=4O 4>A} =A,,= |3  A } =  A , ,=  |3A} =A,,= |3PQ =4O 4>A =3A >A =3A>A =3A > A! =3"!A#>#"A$=3%$A& >&%A'=3('A)>)(A*=3+*A,>,+A-=3.-A/>/.A0=310A2 >21A3=343A5>54A6=376A8>87A9}=:9A;,:,,= <;|3=<A>}=?>A@,?,= A@|3BAAC}=DCAE,D,G= FE|3GFPQH=BG>HAI}=JIAK,J,U= LK|3MLAN}=ONAP,O,Z= QP|3RQAS}=TSAU,T,= VU|3WVPQXMRW=4YO 4ZYX>ZA[}=\[A],\,= ^]|3_^A`}=a`Ab,a,= cb|3dcAe}=feAg,f,= hg|3ihPQj_di=4kO 4lkj>lAm}=nmAo,n,= po|3qpAr}=srAt,s,= ut|3vuAw}=xwAy,x,= zy|3{zPQ|qv{=4}JO 4~}|>J~A =3A] >A =3A]>A =3A]>AJ =3A]>=4bO 4=4]4>]A=3An >A=3An>A=3An>AJ=3An>=4bO 4=4n4>nA=3AJ >A=3AJ>A=3AJ>=4bO 4=4J4>=4=4bO 44=4]4>=4=4bO 44=4n4>=4=4bO 44=44>A}=A,,,= |3A}=A,,= |3A}=A,,G= |3PQ>A}=A,,U= |3A}=A,,Z= |3A}=A,,= |3PQ=4O 4>A}=A,,= |3A}=A,,= |3A}=A,,= |3PQ=4O 4>A}=A,,= |3A}=A,,= |3A}=A,,= |3PQ=4JO 4>JA =3A] >A =3A ]> A  =3  A ]>  A J =3 A]>A=3An >A=3An>A=3An>AJ=3An>A=3AJ >A=3 A!J>! A"=3#"A$J>$#=4%]=4&bO 4'&&4(%'=4)4*()>*=4+n=4,bO 4-,,4.+-=4/40./>0=41J=42bO 43224413=454645>6A7}=87A9,8,,= :9|3;:A<}==<A>,=,= ?>|3@?AA}=BAAC,B,G= DC|3EDPQF;@E>FAG}=HGAI,H,U= JI|3KJAL}=MLAN,M,Z= ON|3POAQ}=RQAS,R,= TS|3UTPQVKPU=4WbO 4XWV>bXAY}=ZYA[,Z,= \[|3]\A^}=_^A`,_,= a`|3baAc}=dcAe,d,= fe|3gfPQh]bg=4i9O 4jih>9jAk}=lkAm,l,= nm|3onAp}=qpAr,q,= sr|3tsAu}=vuAw,v,= xw|3yxPQzoty=4{O 4|{z>|A} =3~}A >~Ab =3A>A9 =3A>A =3A>A=3AJ >Ab=3AJ>A9=3AJ>A=3AJ>A=3A >Ab=3A>A9=3A>=4=4bO 44=44>9=4J=4bO 44=44>=4=4bO 44=44>b=46OQ=4O 4>A>=49=43A >=4=43A>=4b=43A>A6=3AS>=49OQ=QS3A>=4OQ=QS3A6 >=4bOQ=QS3A6>= #A =3| A,,,>= #A=3| A,,>= #A=3| A,,G>= #A=3| A,,L>= #A6 =3| A,,U>= #A6=3| A,,Z>tt  j j ``!!8@AbatchMainInPlaceComputeSkinInPlaceCBuffer inMatricesinSkin0inSkin1inSkin2inSkin3inSkin4inSkin5inSkin6inOutVertices0inOutVertices1 inOutVertices2 inOutVertices3 inOutVertices4 inOutVertices5 inOutVertices6# U GLSL.std.450main @mainu_xlatb0 gl_GlobalInvocationID ComputeSkinInPlaceCBufferg_VertCountsg_BatchOffsetsg_PoseOffsets g_poseBufferMaxIndex#u_xlatu0*u_xlatb146u_xlat1 9inOutVertices6_origX6X_type9value;inOutVertices6_origX6X ;inOutVertices6_origX6X_buf=Qu_xlat2iu_xlat3qu_xlat4tinSkin6_typetvaluevinSkin6vinSkin6_bufxu_xlati5u_xlat14inMatrices_typevalueinMatricesinMatrices_bufu_xlat6u_xlat7u_xlat8u_xlat9 u_xlat10Uu_xlat11hu_xlat12yu_xlat13Du_xlat5 inOutVertices5_origX5X_typevalueinOutVertices5_origX5X inOutVertices5_origX5X_buf IinSkin5_typeIvalueKinSkin5KinSkin5_bufM inOutVertices4_origX4X_typevalueinOutVertices4_origX4X inOutVertices4_origX4X_bufinSkin4_typevalueinSkin4inSkin4_buf inOutVertices3_origX3X_typevalueinOutVertices3_origX3X inOutVertices3_origX3X_bufinSkin3_typevalueinSkin3inSkin3_buf > inOutVertices2_origX2X_type> value@ inOutVertices2_origX2X @ inOutVertices2_origX2X_bufB k inSkin2_typek valuem inSkin2m inSkin2_bufo  inOutVertices1_origX1X_type value inOutVertices1_origX1X inOutVertices1_origX1X_buf !inSkin1_type!value#inSkin1#inSkin1_buf% inOutVertices0_origX0X_typevalueinOutVertices0_origX0X inOutVertices0_origX0X_bufinSkin0_typevalueinSkin0inSkin0_bufKu_xlat_precise_vec4Mu_xlat_precise_ivec4Pu_xlat_precise_bvec4Ru_xlat_precise_uvec4G GGGH#H# H#@H#`GG"G!G8H9#G:(H;#G;G="G=!GsHt#Gu HvHv#GvGx"Gx!GH#G@HH#GG"G!GH#G(H#GG "G ! GHHI#GJ HKHK#GKGM"GM!GH#G(H#GG"G! GH#G HH#GG"G!GH#G(H#GG"G! GH#G HH#GG"G!G= H> #G? (H@ #G@ GB "GB ! Gj Hk #Gl  Hm Hm #Gm Go "Go !G H #G (H #G G "G ! G H!#G" H#H##G#G%"G%!GH#G(H#GG"G!GH#G HH#GG"G!GT ! ;     ; +   +  ; +  " ;"#;*+,3 43 54;56+ 7 8 798:9;: <;;<=+?+L;5Q+S+X+]+bg3 hg;hi+k o3;5q+ rs rtsutvu wv;wx ; ;h+   ; ;5;5+ + ;5+ + +;5+ + ;5 ;5U;5h;5y;5D+3?3 7 ; H rIHJIKJ LK;LM 7 ; r ; 7 ; r ;= 7> = ? > @ ? A @ ;A B j rk j l k m l n m ;n o  7     ;   r! "!#" $#;$% 7 ; r ; J4 LN ON Q+ S@, TS6;JK;LM;OP;QRA = A= >=!  A$ = %$A&= '&~ (' )%(>#)= +#A-,= .-/+.>*/=0*20121= >#A@=,>,?= A@|3BA= C#AD=,C,,= ED|3FE= G#AH=,G,= IH|3JI= K#AM=,K,L= NM|3ONP4PBFJO>6P= R#AT=,R,S= UT|3VU= W#AY=,W,X= ZY|3[Z= \#A^=,\,]= _^|3`_= a#Ac=,a,b= dc|3edP4fV[`e>Qf= j#Al=,j,k= ml|3nmAopi>pn= y#Azx,y,,= {z|3|{= }#A~x,},= ~|3= #Ax,,L= |3= #Ax,,?= |3P4|>q= #Ax,,S= |= #Ax,,X= |= #Ax,,]= |= #Ax,,b= |P>=AL=O |>A =A,,,= |3A =A,,= |3A =A,,L= |3Pg>A =A,,S= |3A =A,,X= |3A =A,,]= |3Pg=4O 4>A =A,,k= |3A =A,,= |3A =A,,= |3Pg=4O 4>A =A,,= |3A =A,,= |3A =A,,= |3Pg=4O 4>Ao =3Ao >Ao =3Ao>Ao =3Ao>Ao =3Ao  > Ao =3  Ao  > Ao=3Ao >Ao=3Ao >Ao=3Ao  >Ao=3Ao >Ao=3Ao>Ao=3Ao > A!="!A#,",,= $#|3%$A&='&A(,',= )(|3*)A+=,+A-,,,L= .-|3/.Pg0%*/>0A1=21A3,2,S= 43|354A6=76A8,7,X= 98|3:9A;=<;A=,<,]= >=|3?>Pg@5:?=4AO 4BA@>BAC=DCAE,D,k= FE|3GFAH=IHAJ,I,= KJ|3LKAM=NMAO,N,= PO|3QPPgRGLQ=4SO 4TSR>TAV=WVAX,W,= YX|3ZYA[=\[A],\,= ^]|3_^A`=a`Ab,a,= cb|3dcPgeZ_d=4fUO 4gfe>UgAoi =3jiAokh >kjAol =3mlAonh>nmAoo =3poAoqh>qpAorU =3srAoth >ts=4uqO 4vuu=4wh4xvw>hxAoz=3{zAo|y >|{Ao}=3~}Aoy>~Ao=3Aoy>AoU=3Aoy >=4qO 4=4y4>yAo=3AoU >Ao=3AoU>Ao=3AoU>=4qO 4=4U4>=4=4qO 44=4h4>=4 =4qO 44=4y4>=4=4qO 44=44>A=A,,,= |3A=A,,= |3A=A,,L= |3Pg>A=A,,S= |3A=A,,X= |3A=A,,]= |3Pg=4O 4>A=A,,k= |3A=A,,= |3A=A,,= |3Pg=4 O 4> A=A,,= |3A=A,,= |3A=A,,= |3Pg=4UO 4>UAo =3Aoh >Ao =3Aoh>Ao  =3Aoh>AoU =3Aoh >Ao=3Aoy >Ao=3Aoy>Ao =3Aoy>AoU=3Aoy >Ao=3Ao U > Ao =3  Ao U>  Ao  =3 AoU>=4h=4qO 44=44>=4y=4qO 44=44>=4U=4qO 44=4 4! >!A" =#"A$,#,,= %$|3&%A' =('A),(,= *)|3+*A, =-,A.,-,L= /.|30/Pg1&+0>1A2 =32A4,3,S= 54|365A7 =87A9,8,X= :9|3;:A< ==<A>,=,]= ?>|3@?PgA6;@=4BqO 4CBA>qCAE =FEAG,F,k= HG|3IHAJ =KJAL,K,= ML|3NMAO =POAQ,P,= RQ|3SRPgTINS=4UDO 4VUT>DVAW =XWAY,X,= ZY|3[ZA\ =]\A^,],= _^|3`_Aa =baAc,b,= dc|3edPgf[`e=4gO 4hgf>hAoi =3jiAok  >kjAolq =3mlAon >nmAooD =3poAoq >qpAor =3srAot  >tsAou=3vuAowU >wvAoxq=3yxAozU>zyAo{D=3|{Ao}U>}|Ao~=3~AoU >Ao=3Ao >Aoq=3Ao>AoD=3Ao>=4 =4qO 44=44>D=4U=4qO 44=44>=4=4qO 44=44>q=46Og=4O 4>Ao >=4D=43Ao >=4=43Ao>=4q=43Ao>=4QO=46O 4>6=4DOg=46Og3Ao >=4Og=46Og3Ao >=4qOg=46Og3Ao>=4QO=giOg>i=4DOg=gi3Ao>=4Og=gi3Ao >=4qOg=gi3Ao >= #Ao =3| A=,,,>= #Ao=3| A=,,>= #Ao=3| A=,,L>= #Ao =3| A=,,?>= #Ao =3| A=,,S>= #Ao=3| A=,,X>= #Ao=3| A=,,]>= #Ao =3| A=,,b>= #Ao =3| A=,,k>22!A = A=   > =     A = A= ~  >#= #A,= >*=*= !#A" ,!,?= #"|3$#= %#A& ,%,,= '&|3('= )#A* ,),= +*|3,+= -#A. ,-,L= /.|30/P41$(,0>61= 2#A3 ,2,S= 43|354= 6#A7 ,6,X= 87|398= :#A; ,:,]= <;|3=<= >#A? ,>,b= @?|3A@P4B59=A>QB= C#AD ,C,k= ED|3FEAoGi>GF= N#AOM,N,,= PO|3QP= R#ASM,R,= TS|3UT= V#AWM,V,L= XW|3YX= Z#A[M,Z,?= \[|3]\P4^QUY]>q^= _#A`M,_,S= a`|ba= c#AdM,c,X= ed|fe= g#AhM,g,]= ih|ji= k#AlM,k,b= ml|nmPobfjn>o=pAqL=rqO srr|tsupt>uAv =wvAx,w,,= yx|3zyA{ =|{A},|,= ~}|3~A =A,,L= |3Pgz>A =A,,S= |3A =A,,X= |3A =A,,]= |3Pg=4O 4>A =A,,k= |3A =A,,= |3A =A,,= |3Pg=4O 4>A =A,,= |3A =A,,= |3A =A,,= |3Pg=4O 4>Ao =3Ao >Ao =3Ao>Ao =3Ao>Ao =3Ao >Ao=3Ao  >Ao=3Ao >Ao=3Ao >Ao=3Ao  >Ao=3Ao >Ao=3Ao>Ao=3Ao>A=A,,,= |3A=A,,= |3A=A,,L= |3Pg>A=A,,S= |3A=A,,X= |3A=A,,]= |3Pg=4O 4>A=A,,k= |3A=A,,= |3A =  A , ,=  |3  Pg =4O 4>A=A,,= |3A=A,,= |3A=A,,= |3Pg =4!UO 4"! >U"Ao# =3$#Ao%h >%$Ao& =3'&Ao(h>('Ao) =3*)Ao+h>+*Ao,U =3-,Ao.h >.-=4/qO 40//=41h4201>h2Ao3=343Ao5y >54Ao6=376Ao8y>87Ao9=3:9Ao;y>;:Ao<U=3=<Ao>y >>==4?qO 4@??=4Ay4B@A>yBAoC=3DCAoEU >EDAoF=3GFAoHU>HGAoI=3JIAoKU>KJ=4LqO 4MLL=4NU4OMN>O=4P=4QqO 4RQQ4SPR=4Th4UST>U=4V =4WqO 4XWW4YVX=4Zy4[YZ>[=4\=4]qO 4^]]4_\^=4`4a_`>aAb=cbAd,c,,= ed|3feAg=hgAi,h,= ji|3kjAl=mlAn,m,L= on|3poPgqfkp>qAr=srAt,s,S= ut|3vuAw=xwAy,x,X= zy|3{zA|=}|A~,},]= ~|3Pgv{=4O 4>A=A,,k= |3A=A,,= |3A=A,,= |3Pg=4 O 4> A=A,,= |3A=A,,= |3A=A,,= |3Pg=4UO 4>UAo =3Aoh >Ao =3Aoh>Ao  =3Aoh>AoU =3Aoh >Ao=3Aoy >Ao=3Aoy>Ao =3Aoy>AoU=3Aoy >Ao=3AoU >Ao=3AoU>Ao =3AoU>=4h=4qO 44=44>=4y=4qO 44=44>=4U=4qO 44=44>A =A,,,= |3A =A,,= |3A =A,,L= |3Pg>A =A,,S= |3A =A,,X= |3A =A,,]= |3Pg=4qO 4>qA =A,,k= |3A =A,,= |3A =A ,,=  |3  Pg  =4 DO 4  >DA =A,,= |3A =A,,= |3A =A,,= |3Pg=4O 4 > Ao! =3"!Ao#  >#"Ao$q =3%$Ao& >&%Ao'D =3('Ao) >)(Ao* =3+*Ao,  >,+Ao-=3.-Ao/U >/.Ao0q=310Ao2U>21Ao3D=343Ao5U>54Ao6=376Ao8U >87Ao9=3:9Ao; >;:Ao<q=3=<Ao>>>=Ao?D=3@?AoA>A@=4B =4CqO 4DCC4EBD=4F4GEF>DG=4HU=4IqO 4JII4KHJ=4L4MKL>M=4N=4OqO 4POO4QNP=4R4SQR>qS=4T6OgUTT=4VO 4WVU>WAoX >X=4YD=4Z3[YZAo\ >\[=4]=4^3_]^Ao`>`_=4aq=4b3cabAod>dc=4eQOfee=4g6O 4hgf>6h=4iDOgjii=4k6Oglkk3mjlAon >nm=4oOgpoo=4q6Ogrqq3sprAot >ts=4uqOgvuu=4w6Ogxww3yvxAoz>zy=4{QO|{{=g}iOg~}|>i~=4DOg=gi3Ao>=4Og=gi3Ao >=4qOg=gi3Ao >= #Ao =3| A ,,,>= #Ao=3| A ,,>= #Ao=3| A ,,L>= #Ao =3| A ,,?>= #Ao =3| A ,,S>= #Ao=3| A ,,X>= #Ao=3| A ,,]>= #Ao =3| A ,,b>= #Ao =3| A ,,k> A = A = >=qA = A = ~  >#= #A, = >*=*= #A,,?= |3= #A,,,= |3= #A,,= |3= #A,,L= |3P4>6= #A,,S= |3= #A,,X= |3= #A,,]= |3= #A,,b= |3P4>Q= #A,,k= |3Aoi>= #A,,,= |3= #A ,,=  |3  = #A , ,L=  |3= #A,,?= |3P4 >q= #A,,S= |= #A,,X= |= #A,,]= | = !#A",!,b= #"|$#P% $>%=&A'L=('O )((|*)+&*>+A, =-,A.,-,,= /.|30/A1 =21A3,2,= 43|354A6 =76A8,7,L= 98|3:9Pg;05:>;A< ==<A>,=,S= ?>|3@?AA =BAAC,B,X= DC|3EDAF =GFAH,G,]= IH|3JIPgK@EJ=4LO 4MLK>MAN =ONAP,O,k= QP|3RQAS =TSAU,T,= VU|3WVAX =YXAZ,Y,= [Z|3\[Pg]RW\=4^O 4_^]>_A` =a`Ab,a,= cb|3dcAe =feAg,f,= hg|3ihAj =kjAl,k,= ml|3nmPgodin=4pO 4qpo>qAor =3srAot >tsAou =3vuAow>wvAox =3yxAoz>zyAo{ =3|{Ao} >}|Ao~=3~Ao  >Ao=3Ao >Ao=3Ao >Ao=3Ao  >Ao=3Ao >Ao=3Ao>Ao=3Ao>A=A,,,= |3A=A,,= |3A=A,,L= |3Pg>A=A,,S= |3A=A,,X= |3A=A,,]= |3Pg=4O 4>A=A,,k= |3A=A,,= |3A=A,,= |3Pg=4O 4>A=A,,= |3A=A,,= |3A=A,,= |3Pg=4UO 4>UAo =3Aoh >Ao =3Aoh>Ao =3Aoh>AoU =3Aoh >=4qO 4=4h4>hAo=3Aoy >Ao=3Aoy>Ao=3Aoy>AoU=3Aoy >=4qO 4=4y4>yAo=3AoU >Ao=3AoU>Ao=3AoU>=4qO 4=4U4>=4=4qO 44 =4 h4   > =4  =4 qO 4  4 =4y4>=4=4qO 44=44>A=A,,,= |3A=A,,= |3! A"=#"A$,#,L= %$|3&%Pg'!&>'A(=)(A*,),S= +*|3,+A-=.-A/,.,X= 0/|310A2=32A4,3,]= 54|365Pg7,16=48O 4987>9A:=;:A<,;,k= =<|3>=A?=@?AA,@,= BA|3CBAD=EDAF,E,= GF|3HGPgI>CH=4J O 4KJI> KAL=MLAN,M,= ON|3POAQ=RQAS,R,= TS|3UTAV=WVAX,W,= YX|3ZYPg[PUZ=4\UO 4]\[>U]Ao^ =3_^Ao`h >`_Aoa =3baAoch>cbAod  =3edAofh>feAogU =3hgAoih >ihAoj=3kjAoly >lkAom=3nmAooy>onAop =3qpAory>rqAosU=3tsAouy >utAov=3wvAoxU >xwAoy=3zyAo{U>{zAo| =3}|Ao~U>~}=4h=4qO 44=44>=4y=4qO 44=44>=4U=4qO 44=44>A =A,,,= |3A =A,,= |3A =A,,L= |3Pg>A =A,,S= |3A =A,,X= |3A =A,,]= |3Pg=4qO 4>qA =A,,k= |3A =A,,= |3A =A,,= |3Pg=4DO 4>DA =A,,= |3A =A,,= |3A =A,,= |3Pg=4O 4>Ao =3Ao  >Aoq =3Ao >AoD =3Ao >Ao =3Ao  >Ao=3AoU >Aoq=3AoU>AoD=3AoU>Ao=3AoU >Ao=3Ao >Aoq=3Ao>AoD=3Ao>=4 =4qO 44=44>D=4U=4qO 44=44>=4=4qO 44=44 >q =4 6Og   =4 O 4   > Ao >=4D=43Ao >=4=43Ao>=4q=43Ao>=4QO=46O 4>6=4DOg =4!6Og"!!3# "Ao$ >$#=4%Og&%%=4'6Og(''3)&(Ao* >*)=4+qOg,++=4-6Og.--3/,.Ao0>0/=41QO211=g3iOg432>i4=45DOg655=g7i3867Ao9>98=4:Og;::=g<i3=;<Ao> >>==4?qOg@??=gAi3B@AAoC >CB= D#AoE =3FE| GFAH,D,,>HG= I#AoJ=3KJ| LKAM,I,>ML= N#AoO=3PO| QPAR,N,L>RQ= S#AoT =3UT| VUAW,S,?>WV= X#AoY =3ZY| [ZA\,X,S>\[= ]#Ao^=3_^| `_Aa,],X>a`= b#Aoc=3dc| edAf,b,]>fe= g#Aoh =3ih| jiAk,g,b>kj= l#Aom =3nm| onAp,l,k>poqAr = srAt, = utvsu>v=wywx' xAz = {zA|, = }|~ ~} {~>#= #A,, = >*=*= #A,,?= |3= #A,,,= |3= #A,,= |3= #A,,L= |3P4>6= #A,,S= |3= #A,,X= |3= #A,,]= |3= #A,,b= |3P4>Q= #A,,k= |3Aoi>= #A,,,= |3= #A,,= |3= #A,,L= |3= #A,,?= |3P4>q= #A,,S= |= #A,,X= |= #A,,]= |= #A,,b= |P>=AL,=O |>A =A,,,= |3A =A,,= |3A =A,,L= |3Pg>A =A,,S= |3A =A,,X= |3A =A,,]= |3 Pg  =4 O 4   > A =  A , ,k=   |3  A = A , ,= |3 A =  A , ,=   |3  Pg   =4 O 4   > A =  A , ,=   |3  A =  A , ,=   |3  A =! A" ,! ,= # " |3$ # Pg%   $ =4& O 4' & % >' Ao( =3) ( Ao* >* ) Ao+ =3, + Ao- >- , Ao. =3/ . Ao0 >0 / Ao1 =32 1 Ao3 >3 2 Ao4 =35 4 Ao6  >6 5 Ao7 =38 7 Ao9 >9 8 Ao: =3; : Ao< >< ; Ao= =3> = Ao?  >? > Ao@ =3A @ AoB >B A AoC =3D C AoE >E D AoF =3G F AoH >H G AI =J I AK ,J ,,= L K |3M L AN =O N AP ,O ,= Q P |3R Q AS =T S AU ,T ,L= V U |3W V PgX M R W >X AY =Z Y A[ ,Z ,S= \ [ |3] \ A^ =_ ^ A` ,_ ,X= a ` |3b a Ac =d c Ae ,d ,]= f e |3g f Pgh ] b g =4i O 4j i h >j Ak =l k Am ,l ,k= n m |3o n Ap =q p Ar ,q ,= s r |3t s Au =v u Aw ,v ,= x w |3y x Pgz o t y =4{ O 4| { z >| A} =~ } A ,~ ,=  |3 A = A , ,= |3 A = A , ,= |3 Pg =4 UO 4 >U Ao =3 Ao h > Ao =3 Ao h> Ao =3 Ao h> Ao U =3 Ao h > =4 qO 4 =4 h4 >h Ao =3 Ao y > Ao =3 Ao y> Ao =3 Ao y> Ao U=3 Ao y > =4 qO 4 =4 y4 >y Ao =3 Ao U > Ao =3 Ao U> Ao =3 Ao U> =4 qO 4 =4 U4 > =4 =4 qO 4 4 =4 h4 > =4 =4 qO 4 4 =4 y4 > =4 =4 qO 4 4 =4 4 > A = A , ,,= |3 A = A , ,= |3 A = A , ,L= |3 Pg > A = A , ,S= |3 A = A , ,X= |3 A = A , ,]= |3 Pg =4 O 4 > A = A , ,k= |3 A = A , ,= |3 A = A , ,= |3 Pg =4 O 4 >  A =  A , ,=   |3  A =  A , ,= |3 A = A , ,=   |3  Pg   =4 UO 4   >U Ao =3  Ao h >  Ao =3  Ao h>  Ao  =3  Ao h>  Ao U =3  Ao h >  Ao =3! Ao" y >" ! Ao# =3$ # Ao% y>% $ Ao& =3' & Ao( y>( ' Ao) U=3* ) Ao+ y >+ * Ao, =3- , Ao. U >. - Ao/ =30 / Ao1 U>1 0 Ao2 =33 2 Ao4 U>4 3 =45 h=46 qO 47 6 6 48 5 7 =49 4: 8 9 >: =4; y=4< qO 4= < < 4> ; = =4? 4@ > ? >@ =4A U=4B qO 4C B B 4D A C =4E 4F D E >F AG =H G AI ,H ,,= J I |3K J AL =M L AN ,M ,= O N |3P O AQ =R Q AS ,R ,L= T S |3U T PgV K P U >V AW =X W AY ,X ,S= Z Y |3[ Z A\ =] \ A^ ,] ,X= _ ^ |3` _ Aa =b a Ac ,b ,]= d c |3e d Pgf [ ` e =4g qO 4h g f >qh Ai =j i Ak ,j ,k= l k |3m l An =o n Ap ,o ,= q p |3r q As =t s Au ,t ,= v u |3w v Pgx m r w =4y DO 4z y x >Dz A{ =| { A} ,| ,= ~ } |3 ~ A = A , ,= |3 A = A , ,= |3 Pg  =4 O 4 > Ao =3 Ao  > Ao q =3 Ao > Ao D =3 Ao > Ao =3 Ao  > Ao =3 Ao U > Ao q=3 Ao U> Ao D=3 Ao U> Ao =3 Ao U > Ao =3 Ao > Ao q=3 Ao > Ao D=3 Ao > =4 =4 qO 4 4 =4 4 >D =4 U=4 qO 4 4 =4 4 > =4 =4 qO 4 4 =4 4 >q =4 6Og =4 O 4 > Ao > =4 D=4 3 Ao > =4 =4 3 Ao > =4 q=4 3 Ao > =4 QO =4 6O 4 >6 =4 DOg =4 6Og 3 Ao > =4 Og =4 6Og 3 Ao > =4 qOg =4 6Og 3 Ao > =4 QO =g iOg >i =4 DOg =g i3 Ao > =4 Og =g i3 Ao > =4 qOg =g i3 Ao > = #Ao =3 | A , ,,> = #Ao =3 |   A , ,>  =  #Ao =3  |   A , ,L>  = #Ao =3 | A , ,?> =  #Ao =3  |   A , ,S>  =  #Ao =3  |   A , ,X>  =  #Ao =3  |   A , ,]>  =  #Ao =3  |  A! , ,b>! = " #Ao# =3$ # | % $ A& ," ,k>& % y' A( = ) ( A* ,= + * , ) + >, =- / - . . A0 = 1 0 A2 ,= 3 2 ~ 4 3  5 1 4 >#5 = 6 #A7 ,,= 8 7 9 6 8 >*9 =: *< : ; < ; = C #AD B ,C ,?= E D |3F E = G #AH B ,G ,,= I H |3J I = K #AL B ,K ,= M L |3N M = O #AP B ,O ,L= Q P |3R Q P4S F J N R >6S = T #AU B ,T ,S= V U |3W V = X #AY B ,X ,X= Z Y |3[ Z = \ #A] B ,\ ,]= ^ ] |3_ ^ = ` #Aa B ,` ,b= b a |3c b P4d W [ _ c >Qd = e #Af B ,e ,k= g f |3h g Aoi i>i h = p #Aq o ,p ,,= r q |3s r = t #Au o ,t ,= v u |3w v = x #Ay o ,x ,L= z y |3{ z = | #A} o ,| ,?= ~ } |3 ~ P4 s w {  >q = #A o , ,S= | = #A o , ,X= | = #A o , ,]= | = #A o , ,b= | P > = A L,= O  |  > A = A , ,,= |3 A = A , ,= |3 A = A , ,L= |3 Pg > A = A , ,S= |3 A = A , ,X= |3 A = A , ,]= |3 Pg =4 O 4 > A = A , ,k= |3 A = A , ,= |3 A = A , ,= |3 Pg =4 O 4 > A = A , ,= |3 A = A , ,= |3 A = A , ,= |3 Pg =4 O 4 > Ao =3 Ao > Ao =3 Ao > Ao =3 Ao > Ao =3 Ao > Ao =3 Ao  > Ao =3 Ao > Ao =3 Ao > Ao =3 Ao  > Ao =3 Ao > Ao =3 Ao > Ao =3 Ao > A = A , ,,=   |3  A =  A , ,=   |3  A = A , ,L= |3 Pg   > A =  A , ,S=   |3  A =  A , ,X=   |3  A =  A , ,]=   |3  Pg    =4 O 4   > A! =" ! A# ," ,k= $ # |3% $ A& =' & A( ,' ,= ) ( |3* ) A+ =, + A- ,, ,= . - |3/ . Pg0 % * / =41 O 42 1 0 >2 A3 =4 3 A5 ,4 ,= 6 5 |37 6 A8 =9 8 A: ,9 ,= ; : |3< ; A= => = A? ,> ,= @ ? |3A @ PgB 7 < A =4C UO 4D C B >UD AoE =3F E AoG h >G F AoH =3I H AoJ h>J I AoK =3L K AoM h>M L AoN U =3O N AoP h >P O =4Q qO 4R Q Q =4S h4T R S >hT AoU =3V U AoW y >W V AoX =3Y X AoZ y>Z Y Ao[ =3\ [ Ao] y>] \ Ao^ U=3_ ^ Ao` y >` _ =4a qO 4b a a =4c y4d b c >yd Aoe =3f e Aog U >g f Aoh =3i h Aoj U>j i Aok =3l k Aom U>m l =4n qO 4o n n =4p U4q o p >q =4r =4s qO 4t s s 4u r t =4v h4w u v >w =4x =4y qO 4z y y 4{ x z =4| y4} { | >} =4~ =4 qO 4   4 ~ =4 4 > A = A , ,,= |3 A = A , ,= |3 A = A , ,L= |3 Pg > A = A , ,S= |3 A = A , ,X= |3 A = A , ,]= |3 Pg =4 O 4 > A = A , ,k= |3 A = A , ,= |3 A = A , ,= |3 Pg =4 O 4 >  A = A , ,= |3 A = A , ,= |3 A = A , ,= |3 Pg =4 UO 4 >U Ao =3 Ao h > Ao =3 Ao h> Ao  =3 Ao h> Ao U =3 Ao h > Ao =3 Ao y > Ao =3 Ao y> Ao =3 Ao y> Ao U=3 Ao y > Ao =3 Ao U > Ao =3 Ao U> Ao =3 Ao U> =4 h=4 qO 4 4 =4 4 > =4 y=4 qO 4 4 =4 4 > =4 U=4 qO 4 4 =4 4 > A = A , ,,= |3 A =  A , ,=   |3  A =  A , ,L= |3 Pg   > A = A , ,S=   |3  A =  A , ,X=   |3  A =  A , ,]=   |3  Pg    =4 qO 4   >q A =  A! , ,k= " ! |3# " A$ =% $ A& ,% ,= ' & |3( ' A) =* ) A+ ,* ,= , + |3- , Pg. # ( - =4/ DO 40 / . >D0 A1 =2 1 A3 ,2 ,= 4 3 |35 4 A6 =7 6 A8 ,7 ,= 9 8 |3: 9 A; =< ; A= ,< ,= > = |3? > Pg@ 5 : ? =4A O 4B A @ >B AoC =3D C AoE  >E D AoF q =3G F AoH >H G AoI D =3J I AoK >K J AoL =3M L AoN  >N M AoO =3P O AoQ U >Q P AoR q=3S R AoT U>T S AoU D=3V U AoW U>W V AoX =3Y X AoZ U >Z Y Ao[ =3\ [ Ao] >] \ Ao^ q=3_ ^ Ao` >` _ Aoa D=3b a Aoc >c b =4d =4e qO 4f e e 4g d f =4h 4i g h >Di =4j U=4k qO 4l k k 4m j l =4n 4o m n >o =4p =4q qO 4r q q 4s p r =4t 4u s t >qu =4v 6Ogw v v =4x O 4y x w >y Aoz >z =4{ D=4| 3} { | Ao~ >~ } =4 =4 3  Ao > =4 q=4 3 Ao > =4 QO =4 6O 4 >6 =4 DOg =4 6Og 3 Ao > =4 Og =4 6Og 3 Ao > =4 qOg =4 6Og 3 Ao > =4 QO =g iOg >i =4 DOg =g i3 Ao > =4 Og =g i3 Ao > =4 qOg =g i3 Ao > = #Ao =3 | A B , ,,> = #Ao =3 | A B , ,> = #Ao =3 | A B , ,L> = #Ao =3 | A B , ,?> = #Ao =3 | A B , ,S> = #Ao =3 | A B , ,X> = #Ao =3 | A B , ,]> = #Ao =3 | A B , ,b> = #Ao =3 | A B , ,k> < < /  A = A ,=  > =    A = A ,= ~  ># = #A ,,=  >* = *   = #A , ,?= |3 = #A , ,,= |3 = #A ,,= |3= #A ,,L= |3P4  >6 = #A  , ,S=  |3  = #A ,,X= |3= #A ,,]= |3= #A ,,b= |3P4 >Q= #A ,,k= |3Aoi>= &#A'%,&,,= ('|3)(= *#A+%,*,= ,+|3-,= .#A/%,.,L= 0/|310= 2#A3%,2,?= 43|354P46)-15>q6= 7#A8%,7,S= 98|:9= ;#A<%,;,X= =<|>== ?#A@%,?,]= A@|BA= C#AD%,C,b= ED|FEPG:>BF>G=HAIL,=JIO KJJ|LKMHL>MAN =ONAP,O,,= QP|3RQAS =TSAU,T,= VU|3WVAX =YXAZ,Y,L= [Z|3\[Pg]RW\>]A^ =_^A`,_,S= a`|3baAc =dcAe,d,X= fe|3gfAh =ihAj,i,]= kj|3lkPgmbgl=4nO 4onm>oAp =qpAr,q,k= sr|3tsAu =vuAw,v,= xw|3yxAz ={zA|,{,= }||3~}Pgty~=4O 4>A =A,,= |3A =A,,= |3A =A,,= |3Pg=4O 4>Ao =3Ao >Ao =3Ao>Ao =3Ao>Ao =3Ao >Ao=3Ao  >Ao=3Ao >Ao=3Ao >Ao=3Ao  >Ao=3Ao >Ao=3Ao>Ao=3Ao>A=A,,,= |3A=A,,= |3A=A,,L= |3Pg>A=A,,S= |3A=A,,X= |3A=A,,]= |3Pg=4O 4>A=A,,k= |3A=A,,= |3A=A,,= |3Pg=4O 4>A=A,,= |3A=A,,= |3A=A,,= |3Pg=4UO 4>UAo =3Aoh >Ao =3Aoh>Ao =3Aoh>AoU =3Aoh >=4qO 4=4 h4  >h Ao =3  Ao y >  Ao=3Aoy>Ao=3Aoy>AoU=3Aoy >=4qO 4=4y4>yAo=3AoU >Ao=3Ao U> Ao!=3"!Ao#U>#"=4$qO 4%$$=4&U4'%&>'=4(=4)qO 4*))4+(*=4,h4-+,>-=4. =4/qO 40//41.0=42y4312>3=44=45qO 46554746=484978>9A:=;:A<,;,,= =<|3>=A?=@?AA,@,= BA|3CBAD=EDAF,E,L= GF|3HGPgI>CH>IAJ=KJAL,K,S= ML|3NMAO=POAQ,P,X= RQ|3SRAT=UTAV,U,]= WV|3XWPgYNSX=4ZO 4[ZY>[A\=]\A^,],k= _^|3`_Aa=baAc,b,= dc|3edAf=gfAh,g,= ih|3jiPgk`ej=4l O 4mlk> mAn=onAp,o,= qp|3rqAs=tsAu,t,= vu|3wvAx=yxAz,y,= {z|3|{Pg}rw|=4~UO 4~}>UAo =3Aoh >Ao =3Aoh>Ao  =3Aoh>AoU =3Aoh >Ao=3Aoy >Ao=3Aoy>Ao =3Aoy>AoU=3Aoy >Ao=3AoU >Ao=3AoU>Ao =3AoU>=4h=4qO 44=44>=4y=4qO 44=44>=4U=4qO 44=44>A =A,,,= |3A =A,,= |3A =A,,L= |3Pg>A =A,,S= |3A =A,,X= |3A =A,,]= |3Pg=4qO 4>qA =A,,k= |3A =A,,= |3A =A,,= |3Pg=4DO 4>DA =A,,= |3A =A,,= |3A =A,,= |3Pg=4O 4>Ao =3Ao  >Aoq =3Ao >AoD =3Ao >Ao =3Ao  >Ao=3AoU >Aoq=3 Ao U>  Ao D=3  Ao U>  Ao=3AoU >Ao=3Ao >Aoq=3Ao>AoD=3Ao>=4 =4qO 44=44>D=4 U=4!qO 4"!!4# "=4$4%#$>%=4&=4'qO 4(''4)&(=4*4+)*>q+=4,6Og-,,=4.O 4/.->/Ao0 >0=41D=423312Ao4 >43=45=463756Ao8>87=49q=4:3;9:Ao<><;=4=QO>===4?6O 4@?>>6@=4ADOgBAA=4C6OgDCC3EBDAoF >FE=4GOgHGG=4I6OgJII3KHJAoL >LK=4MqOgNMM=4O6OgPOO3QNPAoR>RQ=4SQOTSS=gUiOgVUT>iV=4WDOgXWW=gYi3ZXYAo[>[Z=4\Og]\\=g^i3_]^Ao` >`_=4aqOgbaa=gci3dbcAoe >ed= f#Aog =3hg| ihAj ,f,,>ji= k#Aol=3ml| nmAo ,k,>on= p#Aoq=3rq| srAt ,p,L>ts= u#Aov =3wv| xwAy ,u,?>yx= z#Ao{ =3|{| }|A~ ,z,S>~}= #Ao=3| A ,,X>= #Ao=3| A ,,]>= #Ao =3| A ,,b>= #Ao =3| A ,,k>   A = A, = >=A = A, = ~  >#= #A,, = >*=*= #A,,?= |3= #A,,,= |3= #A,,= |3= #A,,L= |3P4>6= #A,,S= |3= #A,,X= |3= #A,,]= |3= #A,,b= |3P4>Q= #A,,k= |3Aoi>= #A,,,= |3= #A,,= |3= #A,,L= |3= #A,,?= |3P4>q= #A,,S= |= #A,,X= |= #A,,]= |= #A,,b= |P>=AL,=O |>A =A,,,= |3A  =  A , ,=  |3  A =A,,L= |3Pg >A =A,,S= |3A =A,,X= |3A =A ,,]= ! |3"!Pg#"=4$O 4%$#>%A& ='&A(,',k= )(|3*)A+ =,+A-,,,= .-|3/.A0 =10A2,1,= 32|343Pg5*/4=46O 4765>7A8 =98A:,9,= ;:|3<;A= =>=A?,>,= @?|3A@AB =CBAD,C,= ED|3FEPgG<AF=4HO 4IHG>IAoJ =3KJAoL >LKAoM =3NMAoO>ONAoP =3QPAoR>RQAoS =3TSAoU >UTAoV=3WVAoX  >XWAoY=3ZYAo[ >[ZAo\=3]\Ao^ >^]Ao_=3`_Aoa  >a`Aob=3cbAod >dcAoe=3feAog>gfAoh=3ihAoj>jiAk=lkAm,l,,= nm|3onAp=qpAr,q,= sr|3tsAu=vuAw,v,L= xw|3yxPgzoty>zA{=|{A},|,S= ~}|3~A=A,,X= |3A=A,,]= |3Pg=4O 4>A=A,,k= |3A=A,,= |3A=A,,= |3Pg=4O 4>A=A,,= |3A=A,,= |3A=A,,= |3Pg=4UO 4>UAo =3Aoh >Ao =3Aoh>Ao =3Aoh>AoU =3Aoh >=4qO 4=4h4>hAo=3Aoy >Ao=3Aoy>Ao=3Aoy>AoU=3Aoy >=4qO 4=4y4>yAo=3AoU >Ao=3AoU>Ao=3AoU>=4qO 4=4U4>=4=4qO 44=4h4>=4 =4qO 44=4y4>=4=4qO 44=44>A=A,,,= |3A=A,,= |3A=A,,L= |3Pg>A=A,,S= |3A=A,,X= |3 A =  A , ,]=  |3 Pg =4O 4>A=A,,k= |3A=A,,= |3A=A,,= |3 Pg! =4" O 4#"!> #A$=%$A&,%,= '&|3('A)=*)A+,*,= ,+|3-,A.=/.A0,/,= 10|321Pg3(-2=44UO 4543>U5Ao6 =376Ao8h >87Ao9 =3:9Ao;h>;:Ao<  =3=<Ao>h>>=Ao?U =3@?AoAh >A@AoB=3CBAoDy >DCAoE=3FEAoGy>GFAoH =3IHAoJy>JIAoKU=3LKAoMy >MLAoN=3ONAoPU >POAoQ=3RQAoSU>SRAoT =3UTAoVU>VU=4Wh=4XqO 4YXX4ZWY=4[4\Z[>\=4]y=4^qO 4_^^4`]_=4a4b`a>b=4cU=4dqO 4edd4fce=4g4hfg>hAi =jiAk,j,,= lk|3mlAn =onAp,o,= qp|3rqAs =tsAu,t,L= vu|3wvPgxmrw>xAy =zyA{,z,S= |{|3}|A~ =~A,,X= |3A =A,,]= |3Pg}=4qO 4>qA =A,,k= |3A =A,,= |3A =A,,= |3Pg=4DO 4>DA =A,,= |3A =A,,= |3A =A,,= |3Pg=4O 4>Ao =3Ao  >Aoq =3Ao >AoD =3Ao >Ao =3Ao  >Ao=3AoU >Aoq=3AoU>AoD=3AoU>Ao=3AoU >Ao=3Ao >Aoq=3Ao>AoD=3Ao>=4 =4qO 44=44>D=4U=4qO 44=44>=4=4qO 44=44>q=46Og=4O 4>Ao >=4D=43Ao >=4=43Ao>=4q=43Ao>=4QO=46O 4>6=4DOg=46Og3Ao >=4Og=46Og3Ao >=4qOg=46Og3Ao>=4 QO   =g iOg   >i =4 DOg  =gi3Ao>=4Og=gi3Ao >=4qOg=gi3Ao >= #Ao =3| A ,,,> = !#Ao"=3#"| $#A%,!,>%$= &#Ao'=3('| )(A*,&,L>*)= +#Ao, =3-,| .-A/,+,?>/.= 0#Ao1 =321| 32A4,0,S>43= 5#Ao6=376| 87A9,5,X>98= :#Ao;=3<;| =<A>,:,]>>== ?#Ao@ =3A@| BAAC,?,b>CB= D#AoE =3FE| GFAH,D,k>HG  / / yy  !!8@ACGlobals g_VertCountComputeSkinCBufferdg_BatchOffsets  g_PoseOffsets@ g_VertCountsg_poseBufferMaxIndex`ComputeSkinInPlaceCBufferdg_BatchOffsets  g_PoseOffsets@ g_VertCountsg_poseBufferMaxIndex`Internal-BlendShape main$GlobalsinBlendShapeVerticesinOutMeshVerticesDXBCy3 V aK,<LISGNOSGNSHEXlP[jYF p_h@O     & @( F~& @ r F2 V  r >@Amain$GlobalsinBlendShapeVerticesinOutMeshVerticesDXBC@&|m&,<LISGNOSGNSHEX@PjYF p_h@O     &" @(F~#  @(@r Fr& @r:F#  @@ r F2 V  2 rF Fr:r F>@Amain$GlobalsinBlendShapeVerticesinOutMeshVerticesdDXBCdߝ{ JsC+1d,<LISGNOSGNSHEXPjYF p_h@O     &" @(F~#2@((@  F~2Fp& @(r:F#2@((@ r FF2 r F2 rF F6B:2 r&  Fr:Fr FF>@A batchCopyComputeCopyCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4 inVertices5 inVertices6 inVertices7 outVertices0 outVertices1 outVertices2 outVertices3 outVertices4 outVertices5 outVertices6 outVertices7PDXBC^w^UKA9cP,<LISGNOSGNSHEXPjYF pppppppp_h@P :   : AO" : & @  yr P *   * AO" * & @  yr P     AO"  & @  yr P     AO"  & @  yr P :   : AO" : & @  yr P *   * AO" * & @  yr P     AO"  & @  yr P     AO"  & @  yr >@A batchCopyComputeCopyCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4 inVertices5 inVertices6 inVertices7 outVertices0 outVertices1 outVertices2 outVertices3 outVertices4 outVertices5 outVertices6 outVertices7p DXBCzؗ#xhʡp ,<LISGNOSGNSHEX PjYF pppppppp_h@P :   : AO" : &" @rFr#  @@ r FrrFr FP *   * AO" * &" @rFr#  @@ r FrrFr FP     AO"  &" @rFr#  @@ r FrrFr FP     AO"  &" @rFr#  @@ r FrrFr FP :   : AO" : &" @rFr#  @@ r FrrFr FP *   * AO" * &" @rFr#  @@ r FrrFr FP     AO"  &" @rFr#  @@ r FrrFr FP     AO"  &" @rFr#  @@ r FrrFr F>@A batchCopyComputeCopyCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4 inVertices5 inVertices6 inVertices7 outVertices0 outVertices1 outVertices2 outVertices3 outVertices4 outVertices5 outVertices6 outVertices70DXBC;D1)*)h0,<LISGNOSGNSHEX PwjYF pppppppp_h@P :   : AO" : &" @(rFr#R@((@ r Fr*F~rFr F*FP *   * AO" * &" @(rFr#R@((@ r Fr*F~rFr F*FP     AO"  &" @(rFr#R@((@ r Fr*F~rFr F*FP     AO"  &" @(rFr#R@((@ r Fr*F~rFr F*FP :   : AO" : &" @(rFr#R@((@ r Fr*F~rFr F*FP *   * AO" * &" @(rFr#R@((@ r Fr*F~rFr F*FP     AO"  &" @(rFr#R@((@ r Fr*F~rFr F*FP     AO"  &" @(rFr#R@((@ r Fr*F~rFr F*F>@A batchMainComputeBlendShapeCBufferinBlendShapeVertices0inBlendShapeVertices1inBlendShapeVertices2inBlendShapeVertices3inBlendShapeVertices4inBlendShapeVertices5inBlendShapeVertices6inBlendShapeVertices7inOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices6inOutVertices7 DXBC%y?F^Rqb² ,<LISGNOSGNSHEX\ PjYF pppppppp_h@P :   : AO" :  : & @( F~& @ r F2 V  r P *   * AO" *  * & @( F~& @ r F2 V  r P     AO"    & @( F~& @ r F2 VV  r P     AO"    & @( F~& @ r F2 V  r P :   : AO" :  : & @( F~& @ r F2 V  r P *   * AO" *  * & @( F~& @ r F2 V  r P     AO"    & @( F~& @ r F2 VV  r P     AO"    & @( F~& @ r F2 V  r >@A batchMainComputeBlendShapeCBufferinBlendShapeVertices0inBlendShapeVertices1inBlendShapeVertices2inBlendShapeVertices3inBlendShapeVertices4inBlendShapeVertices5inBlendShapeVertices6inBlendShapeVertices7inOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices6inOutVertices7PDXBC0*ަ,I1UP,<LISGNOSGNSHEXPjYF pppppppp_h@P :   : AO" :  : &" @(F~#  @(@r Fr& @r:F#  @@ r F2 V  2 rF Fr:r FP *   * AO" *  * &" @(F~#  @(@r Fr& @r:F#  @@ r F2 V  2 rF Fr:r FP     AO"    &" @(F~#  @(@r Fr& @r:F#  @@ r F2 VV  2 rFV Fr:r FP     AO"    &" @(F~#  @(@r Fr& @r:F#  @@ r F2 V  2 rF Fr:r FP :   : AO" :  : &" @(F~#  @(@r Fr& @r:F#  @@ r F2 V  2 rF Fr:r FP *   * AO" *  * &" @(F~#  @(@r Fr& @r:F#  @@ r F2 V  2 rF Fr:r FP     AO"    &" @(F~#  @(@r Fr& @r:F#  @@ r F2 VV  2 rFV Fr:r FP     AO"    &" @(F~#  @(@r Fr& @r:F#  @@ r F2 V  2 rF Fr:r F>@A batchMainComputeBlendShapeCBufferinBlendShapeVertices0inBlendShapeVertices1inBlendShapeVertices2inBlendShapeVertices3inBlendShapeVertices4inBlendShapeVertices5inBlendShapeVertices6inBlendShapeVertices7inOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices6inOutVertices7DXBCtz`efǿ,<LISGNOSGNSHEX|P_jYF pppppppp_h@P :   : AO" :  : &" @(F~#2@((@  F~2Fp& @(r:F#2@((@ r FF2 r F2 rF F6B:2 r&  Fr:Fr FFP *   * AO" *  * &" @(F~#2@((@  F~2Fp& @(r:F#2@((@ r FF2 r F2 rF F6B:2 r&  Fr:Fr FFP     AO"    &" @(F~#2@((@  F~2Fp& @(r:F#2@((@ r FF2 rV F2 rFV F6B:2 r& V Fr:Fr FFP     AO"    &" @(F~#2@((@  F~2Fp& @(r:F#2@((@ r FF2 r F2 rF F6B:2 r&  Fr:Fr FFP :   : AO" :  : &" @(F~#2@((@  F~2Fp& @(r:F#2@((@ r FF2 r F2 rF F6B:2 r&  Fr:Fr FFP *   * AO" *  * &" @(F~#2@((@  F~2Fp& @(r:F#2@((@ r FF2 r F2 rF F6B:2 r&  Fr:Fr FFP     AO"    &" @(F~#2@((@  F~2Fp& @(r:F#2@((@ r FF2 rV F2 rFV F6B:2 r& V Fr:Fr FFP     AO"    &" @(F~#2@((@  F~2Fp& @(r:F#2@((@ r FF2 r F2 rF F6B:2 r&  Fr:Fr FF>@A$Globals g_FirstVert g_VertCountg_WeightComputeCopyCBuffer@ g_VertCountsg_BatchOffsets ComputeBlendShapeCBuffer g_VertCountsg_BatchOffsets  g_FirstVerts@ g_Weights`  main$GlobalsinBlendShapeVerticesinOutMeshVertices#version 310 es #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif UNITY_BINDING(0) uniform CGlobals { uint g_FirstVert; uint g_VertCount; float g_Weight; }; struct inBlendShapeVertices_type { uint[10] value; }; layout(std430, binding = 1) readonly buffer inBlendShapeVertices { inBlendShapeVertices_type inBlendShapeVertices_buf[]; }; struct inOutMeshVertices_type { uint[3] value; }; layout(std430, binding = 0) buffer inOutMeshVertices { inOutMeshVertices_type inOutMeshVertices_buf[]; }; vec4 u_xlat0; int u_xlati0; bool u_xlatb0; vec3 u_xlat1; vec3 u_xlat2; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x> 2) + 0]), uintBitsToFloat(inBlendShapeVertices_buf[u_xlati0].value[(0 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices_buf[u_xlati0].value[(0 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices_buf[u_xlati0].value[(0 >> 2) + 3])); u_xlat1.xyz = vec3(uintBitsToFloat(inOutMeshVertices_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 0]), uintBitsToFloat(inOutMeshVertices_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 1]), uintBitsToFloat(inOutMeshVertices_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 2])); u_xlat2.xyz = u_xlat0.yzw * vec3(vec3(g_Weight, g_Weight, g_Weight)) + u_xlat1.xyz; inOutMeshVertices_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat2.x)); inOutMeshVertices_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat2.y)); inOutMeshVertices_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat2.z)); } return; } @Amain$GlobalsinBlendShapeVerticesinOutMeshVertices #version 310 es #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif UNITY_BINDING(0) uniform CGlobals { uint g_FirstVert; uint g_VertCount; float g_Weight; }; struct inBlendShapeVertices_type { uint[10] value; }; layout(std430, binding = 1) readonly buffer inBlendShapeVertices { inBlendShapeVertices_type inBlendShapeVertices_buf[]; }; struct inOutMeshVertices_type { uint[6] value; }; layout(std430, binding = 0) buffer inOutMeshVertices { inOutMeshVertices_type inOutMeshVertices_buf[]; }; vec3 u_xlat0; int u_xlati0; bool u_xlatb0; vec4 u_xlat1; vec4 u_xlat2; vec3 u_xlat3; vec4 u_xlat4; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x> 2) + 0]), uintBitsToFloat(inBlendShapeVertices_buf[u_xlati0].value[(0 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices_buf[u_xlati0].value[(0 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices_buf[u_xlati0].value[(0 >> 2) + 3])); u_xlat0.xyz = vec3(uintBitsToFloat(inBlendShapeVertices_buf[u_xlati0].value[(16 >> 2) + 0]), uintBitsToFloat(inBlendShapeVertices_buf[u_xlati0].value[(16 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices_buf[u_xlati0].value[(16 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 0]), uintBitsToFloat(inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1]), uintBitsToFloat(inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2]), uintBitsToFloat(inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3])); u_xlat3.xy = vec2(uintBitsToFloat(inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 0]), uintBitsToFloat(inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1])); u_xlat4.xyz = u_xlat1.yzw * vec3(vec3(g_Weight, g_Weight, g_Weight)) + u_xlat2.xyz; u_xlat3.z = u_xlat2.w; u_xlat0.xyz = u_xlat0.xyz * vec3(vec3(g_Weight, g_Weight, g_Weight)) + u_xlat3.zxy; u_xlat4.w = u_xlat0.x; inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat4.x)); inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat4.y)); inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat4.z)); inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat4.w)); inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat0.y)); inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat0.z)); } return; } @Amain$GlobalsinBlendShapeVerticesinOutMeshVertices#version 310 es #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif UNITY_BINDING(0) uniform CGlobals { uint g_FirstVert; uint g_VertCount; float g_Weight; }; struct inBlendShapeVertices_type { uint[10] value; }; layout(std430, binding = 1) readonly buffer inBlendShapeVertices { inBlendShapeVertices_type inBlendShapeVertices_buf[]; }; struct inOutMeshVertices_type { uint[10] value; }; layout(std430, binding = 0) buffer inOutMeshVertices { inOutMeshVertices_type inOutMeshVertices_buf[]; }; vec3 u_xlat0; int u_xlati0; bool u_xlatb0; vec4 u_xlat1; vec4 u_xlat2; vec4 u_xlat3; vec4 u_xlat4; vec3 u_xlat5; vec4 u_xlat6; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x> 2) + 0]), uintBitsToFloat(inBlendShapeVertices_buf[u_xlati0].value[(0 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices_buf[u_xlati0].value[(0 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices_buf[u_xlati0].value[(0 >> 2) + 3])); u_xlat2 = vec4(uintBitsToFloat(inBlendShapeVertices_buf[u_xlati0].value[(16 >> 2) + 0]), uintBitsToFloat(inBlendShapeVertices_buf[u_xlati0].value[(16 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices_buf[u_xlati0].value[(16 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices_buf[u_xlati0].value[(16 >> 2) + 3])); u_xlat0.xy = vec2(uintBitsToFloat(inBlendShapeVertices_buf[u_xlati0].value[(32 >> 2) + 0]), uintBitsToFloat(inBlendShapeVertices_buf[u_xlati0].value[(32 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3]), uintBitsToFloat(inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 0]), uintBitsToFloat(inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1]), uintBitsToFloat(inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2])); u_xlat4 = vec4(uintBitsToFloat(inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 0]), uintBitsToFloat(inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1]), uintBitsToFloat(inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 2]), uintBitsToFloat(inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 3])); u_xlat5.z = uintBitsToFloat(inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(32 >> 2) + 0]); u_xlat6.xyz = u_xlat1.yzw * vec3(vec3(g_Weight, g_Weight, g_Weight)) + u_xlat3.yzw; u_xlat3.yz = u_xlat4.xy; u_xlat3.xyz = u_xlat2.yzx * vec3(vec3(g_Weight, g_Weight, g_Weight)) + u_xlat3.yzx; u_xlat0.z = u_xlat2.w; u_xlat5.xy = u_xlat4.zw; u_xlat0.xyz = u_xlat0.zxy * vec3(vec3(g_Weight, g_Weight, g_Weight)) + u_xlat5.xyz; u_xlat6.w = u_xlat3.z; inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat6.x)); inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat6.y)); inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat6.z)); inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat6.w)); u_xlat3.zw = u_xlat0.xy; inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat3.x)); inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat3.y)); inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat3.z)); inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat3.w)); inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat0.z)); } return; } @A batchCopyComputeCopyCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4 inVertices5 inVertices6 inVertices7 outVertices0 outVertices1 outVertices2 outVertices3 outVertices4 outVertices5 outVertices6 outVertices7%#version 310 es #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif UNITY_BINDING(0) uniform ComputeCopyCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; }; struct inVertices0_type { uint[3] value; }; layout(std430, binding = 8) readonly buffer inVertices0 { inVertices0_type inVertices0_buf[]; }; struct inVertices1_type { uint[3] value; }; layout(std430, binding = 9) readonly buffer inVertices1 { inVertices1_type inVertices1_buf[]; }; struct inVertices2_type { uint[3] value; }; layout(std430, binding = 10) readonly buffer inVertices2 { inVertices2_type inVertices2_buf[]; }; struct inVertices3_type { uint[3] value; }; layout(std430, binding = 11) readonly buffer inVertices3 { inVertices3_type inVertices3_buf[]; }; struct inVertices4_type { uint[3] value; }; layout(std430, binding = 12) readonly buffer inVertices4 { inVertices4_type inVertices4_buf[]; }; struct inVertices5_type { uint[3] value; }; layout(std430, binding = 13) readonly buffer inVertices5 { inVertices5_type inVertices5_buf[]; }; struct inVertices6_type { uint[3] value; }; layout(std430, binding = 14) readonly buffer inVertices6 { inVertices6_type inVertices6_buf[]; }; struct inVertices7_type { uint[3] value; }; layout(std430, binding = 15) readonly buffer inVertices7 { inVertices7_type inVertices7_buf[]; }; struct outVertices0_type { uint[3] value; }; layout(std430, binding = 0) buffer outVertices0 { outVertices0_type outVertices0_buf[]; }; struct outVertices1_type { uint[3] value; }; layout(std430, binding = 1) buffer outVertices1 { outVertices1_type outVertices1_buf[]; }; struct outVertices2_type { uint[3] value; }; layout(std430, binding = 2) buffer outVertices2 { outVertices2_type outVertices2_buf[]; }; struct outVertices3_type { uint[3] value; }; layout(std430, binding = 3) buffer outVertices3 { outVertices3_type outVertices3_buf[]; }; struct outVertices4_type { uint[3] value; }; layout(std430, binding = 4) buffer outVertices4 { outVertices4_type outVertices4_buf[]; }; struct outVertices5_type { uint[3] value; }; layout(std430, binding = 5) buffer outVertices5 { outVertices5_type outVertices5_buf[]; }; struct outVertices6_type { uint[3] value; }; layout(std430, binding = 6) buffer outVertices6 { outVertices6_type outVertices6_buf[]; }; struct outVertices7_type { uint[3] value; }; layout(std430, binding = 7) buffer outVertices7 { outVertices7_type outVertices7_buf[]; }; uint u_xlatu0; bool u_xlatb0; ivec3 u_xlati1; bool u_xlatb1; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].w); u_xlatb1 = u_xlatu0> 2) + 0]), int(inVertices7_buf[u_xlatu0].value[(0 >> 2) + 1]), int(inVertices7_buf[u_xlatu0].value[(0 >> 2) + 2])); outVertices7_buf[u_xlatu0].value[(0 >> 2)] = uint(u_xlati1.x); outVertices7_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(u_xlati1.y); outVertices7_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(u_xlati1.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].z); u_xlatb1 = u_xlatu0> 2) + 0]), int(inVertices6_buf[u_xlatu0].value[(0 >> 2) + 1]), int(inVertices6_buf[u_xlatu0].value[(0 >> 2) + 2])); outVertices6_buf[u_xlatu0].value[(0 >> 2)] = uint(u_xlati1.x); outVertices6_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(u_xlati1.y); outVertices6_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(u_xlati1.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].y); u_xlatb1 = u_xlatu0> 2) + 0]), int(inVertices5_buf[u_xlatu0].value[(0 >> 2) + 1]), int(inVertices5_buf[u_xlatu0].value[(0 >> 2) + 2])); outVertices5_buf[u_xlatu0].value[(0 >> 2)] = uint(u_xlati1.x); outVertices5_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(u_xlati1.y); outVertices5_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(u_xlati1.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb1 = u_xlatu0> 2) + 0]), int(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 1]), int(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 2])); outVertices4_buf[u_xlatu0].value[(0 >> 2)] = uint(u_xlati1.x); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(u_xlati1.y); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(u_xlati1.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb1 = u_xlatu0> 2) + 0]), int(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 1]), int(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 2])); outVertices3_buf[u_xlatu0].value[(0 >> 2)] = uint(u_xlati1.x); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(u_xlati1.y); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(u_xlati1.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb1 = u_xlatu0> 2) + 0]), int(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 1]), int(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 2])); outVertices2_buf[u_xlatu0].value[(0 >> 2)] = uint(u_xlati1.x); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(u_xlati1.y); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(u_xlati1.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb1 = u_xlatu0> 2) + 0]), int(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 1]), int(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 2])); outVertices1_buf[u_xlatu0].value[(0 >> 2)] = uint(u_xlati1.x); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(u_xlati1.y); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(u_xlati1.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb1 = u_xlatu0> 2) + 0]), int(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 1]), int(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 2])); outVertices0_buf[u_xlatu0].value[(0 >> 2)] = uint(u_xlati1.x); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(u_xlati1.y); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(u_xlati1.z); } } } } } } } } } return; } @A batchCopyComputeCopyCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4 inVertices5 inVertices6 inVertices7 outVertices0 outVertices1 outVertices2 outVertices3 outVertices4 outVertices5 outVertices6 outVertices74#version 310 es #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif UNITY_BINDING(0) uniform ComputeCopyCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; }; struct inVertices0_type { uint[6] value; }; layout(std430, binding = 8) readonly buffer inVertices0 { inVertices0_type inVertices0_buf[]; }; struct inVertices1_type { uint[6] value; }; layout(std430, binding = 9) readonly buffer inVertices1 { inVertices1_type inVertices1_buf[]; }; struct inVertices2_type { uint[6] value; }; layout(std430, binding = 10) readonly buffer inVertices2 { inVertices2_type inVertices2_buf[]; }; struct inVertices3_type { uint[6] value; }; layout(std430, binding = 11) readonly buffer inVertices3 { inVertices3_type inVertices3_buf[]; }; struct inVertices4_type { uint[6] value; }; layout(std430, binding = 12) readonly buffer inVertices4 { inVertices4_type inVertices4_buf[]; }; struct inVertices5_type { uint[6] value; }; layout(std430, binding = 13) readonly buffer inVertices5 { inVertices5_type inVertices5_buf[]; }; struct inVertices6_type { uint[6] value; }; layout(std430, binding = 14) readonly buffer inVertices6 { inVertices6_type inVertices6_buf[]; }; struct inVertices7_type { uint[6] value; }; layout(std430, binding = 15) readonly buffer inVertices7 { inVertices7_type inVertices7_buf[]; }; struct outVertices0_type { uint[6] value; }; layout(std430, binding = 0) buffer outVertices0 { outVertices0_type outVertices0_buf[]; }; struct outVertices1_type { uint[6] value; }; layout(std430, binding = 1) buffer outVertices1 { outVertices1_type outVertices1_buf[]; }; struct outVertices2_type { uint[6] value; }; layout(std430, binding = 2) buffer outVertices2 { outVertices2_type outVertices2_buf[]; }; struct outVertices3_type { uint[6] value; }; layout(std430, binding = 3) buffer outVertices3 { outVertices3_type outVertices3_buf[]; }; struct outVertices4_type { uint[6] value; }; layout(std430, binding = 4) buffer outVertices4 { outVertices4_type outVertices4_buf[]; }; struct outVertices5_type { uint[6] value; }; layout(std430, binding = 5) buffer outVertices5 { outVertices5_type outVertices5_buf[]; }; struct outVertices6_type { uint[6] value; }; layout(std430, binding = 6) buffer outVertices6 { outVertices6_type outVertices6_buf[]; }; struct outVertices7_type { uint[6] value; }; layout(std430, binding = 7) buffer outVertices7 { outVertices7_type outVertices7_buf[]; }; uint u_xlatu0; bool u_xlatb0; ivec4 u_xlati1; ivec2 u_xlati2; bool u_xlatb2; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].w); u_xlatb2 = u_xlatu0> 2) + 0]), int(inVertices7_buf[u_xlatu0].value[(0 >> 2) + 1]), int(inVertices7_buf[u_xlatu0].value[(0 >> 2) + 2]), int(inVertices7_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati2.xy = ivec2(int(inVertices7_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inVertices7_buf[u_xlatu0].value[(16 >> 2) + 1])); outVertices7_buf[u_xlatu0].value[(0 >> 2)] = uint(u_xlati1.x); outVertices7_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(u_xlati1.y); outVertices7_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(u_xlati1.z); outVertices7_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(u_xlati1.w); outVertices7_buf[u_xlatu0].value[(16 >> 2)] = uint(u_xlati2.x); outVertices7_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(u_xlati2.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].z); u_xlatb2 = u_xlatu0> 2) + 0]), int(inVertices6_buf[u_xlatu0].value[(0 >> 2) + 1]), int(inVertices6_buf[u_xlatu0].value[(0 >> 2) + 2]), int(inVertices6_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati2.xy = ivec2(int(inVertices6_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inVertices6_buf[u_xlatu0].value[(16 >> 2) + 1])); outVertices6_buf[u_xlatu0].value[(0 >> 2)] = uint(u_xlati1.x); outVertices6_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(u_xlati1.y); outVertices6_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(u_xlati1.z); outVertices6_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(u_xlati1.w); outVertices6_buf[u_xlatu0].value[(16 >> 2)] = uint(u_xlati2.x); outVertices6_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(u_xlati2.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].y); u_xlatb2 = u_xlatu0> 2) + 0]), int(inVertices5_buf[u_xlatu0].value[(0 >> 2) + 1]), int(inVertices5_buf[u_xlatu0].value[(0 >> 2) + 2]), int(inVertices5_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati2.xy = ivec2(int(inVertices5_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inVertices5_buf[u_xlatu0].value[(16 >> 2) + 1])); outVertices5_buf[u_xlatu0].value[(0 >> 2)] = uint(u_xlati1.x); outVertices5_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(u_xlati1.y); outVertices5_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(u_xlati1.z); outVertices5_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(u_xlati1.w); outVertices5_buf[u_xlatu0].value[(16 >> 2)] = uint(u_xlati2.x); outVertices5_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(u_xlati2.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb2 = u_xlatu0> 2) + 0]), int(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 1]), int(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 2]), int(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati2.xy = ivec2(int(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 1])); outVertices4_buf[u_xlatu0].value[(0 >> 2)] = uint(u_xlati1.x); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(u_xlati1.y); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(u_xlati1.z); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(u_xlati1.w); outVertices4_buf[u_xlatu0].value[(16 >> 2)] = uint(u_xlati2.x); outVertices4_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(u_xlati2.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb2 = u_xlatu0> 2) + 0]), int(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 1]), int(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 2]), int(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati2.xy = ivec2(int(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 1])); outVertices3_buf[u_xlatu0].value[(0 >> 2)] = uint(u_xlati1.x); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(u_xlati1.y); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(u_xlati1.z); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(u_xlati1.w); outVertices3_buf[u_xlatu0].value[(16 >> 2)] = uint(u_xlati2.x); outVertices3_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(u_xlati2.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb2 = u_xlatu0> 2) + 0]), int(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 1]), int(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 2]), int(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati2.xy = ivec2(int(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 1])); outVertices2_buf[u_xlatu0].value[(0 >> 2)] = uint(u_xlati1.x); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(u_xlati1.y); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(u_xlati1.z); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(u_xlati1.w); outVertices2_buf[u_xlatu0].value[(16 >> 2)] = uint(u_xlati2.x); outVertices2_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(u_xlati2.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb2 = u_xlatu0> 2) + 0]), int(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 1]), int(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 2]), int(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati2.xy = ivec2(int(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 1])); outVertices1_buf[u_xlatu0].value[(0 >> 2)] = uint(u_xlati1.x); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(u_xlati1.y); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(u_xlati1.z); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(u_xlati1.w); outVertices1_buf[u_xlatu0].value[(16 >> 2)] = uint(u_xlati2.x); outVertices1_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(u_xlati2.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb2 = u_xlatu0> 2) + 0]), int(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 1]), int(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 2]), int(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati2.xy = ivec2(int(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 1])); outVertices0_buf[u_xlatu0].value[(0 >> 2)] = uint(u_xlati1.x); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(u_xlati1.y); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(u_xlati1.z); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(u_xlati1.w); outVertices0_buf[u_xlatu0].value[(16 >> 2)] = uint(u_xlati2.x); outVertices0_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(u_xlati2.y); } } } } } } } } } return; } @A batchCopyComputeCopyCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4 inVertices5 inVertices6 inVertices7 outVertices0 outVertices1 outVertices2 outVertices3 outVertices4 outVertices5 outVertices6 outVertices7IH#version 310 es #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif UNITY_BINDING(0) uniform ComputeCopyCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; }; struct inVertices0_type { uint[10] value; }; layout(std430, binding = 8) readonly buffer inVertices0 { inVertices0_type inVertices0_buf[]; }; struct inVertices1_type { uint[10] value; }; layout(std430, binding = 9) readonly buffer inVertices1 { inVertices1_type inVertices1_buf[]; }; struct inVertices2_type { uint[10] value; }; layout(std430, binding = 10) readonly buffer inVertices2 { inVertices2_type inVertices2_buf[]; }; struct inVertices3_type { uint[10] value; }; layout(std430, binding = 11) readonly buffer inVertices3 { inVertices3_type inVertices3_buf[]; }; struct inVertices4_type { uint[10] value; }; layout(std430, binding = 12) readonly buffer inVertices4 { inVertices4_type inVertices4_buf[]; }; struct inVertices5_type { uint[10] value; }; layout(std430, binding = 13) readonly buffer inVertices5 { inVertices5_type inVertices5_buf[]; }; struct inVertices6_type { uint[10] value; }; layout(std430, binding = 14) readonly buffer inVertices6 { inVertices6_type inVertices6_buf[]; }; struct inVertices7_type { uint[10] value; }; layout(std430, binding = 15) readonly buffer inVertices7 { inVertices7_type inVertices7_buf[]; }; struct outVertices0_type { uint[10] value; }; layout(std430, binding = 0) buffer outVertices0 { outVertices0_type outVertices0_buf[]; }; struct outVertices1_type { uint[10] value; }; layout(std430, binding = 1) buffer outVertices1 { outVertices1_type outVertices1_buf[]; }; struct outVertices2_type { uint[10] value; }; layout(std430, binding = 2) buffer outVertices2 { outVertices2_type outVertices2_buf[]; }; struct outVertices3_type { uint[10] value; }; layout(std430, binding = 3) buffer outVertices3 { outVertices3_type outVertices3_buf[]; }; struct outVertices4_type { uint[10] value; }; layout(std430, binding = 4) buffer outVertices4 { outVertices4_type outVertices4_buf[]; }; struct outVertices5_type { uint[10] value; }; layout(std430, binding = 5) buffer outVertices5 { outVertices5_type outVertices5_buf[]; }; struct outVertices6_type { uint[10] value; }; layout(std430, binding = 6) buffer outVertices6 { outVertices6_type outVertices6_buf[]; }; struct outVertices7_type { uint[10] value; }; layout(std430, binding = 7) buffer outVertices7 { outVertices7_type outVertices7_buf[]; }; uint u_xlatu0; bool u_xlatb0; ivec4 u_xlati1; ivec4 u_xlati2; ivec2 u_xlati3; bool u_xlatb3; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].w); u_xlatb3 = u_xlatu0> 2) + 0]), int(inVertices7_buf[u_xlatu0].value[(0 >> 2) + 1]), int(inVertices7_buf[u_xlatu0].value[(0 >> 2) + 2]), int(inVertices7_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati2 = ivec4(int(inVertices7_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inVertices7_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inVertices7_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inVertices7_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati3.xy = ivec2(int(inVertices7_buf[u_xlatu0].value[(32 >> 2) + 0]), int(inVertices7_buf[u_xlatu0].value[(32 >> 2) + 1])); outVertices7_buf[u_xlatu0].value[(0 >> 2)] = uint(u_xlati1.x); outVertices7_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(u_xlati1.y); outVertices7_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(u_xlati1.z); outVertices7_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(u_xlati1.w); outVertices7_buf[u_xlatu0].value[(16 >> 2)] = uint(u_xlati2.x); outVertices7_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(u_xlati2.y); outVertices7_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(u_xlati2.z); outVertices7_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(u_xlati2.w); outVertices7_buf[u_xlatu0].value[(32 >> 2)] = uint(u_xlati3.x); outVertices7_buf[u_xlatu0].value[(32 >> 2) + 1] = uint(u_xlati3.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].z); u_xlatb3 = u_xlatu0> 2) + 0]), int(inVertices6_buf[u_xlatu0].value[(0 >> 2) + 1]), int(inVertices6_buf[u_xlatu0].value[(0 >> 2) + 2]), int(inVertices6_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati2 = ivec4(int(inVertices6_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inVertices6_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inVertices6_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inVertices6_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati3.xy = ivec2(int(inVertices6_buf[u_xlatu0].value[(32 >> 2) + 0]), int(inVertices6_buf[u_xlatu0].value[(32 >> 2) + 1])); outVertices6_buf[u_xlatu0].value[(0 >> 2)] = uint(u_xlati1.x); outVertices6_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(u_xlati1.y); outVertices6_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(u_xlati1.z); outVertices6_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(u_xlati1.w); outVertices6_buf[u_xlatu0].value[(16 >> 2)] = uint(u_xlati2.x); outVertices6_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(u_xlati2.y); outVertices6_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(u_xlati2.z); outVertices6_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(u_xlati2.w); outVertices6_buf[u_xlatu0].value[(32 >> 2)] = uint(u_xlati3.x); outVertices6_buf[u_xlatu0].value[(32 >> 2) + 1] = uint(u_xlati3.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].y); u_xlatb3 = u_xlatu0> 2) + 0]), int(inVertices5_buf[u_xlatu0].value[(0 >> 2) + 1]), int(inVertices5_buf[u_xlatu0].value[(0 >> 2) + 2]), int(inVertices5_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati2 = ivec4(int(inVertices5_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inVertices5_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inVertices5_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inVertices5_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati3.xy = ivec2(int(inVertices5_buf[u_xlatu0].value[(32 >> 2) + 0]), int(inVertices5_buf[u_xlatu0].value[(32 >> 2) + 1])); outVertices5_buf[u_xlatu0].value[(0 >> 2)] = uint(u_xlati1.x); outVertices5_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(u_xlati1.y); outVertices5_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(u_xlati1.z); outVertices5_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(u_xlati1.w); outVertices5_buf[u_xlatu0].value[(16 >> 2)] = uint(u_xlati2.x); outVertices5_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(u_xlati2.y); outVertices5_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(u_xlati2.z); outVertices5_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(u_xlati2.w); outVertices5_buf[u_xlatu0].value[(32 >> 2)] = uint(u_xlati3.x); outVertices5_buf[u_xlatu0].value[(32 >> 2) + 1] = uint(u_xlati3.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb3 = u_xlatu0> 2) + 0]), int(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 1]), int(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 2]), int(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati2 = ivec4(int(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati3.xy = ivec2(int(inVertices4_buf[u_xlatu0].value[(32 >> 2) + 0]), int(inVertices4_buf[u_xlatu0].value[(32 >> 2) + 1])); outVertices4_buf[u_xlatu0].value[(0 >> 2)] = uint(u_xlati1.x); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(u_xlati1.y); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(u_xlati1.z); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(u_xlati1.w); outVertices4_buf[u_xlatu0].value[(16 >> 2)] = uint(u_xlati2.x); outVertices4_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(u_xlati2.y); outVertices4_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(u_xlati2.z); outVertices4_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(u_xlati2.w); outVertices4_buf[u_xlatu0].value[(32 >> 2)] = uint(u_xlati3.x); outVertices4_buf[u_xlatu0].value[(32 >> 2) + 1] = uint(u_xlati3.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb3 = u_xlatu0> 2) + 0]), int(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 1]), int(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 2]), int(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati2 = ivec4(int(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati3.xy = ivec2(int(inVertices3_buf[u_xlatu0].value[(32 >> 2) + 0]), int(inVertices3_buf[u_xlatu0].value[(32 >> 2) + 1])); outVertices3_buf[u_xlatu0].value[(0 >> 2)] = uint(u_xlati1.x); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(u_xlati1.y); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(u_xlati1.z); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(u_xlati1.w); outVertices3_buf[u_xlatu0].value[(16 >> 2)] = uint(u_xlati2.x); outVertices3_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(u_xlati2.y); outVertices3_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(u_xlati2.z); outVertices3_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(u_xlati2.w); outVertices3_buf[u_xlatu0].value[(32 >> 2)] = uint(u_xlati3.x); outVertices3_buf[u_xlatu0].value[(32 >> 2) + 1] = uint(u_xlati3.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb3 = u_xlatu0> 2) + 0]), int(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 1]), int(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 2]), int(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati2 = ivec4(int(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati3.xy = ivec2(int(inVertices2_buf[u_xlatu0].value[(32 >> 2) + 0]), int(inVertices2_buf[u_xlatu0].value[(32 >> 2) + 1])); outVertices2_buf[u_xlatu0].value[(0 >> 2)] = uint(u_xlati1.x); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(u_xlati1.y); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(u_xlati1.z); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(u_xlati1.w); outVertices2_buf[u_xlatu0].value[(16 >> 2)] = uint(u_xlati2.x); outVertices2_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(u_xlati2.y); outVertices2_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(u_xlati2.z); outVertices2_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(u_xlati2.w); outVertices2_buf[u_xlatu0].value[(32 >> 2)] = uint(u_xlati3.x); outVertices2_buf[u_xlatu0].value[(32 >> 2) + 1] = uint(u_xlati3.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb3 = u_xlatu0> 2) + 0]), int(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 1]), int(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 2]), int(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati2 = ivec4(int(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati3.xy = ivec2(int(inVertices1_buf[u_xlatu0].value[(32 >> 2) + 0]), int(inVertices1_buf[u_xlatu0].value[(32 >> 2) + 1])); outVertices1_buf[u_xlatu0].value[(0 >> 2)] = uint(u_xlati1.x); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(u_xlati1.y); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(u_xlati1.z); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(u_xlati1.w); outVertices1_buf[u_xlatu0].value[(16 >> 2)] = uint(u_xlati2.x); outVertices1_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(u_xlati2.y); outVertices1_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(u_xlati2.z); outVertices1_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(u_xlati2.w); outVertices1_buf[u_xlatu0].value[(32 >> 2)] = uint(u_xlati3.x); outVertices1_buf[u_xlatu0].value[(32 >> 2) + 1] = uint(u_xlati3.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb3 = u_xlatu0> 2) + 0]), int(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 1]), int(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 2]), int(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati2 = ivec4(int(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati3.xy = ivec2(int(inVertices0_buf[u_xlatu0].value[(32 >> 2) + 0]), int(inVertices0_buf[u_xlatu0].value[(32 >> 2) + 1])); outVertices0_buf[u_xlatu0].value[(0 >> 2)] = uint(u_xlati1.x); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(u_xlati1.y); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(u_xlati1.z); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(u_xlati1.w); outVertices0_buf[u_xlatu0].value[(16 >> 2)] = uint(u_xlati2.x); outVertices0_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(u_xlati2.y); outVertices0_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(u_xlati2.z); outVertices0_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(u_xlati2.w); outVertices0_buf[u_xlatu0].value[(32 >> 2)] = uint(u_xlati3.x); outVertices0_buf[u_xlatu0].value[(32 >> 2) + 1] = uint(u_xlati3.y); } } } } } } } } } return; } @A batchMainComputeBlendShapeCBufferinBlendShapeVertices0inBlendShapeVertices1inBlendShapeVertices2inBlendShapeVertices3inBlendShapeVertices4inBlendShapeVertices5inBlendShapeVertices6inBlendShapeVertices7inOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices6inOutVertices7K=#version 310 es #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif UNITY_BINDING(0) uniform ComputeBlendShapeCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; uvec4 g_FirstVerts[2]; vec4 g_Weights[2]; }; struct inBlendShapeVertices0_type { uint[10] value; }; layout(std430, binding = 8) readonly buffer inBlendShapeVertices0 { inBlendShapeVertices0_type inBlendShapeVertices0_buf[]; }; struct inBlendShapeVertices1_type { uint[10] value; }; layout(std430, binding = 9) readonly buffer inBlendShapeVertices1 { inBlendShapeVertices1_type inBlendShapeVertices1_buf[]; }; struct inBlendShapeVertices2_type { uint[10] value; }; layout(std430, binding = 10) readonly buffer inBlendShapeVertices2 { inBlendShapeVertices2_type inBlendShapeVertices2_buf[]; }; struct inBlendShapeVertices3_type { uint[10] value; }; layout(std430, binding = 11) readonly buffer inBlendShapeVertices3 { inBlendShapeVertices3_type inBlendShapeVertices3_buf[]; }; struct inBlendShapeVertices4_type { uint[10] value; }; layout(std430, binding = 12) readonly buffer inBlendShapeVertices4 { inBlendShapeVertices4_type inBlendShapeVertices4_buf[]; }; struct inBlendShapeVertices5_type { uint[10] value; }; layout(std430, binding = 13) readonly buffer inBlendShapeVertices5 { inBlendShapeVertices5_type inBlendShapeVertices5_buf[]; }; struct inBlendShapeVertices6_type { uint[10] value; }; layout(std430, binding = 14) readonly buffer inBlendShapeVertices6 { inBlendShapeVertices6_type inBlendShapeVertices6_buf[]; }; struct inBlendShapeVertices7_type { uint[10] value; }; layout(std430, binding = 15) readonly buffer inBlendShapeVertices7 { inBlendShapeVertices7_type inBlendShapeVertices7_buf[]; }; struct inOutVertices0_type { uint[3] value; }; layout(std430, binding = 0) buffer inOutVertices0 { inOutVertices0_type inOutVertices0_buf[]; }; struct inOutVertices1_type { uint[3] value; }; layout(std430, binding = 1) buffer inOutVertices1 { inOutVertices1_type inOutVertices1_buf[]; }; struct inOutVertices2_type { uint[3] value; }; layout(std430, binding = 2) buffer inOutVertices2 { inOutVertices2_type inOutVertices2_buf[]; }; struct inOutVertices3_type { uint[3] value; }; layout(std430, binding = 3) buffer inOutVertices3 { inOutVertices3_type inOutVertices3_buf[]; }; struct inOutVertices4_type { uint[3] value; }; layout(std430, binding = 4) buffer inOutVertices4 { inOutVertices4_type inOutVertices4_buf[]; }; struct inOutVertices5_type { uint[3] value; }; layout(std430, binding = 5) buffer inOutVertices5 { inOutVertices5_type inOutVertices5_buf[]; }; struct inOutVertices6_type { uint[3] value; }; layout(std430, binding = 6) buffer inOutVertices6 { inOutVertices6_type inOutVertices6_buf[]; }; struct inOutVertices7_type { uint[3] value; }; layout(std430, binding = 7) buffer inOutVertices7 { inOutVertices7_type inOutVertices7_buf[]; }; vec4 u_xlat0; int u_xlati0; uint u_xlatu0; bool u_xlatb0; vec3 u_xlat1; vec3 u_xlat2; bool u_xlatb2; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].w); u_xlatb2 = u_xlatu0> 2) + 0]), uintBitsToFloat(inBlendShapeVertices7_buf[u_xlati0].value[(0 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices7_buf[u_xlati0].value[(0 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices7_buf[u_xlati0].value[(0 >> 2) + 3])); u_xlat1.xyz = vec3(uintBitsToFloat(inOutVertices7_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices7_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices7_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 2])); u_xlat2.xyz = u_xlat0.yzw * g_Weights[1].www + u_xlat1.xyz; inOutVertices7_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat2.x)); inOutVertices7_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat2.y)); inOutVertices7_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat2.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].z); u_xlatb2 = u_xlatu0> 2) + 0]), uintBitsToFloat(inBlendShapeVertices6_buf[u_xlati0].value[(0 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices6_buf[u_xlati0].value[(0 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices6_buf[u_xlati0].value[(0 >> 2) + 3])); u_xlat1.xyz = vec3(uintBitsToFloat(inOutVertices6_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices6_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices6_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 2])); u_xlat2.xyz = u_xlat0.yzw * g_Weights[1].zzz + u_xlat1.xyz; inOutVertices6_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat2.x)); inOutVertices6_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat2.y)); inOutVertices6_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat2.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].y); u_xlatb2 = u_xlatu0> 2) + 0]), uintBitsToFloat(inBlendShapeVertices5_buf[u_xlati0].value[(0 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices5_buf[u_xlati0].value[(0 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices5_buf[u_xlati0].value[(0 >> 2) + 3])); u_xlat1.xyz = vec3(uintBitsToFloat(inOutVertices5_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices5_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices5_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 2])); u_xlat2.xyz = u_xlat0.yzw * g_Weights[1].yyy + u_xlat1.xyz; inOutVertices5_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat2.x)); inOutVertices5_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat2.y)); inOutVertices5_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat2.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb2 = u_xlatu0> 2) + 0]), uintBitsToFloat(inBlendShapeVertices4_buf[u_xlati0].value[(0 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices4_buf[u_xlati0].value[(0 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices4_buf[u_xlati0].value[(0 >> 2) + 3])); u_xlat1.xyz = vec3(uintBitsToFloat(inOutVertices4_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices4_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices4_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 2])); u_xlat2.xyz = u_xlat0.yzw * g_Weights[1].xxx + u_xlat1.xyz; inOutVertices4_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat2.x)); inOutVertices4_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat2.y)); inOutVertices4_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat2.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb2 = u_xlatu0> 2) + 0]), uintBitsToFloat(inBlendShapeVertices3_buf[u_xlati0].value[(0 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices3_buf[u_xlati0].value[(0 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices3_buf[u_xlati0].value[(0 >> 2) + 3])); u_xlat1.xyz = vec3(uintBitsToFloat(inOutVertices3_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices3_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices3_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 2])); u_xlat2.xyz = u_xlat0.yzw * g_Weights[0].www + u_xlat1.xyz; inOutVertices3_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat2.x)); inOutVertices3_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat2.y)); inOutVertices3_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat2.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb2 = u_xlatu0> 2) + 0]), uintBitsToFloat(inBlendShapeVertices2_buf[u_xlati0].value[(0 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices2_buf[u_xlati0].value[(0 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices2_buf[u_xlati0].value[(0 >> 2) + 3])); u_xlat1.xyz = vec3(uintBitsToFloat(inOutVertices2_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices2_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices2_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 2])); u_xlat2.xyz = u_xlat0.yzw * g_Weights[0].zzz + u_xlat1.xyz; inOutVertices2_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat2.x)); inOutVertices2_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat2.y)); inOutVertices2_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat2.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb2 = u_xlatu0> 2) + 0]), uintBitsToFloat(inBlendShapeVertices1_buf[u_xlati0].value[(0 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices1_buf[u_xlati0].value[(0 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices1_buf[u_xlati0].value[(0 >> 2) + 3])); u_xlat1.xyz = vec3(uintBitsToFloat(inOutVertices1_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices1_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices1_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 2])); u_xlat2.xyz = u_xlat0.yzw * g_Weights[0].yyy + u_xlat1.xyz; inOutVertices1_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat2.x)); inOutVertices1_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat2.y)); inOutVertices1_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat2.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb2 = u_xlatu0> 2) + 0]), uintBitsToFloat(inBlendShapeVertices0_buf[u_xlati0].value[(0 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices0_buf[u_xlati0].value[(0 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices0_buf[u_xlati0].value[(0 >> 2) + 3])); u_xlat1.xyz = vec3(uintBitsToFloat(inOutVertices0_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices0_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices0_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 2])); u_xlat2.xyz = u_xlat0.yzw * g_Weights[0].xxx + u_xlat1.xyz; inOutVertices0_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat2.x)); inOutVertices0_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat2.y)); inOutVertices0_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat2.z)); } } } } } } } } } return; } @A batchMainComputeBlendShapeCBufferinBlendShapeVertices0inBlendShapeVertices1inBlendShapeVertices2inBlendShapeVertices3inBlendShapeVertices4inBlendShapeVertices5inBlendShapeVertices6inBlendShapeVertices7inOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices6inOutVertices7`#version 310 es #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif UNITY_BINDING(0) uniform ComputeBlendShapeCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; uvec4 g_FirstVerts[2]; vec4 g_Weights[2]; }; struct inBlendShapeVertices0_type { uint[10] value; }; layout(std430, binding = 8) readonly buffer inBlendShapeVertices0 { inBlendShapeVertices0_type inBlendShapeVertices0_buf[]; }; struct inBlendShapeVertices1_type { uint[10] value; }; layout(std430, binding = 9) readonly buffer inBlendShapeVertices1 { inBlendShapeVertices1_type inBlendShapeVertices1_buf[]; }; struct inBlendShapeVertices2_type { uint[10] value; }; layout(std430, binding = 10) readonly buffer inBlendShapeVertices2 { inBlendShapeVertices2_type inBlendShapeVertices2_buf[]; }; struct inBlendShapeVertices3_type { uint[10] value; }; layout(std430, binding = 11) readonly buffer inBlendShapeVertices3 { inBlendShapeVertices3_type inBlendShapeVertices3_buf[]; }; struct inBlendShapeVertices4_type { uint[10] value; }; layout(std430, binding = 12) readonly buffer inBlendShapeVertices4 { inBlendShapeVertices4_type inBlendShapeVertices4_buf[]; }; struct inBlendShapeVertices5_type { uint[10] value; }; layout(std430, binding = 13) readonly buffer inBlendShapeVertices5 { inBlendShapeVertices5_type inBlendShapeVertices5_buf[]; }; struct inBlendShapeVertices6_type { uint[10] value; }; layout(std430, binding = 14) readonly buffer inBlendShapeVertices6 { inBlendShapeVertices6_type inBlendShapeVertices6_buf[]; }; struct inBlendShapeVertices7_type { uint[10] value; }; layout(std430, binding = 15) readonly buffer inBlendShapeVertices7 { inBlendShapeVertices7_type inBlendShapeVertices7_buf[]; }; struct inOutVertices0_type { uint[6] value; }; layout(std430, binding = 0) buffer inOutVertices0 { inOutVertices0_type inOutVertices0_buf[]; }; struct inOutVertices1_type { uint[6] value; }; layout(std430, binding = 1) buffer inOutVertices1 { inOutVertices1_type inOutVertices1_buf[]; }; struct inOutVertices2_type { uint[6] value; }; layout(std430, binding = 2) buffer inOutVertices2 { inOutVertices2_type inOutVertices2_buf[]; }; struct inOutVertices3_type { uint[6] value; }; layout(std430, binding = 3) buffer inOutVertices3 { inOutVertices3_type inOutVertices3_buf[]; }; struct inOutVertices4_type { uint[6] value; }; layout(std430, binding = 4) buffer inOutVertices4 { inOutVertices4_type inOutVertices4_buf[]; }; struct inOutVertices5_type { uint[6] value; }; layout(std430, binding = 5) buffer inOutVertices5 { inOutVertices5_type inOutVertices5_buf[]; }; struct inOutVertices6_type { uint[6] value; }; layout(std430, binding = 6) buffer inOutVertices6 { inOutVertices6_type inOutVertices6_buf[]; }; struct inOutVertices7_type { uint[6] value; }; layout(std430, binding = 7) buffer inOutVertices7 { inOutVertices7_type inOutVertices7_buf[]; }; vec3 u_xlat0; int u_xlati0; uint u_xlatu0; bool u_xlatb0; vec4 u_xlat1; vec4 u_xlat2; vec3 u_xlat3; vec4 u_xlat4; bool u_xlatb5; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].w); u_xlatb5 = u_xlatu0> 2) + 0]), uintBitsToFloat(inBlendShapeVertices7_buf[u_xlati0].value[(0 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices7_buf[u_xlati0].value[(0 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices7_buf[u_xlati0].value[(0 >> 2) + 3])); u_xlat0.xyz = vec3(uintBitsToFloat(inBlendShapeVertices7_buf[u_xlati0].value[(16 >> 2) + 0]), uintBitsToFloat(inBlendShapeVertices7_buf[u_xlati0].value[(16 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices7_buf[u_xlati0].value[(16 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3])); u_xlat3.xy = vec2(uintBitsToFloat(inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1])); u_xlat4.xyz = u_xlat1.yzw * g_Weights[1].www + u_xlat2.xyz; u_xlat3.z = u_xlat2.w; u_xlat0.xyz = u_xlat0.xyz * g_Weights[1].www + u_xlat3.zxy; u_xlat4.w = u_xlat0.x; inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat4.x)); inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat4.y)); inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat4.z)); inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat4.w)); inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat0.y)); inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat0.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].z); u_xlatb5 = u_xlatu0> 2) + 0]), uintBitsToFloat(inBlendShapeVertices6_buf[u_xlati0].value[(0 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices6_buf[u_xlati0].value[(0 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices6_buf[u_xlati0].value[(0 >> 2) + 3])); u_xlat0.xyz = vec3(uintBitsToFloat(inBlendShapeVertices6_buf[u_xlati0].value[(16 >> 2) + 0]), uintBitsToFloat(inBlendShapeVertices6_buf[u_xlati0].value[(16 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices6_buf[u_xlati0].value[(16 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3])); u_xlat3.xy = vec2(uintBitsToFloat(inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1])); u_xlat4.xyz = u_xlat1.yzw * g_Weights[1].zzz + u_xlat2.xyz; u_xlat3.z = u_xlat2.w; u_xlat0.xyz = u_xlat0.xyz * g_Weights[1].zzz + u_xlat3.zxy; u_xlat4.w = u_xlat0.x; inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat4.x)); inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat4.y)); inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat4.z)); inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat4.w)); inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat0.y)); inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat0.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].y); u_xlatb5 = u_xlatu0> 2) + 0]), uintBitsToFloat(inBlendShapeVertices5_buf[u_xlati0].value[(0 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices5_buf[u_xlati0].value[(0 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices5_buf[u_xlati0].value[(0 >> 2) + 3])); u_xlat0.xyz = vec3(uintBitsToFloat(inBlendShapeVertices5_buf[u_xlati0].value[(16 >> 2) + 0]), uintBitsToFloat(inBlendShapeVertices5_buf[u_xlati0].value[(16 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices5_buf[u_xlati0].value[(16 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3])); u_xlat3.xy = vec2(uintBitsToFloat(inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1])); u_xlat4.xyz = u_xlat1.yzw * g_Weights[1].yyy + u_xlat2.xyz; u_xlat3.z = u_xlat2.w; u_xlat0.xyz = u_xlat0.xyz * g_Weights[1].yyy + u_xlat3.zxy; u_xlat4.w = u_xlat0.x; inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat4.x)); inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat4.y)); inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat4.z)); inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat4.w)); inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat0.y)); inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat0.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb5 = u_xlatu0> 2) + 0]), uintBitsToFloat(inBlendShapeVertices4_buf[u_xlati0].value[(0 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices4_buf[u_xlati0].value[(0 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices4_buf[u_xlati0].value[(0 >> 2) + 3])); u_xlat0.xyz = vec3(uintBitsToFloat(inBlendShapeVertices4_buf[u_xlati0].value[(16 >> 2) + 0]), uintBitsToFloat(inBlendShapeVertices4_buf[u_xlati0].value[(16 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices4_buf[u_xlati0].value[(16 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3])); u_xlat3.xy = vec2(uintBitsToFloat(inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1])); u_xlat4.xyz = u_xlat1.yzw * g_Weights[1].xxx + u_xlat2.xyz; u_xlat3.z = u_xlat2.w; u_xlat0.xyz = u_xlat0.xyz * g_Weights[1].xxx + u_xlat3.zxy; u_xlat4.w = u_xlat0.x; inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat4.x)); inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat4.y)); inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat4.z)); inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat4.w)); inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat0.y)); inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat0.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb5 = u_xlatu0> 2) + 0]), uintBitsToFloat(inBlendShapeVertices3_buf[u_xlati0].value[(0 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices3_buf[u_xlati0].value[(0 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices3_buf[u_xlati0].value[(0 >> 2) + 3])); u_xlat0.xyz = vec3(uintBitsToFloat(inBlendShapeVertices3_buf[u_xlati0].value[(16 >> 2) + 0]), uintBitsToFloat(inBlendShapeVertices3_buf[u_xlati0].value[(16 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices3_buf[u_xlati0].value[(16 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3])); u_xlat3.xy = vec2(uintBitsToFloat(inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1])); u_xlat4.xyz = u_xlat1.yzw * g_Weights[0].www + u_xlat2.xyz; u_xlat3.z = u_xlat2.w; u_xlat0.xyz = u_xlat0.xyz * g_Weights[0].www + u_xlat3.zxy; u_xlat4.w = u_xlat0.x; inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat4.x)); inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat4.y)); inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat4.z)); inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat4.w)); inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat0.y)); inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat0.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb5 = u_xlatu0> 2) + 0]), uintBitsToFloat(inBlendShapeVertices2_buf[u_xlati0].value[(0 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices2_buf[u_xlati0].value[(0 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices2_buf[u_xlati0].value[(0 >> 2) + 3])); u_xlat0.xyz = vec3(uintBitsToFloat(inBlendShapeVertices2_buf[u_xlati0].value[(16 >> 2) + 0]), uintBitsToFloat(inBlendShapeVertices2_buf[u_xlati0].value[(16 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices2_buf[u_xlati0].value[(16 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3])); u_xlat3.xy = vec2(uintBitsToFloat(inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1])); u_xlat4.xyz = u_xlat1.yzw * g_Weights[0].zzz + u_xlat2.xyz; u_xlat3.z = u_xlat2.w; u_xlat0.xyz = u_xlat0.xyz * g_Weights[0].zzz + u_xlat3.zxy; u_xlat4.w = u_xlat0.x; inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat4.x)); inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat4.y)); inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat4.z)); inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat4.w)); inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat0.y)); inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat0.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb5 = u_xlatu0> 2) + 0]), uintBitsToFloat(inBlendShapeVertices1_buf[u_xlati0].value[(0 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices1_buf[u_xlati0].value[(0 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices1_buf[u_xlati0].value[(0 >> 2) + 3])); u_xlat0.xyz = vec3(uintBitsToFloat(inBlendShapeVertices1_buf[u_xlati0].value[(16 >> 2) + 0]), uintBitsToFloat(inBlendShapeVertices1_buf[u_xlati0].value[(16 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices1_buf[u_xlati0].value[(16 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3])); u_xlat3.xy = vec2(uintBitsToFloat(inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1])); u_xlat4.xyz = u_xlat1.yzw * g_Weights[0].yyy + u_xlat2.xyz; u_xlat3.z = u_xlat2.w; u_xlat0.xyz = u_xlat0.xyz * g_Weights[0].yyy + u_xlat3.zxy; u_xlat4.w = u_xlat0.x; inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat4.x)); inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat4.y)); inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat4.z)); inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat4.w)); inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat0.y)); inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat0.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb5 = u_xlatu0> 2) + 0]), uintBitsToFloat(inBlendShapeVertices0_buf[u_xlati0].value[(0 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices0_buf[u_xlati0].value[(0 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices0_buf[u_xlati0].value[(0 >> 2) + 3])); u_xlat0.xyz = vec3(uintBitsToFloat(inBlendShapeVertices0_buf[u_xlati0].value[(16 >> 2) + 0]), uintBitsToFloat(inBlendShapeVertices0_buf[u_xlati0].value[(16 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices0_buf[u_xlati0].value[(16 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3])); u_xlat3.xy = vec2(uintBitsToFloat(inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1])); u_xlat4.xyz = u_xlat1.yzw * g_Weights[0].xxx + u_xlat2.xyz; u_xlat3.z = u_xlat2.w; u_xlat0.xyz = u_xlat0.xyz * g_Weights[0].xxx + u_xlat3.zxy; u_xlat4.w = u_xlat0.x; inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat4.x)); inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat4.y)); inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat4.z)); inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat4.w)); inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat0.y)); inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat0.z)); } } } } } } } } } return; } @A batchMainComputeBlendShapeCBufferinBlendShapeVertices0inBlendShapeVertices1inBlendShapeVertices2inBlendShapeVertices3inBlendShapeVertices4inBlendShapeVertices5inBlendShapeVertices6inBlendShapeVertices7inOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices6inOutVertices7#version 310 es #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif UNITY_BINDING(0) uniform ComputeBlendShapeCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; uvec4 g_FirstVerts[2]; vec4 g_Weights[2]; }; struct inBlendShapeVertices0_type { uint[10] value; }; layout(std430, binding = 8) readonly buffer inBlendShapeVertices0 { inBlendShapeVertices0_type inBlendShapeVertices0_buf[]; }; struct inBlendShapeVertices1_type { uint[10] value; }; layout(std430, binding = 9) readonly buffer inBlendShapeVertices1 { inBlendShapeVertices1_type inBlendShapeVertices1_buf[]; }; struct inBlendShapeVertices2_type { uint[10] value; }; layout(std430, binding = 10) readonly buffer inBlendShapeVertices2 { inBlendShapeVertices2_type inBlendShapeVertices2_buf[]; }; struct inBlendShapeVertices3_type { uint[10] value; }; layout(std430, binding = 11) readonly buffer inBlendShapeVertices3 { inBlendShapeVertices3_type inBlendShapeVertices3_buf[]; }; struct inBlendShapeVertices4_type { uint[10] value; }; layout(std430, binding = 12) readonly buffer inBlendShapeVertices4 { inBlendShapeVertices4_type inBlendShapeVertices4_buf[]; }; struct inBlendShapeVertices5_type { uint[10] value; }; layout(std430, binding = 13) readonly buffer inBlendShapeVertices5 { inBlendShapeVertices5_type inBlendShapeVertices5_buf[]; }; struct inBlendShapeVertices6_type { uint[10] value; }; layout(std430, binding = 14) readonly buffer inBlendShapeVertices6 { inBlendShapeVertices6_type inBlendShapeVertices6_buf[]; }; struct inBlendShapeVertices7_type { uint[10] value; }; layout(std430, binding = 15) readonly buffer inBlendShapeVertices7 { inBlendShapeVertices7_type inBlendShapeVertices7_buf[]; }; struct inOutVertices0_type { uint[10] value; }; layout(std430, binding = 0) buffer inOutVertices0 { inOutVertices0_type inOutVertices0_buf[]; }; struct inOutVertices1_type { uint[10] value; }; layout(std430, binding = 1) buffer inOutVertices1 { inOutVertices1_type inOutVertices1_buf[]; }; struct inOutVertices2_type { uint[10] value; }; layout(std430, binding = 2) buffer inOutVertices2 { inOutVertices2_type inOutVertices2_buf[]; }; struct inOutVertices3_type { uint[10] value; }; layout(std430, binding = 3) buffer inOutVertices3 { inOutVertices3_type inOutVertices3_buf[]; }; struct inOutVertices4_type { uint[10] value; }; layout(std430, binding = 4) buffer inOutVertices4 { inOutVertices4_type inOutVertices4_buf[]; }; struct inOutVertices5_type { uint[10] value; }; layout(std430, binding = 5) buffer inOutVertices5 { inOutVertices5_type inOutVertices5_buf[]; }; struct inOutVertices6_type { uint[10] value; }; layout(std430, binding = 6) buffer inOutVertices6 { inOutVertices6_type inOutVertices6_buf[]; }; struct inOutVertices7_type { uint[10] value; }; layout(std430, binding = 7) buffer inOutVertices7 { inOutVertices7_type inOutVertices7_buf[]; }; vec3 u_xlat0; int u_xlati0; uint u_xlatu0; bool u_xlatb0; vec4 u_xlat1; vec4 u_xlat2; vec4 u_xlat3; vec4 u_xlat4; vec3 u_xlat5; vec4 u_xlat6; bool u_xlatb7; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].w); u_xlatb7 = u_xlatu0> 2) + 0]), uintBitsToFloat(inBlendShapeVertices7_buf[u_xlati0].value[(0 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices7_buf[u_xlati0].value[(0 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices7_buf[u_xlati0].value[(0 >> 2) + 3])); u_xlat2 = vec4(uintBitsToFloat(inBlendShapeVertices7_buf[u_xlati0].value[(16 >> 2) + 0]), uintBitsToFloat(inBlendShapeVertices7_buf[u_xlati0].value[(16 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices7_buf[u_xlati0].value[(16 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices7_buf[u_xlati0].value[(16 >> 2) + 3])); u_xlat0.xy = vec2(uintBitsToFloat(inBlendShapeVertices7_buf[u_xlati0].value[(32 >> 2) + 0]), uintBitsToFloat(inBlendShapeVertices7_buf[u_xlati0].value[(32 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3]), uintBitsToFloat(inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2])); u_xlat4 = vec4(uintBitsToFloat(inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 3])); u_xlat5.z = uintBitsToFloat(inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(32 >> 2) + 0]); u_xlat6.xyz = u_xlat1.yzw * g_Weights[1].www + u_xlat3.yzw; u_xlat3.yz = u_xlat4.xy; u_xlat3.xyz = u_xlat2.yzx * g_Weights[1].www + u_xlat3.yzx; u_xlat0.z = u_xlat2.w; u_xlat5.xy = u_xlat4.zw; u_xlat0.xyz = u_xlat0.zxy * g_Weights[1].www + u_xlat5.xyz; u_xlat6.w = u_xlat3.z; inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat6.x)); inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat6.y)); inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat6.z)); inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat6.w)); u_xlat3.zw = u_xlat0.xy; inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat3.x)); inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat3.y)); inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat3.z)); inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat3.w)); inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat0.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].z); u_xlatb7 = u_xlatu0> 2) + 0]), uintBitsToFloat(inBlendShapeVertices6_buf[u_xlati0].value[(0 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices6_buf[u_xlati0].value[(0 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices6_buf[u_xlati0].value[(0 >> 2) + 3])); u_xlat2 = vec4(uintBitsToFloat(inBlendShapeVertices6_buf[u_xlati0].value[(16 >> 2) + 0]), uintBitsToFloat(inBlendShapeVertices6_buf[u_xlati0].value[(16 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices6_buf[u_xlati0].value[(16 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices6_buf[u_xlati0].value[(16 >> 2) + 3])); u_xlat0.xy = vec2(uintBitsToFloat(inBlendShapeVertices6_buf[u_xlati0].value[(32 >> 2) + 0]), uintBitsToFloat(inBlendShapeVertices6_buf[u_xlati0].value[(32 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3]), uintBitsToFloat(inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2])); u_xlat4 = vec4(uintBitsToFloat(inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 3])); u_xlat5.z = uintBitsToFloat(inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(32 >> 2) + 0]); u_xlat6.xyz = u_xlat1.yzw * g_Weights[1].zzz + u_xlat3.yzw; u_xlat3.yz = u_xlat4.xy; u_xlat3.xyz = u_xlat2.yzx * g_Weights[1].zzz + u_xlat3.yzx; u_xlat0.z = u_xlat2.w; u_xlat5.xy = u_xlat4.zw; u_xlat0.xyz = u_xlat0.zxy * g_Weights[1].zzz + u_xlat5.xyz; u_xlat6.w = u_xlat3.z; inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat6.x)); inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat6.y)); inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat6.z)); inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat6.w)); u_xlat3.zw = u_xlat0.xy; inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat3.x)); inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat3.y)); inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat3.z)); inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat3.w)); inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat0.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].y); u_xlatb7 = u_xlatu0> 2) + 0]), uintBitsToFloat(inBlendShapeVertices5_buf[u_xlati0].value[(0 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices5_buf[u_xlati0].value[(0 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices5_buf[u_xlati0].value[(0 >> 2) + 3])); u_xlat2 = vec4(uintBitsToFloat(inBlendShapeVertices5_buf[u_xlati0].value[(16 >> 2) + 0]), uintBitsToFloat(inBlendShapeVertices5_buf[u_xlati0].value[(16 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices5_buf[u_xlati0].value[(16 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices5_buf[u_xlati0].value[(16 >> 2) + 3])); u_xlat0.xy = vec2(uintBitsToFloat(inBlendShapeVertices5_buf[u_xlati0].value[(32 >> 2) + 0]), uintBitsToFloat(inBlendShapeVertices5_buf[u_xlati0].value[(32 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3]), uintBitsToFloat(inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2])); u_xlat4 = vec4(uintBitsToFloat(inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 3])); u_xlat5.z = uintBitsToFloat(inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(32 >> 2) + 0]); u_xlat6.xyz = u_xlat1.yzw * g_Weights[1].yyy + u_xlat3.yzw; u_xlat3.yz = u_xlat4.xy; u_xlat3.xyz = u_xlat2.yzx * g_Weights[1].yyy + u_xlat3.yzx; u_xlat0.z = u_xlat2.w; u_xlat5.xy = u_xlat4.zw; u_xlat0.xyz = u_xlat0.zxy * g_Weights[1].yyy + u_xlat5.xyz; u_xlat6.w = u_xlat3.z; inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat6.x)); inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat6.y)); inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat6.z)); inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat6.w)); u_xlat3.zw = u_xlat0.xy; inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat3.x)); inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat3.y)); inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat3.z)); inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat3.w)); inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat0.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb7 = u_xlatu0> 2) + 0]), uintBitsToFloat(inBlendShapeVertices4_buf[u_xlati0].value[(0 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices4_buf[u_xlati0].value[(0 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices4_buf[u_xlati0].value[(0 >> 2) + 3])); u_xlat2 = vec4(uintBitsToFloat(inBlendShapeVertices4_buf[u_xlati0].value[(16 >> 2) + 0]), uintBitsToFloat(inBlendShapeVertices4_buf[u_xlati0].value[(16 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices4_buf[u_xlati0].value[(16 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices4_buf[u_xlati0].value[(16 >> 2) + 3])); u_xlat0.xy = vec2(uintBitsToFloat(inBlendShapeVertices4_buf[u_xlati0].value[(32 >> 2) + 0]), uintBitsToFloat(inBlendShapeVertices4_buf[u_xlati0].value[(32 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3]), uintBitsToFloat(inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2])); u_xlat4 = vec4(uintBitsToFloat(inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 3])); u_xlat5.z = uintBitsToFloat(inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(32 >> 2) + 0]); u_xlat6.xyz = u_xlat1.yzw * g_Weights[1].xxx + u_xlat3.yzw; u_xlat3.yz = u_xlat4.xy; u_xlat3.xyz = u_xlat2.yzx * g_Weights[1].xxx + u_xlat3.yzx; u_xlat0.z = u_xlat2.w; u_xlat5.xy = u_xlat4.zw; u_xlat0.xyz = u_xlat0.zxy * g_Weights[1].xxx + u_xlat5.xyz; u_xlat6.w = u_xlat3.z; inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat6.x)); inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat6.y)); inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat6.z)); inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat6.w)); u_xlat3.zw = u_xlat0.xy; inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat3.x)); inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat3.y)); inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat3.z)); inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat3.w)); inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat0.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb7 = u_xlatu0> 2) + 0]), uintBitsToFloat(inBlendShapeVertices3_buf[u_xlati0].value[(0 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices3_buf[u_xlati0].value[(0 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices3_buf[u_xlati0].value[(0 >> 2) + 3])); u_xlat2 = vec4(uintBitsToFloat(inBlendShapeVertices3_buf[u_xlati0].value[(16 >> 2) + 0]), uintBitsToFloat(inBlendShapeVertices3_buf[u_xlati0].value[(16 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices3_buf[u_xlati0].value[(16 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices3_buf[u_xlati0].value[(16 >> 2) + 3])); u_xlat0.xy = vec2(uintBitsToFloat(inBlendShapeVertices3_buf[u_xlati0].value[(32 >> 2) + 0]), uintBitsToFloat(inBlendShapeVertices3_buf[u_xlati0].value[(32 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3]), uintBitsToFloat(inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2])); u_xlat4 = vec4(uintBitsToFloat(inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 3])); u_xlat5.z = uintBitsToFloat(inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(32 >> 2) + 0]); u_xlat6.xyz = u_xlat1.yzw * g_Weights[0].www + u_xlat3.yzw; u_xlat3.yz = u_xlat4.xy; u_xlat3.xyz = u_xlat2.yzx * g_Weights[0].www + u_xlat3.yzx; u_xlat0.z = u_xlat2.w; u_xlat5.xy = u_xlat4.zw; u_xlat0.xyz = u_xlat0.zxy * g_Weights[0].www + u_xlat5.xyz; u_xlat6.w = u_xlat3.z; inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat6.x)); inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat6.y)); inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat6.z)); inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat6.w)); u_xlat3.zw = u_xlat0.xy; inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat3.x)); inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat3.y)); inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat3.z)); inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat3.w)); inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat0.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb7 = u_xlatu0> 2) + 0]), uintBitsToFloat(inBlendShapeVertices2_buf[u_xlati0].value[(0 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices2_buf[u_xlati0].value[(0 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices2_buf[u_xlati0].value[(0 >> 2) + 3])); u_xlat2 = vec4(uintBitsToFloat(inBlendShapeVertices2_buf[u_xlati0].value[(16 >> 2) + 0]), uintBitsToFloat(inBlendShapeVertices2_buf[u_xlati0].value[(16 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices2_buf[u_xlati0].value[(16 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices2_buf[u_xlati0].value[(16 >> 2) + 3])); u_xlat0.xy = vec2(uintBitsToFloat(inBlendShapeVertices2_buf[u_xlati0].value[(32 >> 2) + 0]), uintBitsToFloat(inBlendShapeVertices2_buf[u_xlati0].value[(32 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3]), uintBitsToFloat(inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2])); u_xlat4 = vec4(uintBitsToFloat(inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 3])); u_xlat5.z = uintBitsToFloat(inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(32 >> 2) + 0]); u_xlat6.xyz = u_xlat1.yzw * g_Weights[0].zzz + u_xlat3.yzw; u_xlat3.yz = u_xlat4.xy; u_xlat3.xyz = u_xlat2.yzx * g_Weights[0].zzz + u_xlat3.yzx; u_xlat0.z = u_xlat2.w; u_xlat5.xy = u_xlat4.zw; u_xlat0.xyz = u_xlat0.zxy * g_Weights[0].zzz + u_xlat5.xyz; u_xlat6.w = u_xlat3.z; inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat6.x)); inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat6.y)); inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat6.z)); inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat6.w)); u_xlat3.zw = u_xlat0.xy; inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat3.x)); inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat3.y)); inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat3.z)); inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat3.w)); inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat0.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb7 = u_xlatu0> 2) + 0]), uintBitsToFloat(inBlendShapeVertices1_buf[u_xlati0].value[(0 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices1_buf[u_xlati0].value[(0 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices1_buf[u_xlati0].value[(0 >> 2) + 3])); u_xlat2 = vec4(uintBitsToFloat(inBlendShapeVertices1_buf[u_xlati0].value[(16 >> 2) + 0]), uintBitsToFloat(inBlendShapeVertices1_buf[u_xlati0].value[(16 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices1_buf[u_xlati0].value[(16 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices1_buf[u_xlati0].value[(16 >> 2) + 3])); u_xlat0.xy = vec2(uintBitsToFloat(inBlendShapeVertices1_buf[u_xlati0].value[(32 >> 2) + 0]), uintBitsToFloat(inBlendShapeVertices1_buf[u_xlati0].value[(32 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3]), uintBitsToFloat(inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2])); u_xlat4 = vec4(uintBitsToFloat(inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 3])); u_xlat5.z = uintBitsToFloat(inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(32 >> 2) + 0]); u_xlat6.xyz = u_xlat1.yzw * g_Weights[0].yyy + u_xlat3.yzw; u_xlat3.yz = u_xlat4.xy; u_xlat3.xyz = u_xlat2.yzx * g_Weights[0].yyy + u_xlat3.yzx; u_xlat0.z = u_xlat2.w; u_xlat5.xy = u_xlat4.zw; u_xlat0.xyz = u_xlat0.zxy * g_Weights[0].yyy + u_xlat5.xyz; u_xlat6.w = u_xlat3.z; inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat6.x)); inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat6.y)); inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat6.z)); inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat6.w)); u_xlat3.zw = u_xlat0.xy; inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat3.x)); inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat3.y)); inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat3.z)); inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat3.w)); inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat0.z)); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb7 = u_xlatu0> 2) + 0]), uintBitsToFloat(inBlendShapeVertices0_buf[u_xlati0].value[(0 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices0_buf[u_xlati0].value[(0 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices0_buf[u_xlati0].value[(0 >> 2) + 3])); u_xlat2 = vec4(uintBitsToFloat(inBlendShapeVertices0_buf[u_xlati0].value[(16 >> 2) + 0]), uintBitsToFloat(inBlendShapeVertices0_buf[u_xlati0].value[(16 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices0_buf[u_xlati0].value[(16 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices0_buf[u_xlati0].value[(16 >> 2) + 3])); u_xlat0.xy = vec2(uintBitsToFloat(inBlendShapeVertices0_buf[u_xlati0].value[(32 >> 2) + 0]), uintBitsToFloat(inBlendShapeVertices0_buf[u_xlati0].value[(32 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3]), uintBitsToFloat(inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2])); u_xlat4 = vec4(uintBitsToFloat(inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 3])); u_xlat5.z = uintBitsToFloat(inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(32 >> 2) + 0]); u_xlat6.xyz = u_xlat1.yzw * g_Weights[0].xxx + u_xlat3.yzw; u_xlat3.yz = u_xlat4.xy; u_xlat3.xyz = u_xlat2.yzx * g_Weights[0].xxx + u_xlat3.yzx; u_xlat0.z = u_xlat2.w; u_xlat5.xy = u_xlat4.zw; u_xlat0.xyz = u_xlat0.zxy * g_Weights[0].xxx + u_xlat5.xyz; u_xlat6.w = u_xlat3.z; inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2)] = uint(floatBitsToUint(u_xlat6.x)); inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1] = uint(floatBitsToUint(u_xlat6.y)); inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2] = uint(floatBitsToUint(u_xlat6.z)); inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3] = uint(floatBitsToUint(u_xlat6.w)); u_xlat3.zw = u_xlat0.xy; inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2)] = uint(floatBitsToUint(u_xlat3.x)); inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1] = uint(floatBitsToUint(u_xlat3.y)); inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 2] = uint(floatBitsToUint(u_xlat3.z)); inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 3] = uint(floatBitsToUint(u_xlat3.w)); inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(32 >> 2)] = uint(floatBitsToUint(u_xlat0.z)); } } } } } } } } } return; } @A$Globals g_FirstVert g_VertCountg_WeightComputeCopyCBuffer@ g_VertCountsg_BatchOffsets ComputeBlendShapeCBuffer g_VertCountsg_BatchOffsets  g_FirstVerts@ g_Weights` main$GlobalsinBlendShapeVerticesinOutMeshVertices= #version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform CGlobals { uint g_FirstVert; uint g_VertCount; float g_Weight; }; struct inBlendShapeVertices_type { uint[10] value; }; layout(std430, binding = 1) readonly buffer inBlendShapeVertices { inBlendShapeVertices_type inBlendShapeVertices_buf[]; }; struct inOutMeshVertices_type { uint[3] value; }; layout(std430, binding = 0) buffer inOutMeshVertices { inOutMeshVertices_type inOutMeshVertices_buf[]; }; vec4 u_xlat0; int u_xlati0; bool u_xlatb0; vec3 u_xlat1; vec3 u_xlat2; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x> 2) + 0]), uintBitsToFloat(inBlendShapeVertices_buf[u_xlati0].value[(0 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices_buf[u_xlati0].value[(0 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices_buf[u_xlati0].value[(0 >> 2) + 3])); u_xlat1.xyz = vec3(uintBitsToFloat(inOutMeshVertices_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 0]), uintBitsToFloat(inOutMeshVertices_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 1]), uintBitsToFloat(inOutMeshVertices_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 2])); u_xlat2.xyz = u_xlat0.yzw * vec3(vec3(g_Weight, g_Weight, g_Weight)) + u_xlat1.xyz; inOutMeshVertices_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2)] = floatBitsToUint(u_xlat2.x); inOutMeshVertices_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat2.y); inOutMeshVertices_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat2.z); } return; } @Amain$GlobalsinBlendShapeVerticesinOutMeshVerticesJ #version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform CGlobals { uint g_FirstVert; uint g_VertCount; float g_Weight; }; struct inBlendShapeVertices_type { uint[10] value; }; layout(std430, binding = 1) readonly buffer inBlendShapeVertices { inBlendShapeVertices_type inBlendShapeVertices_buf[]; }; struct inOutMeshVertices_type { uint[6] value; }; layout(std430, binding = 0) buffer inOutMeshVertices { inOutMeshVertices_type inOutMeshVertices_buf[]; }; vec3 u_xlat0; int u_xlati0; bool u_xlatb0; vec4 u_xlat1; vec4 u_xlat2; vec3 u_xlat3; vec4 u_xlat4; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x> 2) + 0]), uintBitsToFloat(inBlendShapeVertices_buf[u_xlati0].value[(0 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices_buf[u_xlati0].value[(0 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices_buf[u_xlati0].value[(0 >> 2) + 3])); u_xlat0.xyz = vec3(uintBitsToFloat(inBlendShapeVertices_buf[u_xlati0].value[(16 >> 2) + 0]), uintBitsToFloat(inBlendShapeVertices_buf[u_xlati0].value[(16 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices_buf[u_xlati0].value[(16 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 0]), uintBitsToFloat(inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1]), uintBitsToFloat(inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2]), uintBitsToFloat(inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3])); u_xlat3.xy = vec2(uintBitsToFloat(inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 0]), uintBitsToFloat(inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1])); u_xlat4.xyz = u_xlat1.yzw * vec3(vec3(g_Weight, g_Weight, g_Weight)) + u_xlat2.xyz; u_xlat3.z = u_xlat2.w; u_xlat0.xyz = u_xlat0.xyz * vec3(vec3(g_Weight, g_Weight, g_Weight)) + u_xlat3.zxy; u_xlat4.w = u_xlat0.x; inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2)] = floatBitsToUint(u_xlat4.x); inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat4.y); inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat4.z); inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat4.w); inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2)] = floatBitsToUint(u_xlat0.y); inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat0.z); } return; } @Amain$GlobalsinBlendShapeVerticesinOutMeshVerticest#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform CGlobals { uint g_FirstVert; uint g_VertCount; float g_Weight; }; struct inBlendShapeVertices_type { uint[10] value; }; layout(std430, binding = 1) readonly buffer inBlendShapeVertices { inBlendShapeVertices_type inBlendShapeVertices_buf[]; }; struct inOutMeshVertices_type { uint[10] value; }; layout(std430, binding = 0) buffer inOutMeshVertices { inOutMeshVertices_type inOutMeshVertices_buf[]; }; vec3 u_xlat0; int u_xlati0; bool u_xlatb0; vec4 u_xlat1; vec4 u_xlat2; vec4 u_xlat3; vec4 u_xlat4; vec3 u_xlat5; vec4 u_xlat6; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x> 2) + 0]), uintBitsToFloat(inBlendShapeVertices_buf[u_xlati0].value[(0 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices_buf[u_xlati0].value[(0 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices_buf[u_xlati0].value[(0 >> 2) + 3])); u_xlat2 = vec4(uintBitsToFloat(inBlendShapeVertices_buf[u_xlati0].value[(16 >> 2) + 0]), uintBitsToFloat(inBlendShapeVertices_buf[u_xlati0].value[(16 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices_buf[u_xlati0].value[(16 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices_buf[u_xlati0].value[(16 >> 2) + 3])); u_xlat0.xy = vec2(uintBitsToFloat(inBlendShapeVertices_buf[u_xlati0].value[(32 >> 2) + 0]), uintBitsToFloat(inBlendShapeVertices_buf[u_xlati0].value[(32 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3]), uintBitsToFloat(inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 0]), uintBitsToFloat(inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1]), uintBitsToFloat(inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2])); u_xlat4 = vec4(uintBitsToFloat(inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 0]), uintBitsToFloat(inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1]), uintBitsToFloat(inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 2]), uintBitsToFloat(inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 3])); u_xlat5.z = uintBitsToFloat(inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(32 >> 2) + 0]); u_xlat6.xyz = u_xlat1.yzw * vec3(vec3(g_Weight, g_Weight, g_Weight)) + u_xlat3.yzw; u_xlat3.yz = u_xlat4.xy; u_xlat3.xyz = u_xlat2.yzx * vec3(vec3(g_Weight, g_Weight, g_Weight)) + u_xlat3.yzx; u_xlat0.z = u_xlat2.w; u_xlat5.xy = u_xlat4.zw; u_xlat0.xyz = u_xlat0.zxy * vec3(vec3(g_Weight, g_Weight, g_Weight)) + u_xlat5.xyz; u_xlat6.w = u_xlat3.z; inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2)] = floatBitsToUint(u_xlat6.x); inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat6.y); inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat6.z); inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat6.w); u_xlat3.zw = u_xlat0.xy; inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2)] = floatBitsToUint(u_xlat3.x); inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat3.y); inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat3.z); inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat3.w); inOutMeshVertices_buf[floatBitsToInt(u_xlat1.x)].value[(32 >> 2)] = floatBitsToUint(u_xlat0.z); } return; } @A batchCopyComputeCopyCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4 inVertices5 inVertices6 inVertices7 outVertices0 outVertices1 outVertices2 outVertices3 outVertices4 outVertices5 outVertices6 outVertices7I&#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform ComputeCopyCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; }; struct inVertices0_type { uint[3] value; }; layout(std430, binding = 8) readonly buffer inVertices0 { inVertices0_type inVertices0_buf[]; }; struct inVertices1_type { uint[3] value; }; layout(std430, binding = 9) readonly buffer inVertices1 { inVertices1_type inVertices1_buf[]; }; struct inVertices2_type { uint[3] value; }; layout(std430, binding = 10) readonly buffer inVertices2 { inVertices2_type inVertices2_buf[]; }; struct inVertices3_type { uint[3] value; }; layout(std430, binding = 11) readonly buffer inVertices3 { inVertices3_type inVertices3_buf[]; }; struct inVertices4_type { uint[3] value; }; layout(std430, binding = 12) readonly buffer inVertices4 { inVertices4_type inVertices4_buf[]; }; struct inVertices5_type { uint[3] value; }; layout(std430, binding = 13) readonly buffer inVertices5 { inVertices5_type inVertices5_buf[]; }; struct inVertices6_type { uint[3] value; }; layout(std430, binding = 14) readonly buffer inVertices6 { inVertices6_type inVertices6_buf[]; }; struct inVertices7_type { uint[3] value; }; layout(std430, binding = 15) readonly buffer inVertices7 { inVertices7_type inVertices7_buf[]; }; struct outVertices0_type { uint[3] value; }; layout(std430, binding = 0) buffer outVertices0 { outVertices0_type outVertices0_buf[]; }; struct outVertices1_type { uint[3] value; }; layout(std430, binding = 1) buffer outVertices1 { outVertices1_type outVertices1_buf[]; }; struct outVertices2_type { uint[3] value; }; layout(std430, binding = 2) buffer outVertices2 { outVertices2_type outVertices2_buf[]; }; struct outVertices3_type { uint[3] value; }; layout(std430, binding = 3) buffer outVertices3 { outVertices3_type outVertices3_buf[]; }; struct outVertices4_type { uint[3] value; }; layout(std430, binding = 4) buffer outVertices4 { outVertices4_type outVertices4_buf[]; }; struct outVertices5_type { uint[3] value; }; layout(std430, binding = 5) buffer outVertices5 { outVertices5_type outVertices5_buf[]; }; struct outVertices6_type { uint[3] value; }; layout(std430, binding = 6) buffer outVertices6 { outVertices6_type outVertices6_buf[]; }; struct outVertices7_type { uint[3] value; }; layout(std430, binding = 7) buffer outVertices7 { outVertices7_type outVertices7_buf[]; }; uint u_xlatu0; bool u_xlatb0; ivec3 u_xlati1; bool u_xlatb1; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].w); u_xlatb1 = u_xlatu0> 2) + 0]), int(inVertices7_buf[u_xlatu0].value[(0 >> 2) + 1]), int(inVertices7_buf[u_xlatu0].value[(0 >> 2) + 2])); outVertices7_buf[u_xlatu0].value[(0 >> 2)] = uint(u_xlati1.x); outVertices7_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(u_xlati1.y); outVertices7_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(u_xlati1.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].z); u_xlatb1 = u_xlatu0> 2) + 0]), int(inVertices6_buf[u_xlatu0].value[(0 >> 2) + 1]), int(inVertices6_buf[u_xlatu0].value[(0 >> 2) + 2])); outVertices6_buf[u_xlatu0].value[(0 >> 2)] = uint(u_xlati1.x); outVertices6_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(u_xlati1.y); outVertices6_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(u_xlati1.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].y); u_xlatb1 = u_xlatu0> 2) + 0]), int(inVertices5_buf[u_xlatu0].value[(0 >> 2) + 1]), int(inVertices5_buf[u_xlatu0].value[(0 >> 2) + 2])); outVertices5_buf[u_xlatu0].value[(0 >> 2)] = uint(u_xlati1.x); outVertices5_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(u_xlati1.y); outVertices5_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(u_xlati1.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb1 = u_xlatu0> 2) + 0]), int(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 1]), int(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 2])); outVertices4_buf[u_xlatu0].value[(0 >> 2)] = uint(u_xlati1.x); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(u_xlati1.y); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(u_xlati1.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb1 = u_xlatu0> 2) + 0]), int(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 1]), int(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 2])); outVertices3_buf[u_xlatu0].value[(0 >> 2)] = uint(u_xlati1.x); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(u_xlati1.y); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(u_xlati1.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb1 = u_xlatu0> 2) + 0]), int(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 1]), int(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 2])); outVertices2_buf[u_xlatu0].value[(0 >> 2)] = uint(u_xlati1.x); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(u_xlati1.y); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(u_xlati1.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb1 = u_xlatu0> 2) + 0]), int(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 1]), int(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 2])); outVertices1_buf[u_xlatu0].value[(0 >> 2)] = uint(u_xlati1.x); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(u_xlati1.y); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(u_xlati1.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb1 = u_xlatu0> 2) + 0]), int(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 1]), int(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 2])); outVertices0_buf[u_xlatu0].value[(0 >> 2)] = uint(u_xlati1.x); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(u_xlati1.y); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(u_xlati1.z); } } } } } } } } } return; } @A batchCopyComputeCopyCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4 inVertices5 inVertices6 inVertices7 outVertices0 outVertices1 outVertices2 outVertices3 outVertices4 outVertices5 outVertices6 outVertices7I5#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform ComputeCopyCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; }; struct inVertices0_type { uint[6] value; }; layout(std430, binding = 8) readonly buffer inVertices0 { inVertices0_type inVertices0_buf[]; }; struct inVertices1_type { uint[6] value; }; layout(std430, binding = 9) readonly buffer inVertices1 { inVertices1_type inVertices1_buf[]; }; struct inVertices2_type { uint[6] value; }; layout(std430, binding = 10) readonly buffer inVertices2 { inVertices2_type inVertices2_buf[]; }; struct inVertices3_type { uint[6] value; }; layout(std430, binding = 11) readonly buffer inVertices3 { inVertices3_type inVertices3_buf[]; }; struct inVertices4_type { uint[6] value; }; layout(std430, binding = 12) readonly buffer inVertices4 { inVertices4_type inVertices4_buf[]; }; struct inVertices5_type { uint[6] value; }; layout(std430, binding = 13) readonly buffer inVertices5 { inVertices5_type inVertices5_buf[]; }; struct inVertices6_type { uint[6] value; }; layout(std430, binding = 14) readonly buffer inVertices6 { inVertices6_type inVertices6_buf[]; }; struct inVertices7_type { uint[6] value; }; layout(std430, binding = 15) readonly buffer inVertices7 { inVertices7_type inVertices7_buf[]; }; struct outVertices0_type { uint[6] value; }; layout(std430, binding = 0) buffer outVertices0 { outVertices0_type outVertices0_buf[]; }; struct outVertices1_type { uint[6] value; }; layout(std430, binding = 1) buffer outVertices1 { outVertices1_type outVertices1_buf[]; }; struct outVertices2_type { uint[6] value; }; layout(std430, binding = 2) buffer outVertices2 { outVertices2_type outVertices2_buf[]; }; struct outVertices3_type { uint[6] value; }; layout(std430, binding = 3) buffer outVertices3 { outVertices3_type outVertices3_buf[]; }; struct outVertices4_type { uint[6] value; }; layout(std430, binding = 4) buffer outVertices4 { outVertices4_type outVertices4_buf[]; }; struct outVertices5_type { uint[6] value; }; layout(std430, binding = 5) buffer outVertices5 { outVertices5_type outVertices5_buf[]; }; struct outVertices6_type { uint[6] value; }; layout(std430, binding = 6) buffer outVertices6 { outVertices6_type outVertices6_buf[]; }; struct outVertices7_type { uint[6] value; }; layout(std430, binding = 7) buffer outVertices7 { outVertices7_type outVertices7_buf[]; }; uint u_xlatu0; bool u_xlatb0; ivec4 u_xlati1; ivec2 u_xlati2; bool u_xlatb2; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].w); u_xlatb2 = u_xlatu0> 2) + 0]), int(inVertices7_buf[u_xlatu0].value[(0 >> 2) + 1]), int(inVertices7_buf[u_xlatu0].value[(0 >> 2) + 2]), int(inVertices7_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati2.xy = ivec2(int(inVertices7_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inVertices7_buf[u_xlatu0].value[(16 >> 2) + 1])); outVertices7_buf[u_xlatu0].value[(0 >> 2)] = uint(u_xlati1.x); outVertices7_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(u_xlati1.y); outVertices7_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(u_xlati1.z); outVertices7_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(u_xlati1.w); outVertices7_buf[u_xlatu0].value[(16 >> 2)] = uint(u_xlati2.x); outVertices7_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(u_xlati2.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].z); u_xlatb2 = u_xlatu0> 2) + 0]), int(inVertices6_buf[u_xlatu0].value[(0 >> 2) + 1]), int(inVertices6_buf[u_xlatu0].value[(0 >> 2) + 2]), int(inVertices6_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati2.xy = ivec2(int(inVertices6_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inVertices6_buf[u_xlatu0].value[(16 >> 2) + 1])); outVertices6_buf[u_xlatu0].value[(0 >> 2)] = uint(u_xlati1.x); outVertices6_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(u_xlati1.y); outVertices6_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(u_xlati1.z); outVertices6_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(u_xlati1.w); outVertices6_buf[u_xlatu0].value[(16 >> 2)] = uint(u_xlati2.x); outVertices6_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(u_xlati2.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].y); u_xlatb2 = u_xlatu0> 2) + 0]), int(inVertices5_buf[u_xlatu0].value[(0 >> 2) + 1]), int(inVertices5_buf[u_xlatu0].value[(0 >> 2) + 2]), int(inVertices5_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati2.xy = ivec2(int(inVertices5_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inVertices5_buf[u_xlatu0].value[(16 >> 2) + 1])); outVertices5_buf[u_xlatu0].value[(0 >> 2)] = uint(u_xlati1.x); outVertices5_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(u_xlati1.y); outVertices5_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(u_xlati1.z); outVertices5_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(u_xlati1.w); outVertices5_buf[u_xlatu0].value[(16 >> 2)] = uint(u_xlati2.x); outVertices5_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(u_xlati2.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb2 = u_xlatu0> 2) + 0]), int(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 1]), int(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 2]), int(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati2.xy = ivec2(int(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 1])); outVertices4_buf[u_xlatu0].value[(0 >> 2)] = uint(u_xlati1.x); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(u_xlati1.y); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(u_xlati1.z); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(u_xlati1.w); outVertices4_buf[u_xlatu0].value[(16 >> 2)] = uint(u_xlati2.x); outVertices4_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(u_xlati2.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb2 = u_xlatu0> 2) + 0]), int(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 1]), int(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 2]), int(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati2.xy = ivec2(int(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 1])); outVertices3_buf[u_xlatu0].value[(0 >> 2)] = uint(u_xlati1.x); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(u_xlati1.y); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(u_xlati1.z); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(u_xlati1.w); outVertices3_buf[u_xlatu0].value[(16 >> 2)] = uint(u_xlati2.x); outVertices3_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(u_xlati2.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb2 = u_xlatu0> 2) + 0]), int(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 1]), int(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 2]), int(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati2.xy = ivec2(int(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 1])); outVertices2_buf[u_xlatu0].value[(0 >> 2)] = uint(u_xlati1.x); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(u_xlati1.y); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(u_xlati1.z); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(u_xlati1.w); outVertices2_buf[u_xlatu0].value[(16 >> 2)] = uint(u_xlati2.x); outVertices2_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(u_xlati2.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb2 = u_xlatu0> 2) + 0]), int(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 1]), int(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 2]), int(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati2.xy = ivec2(int(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 1])); outVertices1_buf[u_xlatu0].value[(0 >> 2)] = uint(u_xlati1.x); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(u_xlati1.y); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(u_xlati1.z); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(u_xlati1.w); outVertices1_buf[u_xlatu0].value[(16 >> 2)] = uint(u_xlati2.x); outVertices1_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(u_xlati2.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb2 = u_xlatu0> 2) + 0]), int(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 1]), int(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 2]), int(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati2.xy = ivec2(int(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 1])); outVertices0_buf[u_xlatu0].value[(0 >> 2)] = uint(u_xlati1.x); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(u_xlati1.y); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(u_xlati1.z); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(u_xlati1.w); outVertices0_buf[u_xlatu0].value[(16 >> 2)] = uint(u_xlati2.x); outVertices0_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(u_xlati2.y); } } } } } } } } } return; } @A batchCopyComputeCopyCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4 inVertices5 inVertices6 inVertices7 outVertices0 outVertices1 outVertices2 outVertices3 outVertices4 outVertices5 outVertices6 outVertices7 I#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform ComputeCopyCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; }; struct inVertices0_type { uint[10] value; }; layout(std430, binding = 8) readonly buffer inVertices0 { inVertices0_type inVertices0_buf[]; }; struct inVertices1_type { uint[10] value; }; layout(std430, binding = 9) readonly buffer inVertices1 { inVertices1_type inVertices1_buf[]; }; struct inVertices2_type { uint[10] value; }; layout(std430, binding = 10) readonly buffer inVertices2 { inVertices2_type inVertices2_buf[]; }; struct inVertices3_type { uint[10] value; }; layout(std430, binding = 11) readonly buffer inVertices3 { inVertices3_type inVertices3_buf[]; }; struct inVertices4_type { uint[10] value; }; layout(std430, binding = 12) readonly buffer inVertices4 { inVertices4_type inVertices4_buf[]; }; struct inVertices5_type { uint[10] value; }; layout(std430, binding = 13) readonly buffer inVertices5 { inVertices5_type inVertices5_buf[]; }; struct inVertices6_type { uint[10] value; }; layout(std430, binding = 14) readonly buffer inVertices6 { inVertices6_type inVertices6_buf[]; }; struct inVertices7_type { uint[10] value; }; layout(std430, binding = 15) readonly buffer inVertices7 { inVertices7_type inVertices7_buf[]; }; struct outVertices0_type { uint[10] value; }; layout(std430, binding = 0) buffer outVertices0 { outVertices0_type outVertices0_buf[]; }; struct outVertices1_type { uint[10] value; }; layout(std430, binding = 1) buffer outVertices1 { outVertices1_type outVertices1_buf[]; }; struct outVertices2_type { uint[10] value; }; layout(std430, binding = 2) buffer outVertices2 { outVertices2_type outVertices2_buf[]; }; struct outVertices3_type { uint[10] value; }; layout(std430, binding = 3) buffer outVertices3 { outVertices3_type outVertices3_buf[]; }; struct outVertices4_type { uint[10] value; }; layout(std430, binding = 4) buffer outVertices4 { outVertices4_type outVertices4_buf[]; }; struct outVertices5_type { uint[10] value; }; layout(std430, binding = 5) buffer outVertices5 { outVertices5_type outVertices5_buf[]; }; struct outVertices6_type { uint[10] value; }; layout(std430, binding = 6) buffer outVertices6 { outVertices6_type outVertices6_buf[]; }; struct outVertices7_type { uint[10] value; }; layout(std430, binding = 7) buffer outVertices7 { outVertices7_type outVertices7_buf[]; }; uint u_xlatu0; bool u_xlatb0; ivec4 u_xlati1; ivec4 u_xlati2; ivec2 u_xlati3; bool u_xlatb3; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].w); u_xlatb3 = u_xlatu0> 2) + 0]), int(inVertices7_buf[u_xlatu0].value[(0 >> 2) + 1]), int(inVertices7_buf[u_xlatu0].value[(0 >> 2) + 2]), int(inVertices7_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati2 = ivec4(int(inVertices7_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inVertices7_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inVertices7_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inVertices7_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati3.xy = ivec2(int(inVertices7_buf[u_xlatu0].value[(32 >> 2) + 0]), int(inVertices7_buf[u_xlatu0].value[(32 >> 2) + 1])); outVertices7_buf[u_xlatu0].value[(0 >> 2)] = uint(u_xlati1.x); outVertices7_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(u_xlati1.y); outVertices7_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(u_xlati1.z); outVertices7_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(u_xlati1.w); outVertices7_buf[u_xlatu0].value[(16 >> 2)] = uint(u_xlati2.x); outVertices7_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(u_xlati2.y); outVertices7_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(u_xlati2.z); outVertices7_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(u_xlati2.w); outVertices7_buf[u_xlatu0].value[(32 >> 2)] = uint(u_xlati3.x); outVertices7_buf[u_xlatu0].value[(32 >> 2) + 1] = uint(u_xlati3.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].z); u_xlatb3 = u_xlatu0> 2) + 0]), int(inVertices6_buf[u_xlatu0].value[(0 >> 2) + 1]), int(inVertices6_buf[u_xlatu0].value[(0 >> 2) + 2]), int(inVertices6_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati2 = ivec4(int(inVertices6_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inVertices6_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inVertices6_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inVertices6_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati3.xy = ivec2(int(inVertices6_buf[u_xlatu0].value[(32 >> 2) + 0]), int(inVertices6_buf[u_xlatu0].value[(32 >> 2) + 1])); outVertices6_buf[u_xlatu0].value[(0 >> 2)] = uint(u_xlati1.x); outVertices6_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(u_xlati1.y); outVertices6_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(u_xlati1.z); outVertices6_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(u_xlati1.w); outVertices6_buf[u_xlatu0].value[(16 >> 2)] = uint(u_xlati2.x); outVertices6_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(u_xlati2.y); outVertices6_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(u_xlati2.z); outVertices6_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(u_xlati2.w); outVertices6_buf[u_xlatu0].value[(32 >> 2)] = uint(u_xlati3.x); outVertices6_buf[u_xlatu0].value[(32 >> 2) + 1] = uint(u_xlati3.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].y); u_xlatb3 = u_xlatu0> 2) + 0]), int(inVertices5_buf[u_xlatu0].value[(0 >> 2) + 1]), int(inVertices5_buf[u_xlatu0].value[(0 >> 2) + 2]), int(inVertices5_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati2 = ivec4(int(inVertices5_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inVertices5_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inVertices5_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inVertices5_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati3.xy = ivec2(int(inVertices5_buf[u_xlatu0].value[(32 >> 2) + 0]), int(inVertices5_buf[u_xlatu0].value[(32 >> 2) + 1])); outVertices5_buf[u_xlatu0].value[(0 >> 2)] = uint(u_xlati1.x); outVertices5_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(u_xlati1.y); outVertices5_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(u_xlati1.z); outVertices5_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(u_xlati1.w); outVertices5_buf[u_xlatu0].value[(16 >> 2)] = uint(u_xlati2.x); outVertices5_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(u_xlati2.y); outVertices5_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(u_xlati2.z); outVertices5_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(u_xlati2.w); outVertices5_buf[u_xlatu0].value[(32 >> 2)] = uint(u_xlati3.x); outVertices5_buf[u_xlatu0].value[(32 >> 2) + 1] = uint(u_xlati3.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb3 = u_xlatu0> 2) + 0]), int(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 1]), int(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 2]), int(inVertices4_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati2 = ivec4(int(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inVertices4_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati3.xy = ivec2(int(inVertices4_buf[u_xlatu0].value[(32 >> 2) + 0]), int(inVertices4_buf[u_xlatu0].value[(32 >> 2) + 1])); outVertices4_buf[u_xlatu0].value[(0 >> 2)] = uint(u_xlati1.x); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(u_xlati1.y); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(u_xlati1.z); outVertices4_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(u_xlati1.w); outVertices4_buf[u_xlatu0].value[(16 >> 2)] = uint(u_xlati2.x); outVertices4_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(u_xlati2.y); outVertices4_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(u_xlati2.z); outVertices4_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(u_xlati2.w); outVertices4_buf[u_xlatu0].value[(32 >> 2)] = uint(u_xlati3.x); outVertices4_buf[u_xlatu0].value[(32 >> 2) + 1] = uint(u_xlati3.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb3 = u_xlatu0> 2) + 0]), int(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 1]), int(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 2]), int(inVertices3_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati2 = ivec4(int(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inVertices3_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati3.xy = ivec2(int(inVertices3_buf[u_xlatu0].value[(32 >> 2) + 0]), int(inVertices3_buf[u_xlatu0].value[(32 >> 2) + 1])); outVertices3_buf[u_xlatu0].value[(0 >> 2)] = uint(u_xlati1.x); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(u_xlati1.y); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(u_xlati1.z); outVertices3_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(u_xlati1.w); outVertices3_buf[u_xlatu0].value[(16 >> 2)] = uint(u_xlati2.x); outVertices3_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(u_xlati2.y); outVertices3_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(u_xlati2.z); outVertices3_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(u_xlati2.w); outVertices3_buf[u_xlatu0].value[(32 >> 2)] = uint(u_xlati3.x); outVertices3_buf[u_xlatu0].value[(32 >> 2) + 1] = uint(u_xlati3.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb3 = u_xlatu0> 2) + 0]), int(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 1]), int(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 2]), int(inVertices2_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati2 = ivec4(int(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inVertices2_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati3.xy = ivec2(int(inVertices2_buf[u_xlatu0].value[(32 >> 2) + 0]), int(inVertices2_buf[u_xlatu0].value[(32 >> 2) + 1])); outVertices2_buf[u_xlatu0].value[(0 >> 2)] = uint(u_xlati1.x); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(u_xlati1.y); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(u_xlati1.z); outVertices2_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(u_xlati1.w); outVertices2_buf[u_xlatu0].value[(16 >> 2)] = uint(u_xlati2.x); outVertices2_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(u_xlati2.y); outVertices2_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(u_xlati2.z); outVertices2_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(u_xlati2.w); outVertices2_buf[u_xlatu0].value[(32 >> 2)] = uint(u_xlati3.x); outVertices2_buf[u_xlatu0].value[(32 >> 2) + 1] = uint(u_xlati3.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb3 = u_xlatu0> 2) + 0]), int(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 1]), int(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 2]), int(inVertices1_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati2 = ivec4(int(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inVertices1_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati3.xy = ivec2(int(inVertices1_buf[u_xlatu0].value[(32 >> 2) + 0]), int(inVertices1_buf[u_xlatu0].value[(32 >> 2) + 1])); outVertices1_buf[u_xlatu0].value[(0 >> 2)] = uint(u_xlati1.x); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(u_xlati1.y); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(u_xlati1.z); outVertices1_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(u_xlati1.w); outVertices1_buf[u_xlatu0].value[(16 >> 2)] = uint(u_xlati2.x); outVertices1_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(u_xlati2.y); outVertices1_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(u_xlati2.z); outVertices1_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(u_xlati2.w); outVertices1_buf[u_xlatu0].value[(32 >> 2)] = uint(u_xlati3.x); outVertices1_buf[u_xlatu0].value[(32 >> 2) + 1] = uint(u_xlati3.y); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb3 = u_xlatu0> 2) + 0]), int(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 1]), int(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 2]), int(inVertices0_buf[u_xlatu0].value[(0 >> 2) + 3])); u_xlati2 = ivec4(int(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 0]), int(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 1]), int(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 2]), int(inVertices0_buf[u_xlatu0].value[(16 >> 2) + 3])); u_xlati3.xy = ivec2(int(inVertices0_buf[u_xlatu0].value[(32 >> 2) + 0]), int(inVertices0_buf[u_xlatu0].value[(32 >> 2) + 1])); outVertices0_buf[u_xlatu0].value[(0 >> 2)] = uint(u_xlati1.x); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 1] = uint(u_xlati1.y); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 2] = uint(u_xlati1.z); outVertices0_buf[u_xlatu0].value[(0 >> 2) + 3] = uint(u_xlati1.w); outVertices0_buf[u_xlatu0].value[(16 >> 2)] = uint(u_xlati2.x); outVertices0_buf[u_xlatu0].value[(16 >> 2) + 1] = uint(u_xlati2.y); outVertices0_buf[u_xlatu0].value[(16 >> 2) + 2] = uint(u_xlati2.z); outVertices0_buf[u_xlatu0].value[(16 >> 2) + 3] = uint(u_xlati2.w); outVertices0_buf[u_xlatu0].value[(32 >> 2)] = uint(u_xlati3.x); outVertices0_buf[u_xlatu0].value[(32 >> 2) + 1] = uint(u_xlati3.y); } } } } } } } } } return; } @A batchMainComputeBlendShapeCBufferinBlendShapeVertices0inBlendShapeVertices1inBlendShapeVertices2inBlendShapeVertices3inBlendShapeVertices4inBlendShapeVertices5inBlendShapeVertices6inBlendShapeVertices7inOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices6inOutVertices7{=#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform ComputeBlendShapeCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; uvec4 g_FirstVerts[2]; vec4 g_Weights[2]; }; struct inBlendShapeVertices0_type { uint[10] value; }; layout(std430, binding = 8) readonly buffer inBlendShapeVertices0 { inBlendShapeVertices0_type inBlendShapeVertices0_buf[]; }; struct inBlendShapeVertices1_type { uint[10] value; }; layout(std430, binding = 9) readonly buffer inBlendShapeVertices1 { inBlendShapeVertices1_type inBlendShapeVertices1_buf[]; }; struct inBlendShapeVertices2_type { uint[10] value; }; layout(std430, binding = 10) readonly buffer inBlendShapeVertices2 { inBlendShapeVertices2_type inBlendShapeVertices2_buf[]; }; struct inBlendShapeVertices3_type { uint[10] value; }; layout(std430, binding = 11) readonly buffer inBlendShapeVertices3 { inBlendShapeVertices3_type inBlendShapeVertices3_buf[]; }; struct inBlendShapeVertices4_type { uint[10] value; }; layout(std430, binding = 12) readonly buffer inBlendShapeVertices4 { inBlendShapeVertices4_type inBlendShapeVertices4_buf[]; }; struct inBlendShapeVertices5_type { uint[10] value; }; layout(std430, binding = 13) readonly buffer inBlendShapeVertices5 { inBlendShapeVertices5_type inBlendShapeVertices5_buf[]; }; struct inBlendShapeVertices6_type { uint[10] value; }; layout(std430, binding = 14) readonly buffer inBlendShapeVertices6 { inBlendShapeVertices6_type inBlendShapeVertices6_buf[]; }; struct inBlendShapeVertices7_type { uint[10] value; }; layout(std430, binding = 15) readonly buffer inBlendShapeVertices7 { inBlendShapeVertices7_type inBlendShapeVertices7_buf[]; }; struct inOutVertices0_type { uint[3] value; }; layout(std430, binding = 0) buffer inOutVertices0 { inOutVertices0_type inOutVertices0_buf[]; }; struct inOutVertices1_type { uint[3] value; }; layout(std430, binding = 1) buffer inOutVertices1 { inOutVertices1_type inOutVertices1_buf[]; }; struct inOutVertices2_type { uint[3] value; }; layout(std430, binding = 2) buffer inOutVertices2 { inOutVertices2_type inOutVertices2_buf[]; }; struct inOutVertices3_type { uint[3] value; }; layout(std430, binding = 3) buffer inOutVertices3 { inOutVertices3_type inOutVertices3_buf[]; }; struct inOutVertices4_type { uint[3] value; }; layout(std430, binding = 4) buffer inOutVertices4 { inOutVertices4_type inOutVertices4_buf[]; }; struct inOutVertices5_type { uint[3] value; }; layout(std430, binding = 5) buffer inOutVertices5 { inOutVertices5_type inOutVertices5_buf[]; }; struct inOutVertices6_type { uint[3] value; }; layout(std430, binding = 6) buffer inOutVertices6 { inOutVertices6_type inOutVertices6_buf[]; }; struct inOutVertices7_type { uint[3] value; }; layout(std430, binding = 7) buffer inOutVertices7 { inOutVertices7_type inOutVertices7_buf[]; }; vec4 u_xlat0; int u_xlati0; uint u_xlatu0; bool u_xlatb0; vec3 u_xlat1; vec3 u_xlat2; bool u_xlatb2; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].w); u_xlatb2 = u_xlatu0> 2) + 0]), uintBitsToFloat(inBlendShapeVertices7_buf[u_xlati0].value[(0 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices7_buf[u_xlati0].value[(0 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices7_buf[u_xlati0].value[(0 >> 2) + 3])); u_xlat1.xyz = vec3(uintBitsToFloat(inOutVertices7_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices7_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices7_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 2])); u_xlat2.xyz = u_xlat0.yzw * g_Weights[1].www + u_xlat1.xyz; inOutVertices7_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2)] = floatBitsToUint(u_xlat2.x); inOutVertices7_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat2.y); inOutVertices7_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat2.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].z); u_xlatb2 = u_xlatu0> 2) + 0]), uintBitsToFloat(inBlendShapeVertices6_buf[u_xlati0].value[(0 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices6_buf[u_xlati0].value[(0 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices6_buf[u_xlati0].value[(0 >> 2) + 3])); u_xlat1.xyz = vec3(uintBitsToFloat(inOutVertices6_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices6_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices6_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 2])); u_xlat2.xyz = u_xlat0.yzw * g_Weights[1].zzz + u_xlat1.xyz; inOutVertices6_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2)] = floatBitsToUint(u_xlat2.x); inOutVertices6_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat2.y); inOutVertices6_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat2.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].y); u_xlatb2 = u_xlatu0> 2) + 0]), uintBitsToFloat(inBlendShapeVertices5_buf[u_xlati0].value[(0 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices5_buf[u_xlati0].value[(0 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices5_buf[u_xlati0].value[(0 >> 2) + 3])); u_xlat1.xyz = vec3(uintBitsToFloat(inOutVertices5_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices5_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices5_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 2])); u_xlat2.xyz = u_xlat0.yzw * g_Weights[1].yyy + u_xlat1.xyz; inOutVertices5_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2)] = floatBitsToUint(u_xlat2.x); inOutVertices5_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat2.y); inOutVertices5_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat2.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb2 = u_xlatu0> 2) + 0]), uintBitsToFloat(inBlendShapeVertices4_buf[u_xlati0].value[(0 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices4_buf[u_xlati0].value[(0 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices4_buf[u_xlati0].value[(0 >> 2) + 3])); u_xlat1.xyz = vec3(uintBitsToFloat(inOutVertices4_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices4_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices4_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 2])); u_xlat2.xyz = u_xlat0.yzw * g_Weights[1].xxx + u_xlat1.xyz; inOutVertices4_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2)] = floatBitsToUint(u_xlat2.x); inOutVertices4_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat2.y); inOutVertices4_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat2.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb2 = u_xlatu0> 2) + 0]), uintBitsToFloat(inBlendShapeVertices3_buf[u_xlati0].value[(0 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices3_buf[u_xlati0].value[(0 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices3_buf[u_xlati0].value[(0 >> 2) + 3])); u_xlat1.xyz = vec3(uintBitsToFloat(inOutVertices3_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices3_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices3_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 2])); u_xlat2.xyz = u_xlat0.yzw * g_Weights[0].www + u_xlat1.xyz; inOutVertices3_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2)] = floatBitsToUint(u_xlat2.x); inOutVertices3_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat2.y); inOutVertices3_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat2.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb2 = u_xlatu0> 2) + 0]), uintBitsToFloat(inBlendShapeVertices2_buf[u_xlati0].value[(0 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices2_buf[u_xlati0].value[(0 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices2_buf[u_xlati0].value[(0 >> 2) + 3])); u_xlat1.xyz = vec3(uintBitsToFloat(inOutVertices2_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices2_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices2_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 2])); u_xlat2.xyz = u_xlat0.yzw * g_Weights[0].zzz + u_xlat1.xyz; inOutVertices2_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2)] = floatBitsToUint(u_xlat2.x); inOutVertices2_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat2.y); inOutVertices2_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat2.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb2 = u_xlatu0> 2) + 0]), uintBitsToFloat(inBlendShapeVertices1_buf[u_xlati0].value[(0 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices1_buf[u_xlati0].value[(0 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices1_buf[u_xlati0].value[(0 >> 2) + 3])); u_xlat1.xyz = vec3(uintBitsToFloat(inOutVertices1_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices1_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices1_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 2])); u_xlat2.xyz = u_xlat0.yzw * g_Weights[0].yyy + u_xlat1.xyz; inOutVertices1_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2)] = floatBitsToUint(u_xlat2.x); inOutVertices1_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat2.y); inOutVertices1_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat2.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb2 = u_xlatu0> 2) + 0]), uintBitsToFloat(inBlendShapeVertices0_buf[u_xlati0].value[(0 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices0_buf[u_xlati0].value[(0 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices0_buf[u_xlati0].value[(0 >> 2) + 3])); u_xlat1.xyz = vec3(uintBitsToFloat(inOutVertices0_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices0_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices0_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 2])); u_xlat2.xyz = u_xlat0.yzw * g_Weights[0].xxx + u_xlat1.xyz; inOutVertices0_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2)] = floatBitsToUint(u_xlat2.x); inOutVertices0_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat2.y); inOutVertices0_buf[floatBitsToInt(u_xlat0.x)].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat2.z); } } } } } } } } } return; } @A batchMainComputeBlendShapeCBufferinBlendShapeVertices0inBlendShapeVertices1inBlendShapeVertices2inBlendShapeVertices3inBlendShapeVertices4inBlendShapeVertices5inBlendShapeVertices6inBlendShapeVertices7inOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices6inOutVertices7g`#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform ComputeBlendShapeCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; uvec4 g_FirstVerts[2]; vec4 g_Weights[2]; }; struct inBlendShapeVertices0_type { uint[10] value; }; layout(std430, binding = 8) readonly buffer inBlendShapeVertices0 { inBlendShapeVertices0_type inBlendShapeVertices0_buf[]; }; struct inBlendShapeVertices1_type { uint[10] value; }; layout(std430, binding = 9) readonly buffer inBlendShapeVertices1 { inBlendShapeVertices1_type inBlendShapeVertices1_buf[]; }; struct inBlendShapeVertices2_type { uint[10] value; }; layout(std430, binding = 10) readonly buffer inBlendShapeVertices2 { inBlendShapeVertices2_type inBlendShapeVertices2_buf[]; }; struct inBlendShapeVertices3_type { uint[10] value; }; layout(std430, binding = 11) readonly buffer inBlendShapeVertices3 { inBlendShapeVertices3_type inBlendShapeVertices3_buf[]; }; struct inBlendShapeVertices4_type { uint[10] value; }; layout(std430, binding = 12) readonly buffer inBlendShapeVertices4 { inBlendShapeVertices4_type inBlendShapeVertices4_buf[]; }; struct inBlendShapeVertices5_type { uint[10] value; }; layout(std430, binding = 13) readonly buffer inBlendShapeVertices5 { inBlendShapeVertices5_type inBlendShapeVertices5_buf[]; }; struct inBlendShapeVertices6_type { uint[10] value; }; layout(std430, binding = 14) readonly buffer inBlendShapeVertices6 { inBlendShapeVertices6_type inBlendShapeVertices6_buf[]; }; struct inBlendShapeVertices7_type { uint[10] value; }; layout(std430, binding = 15) readonly buffer inBlendShapeVertices7 { inBlendShapeVertices7_type inBlendShapeVertices7_buf[]; }; struct inOutVertices0_type { uint[6] value; }; layout(std430, binding = 0) buffer inOutVertices0 { inOutVertices0_type inOutVertices0_buf[]; }; struct inOutVertices1_type { uint[6] value; }; layout(std430, binding = 1) buffer inOutVertices1 { inOutVertices1_type inOutVertices1_buf[]; }; struct inOutVertices2_type { uint[6] value; }; layout(std430, binding = 2) buffer inOutVertices2 { inOutVertices2_type inOutVertices2_buf[]; }; struct inOutVertices3_type { uint[6] value; }; layout(std430, binding = 3) buffer inOutVertices3 { inOutVertices3_type inOutVertices3_buf[]; }; struct inOutVertices4_type { uint[6] value; }; layout(std430, binding = 4) buffer inOutVertices4 { inOutVertices4_type inOutVertices4_buf[]; }; struct inOutVertices5_type { uint[6] value; }; layout(std430, binding = 5) buffer inOutVertices5 { inOutVertices5_type inOutVertices5_buf[]; }; struct inOutVertices6_type { uint[6] value; }; layout(std430, binding = 6) buffer inOutVertices6 { inOutVertices6_type inOutVertices6_buf[]; }; struct inOutVertices7_type { uint[6] value; }; layout(std430, binding = 7) buffer inOutVertices7 { inOutVertices7_type inOutVertices7_buf[]; }; vec3 u_xlat0; int u_xlati0; uint u_xlatu0; bool u_xlatb0; vec4 u_xlat1; vec4 u_xlat2; vec3 u_xlat3; vec4 u_xlat4; bool u_xlatb5; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].w); u_xlatb5 = u_xlatu0> 2) + 0]), uintBitsToFloat(inBlendShapeVertices7_buf[u_xlati0].value[(0 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices7_buf[u_xlati0].value[(0 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices7_buf[u_xlati0].value[(0 >> 2) + 3])); u_xlat0.xyz = vec3(uintBitsToFloat(inBlendShapeVertices7_buf[u_xlati0].value[(16 >> 2) + 0]), uintBitsToFloat(inBlendShapeVertices7_buf[u_xlati0].value[(16 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices7_buf[u_xlati0].value[(16 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3])); u_xlat3.xy = vec2(uintBitsToFloat(inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1])); u_xlat4.xyz = u_xlat1.yzw * g_Weights[1].www + u_xlat2.xyz; u_xlat3.z = u_xlat2.w; u_xlat0.xyz = u_xlat0.xyz * g_Weights[1].www + u_xlat3.zxy; u_xlat4.w = u_xlat0.x; inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2)] = floatBitsToUint(u_xlat4.x); inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat4.y); inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat4.z); inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat4.w); inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2)] = floatBitsToUint(u_xlat0.y); inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat0.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].z); u_xlatb5 = u_xlatu0> 2) + 0]), uintBitsToFloat(inBlendShapeVertices6_buf[u_xlati0].value[(0 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices6_buf[u_xlati0].value[(0 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices6_buf[u_xlati0].value[(0 >> 2) + 3])); u_xlat0.xyz = vec3(uintBitsToFloat(inBlendShapeVertices6_buf[u_xlati0].value[(16 >> 2) + 0]), uintBitsToFloat(inBlendShapeVertices6_buf[u_xlati0].value[(16 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices6_buf[u_xlati0].value[(16 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3])); u_xlat3.xy = vec2(uintBitsToFloat(inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1])); u_xlat4.xyz = u_xlat1.yzw * g_Weights[1].zzz + u_xlat2.xyz; u_xlat3.z = u_xlat2.w; u_xlat0.xyz = u_xlat0.xyz * g_Weights[1].zzz + u_xlat3.zxy; u_xlat4.w = u_xlat0.x; inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2)] = floatBitsToUint(u_xlat4.x); inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat4.y); inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat4.z); inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat4.w); inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2)] = floatBitsToUint(u_xlat0.y); inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat0.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].y); u_xlatb5 = u_xlatu0> 2) + 0]), uintBitsToFloat(inBlendShapeVertices5_buf[u_xlati0].value[(0 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices5_buf[u_xlati0].value[(0 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices5_buf[u_xlati0].value[(0 >> 2) + 3])); u_xlat0.xyz = vec3(uintBitsToFloat(inBlendShapeVertices5_buf[u_xlati0].value[(16 >> 2) + 0]), uintBitsToFloat(inBlendShapeVertices5_buf[u_xlati0].value[(16 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices5_buf[u_xlati0].value[(16 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3])); u_xlat3.xy = vec2(uintBitsToFloat(inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1])); u_xlat4.xyz = u_xlat1.yzw * g_Weights[1].yyy + u_xlat2.xyz; u_xlat3.z = u_xlat2.w; u_xlat0.xyz = u_xlat0.xyz * g_Weights[1].yyy + u_xlat3.zxy; u_xlat4.w = u_xlat0.x; inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2)] = floatBitsToUint(u_xlat4.x); inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat4.y); inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat4.z); inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat4.w); inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2)] = floatBitsToUint(u_xlat0.y); inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat0.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb5 = u_xlatu0> 2) + 0]), uintBitsToFloat(inBlendShapeVertices4_buf[u_xlati0].value[(0 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices4_buf[u_xlati0].value[(0 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices4_buf[u_xlati0].value[(0 >> 2) + 3])); u_xlat0.xyz = vec3(uintBitsToFloat(inBlendShapeVertices4_buf[u_xlati0].value[(16 >> 2) + 0]), uintBitsToFloat(inBlendShapeVertices4_buf[u_xlati0].value[(16 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices4_buf[u_xlati0].value[(16 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3])); u_xlat3.xy = vec2(uintBitsToFloat(inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1])); u_xlat4.xyz = u_xlat1.yzw * g_Weights[1].xxx + u_xlat2.xyz; u_xlat3.z = u_xlat2.w; u_xlat0.xyz = u_xlat0.xyz * g_Weights[1].xxx + u_xlat3.zxy; u_xlat4.w = u_xlat0.x; inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2)] = floatBitsToUint(u_xlat4.x); inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat4.y); inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat4.z); inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat4.w); inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2)] = floatBitsToUint(u_xlat0.y); inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat0.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb5 = u_xlatu0> 2) + 0]), uintBitsToFloat(inBlendShapeVertices3_buf[u_xlati0].value[(0 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices3_buf[u_xlati0].value[(0 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices3_buf[u_xlati0].value[(0 >> 2) + 3])); u_xlat0.xyz = vec3(uintBitsToFloat(inBlendShapeVertices3_buf[u_xlati0].value[(16 >> 2) + 0]), uintBitsToFloat(inBlendShapeVertices3_buf[u_xlati0].value[(16 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices3_buf[u_xlati0].value[(16 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3])); u_xlat3.xy = vec2(uintBitsToFloat(inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1])); u_xlat4.xyz = u_xlat1.yzw * g_Weights[0].www + u_xlat2.xyz; u_xlat3.z = u_xlat2.w; u_xlat0.xyz = u_xlat0.xyz * g_Weights[0].www + u_xlat3.zxy; u_xlat4.w = u_xlat0.x; inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2)] = floatBitsToUint(u_xlat4.x); inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat4.y); inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat4.z); inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat4.w); inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2)] = floatBitsToUint(u_xlat0.y); inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat0.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb5 = u_xlatu0> 2) + 0]), uintBitsToFloat(inBlendShapeVertices2_buf[u_xlati0].value[(0 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices2_buf[u_xlati0].value[(0 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices2_buf[u_xlati0].value[(0 >> 2) + 3])); u_xlat0.xyz = vec3(uintBitsToFloat(inBlendShapeVertices2_buf[u_xlati0].value[(16 >> 2) + 0]), uintBitsToFloat(inBlendShapeVertices2_buf[u_xlati0].value[(16 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices2_buf[u_xlati0].value[(16 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3])); u_xlat3.xy = vec2(uintBitsToFloat(inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1])); u_xlat4.xyz = u_xlat1.yzw * g_Weights[0].zzz + u_xlat2.xyz; u_xlat3.z = u_xlat2.w; u_xlat0.xyz = u_xlat0.xyz * g_Weights[0].zzz + u_xlat3.zxy; u_xlat4.w = u_xlat0.x; inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2)] = floatBitsToUint(u_xlat4.x); inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat4.y); inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat4.z); inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat4.w); inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2)] = floatBitsToUint(u_xlat0.y); inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat0.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb5 = u_xlatu0> 2) + 0]), uintBitsToFloat(inBlendShapeVertices1_buf[u_xlati0].value[(0 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices1_buf[u_xlati0].value[(0 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices1_buf[u_xlati0].value[(0 >> 2) + 3])); u_xlat0.xyz = vec3(uintBitsToFloat(inBlendShapeVertices1_buf[u_xlati0].value[(16 >> 2) + 0]), uintBitsToFloat(inBlendShapeVertices1_buf[u_xlati0].value[(16 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices1_buf[u_xlati0].value[(16 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3])); u_xlat3.xy = vec2(uintBitsToFloat(inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1])); u_xlat4.xyz = u_xlat1.yzw * g_Weights[0].yyy + u_xlat2.xyz; u_xlat3.z = u_xlat2.w; u_xlat0.xyz = u_xlat0.xyz * g_Weights[0].yyy + u_xlat3.zxy; u_xlat4.w = u_xlat0.x; inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2)] = floatBitsToUint(u_xlat4.x); inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat4.y); inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat4.z); inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat4.w); inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2)] = floatBitsToUint(u_xlat0.y); inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat0.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb5 = u_xlatu0> 2) + 0]), uintBitsToFloat(inBlendShapeVertices0_buf[u_xlati0].value[(0 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices0_buf[u_xlati0].value[(0 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices0_buf[u_xlati0].value[(0 >> 2) + 3])); u_xlat0.xyz = vec3(uintBitsToFloat(inBlendShapeVertices0_buf[u_xlati0].value[(16 >> 2) + 0]), uintBitsToFloat(inBlendShapeVertices0_buf[u_xlati0].value[(16 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices0_buf[u_xlati0].value[(16 >> 2) + 2])); u_xlat2 = vec4(uintBitsToFloat(inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2]), uintBitsToFloat(inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3])); u_xlat3.xy = vec2(uintBitsToFloat(inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1])); u_xlat4.xyz = u_xlat1.yzw * g_Weights[0].xxx + u_xlat2.xyz; u_xlat3.z = u_xlat2.w; u_xlat0.xyz = u_xlat0.xyz * g_Weights[0].xxx + u_xlat3.zxy; u_xlat4.w = u_xlat0.x; inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2)] = floatBitsToUint(u_xlat4.x); inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat4.y); inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat4.z); inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat4.w); inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2)] = floatBitsToUint(u_xlat0.y); inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat0.z); } } } } } } } } } return; } @A batchMainComputeBlendShapeCBufferinBlendShapeVertices0inBlendShapeVertices1inBlendShapeVertices2inBlendShapeVertices3inBlendShapeVertices4inBlendShapeVertices5inBlendShapeVertices6inBlendShapeVertices7inOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices6inOutVertices7˄#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform ComputeBlendShapeCBuffer { uvec4 g_VertCounts[2]; uvec4 g_BatchOffsets[2]; uvec4 g_FirstVerts[2]; vec4 g_Weights[2]; }; struct inBlendShapeVertices0_type { uint[10] value; }; layout(std430, binding = 8) readonly buffer inBlendShapeVertices0 { inBlendShapeVertices0_type inBlendShapeVertices0_buf[]; }; struct inBlendShapeVertices1_type { uint[10] value; }; layout(std430, binding = 9) readonly buffer inBlendShapeVertices1 { inBlendShapeVertices1_type inBlendShapeVertices1_buf[]; }; struct inBlendShapeVertices2_type { uint[10] value; }; layout(std430, binding = 10) readonly buffer inBlendShapeVertices2 { inBlendShapeVertices2_type inBlendShapeVertices2_buf[]; }; struct inBlendShapeVertices3_type { uint[10] value; }; layout(std430, binding = 11) readonly buffer inBlendShapeVertices3 { inBlendShapeVertices3_type inBlendShapeVertices3_buf[]; }; struct inBlendShapeVertices4_type { uint[10] value; }; layout(std430, binding = 12) readonly buffer inBlendShapeVertices4 { inBlendShapeVertices4_type inBlendShapeVertices4_buf[]; }; struct inBlendShapeVertices5_type { uint[10] value; }; layout(std430, binding = 13) readonly buffer inBlendShapeVertices5 { inBlendShapeVertices5_type inBlendShapeVertices5_buf[]; }; struct inBlendShapeVertices6_type { uint[10] value; }; layout(std430, binding = 14) readonly buffer inBlendShapeVertices6 { inBlendShapeVertices6_type inBlendShapeVertices6_buf[]; }; struct inBlendShapeVertices7_type { uint[10] value; }; layout(std430, binding = 15) readonly buffer inBlendShapeVertices7 { inBlendShapeVertices7_type inBlendShapeVertices7_buf[]; }; struct inOutVertices0_type { uint[10] value; }; layout(std430, binding = 0) buffer inOutVertices0 { inOutVertices0_type inOutVertices0_buf[]; }; struct inOutVertices1_type { uint[10] value; }; layout(std430, binding = 1) buffer inOutVertices1 { inOutVertices1_type inOutVertices1_buf[]; }; struct inOutVertices2_type { uint[10] value; }; layout(std430, binding = 2) buffer inOutVertices2 { inOutVertices2_type inOutVertices2_buf[]; }; struct inOutVertices3_type { uint[10] value; }; layout(std430, binding = 3) buffer inOutVertices3 { inOutVertices3_type inOutVertices3_buf[]; }; struct inOutVertices4_type { uint[10] value; }; layout(std430, binding = 4) buffer inOutVertices4 { inOutVertices4_type inOutVertices4_buf[]; }; struct inOutVertices5_type { uint[10] value; }; layout(std430, binding = 5) buffer inOutVertices5 { inOutVertices5_type inOutVertices5_buf[]; }; struct inOutVertices6_type { uint[10] value; }; layout(std430, binding = 6) buffer inOutVertices6 { inOutVertices6_type inOutVertices6_buf[]; }; struct inOutVertices7_type { uint[10] value; }; layout(std430, binding = 7) buffer inOutVertices7 { inOutVertices7_type inOutVertices7_buf[]; }; vec3 u_xlat0; int u_xlati0; uint u_xlatu0; bool u_xlatb0; vec4 u_xlat1; vec4 u_xlat2; vec4 u_xlat3; vec4 u_xlat4; vec3 u_xlat5; vec4 u_xlat6; bool u_xlatb7; layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].w); u_xlatb7 = u_xlatu0> 2) + 0]), uintBitsToFloat(inBlendShapeVertices7_buf[u_xlati0].value[(0 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices7_buf[u_xlati0].value[(0 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices7_buf[u_xlati0].value[(0 >> 2) + 3])); u_xlat2 = vec4(uintBitsToFloat(inBlendShapeVertices7_buf[u_xlati0].value[(16 >> 2) + 0]), uintBitsToFloat(inBlendShapeVertices7_buf[u_xlati0].value[(16 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices7_buf[u_xlati0].value[(16 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices7_buf[u_xlati0].value[(16 >> 2) + 3])); u_xlat0.xy = vec2(uintBitsToFloat(inBlendShapeVertices7_buf[u_xlati0].value[(32 >> 2) + 0]), uintBitsToFloat(inBlendShapeVertices7_buf[u_xlati0].value[(32 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3]), uintBitsToFloat(inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2])); u_xlat4 = vec4(uintBitsToFloat(inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 3])); u_xlat5.z = uintBitsToFloat(inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(32 >> 2) + 0]); u_xlat6.xyz = u_xlat1.yzw * g_Weights[1].www + u_xlat3.yzw; u_xlat3.yz = u_xlat4.xy; u_xlat3.xyz = u_xlat2.yzx * g_Weights[1].www + u_xlat3.yzx; u_xlat0.z = u_xlat2.w; u_xlat5.xy = u_xlat4.zw; u_xlat0.xyz = u_xlat0.zxy * g_Weights[1].www + u_xlat5.xyz; u_xlat6.w = u_xlat3.z; inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2)] = floatBitsToUint(u_xlat6.x); inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat6.y); inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat6.z); inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat6.w); u_xlat3.zw = u_xlat0.xy; inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2)] = floatBitsToUint(u_xlat3.x); inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat3.y); inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat3.z); inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat3.w); inOutVertices7_buf[floatBitsToInt(u_xlat1.x)].value[(32 >> 2)] = floatBitsToUint(u_xlat0.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].z); u_xlatb7 = u_xlatu0> 2) + 0]), uintBitsToFloat(inBlendShapeVertices6_buf[u_xlati0].value[(0 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices6_buf[u_xlati0].value[(0 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices6_buf[u_xlati0].value[(0 >> 2) + 3])); u_xlat2 = vec4(uintBitsToFloat(inBlendShapeVertices6_buf[u_xlati0].value[(16 >> 2) + 0]), uintBitsToFloat(inBlendShapeVertices6_buf[u_xlati0].value[(16 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices6_buf[u_xlati0].value[(16 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices6_buf[u_xlati0].value[(16 >> 2) + 3])); u_xlat0.xy = vec2(uintBitsToFloat(inBlendShapeVertices6_buf[u_xlati0].value[(32 >> 2) + 0]), uintBitsToFloat(inBlendShapeVertices6_buf[u_xlati0].value[(32 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3]), uintBitsToFloat(inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2])); u_xlat4 = vec4(uintBitsToFloat(inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 3])); u_xlat5.z = uintBitsToFloat(inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(32 >> 2) + 0]); u_xlat6.xyz = u_xlat1.yzw * g_Weights[1].zzz + u_xlat3.yzw; u_xlat3.yz = u_xlat4.xy; u_xlat3.xyz = u_xlat2.yzx * g_Weights[1].zzz + u_xlat3.yzx; u_xlat0.z = u_xlat2.w; u_xlat5.xy = u_xlat4.zw; u_xlat0.xyz = u_xlat0.zxy * g_Weights[1].zzz + u_xlat5.xyz; u_xlat6.w = u_xlat3.z; inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2)] = floatBitsToUint(u_xlat6.x); inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat6.y); inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat6.z); inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat6.w); u_xlat3.zw = u_xlat0.xy; inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2)] = floatBitsToUint(u_xlat3.x); inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat3.y); inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat3.z); inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat3.w); inOutVertices6_buf[floatBitsToInt(u_xlat1.x)].value[(32 >> 2)] = floatBitsToUint(u_xlat0.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].y); u_xlatb7 = u_xlatu0> 2) + 0]), uintBitsToFloat(inBlendShapeVertices5_buf[u_xlati0].value[(0 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices5_buf[u_xlati0].value[(0 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices5_buf[u_xlati0].value[(0 >> 2) + 3])); u_xlat2 = vec4(uintBitsToFloat(inBlendShapeVertices5_buf[u_xlati0].value[(16 >> 2) + 0]), uintBitsToFloat(inBlendShapeVertices5_buf[u_xlati0].value[(16 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices5_buf[u_xlati0].value[(16 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices5_buf[u_xlati0].value[(16 >> 2) + 3])); u_xlat0.xy = vec2(uintBitsToFloat(inBlendShapeVertices5_buf[u_xlati0].value[(32 >> 2) + 0]), uintBitsToFloat(inBlendShapeVertices5_buf[u_xlati0].value[(32 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3]), uintBitsToFloat(inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2])); u_xlat4 = vec4(uintBitsToFloat(inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 3])); u_xlat5.z = uintBitsToFloat(inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(32 >> 2) + 0]); u_xlat6.xyz = u_xlat1.yzw * g_Weights[1].yyy + u_xlat3.yzw; u_xlat3.yz = u_xlat4.xy; u_xlat3.xyz = u_xlat2.yzx * g_Weights[1].yyy + u_xlat3.yzx; u_xlat0.z = u_xlat2.w; u_xlat5.xy = u_xlat4.zw; u_xlat0.xyz = u_xlat0.zxy * g_Weights[1].yyy + u_xlat5.xyz; u_xlat6.w = u_xlat3.z; inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2)] = floatBitsToUint(u_xlat6.x); inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat6.y); inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat6.z); inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat6.w); u_xlat3.zw = u_xlat0.xy; inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2)] = floatBitsToUint(u_xlat3.x); inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat3.y); inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat3.z); inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat3.w); inOutVertices5_buf[floatBitsToInt(u_xlat1.x)].value[(32 >> 2)] = floatBitsToUint(u_xlat0.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[1].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[1].x); u_xlatb7 = u_xlatu0> 2) + 0]), uintBitsToFloat(inBlendShapeVertices4_buf[u_xlati0].value[(0 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices4_buf[u_xlati0].value[(0 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices4_buf[u_xlati0].value[(0 >> 2) + 3])); u_xlat2 = vec4(uintBitsToFloat(inBlendShapeVertices4_buf[u_xlati0].value[(16 >> 2) + 0]), uintBitsToFloat(inBlendShapeVertices4_buf[u_xlati0].value[(16 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices4_buf[u_xlati0].value[(16 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices4_buf[u_xlati0].value[(16 >> 2) + 3])); u_xlat0.xy = vec2(uintBitsToFloat(inBlendShapeVertices4_buf[u_xlati0].value[(32 >> 2) + 0]), uintBitsToFloat(inBlendShapeVertices4_buf[u_xlati0].value[(32 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3]), uintBitsToFloat(inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2])); u_xlat4 = vec4(uintBitsToFloat(inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 3])); u_xlat5.z = uintBitsToFloat(inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(32 >> 2) + 0]); u_xlat6.xyz = u_xlat1.yzw * g_Weights[1].xxx + u_xlat3.yzw; u_xlat3.yz = u_xlat4.xy; u_xlat3.xyz = u_xlat2.yzx * g_Weights[1].xxx + u_xlat3.yzx; u_xlat0.z = u_xlat2.w; u_xlat5.xy = u_xlat4.zw; u_xlat0.xyz = u_xlat0.zxy * g_Weights[1].xxx + u_xlat5.xyz; u_xlat6.w = u_xlat3.z; inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2)] = floatBitsToUint(u_xlat6.x); inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat6.y); inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat6.z); inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat6.w); u_xlat3.zw = u_xlat0.xy; inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2)] = floatBitsToUint(u_xlat3.x); inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat3.y); inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat3.z); inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat3.w); inOutVertices4_buf[floatBitsToInt(u_xlat1.x)].value[(32 >> 2)] = floatBitsToUint(u_xlat0.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].w; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].w); u_xlatb7 = u_xlatu0> 2) + 0]), uintBitsToFloat(inBlendShapeVertices3_buf[u_xlati0].value[(0 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices3_buf[u_xlati0].value[(0 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices3_buf[u_xlati0].value[(0 >> 2) + 3])); u_xlat2 = vec4(uintBitsToFloat(inBlendShapeVertices3_buf[u_xlati0].value[(16 >> 2) + 0]), uintBitsToFloat(inBlendShapeVertices3_buf[u_xlati0].value[(16 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices3_buf[u_xlati0].value[(16 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices3_buf[u_xlati0].value[(16 >> 2) + 3])); u_xlat0.xy = vec2(uintBitsToFloat(inBlendShapeVertices3_buf[u_xlati0].value[(32 >> 2) + 0]), uintBitsToFloat(inBlendShapeVertices3_buf[u_xlati0].value[(32 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3]), uintBitsToFloat(inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2])); u_xlat4 = vec4(uintBitsToFloat(inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 3])); u_xlat5.z = uintBitsToFloat(inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(32 >> 2) + 0]); u_xlat6.xyz = u_xlat1.yzw * g_Weights[0].www + u_xlat3.yzw; u_xlat3.yz = u_xlat4.xy; u_xlat3.xyz = u_xlat2.yzx * g_Weights[0].www + u_xlat3.yzx; u_xlat0.z = u_xlat2.w; u_xlat5.xy = u_xlat4.zw; u_xlat0.xyz = u_xlat0.zxy * g_Weights[0].www + u_xlat5.xyz; u_xlat6.w = u_xlat3.z; inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2)] = floatBitsToUint(u_xlat6.x); inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat6.y); inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat6.z); inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat6.w); u_xlat3.zw = u_xlat0.xy; inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2)] = floatBitsToUint(u_xlat3.x); inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat3.y); inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat3.z); inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat3.w); inOutVertices3_buf[floatBitsToInt(u_xlat1.x)].value[(32 >> 2)] = floatBitsToUint(u_xlat0.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].z; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].z); u_xlatb7 = u_xlatu0> 2) + 0]), uintBitsToFloat(inBlendShapeVertices2_buf[u_xlati0].value[(0 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices2_buf[u_xlati0].value[(0 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices2_buf[u_xlati0].value[(0 >> 2) + 3])); u_xlat2 = vec4(uintBitsToFloat(inBlendShapeVertices2_buf[u_xlati0].value[(16 >> 2) + 0]), uintBitsToFloat(inBlendShapeVertices2_buf[u_xlati0].value[(16 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices2_buf[u_xlati0].value[(16 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices2_buf[u_xlati0].value[(16 >> 2) + 3])); u_xlat0.xy = vec2(uintBitsToFloat(inBlendShapeVertices2_buf[u_xlati0].value[(32 >> 2) + 0]), uintBitsToFloat(inBlendShapeVertices2_buf[u_xlati0].value[(32 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3]), uintBitsToFloat(inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2])); u_xlat4 = vec4(uintBitsToFloat(inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 3])); u_xlat5.z = uintBitsToFloat(inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(32 >> 2) + 0]); u_xlat6.xyz = u_xlat1.yzw * g_Weights[0].zzz + u_xlat3.yzw; u_xlat3.yz = u_xlat4.xy; u_xlat3.xyz = u_xlat2.yzx * g_Weights[0].zzz + u_xlat3.yzx; u_xlat0.z = u_xlat2.w; u_xlat5.xy = u_xlat4.zw; u_xlat0.xyz = u_xlat0.zxy * g_Weights[0].zzz + u_xlat5.xyz; u_xlat6.w = u_xlat3.z; inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2)] = floatBitsToUint(u_xlat6.x); inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat6.y); inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat6.z); inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat6.w); u_xlat3.zw = u_xlat0.xy; inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2)] = floatBitsToUint(u_xlat3.x); inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat3.y); inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat3.z); inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat3.w); inOutVertices2_buf[floatBitsToInt(u_xlat1.x)].value[(32 >> 2)] = floatBitsToUint(u_xlat0.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].y; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].y); u_xlatb7 = u_xlatu0> 2) + 0]), uintBitsToFloat(inBlendShapeVertices1_buf[u_xlati0].value[(0 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices1_buf[u_xlati0].value[(0 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices1_buf[u_xlati0].value[(0 >> 2) + 3])); u_xlat2 = vec4(uintBitsToFloat(inBlendShapeVertices1_buf[u_xlati0].value[(16 >> 2) + 0]), uintBitsToFloat(inBlendShapeVertices1_buf[u_xlati0].value[(16 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices1_buf[u_xlati0].value[(16 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices1_buf[u_xlati0].value[(16 >> 2) + 3])); u_xlat0.xy = vec2(uintBitsToFloat(inBlendShapeVertices1_buf[u_xlati0].value[(32 >> 2) + 0]), uintBitsToFloat(inBlendShapeVertices1_buf[u_xlati0].value[(32 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3]), uintBitsToFloat(inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2])); u_xlat4 = vec4(uintBitsToFloat(inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 3])); u_xlat5.z = uintBitsToFloat(inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(32 >> 2) + 0]); u_xlat6.xyz = u_xlat1.yzw * g_Weights[0].yyy + u_xlat3.yzw; u_xlat3.yz = u_xlat4.xy; u_xlat3.xyz = u_xlat2.yzx * g_Weights[0].yyy + u_xlat3.yzx; u_xlat0.z = u_xlat2.w; u_xlat5.xy = u_xlat4.zw; u_xlat0.xyz = u_xlat0.zxy * g_Weights[0].yyy + u_xlat5.xyz; u_xlat6.w = u_xlat3.z; inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2)] = floatBitsToUint(u_xlat6.x); inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat6.y); inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat6.z); inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat6.w); u_xlat3.zw = u_xlat0.xy; inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2)] = floatBitsToUint(u_xlat3.x); inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat3.y); inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat3.z); inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat3.w); inOutVertices1_buf[floatBitsToInt(u_xlat1.x)].value[(32 >> 2)] = floatBitsToUint(u_xlat0.z); } } else { u_xlatb0 = gl_GlobalInvocationID.x>=g_BatchOffsets[0].x; if(u_xlatb0){ u_xlatu0 = gl_GlobalInvocationID.x + (-g_BatchOffsets[0].x); u_xlatb7 = u_xlatu0> 2) + 0]), uintBitsToFloat(inBlendShapeVertices0_buf[u_xlati0].value[(0 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices0_buf[u_xlati0].value[(0 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices0_buf[u_xlati0].value[(0 >> 2) + 3])); u_xlat2 = vec4(uintBitsToFloat(inBlendShapeVertices0_buf[u_xlati0].value[(16 >> 2) + 0]), uintBitsToFloat(inBlendShapeVertices0_buf[u_xlati0].value[(16 >> 2) + 1]), uintBitsToFloat(inBlendShapeVertices0_buf[u_xlati0].value[(16 >> 2) + 2]), uintBitsToFloat(inBlendShapeVertices0_buf[u_xlati0].value[(16 >> 2) + 3])); u_xlat0.xy = vec2(uintBitsToFloat(inBlendShapeVertices0_buf[u_xlati0].value[(32 >> 2) + 0]), uintBitsToFloat(inBlendShapeVertices0_buf[u_xlati0].value[(32 >> 2) + 1])); u_xlat3 = vec4(uintBitsToFloat(inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3]), uintBitsToFloat(inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 0]), uintBitsToFloat(inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1]), uintBitsToFloat(inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2])); u_xlat4 = vec4(uintBitsToFloat(inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 0]), uintBitsToFloat(inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1]), uintBitsToFloat(inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 2]), uintBitsToFloat(inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 3])); u_xlat5.z = uintBitsToFloat(inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(32 >> 2) + 0]); u_xlat6.xyz = u_xlat1.yzw * g_Weights[0].xxx + u_xlat3.yzw; u_xlat3.yz = u_xlat4.xy; u_xlat3.xyz = u_xlat2.yzx * g_Weights[0].xxx + u_xlat3.yzx; u_xlat0.z = u_xlat2.w; u_xlat5.xy = u_xlat4.zw; u_xlat0.xyz = u_xlat0.zxy * g_Weights[0].xxx + u_xlat5.xyz; u_xlat6.w = u_xlat3.z; inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2)] = floatBitsToUint(u_xlat6.x); inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 1] = floatBitsToUint(u_xlat6.y); inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 2] = floatBitsToUint(u_xlat6.z); inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(0 >> 2) + 3] = floatBitsToUint(u_xlat6.w); u_xlat3.zw = u_xlat0.xy; inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2)] = floatBitsToUint(u_xlat3.x); inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 1] = floatBitsToUint(u_xlat3.y); inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 2] = floatBitsToUint(u_xlat3.z); inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(16 >> 2) + 3] = floatBitsToUint(u_xlat3.w); inOutVertices0_buf[floatBitsToInt(u_xlat1.x)].value[(32 >> 2)] = floatBitsToUint(u_xlat0.z); } } } } } } } } } return; } @A$Globals g_FirstVert g_VertCountg_WeightComputeCopyCBuffer@ g_VertCountsg_BatchOffsets ComputeBlendShapeCBuffer g_VertCountsg_BatchOffsets  g_FirstVerts@ g_Weights` main$GlobalsinBlendShapeVerticesinOutMeshVerticesDXBCy3 V aK,<LISGNOSGNSHEXlP[jYF p_h@O     & @( F~& @ r F2 V  r >@Amain$GlobalsinBlendShapeVerticesinOutMeshVerticesDXBC@&|m&,<LISGNOSGNSHEX@PjYF p_h@O     &" @(F~#  @(@r Fr& @r:F#  @@ r F2 V  2 rF Fr:r F>@Amain$GlobalsinBlendShapeVerticesinOutMeshVerticesdDXBCdߝ{ JsC+1d,<LISGNOSGNSHEXPjYF p_h@O     &" @(F~#2@((@  F~2Fp& @(r:F#2@((@ r FF2 r F2 rF F6B:2 r&  Fr:Fr FF>@A batchCopyComputeCopyCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4 inVertices5 inVertices6 inVertices7 outVertices0 outVertices1 outVertices2 outVertices3 outVertices4 outVertices5 outVertices6 outVertices7PDXBC^w^UKA9cP,<LISGNOSGNSHEXPjYF pppppppp_h@P :   : AO" : & @  yr P *   * AO" * & @  yr P     AO"  & @  yr P     AO"  & @  yr P :   : AO" : & @  yr P *   * AO" * & @  yr P     AO"  & @  yr P     AO"  & @  yr >@A batchCopyComputeCopyCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4 inVertices5 inVertices6 inVertices7 outVertices0 outVertices1 outVertices2 outVertices3 outVertices4 outVertices5 outVertices6 outVertices7p DXBCzؗ#xhʡp ,<LISGNOSGNSHEX PjYF pppppppp_h@P :   : AO" : &" @rFr#  @@ r FrrFr FP *   * AO" * &" @rFr#  @@ r FrrFr FP     AO"  &" @rFr#  @@ r FrrFr FP     AO"  &" @rFr#  @@ r FrrFr FP :   : AO" : &" @rFr#  @@ r FrrFr FP *   * AO" * &" @rFr#  @@ r FrrFr FP     AO"  &" @rFr#  @@ r FrrFr FP     AO"  &" @rFr#  @@ r FrrFr F>@A batchCopyComputeCopyCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4 inVertices5 inVertices6 inVertices7 outVertices0 outVertices1 outVertices2 outVertices3 outVertices4 outVertices5 outVertices6 outVertices70DXBC;D1)*)h0,<LISGNOSGNSHEX PwjYF pppppppp_h@P :   : AO" : &" @(rFr#R@((@ r Fr*F~rFr F*FP *   * AO" * &" @(rFr#R@((@ r Fr*F~rFr F*FP     AO"  &" @(rFr#R@((@ r Fr*F~rFr F*FP     AO"  &" @(rFr#R@((@ r Fr*F~rFr F*FP :   : AO" : &" @(rFr#R@((@ r Fr*F~rFr F*FP *   * AO" * &" @(rFr#R@((@ r Fr*F~rFr F*FP     AO"  &" @(rFr#R@((@ r Fr*F~rFr F*FP     AO"  &" @(rFr#R@((@ r Fr*F~rFr F*F>@A batchMainComputeBlendShapeCBufferinBlendShapeVertices0inBlendShapeVertices1inBlendShapeVertices2inBlendShapeVertices3inBlendShapeVertices4inBlendShapeVertices5inBlendShapeVertices6inBlendShapeVertices7inOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices6inOutVertices7 DXBC%y?F^Rqb² ,<LISGNOSGNSHEX\ PjYF pppppppp_h@P :   : AO" :  : & @( F~& @ r F2 V  r P *   * AO" *  * & @( F~& @ r F2 V  r P     AO"    & @( F~& @ r F2 VV  r P     AO"    & @( F~& @ r F2 V  r P :   : AO" :  : & @( F~& @ r F2 V  r P *   * AO" *  * & @( F~& @ r F2 V  r P     AO"    & @( F~& @ r F2 VV  r P     AO"    & @( F~& @ r F2 V  r >@A batchMainComputeBlendShapeCBufferinBlendShapeVertices0inBlendShapeVertices1inBlendShapeVertices2inBlendShapeVertices3inBlendShapeVertices4inBlendShapeVertices5inBlendShapeVertices6inBlendShapeVertices7inOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices6inOutVertices7PDXBC0*ަ,I1UP,<LISGNOSGNSHEXPjYF pppppppp_h@P :   : AO" :  : &" @(F~#  @(@r Fr& @r:F#  @@ r F2 V  2 rF Fr:r FP *   * AO" *  * &" @(F~#  @(@r Fr& @r:F#  @@ r F2 V  2 rF Fr:r FP     AO"    &" @(F~#  @(@r Fr& @r:F#  @@ r F2 VV  2 rFV Fr:r FP     AO"    &" @(F~#  @(@r Fr& @r:F#  @@ r F2 V  2 rF Fr:r FP :   : AO" :  : &" @(F~#  @(@r Fr& @r:F#  @@ r F2 V  2 rF Fr:r FP *   * AO" *  * &" @(F~#  @(@r Fr& @r:F#  @@ r F2 V  2 rF Fr:r FP     AO"    &" @(F~#  @(@r Fr& @r:F#  @@ r F2 VV  2 rFV Fr:r FP     AO"    &" @(F~#  @(@r Fr& @r:F#  @@ r F2 V  2 rF Fr:r F>@A batchMainComputeBlendShapeCBufferinBlendShapeVertices0inBlendShapeVertices1inBlendShapeVertices2inBlendShapeVertices3inBlendShapeVertices4inBlendShapeVertices5inBlendShapeVertices6inBlendShapeVertices7inOutVertices0inOutVertices1inOutVertices2inOutVertices3inOutVertices4inOutVertices5inOutVertices6inOutVertices7DXBCtz`efǿ,<LISGNOSGNSHEX|P_jYF pppppppp_h@P :   : AO" :  : &" @(F~#2@((@  F~2Fp& @(r:F#2@((@ r FF2 r F2 rF F6B:2 r&  Fr:Fr FFP *   * AO" *  * &" @(F~#2@((@  F~2Fp& @(r:F#2@((@ r FF2 r F2 rF F6B:2 r&  Fr:Fr FFP     AO"    &" @(F~#2@((@  F~2Fp& @(r:F#2@((@ r FF2 rV F2 rFV F6B:2 r& V Fr:Fr FFP     AO"    &" @(F~#2@((@  F~2Fp& @(r:F#2@((@ r FF2 r F2 rF F6B:2 r&  Fr:Fr FFP :   : AO" :  : &" @(F~#2@((@  F~2Fp& @(r:F#2@((@ r FF2 r F2 rF F6B:2 r&  Fr:Fr FFP *   * AO" *  * &" @(F~#2@((@  F~2Fp& @(r:F#2@((@ r FF2 r F2 rF F6B:2 r&  Fr:Fr FFP     AO"    &" @(F~#2@((@  F~2Fp& @(r:F#2@((@ r FF2 rV F2 rFV F6B:2 r& V Fr:Fr FFP     AO"    &" @(F~#2@((@  F~2Fp& @(r:F#2@((@ r FF2 r F2 rF F6B:2 r&  Fr:Fr FF>@A$Globals g_FirstVert g_VertCountg_WeightComputeCopyCBuffer@ g_VertCountsg_BatchOffsets ComputeBlendShapeCBuffer g_VertCountsg_BatchOffsets  g_FirstVerts@ g_Weights` mainCGlobalsinBlendShapeVerticesinOutMeshVertices#  GLSL.std.450main @mainu_xlatb0 gl_GlobalInvocationIDCGlobalsg_FirstVertg_VertCountg_Weightu_xlati0*u_xlat0 -inBlendShapeVertices_type-value/inBlendShapeVertices /inBlendShapeVertices_buf1Gu_xlat1 JinOutMeshVertices_origX0X_typeJvalue LinOutMeshVertices_origX0X LinOutMeshVertices_origX0X_bufNcu_xlat2u_xlat_precise_vec4u_xlat_precise_ivec4u_xlat_precise_bvec4u_xlat_precise_uvec4G H#H#H#GG"G!G,H-#G.(H/H/#G/G1"G1!GIHJ#GK HL#GLGN"GN!G ! ;     ; +     ; +  ;+#( )(;)*+ + , +-,.-/. 0/;01+;+@E FE;FG+ HI HJIKJLK ML;MN O;Fc f+ +  (    + @, 6;;;;A = A= >=A = ! |"!A$#= %$|&%'"&>'=2A31#2##= 43|54=6A71#6#= 87|98=:A<1#:#;= =<|>==?AA1#?#@= BA|CBP(D59>C>*DAOP* =QP|RQASN#R##= TS|UTAOV* =WV|XWAYN#X#= ZY|[ZAO\* =]\|^]A_N#^#;= `_|a`PEbU[a>Gb=(d*OEeddAfg;=hgAfi;=jiAfk;=lkPEmhjlQnmQomQpmPEqnopEreq=EsGEtrs>ctAOu* =vu|wvAOxc =yx| zyA{N#w##>{zAO|* =}||~}AOc=| AN#~#>AO* =|AOc=| AN##;>8@AmainCGlobalsinBlendShapeVerticesinOutMeshVertices#  GLSL.std.450main @mainu_xlatb0 gl_GlobalInvocationIDCGlobalsg_FirstVertg_VertCountg_Weightu_xlati0*u_xlat1 -inBlendShapeVertices_type-value/inBlendShapeVertices /inBlendShapeVertices_buf1Gu_xlat0Xu_xlat2 [inOutMeshVertices_origX0X_type[value ]inOutMeshVertices_origX0X ]inOutMeshVertices_origX0X_buf_zu_xlat3u_xlat4u_xlat_precise_vec4u_xlat_precise_ivec4u_xlat_precise_bvec4u_xlat_precise_uvec4G H#H#H#GG"G!G,H-#G.(H/H/#G/G1"G1!GZH[#G\H]#G]G_"G_!G ! ;     ; +     ; +  ;+#( )(;)*+ + , +-,.-/. 0/;01+;+@E FE;FG+I+N+S;)X+ YZ Y[Z\[]\ ^];^_ `;Fz;) + + +  (    + @, 6;;;;A = A= >=A = ! |"!A$#= %$|&%'"&>'=2A31#2##= 43|54=6A71#6#= 87|98=:A<1#:#;= =<|>==?AA1#?#@= BA|CBP(D59>C>*D=HAJ1#H#I= KJ|LK=MAO1#M#N= PO|QP=RAT1#R#S= UT|VUPEWLQV>GWA`a* =ba|cbAd_#c##= ed|feA`g* =hg|ihAj_#i#= kj|lkA`m* =nm|onAp_#o#;= qp|rqA`s* =ts|utAv_#u#@= wv|xwP(yflrx>XyA`{* =|{|}|A~_#}#I= ~|A`* =|A_##N= |P=EzOE>z=(*OEA;=A;=A;=PEQQQPEE=(XOEE=(O (>A`X=A`z>=EGA;=A;=A;=PEQQQPEE=EzOEE>GA`G =A`>A`* =|A` =| A_###>A`* =|A`=| A_##>A`* =|A`=| A_##;>A`* =|A`=| A_##@>A`* =|A`G=| A_##I>A`* =|A`G=| A_##N>8@AmainCGlobalsinBlendShapeVerticesinOutMeshVerticesL# I GLSL.std.450main @mainu_xlatb0 gl_GlobalInvocationIDCGlobalsg_FirstVertg_VertCountg_Weightu_xlati0*u_xlat1 -inBlendShapeVertices_type-value/inBlendShapeVertices /inBlendShapeVertices_buf1Eu_xlat2]u_xlat0lu_xlat3 ninOutMeshVertices_origX0X_typenvalue pinOutMeshVertices_origX0X pinOutMeshVertices_origX0X_bufru_xlat4u_xlat5u_xlat6=u_xlat_precise_vec4@u_xlat_precise_ivec4Cu_xlat_precise_bvec4Fu_xlat_precise_uvec4G H#H#H#GG"G!G,H-#G.(H/H/#G/G1"G1!GmHn#Go(Hp#GpGr"Gr!GH ! ;     ; +     ; +  ;+#( )(;)*+ + , +-,.-/. 0/;01+;+@;)E+G+L+Q+V[ \[;\]+_+d h;)lm +nmonpo qp;qr s;);\+ ;) + +  <(> ?>A BAD  ED+ G@, HG6;<=;?@;BC;EFA = A= >=A = ! |"!A$#= %$|&%'"&>'=2A31#2##= 43|54=6A71#6#= 87|98=:A<1#:#;= =<|>==?AA1#?#@= BA|CBP(D59>C>*D=FAH1#F#G= IH|JI=KAM1#K#L= NM|ON=PAR1#P#Q= SR|TS=UAW1#U#V= XW|YXP(ZJOTY>EZ=^A`1#^#_= a`|ba=cAe1#c#d= fe|gfPhibg=[j]O[kji>]kAst* =ut|vuAwr#v#@= xw|yxAsz* ={z||{A}r#|##= ~}|~As* =|Ar##= |As* =|Ar##;= |P(y>lAs* =|Ar##G= |As* =|Ar##L= |As* =|Ar##Q= |As* =|Ar##V= |P(>As* =|Ar##_= |As>=(*O[A;=A;=A;=P[QQQP[[=(lO[[=(O (>=(Oh=(lO (>l=(EO[A;=A;=A;=P[QQQP[[=(lO[[=(lO (>lAsE=As]>=(Oh=[O[>=[]O[A;=A;=A;=P[QQQP[[=[[>]Asl=As>As* =|As =| Ar###>As* =|As=| Ar##>As* =|As =  |  A r##;>  As * = |As=| Ar##@>=[]Oh=(lO (>lAs* =|Asl =| Ar##G>As* = |! As"l=#"| $#A%r#!#L>%$As&* ='&|('As)l=*)| +*A,r#(#Q>,+As-* =.-|/.As0l=10| 21A3r#/#V>32As4* =54|65As7]=87| 98A:r#6#_>:98@A batchCopyComputeCopyCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4 inVertices5 inVertices6 inVertices7 outVertices0 outVertices1  outVertices2  outVertices3  outVertices4  outVertices5  outVertices6 outVertices7P<# " GLSL.std.450main @mainu_xlatb0 gl_GlobalInvocationIDComputeCopyCBufferg_VertCountsg_BatchOffsets#u_xlatu0*u_xlatb15u_xlati17inVertices7_type7value9inVertices79inVertices7_buf; KoutVertices7_origX7X_typeKvalueMoutVertices7_origX7X MoutVertices7_origX7X_bufOxinVertices6_typexvaluezinVertices6zinVertices6_buf| outVertices6_origX6X_typevalueoutVertices6_origX6X outVertices6_origX6X_bufinVertices5_typevalueinVertices5inVertices5_buf outVertices5_origX5X_typevalueoutVertices5_origX5X outVertices5_origX5X_bufinVertices4_typevalueinVertices4inVertices4_buf outVertices4_origX4X_typevalue outVertices4_origX4X outVertices4_origX4X_buf 2inVertices3_type2value4inVertices34inVertices3_buf6 EoutVertices3_origX3X_typeEvalueGoutVertices3_origX3X GoutVertices3_origX3X_bufIpinVertices2_typepvaluerinVertices2rinVertices2_buft outVertices2_origX2X_typevalueoutVertices2_origX2X outVertices2_origX2X_bufinVertices1_typevalueinVertices1inVertices1_buf outVertices1_origX1X_typevalueoutVertices1_origX1X outVertices1_origX1X_bufinVertices0_typevalueinVertices0inVertices0_buf outVertices0_origX0X_typevalueoutVertices0_origX0X outVertices0_origX0X_bufu_xlat_precise_vec4u_xlat_precise_ivec4u_xlat_precise_bvec4u_xlat_precise_uvec4G GGH#H# GG"G!G6H7#G8 H9H9#G9G;"G;!GJHK#GL HM#GMGO"GO!GwHx#Gy HzHz#GzG|"G|!GH#G H#GG"G!GH#G HH#GG"G!GH#G H#GG"G! GH#G HH#GG"G!GH#G H #G G "G ! G1H2#G3 H4H4#G4G6"G6!GDHE#GF HG#GGGI"GI! GoHp#Gq HrHr#GrGt"Gt!GH#G H#GG"G! GH#G HH#GG"G!GH#G H#GG"G! GH#G HH#GG"G!GH#G H#GG"G!G! ! ;     ; +   +  ; ++   " ;"#;*+,3 43;456 768798 :9;:;+EJ KJLKML NM;NO Q+ Ww xwyxzy {z;{|  ;  ;  ;  ;     ;  1 213243 54;56D EDFEGF HG;HIo poqprq sr;st  ;  ;  ;  ;  ;     + @, ! WW6;;;;A = A= >=! a A$ = %$A&= '&~ (' )%(>#)= +#A-,= .-/+.>*/=0*20121= <#A=;,<,,= >=|?>= @#AA;,@,= BA|CB= D#AF;,D,E= GF|HGP3I?CH>5I= P#AQR5 =SR| TSAUO,P,,>UT= V#AQX5W=YX| ZYA,V,>[Z= \#AQ]5=^]| _^A`O,\,E>`_22!aAb = cbAd= edfce>f=gighhAj = kjAl= ml~ nm okn>#o= p#Aq,= rqspr>*s=t*vtuvu= }#A~|,},,= ~|= #A|,,= |= #A|,,E= |P3>5= #AQ5 =| A,,,>= #AQ5W=| A,,>= #AQ5=| A,,E>vviA = AW= >=A = AW= ~  >#= #A,W= >*=*= #A,,,= |= #A,,= |= #A,,E= |P3>5= #AQ5 =| A,,,>= #AQ5W=| A,,>= #AQ5=| A,,E>A = A = >=A = A = ~  >#= #A, = >*=*= #A,,,= |= #A,,= |= #A,,E= |P3>5= #AQ 5 = | A , ,,>= #AQ5W=| A ,,>= #AQ5=| A ,,E>A = A,=  > =!#!"Y"A$ = %$A&,= '&~ (' )%(>#)= *#A+,,= ,+-*,>*-=.*0./0/= 7#A86,7,,= 98|:9= ;#A<6,;,= =<|>== ?#A@6,?,E= A@|BAP3C:>B>5C= J#AQK5 =LK| MLANI,J,,>NM= O#AQP5W=QP| RQASI,O,>SR= T#AQU5=VU| WVAXI,T,E>XW00#YAZ = [ZA\,= ]\^[]>^=_a_``Ab = cbAd,= ed~ fe gcf>#g= h#Ai,,= jikhj>*k=l*nlmnm= u#Avt,u,,= wv|xw= y#Azt,y,= {z||{= }#A~t,},E= ~|P3x|>5= #AQ5 =| A,,,>= #AQ5W=| A,,>= #AQ5=| A,,E>nnaA = A,W= >=A = A,W= ~  >#= #A,,W= >*=*= #A,,,= |= #A,,= |= #A,,E= |P3>5= #AQ5 =| A,,,>= #AQ5W=| A,,>= #AQ5=| A,,E>A = A, = >=A = A, = ~  >#= #A,, = >*=*= #A,,,= |= #A,,= |= #A,,E= |P3>5= #AQ5 =| A,,,>= #AQ 5W=  |  A , ,>  = #AQ5=| A,,E>aa##ii!!8@A batchCopyComputeCopyCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4 inVertices5 inVertices6 inVertices7 outVertices0 outVertices1  outVertices2  outVertices3  outVertices4  outVertices5  outVertices6 outVertices7O#  GLSL.std.450main @mainu_xlatb0 gl_GlobalInvocationIDComputeCopyCBufferg_VertCountsg_BatchOffsets#u_xlatu0*u_xlatb25u_xlati18inVertices7_type8value:inVertices7:inVertices7_buf<Ru_xlati2 _outVertices7_origX7X_type_valueaoutVertices7_origX7X aoutVertices7_origX7X_bufcinVertices6_typevalueinVertices6inVertices6_buf outVertices6_origX6X_typevalueoutVertices6_origX6X outVertices6_origX6X_bufinVertices5_typevalueinVertices5inVertices5_buf outVertices5_origX5X_typevalueoutVertices5_origX5X outVertices5_origX5X_bufOinVertices4_typeOvalueQinVertices4QinVertices4_bufS ooutVertices4_origX4X_typeovalueqoutVertices4_origX4X qoutVertices4_origX4X_bufsinVertices3_typevalueinVertices3inVertices3_buf outVertices3_origX3X_typevalueoutVertices3_origX3X outVertices3_origX3X_bufinVertices2_typevalueinVertices2inVertices2_buf #outVertices2_origX2X_type#value%outVertices2_origX2X %outVertices2_origX2X_buf']inVertices1_type]value_inVertices1_inVertices1_bufa }outVertices1_origX1X_type}valueoutVertices1_origX1X outVertices1_origX1X_bufinVertices0_typevalueinVertices0inVertices0_buf outVertices0_origX0X_typevalueoutVertices0_origX0X outVertices0_origX0X_bufu_xlat_precise_vec4u_xlat_precise_ivec4u_xlat_precise_bvec4u_xlat_precise_uvec4G GGH#H# GG"G!G7H8#G9H:H:#G:G<"G<!G^H_#G`Ha#GaGc"Gc!GH#GHH#GG"G!GH#GH#GG"G!GH#GHH#GG"G!GH#GH#GG"G! GNHO#GPHQHQ#GQGS"GS!GnHo#GpHq#GqGs"Gs! GH#GHH#GG"G!GH#GH#GG"G! GH#GHH#GG"G!G"H##G$H%#G%G'"G'! G\H]#G^H_H_#G_Ga"Ga!G|H}#G~H#GG"G! GH#GHH#GG"G!GH#GH#GG"G!G ! ;     ; +   +  ; ++   " ;"#;*+,3 43;45+ 67 68798:9 ;:;;<+F+KP QP;QR+T+Y^ 6_^`_a` ba;bc e+ k 6 ; 6 ; 6 ; 6 ;N 6ONPOQP RQ;RSn 6onpoqp rq;rs 6 ; 6 ; 6 ;" 6#"$#%$ &%;&'\ 6]\^]_^ `_;`a| 6}|~}~ ; 6 ; 6 ;   3  + @, kk6;;;;A = A= >=!  A$ = %$A&= '&~ (' )%(>#)= +#A-,= .-/+.>*/=0*20121= =#A><,=,,= ?>|@?= A#AB<,A,= CB|DC= E#AG<,E,F= HG|IH= J#AL<,J,K= ML|NMP3O@DIN>5O= S#AU<,S,T= VU|WV= X#AZ<,X,Y= [Z|\[PP]W\>R]= d#Aef5 =gf| hgAic,d,,>ih= j#Ael5k=ml| nmAoc,j,>on= p#Aeq5=rq| srAtc,p,F>ts= u#Aev5=wv| xwAyc,u,K>yx= z#Ae{R =|{| }|A~c,z,T>~}= #AeRk=| Ac,,Y>22!A = A= >=A = A= ~  >#= #A,= >*=*= #A,,,= |= #A,,= |= #A,,F= |= #A,,K= |P3>5= #A,,T= |= #A,,Y= |PP>R= #Ae5 =| A,,,>= #Ae5k=| A,,>= #Ae5=| A,,F>= #Ae5=| A,,K>= #AeR =| A,,T>= #AeRk=| A,,Y>A = Ak= >=8A = Ak= ~  >#= #A,k= >*=*= #A,,,= |= #A,,= |= #A,,F= |= #A,,K= | P3  >5 = #A , ,T=  | = #A,,Y= |PP>R= #Ae5 =| A,,,>= #Ae 5k=! | "!A#,,>#"= $#Ae%5=&%| '&A(,$,F>('= )#Ae*5=+*| ,+A-,),K>-,= .#Ae/R =0/| 10A2,.,T>21= 3#Ae4Rk=54| 65A7,3,Y>768A9 = :9A; = <;=:<>==>@>??AA = BAAC = DC~ ED FBE>#F= G#AH, = IHJGI>*J=K*MKLML= T#AUS,T,,= VU|WV= X#AYS,X,= ZY|[Z= \#A]S,\,F= ^]|_^= `#AaS,`,K= ba|cbP3dW[_c>5d= e#AfS,e,T= gf|hg= i#AjS,i,Y= kj|lkPPmhl>Rm= t#Aeu5 =vu| wvAxs,t,,>xw= y#Aez5k={z| |{A}s,y,>}|= ~#Ae5=| As,~,F>= #Ae5=| As,,K>= #AeR =| As,,T>= #AeRk=| As,,Y>MM@A = A,= >=A = A,= ~  >#= #A,,= >*=*= #A,,,= |= #A,,= |= #A,,F= |= #A,,K= |P3>5= #A,,T= |= #A,,Y= |PP>R= #Ae5 =| A,,,>= #Ae5k=| A,,>= #Ae5=| A,,F>= #Ae5=| A,,K>= #AeR =| A,,T>= #AeRk=| A,,Y>A = A,= >=FA = A,= ~  >#= #A,,= >*=*= #A ,,,=  |  = #A , ,=  |= #A,,F= |= #A,,K= |P3 >5= #A,,T= |= #A,,Y= | PP! >R!= (#Ae)5 =*)| +*A,',(,,>,+= -#Ae.5k=/.| 0/A1',-,>10= 2#Ae35=43| 54A6',2,F>65= 7#Ae85=98| :9A;',7,K>;:= <#Ae=R =>=| ?>A@',<,T>@?= A#AeBRk=CB| DCAE',A,Y>EDFAG = HGAI,k= JIKHJ>K=LNLMMAO = POAQ,k= RQ~ SR TPS>#T= U#AV,,k= WVXUW>*X=Y*[YZ[Z= b#Aca,b,,= dc|ed= f#Aga,f,= hg|ih= j#Aka,j,F= lk|ml= n#Aoa,n,K= po|qpP3reimq>5r= s#Ata,s,T= ut|vu= w#Axa,w,Y= yx|zyPP{vz>R{= #Ae5 =| A,,,>= #Ae5k=| A,,>= #Ae5=| A,,F>= #Ae5=| A,,K>= #AeR =| A,,T>= #AeRk=| A,,Y>[[NA = A, = >=A = A, = ~  >#= #A,, = >*=*= #A,,,= |= #A,,= |= #A,,F= |= #A,,K= |P3>5= #A,,T= |= #A,,Y= |PP>R= #Ae5 =| A,,,>= #Ae5k=| A,,>= #Ae5=| A,,F>= #Ae5=| A,,K>= #AeR =| A,,T>= #AeRk=| A,,Y>NN@@!!8@A batchCopyComputeCopyCBuffer inVertices0 inVertices1 inVertices2 inVertices3 inVertices4 inVertices5 inVertices6 inVertices7 outVertices0 outVertices1  outVertices2  outVertices3  outVertices4  outVertices5  outVertices6 outVertices7i# 5 GLSL.std.450main @mainu_xlatb0 gl_GlobalInvocationIDComputeCopyCBufferg_VertCountsg_BatchOffsets#u_xlatu0*u_xlatb35u_xlati18inVertices7_type8value:inVertices7:inVertices7_buf<Pu_xlati2hu_xlati3 uoutVertices7_origX7X_typeuvaluewoutVertices7_origX7X woutVertices7_origX7X_bufyinVertices6_typevalueinVertices6inVertices6_buf outVertices6_origX6X_typevalueoutVertices6_origX6X outVertices6_origX6X_bufDinVertices5_typeDvalueFinVertices5FinVertices5_bufH uoutVertices5_origX5X_typeuvaluewoutVertices5_origX5X woutVertices5_origX5X_bufyinVertices4_typevalueinVertices4inVertices4_buf outVertices4_origX4X_typevalueoutVertices4_origX4X outVertices4_origX4X_bufBinVertices3_typeBvalueDinVertices3DinVertices3_bufF soutVertices3_origX3X_typesvalueuoutVertices3_origX3X uoutVertices3_origX3X_bufwinVertices2_typevalueinVertices2inVertices2_buf outVertices2_origX2X_typevalueoutVertices2_origX2X outVertices2_origX2X_buf@inVertices1_type@valueBinVertices1BinVertices1_bufD qoutVertices1_origX1X_typeqvaluesoutVertices1_origX1X soutVertices1_origX1X_bufuinVertices0_typevalueinVertices0inVertices0_buf outVertices0_origX0X_typevalueoutVertices0_origX0X outVertices0_origX0X_buf+u_xlat_precise_vec4-u_xlat_precise_ivec40u_xlat_precise_bvec42u_xlat_precise_uvec4G GGH#H# GG"G!G7H8#G9(H:H:#G:G<"G<!GtHu#Gv(Hw#GwGy"Gy!GH#G(HH#GG"G!GH#G(H#GG"G!GCHD#GE(HFHF#GFGH"GH!GtHu#Gv(Hw#GwGy"Gy! GH#G(HH#GG"G!GH#G(H#GG"G! GAHB#GC(HDHD#GDGF"GF!GrHs#Gt(Hu#GuGw"Gw! GH#G(HH#GG"G!GH#G(H#GG"G! G?H@#GA(HBHB#GBGD"GD!GpHq#Gr(Hs#GsGu"Gu! GH#G(HH#GG"G!GH#G(H#GG"G!G4 ! ;     ; +   +  ; ++   " ;"#;*+,3 43;45+ 6 7 68798:9 ;:;;<+F+K;4P+R+W+\+af gf;gh+j+o t 6utvuwv xw;xy {+  6 ; 6 ;C 6DCEDFE GF;GHt 6utvuwv xw;xy 6 ; 6 ;A 6BACBDC ED;EFr 6srtsut vu;vw 6 ; 6 ;? 6@?A@BA CB;CDp 6qprqsr ts;tu 6 ; 6 ;( )( *) ,3. /. 1+ 3@, 436;*+;,-;/0;12A = A= >=!  A$ = %$A&= '&~ (' )%(>#)= +#A-,= .-/+.>*/=0*20121= =#A><,=,,= ?>|@?= A#AB<,A,= CB|DC= E#AG<,E,F= HG|IH= J#AL<,J,K= ML|NMP3O@DIN>5O= Q#AS<,Q,R= TS|UT= V#AX<,V,W= YX|ZY= [#A]<,[,\= ^]|_^= `#Ab<,`,a= cb|dcP3eUZ_d>Pe= i#Ak<,i,j= lk|ml= n#Ap<,n,o= qp|rqPfsmr>hs= z#A{|5 =}|| ~}Ay,z,,>~= #A{5=| Ay,,>= #A{5=| Ay,,F>= #A{5=| Ay,,K>= #A{P =| Ay,,R>= #A{P=| Ay,,W>= #A{P=| Ay,,\>= #A{P=| Ay,,a>= #A{h =| Ay,,j>= #A{h=| Ay,,o>22!A = A= >=-A = A= ~  >#= #A,= >*=*= #A,,,= |= #A,,= |= #A,,F= |= #A,,K= |P3>5= #A,,R= |= #A,,W= |= #A,,\= |= #A,,a= |P3>P= #A,,j= |= #A,,o= |Pf>h= #A{5 =| A,,,>= #A{5=| A,,>= #A{5=| A ,,F> = #A{ 5=  |  A, ,K> = #A{P =| A,,R>= #A{P=| A,,W>= #A{P=| A,,\>= #A{P= | ! A",,a>"!= ##A{$h =%$| &%A',#,j>'&= (#A{)h=*)| +*A,,(,o>,+-A. = /.A0= 102/1>2=35344A6 = 76A8= 98~ :9 ;7:>#;= <#A=,= >=?<>>*?=@*B@ABA= I#AJH,I,,= KJ|LK= M#ANH,M,= ON|PO= Q#ARH,Q,F= SR|TS= U#AVH,U,K= WV|XWP3YLPTX>5Y= Z#A[H,Z,R= \[|]\= ^#A_H,^,W= `_|a`= b#AcH,b,\= dc|ed= f#AgH,f,a= hg|ihP3j]aei>Pj= k#AlH,k,j= ml|nm= o#ApH,o,o= qp|rqPfsnr>hs= z#A{{5 =|{| }|A~y,z,,>~}= #A{5=| Ay,,>= #A{5=| Ay,,F>= #A{5=| Ay,,K>= #A{P =| Ay,,R>= #A{P=| Ay,,W>= #A{P=| Ay,,\>= #A{P=| Ay,,a>= #A{h =| Ay,,j>= #A{h=| Ay,,o>BB5A = A = >=+A = A = ~  >#= #A, = >*=*= #A,,,= |= #A,,= |= #A,,F= |= #A,,K= |P3>5= #A,,R= |= #A,,W= |= #A,,\= |= #A,,a= |P3>P= #A,,j= |= #A,,o= |Pf>h= #A{5 =| A,,,>= #A{5=| A,,>= #A{5=| A,,F>= #A{ 5=  |  A ,,K>  = #A{P =| A, ,R>= #A{P=| A,,W>= #A{P=| A,,\>= #A{P=| A ,,a> = !#A{"h =#"| $#A%,!,j>%$= &#A{'h=('| )(A*,&,o>*)+A, = -,A.,= /.0-/>0=13122A4 = 54A6,= 76~ 87 958>#9= :#A;,,= <;=:<>*==>*@>?@?= G#AHF,G,,= IH|JI= K#ALF,K,= ML|NM= O#APF,O,F= QP|RQ= S#ATF,S,K= UT|VUP3WJNRV>5W= X#AYF,X,R= ZY|[Z= \#A]F,\,W= ^]|_^= `#AaF,`,\= ba|cb= d#AeF,d,a= fe|gfP3h[_cg>Ph= i#AjF,i,j= kj|lk= m#AnF,m,o= on|poPfqlp>hq= x#A{y5 =zy| {zA|w,x,,>|{= }#A{~5=~| Aw,},>= #A{5=| Aw,,F>= #A{5=| Aw,,K>= #A{P =| Aw,,R>= #A{P=| Aw,,W>= #A{P=| Aw,,\>= #A{P=| Aw,,a>= #A{h =| Aw,,j>= #A{h=| Aw,,o>@@3A = A,= >=)A = A,= ~  >#= #A,,= >*=*= #A,,,= |= #A,,= |= #A,,F= |= #A,,K= |P3>5= #A,,R= |= #A,,W= |= #A,,\= |= #A,,a= |P3>P= #A,,j= |= #A,,o= |Pf>h= #A{5 =| A,,,>= #A{5=| A,,>= #A{5=| A,,F>= #A{5=| A ,,K>  = #A{ P =  |  A, ,R>= #A{P=| A,,W>= #A{P=| A,,\>= #A{P=| A,,a>= #A{ h =! | "!A#,,j>#"= $#A{%h=&%| '&A(,$,o>(')A* = +*A,,= -,.+->.=/1/00A2 = 32A4,= 54~ 65 736>#7= 8#A9,,= :9;8:>*;=<*><=>== E#AFD,E,,= GF|HG= I#AJD,I,= KJ|LK= M#AND,M,F= ON|PO= Q#ARD,Q,K= SR|TSP3UHLPT>5U= V#AWD,V,R= XW|YX= Z#A[D,Z,W= \[|]\= ^#A_D,^,\= `_|a`= b#AcD,b,a= dc|edP3fY]ae>Pf= g#AhD,g,j= ih|ji= k#AlD,k,o= ml|nmPfojn>ho= v#A{w5 =xw| yxAzu,v,,>zy= {#A{|5=}|| ~}Au,{,>~= #A{5=| Au,,F>= #A{5=| Au,,K>= #A{P =| Au,,R>= #A{P=| Au,,W>= #A{P=| Au,,\>= #A{P=| Au,,a>= #A{h =| Au,,j>= #A{h=| Au,,o>>>1A = A, = >=A = A, = ~  >#= #A,, = >*=*= #A,,,= |= #A,,= |= #A,,F= |= #A,,K= |P3>5= #A,,R= |= #A,,W= |= #A,,\= |= #A,,a= |P3>P= #A,,j= |= #A,,o= |Pf>h= #A{5 =| A,,,>= #A{5=| A,,>= #A{5=| A,,F>= #A{5=| A,,K>= #A{ P =  |  A , ,R>  = #A{P=| A,,W>= #A{P=| A,,\>= #A{P=| A,,a>= #A{h =| A!,,j>! = "#A{#h=$#| %$A&,",o>&%113355!!8@A batchMainComputeBlendShapeCBufferinBlendShapeVertices0inBlendShapeVertices1inBlendShapeVertices2inBlendShapeVertices3inBlendShapeVertices4inBlendShapeVertices5inBlendShapeVertices6inBlendShapeVertices7inOutVertices0inOutVertices1 inOutVertices2 inOutVertices3 inOutVertices4 inOutVertices5 inOutVertices6inOutVertices7lZ#  GLSL.std.450main @mainu_xlatb0 gl_GlobalInvocationID ComputeBlendShapeCBufferg_VertCountsg_BatchOffsetsg_FirstVertsg_Weights'u_xlatu0.u_xlatb28u_xlati0Au_xlat0 DinBlendShapeVertices7_typeDvalueFinBlendShapeVertices7 FinBlendShapeVertices7_bufH]u_xlat1 _inOutVertices7_origX7X_type_valueainOutVertices7_origX7X ainOutVertices7_origX7X_bufcxu_xlat2 inBlendShapeVertices6_typevalueinBlendShapeVertices6 inBlendShapeVertices6_buf inOutVertices6_origX6X_typevalueinOutVertices6_origX6X inOutVertices6_origX6X_buf inBlendShapeVertices5_typevalue inBlendShapeVertices5 inBlendShapeVertices5_buf" 5inOutVertices5_origX5X_type5value7inOutVertices5_origX5X 7inOutVertices5_origX5X_buf9 inBlendShapeVertices4_typevalueinBlendShapeVertices4 inBlendShapeVertices4_buf inOutVertices4_origX4X_typevalueinOutVertices4_origX4X inOutVertices4_origX4X_buf inBlendShapeVertices3_typevalueinBlendShapeVertices3 inBlendShapeVertices3_buf inOutVertices3_origX3X_typevalue inOutVertices3_origX3X inOutVertices3_origX3X_buf  YinBlendShapeVertices2_typeYvalue[inBlendShapeVertices2 [inBlendShapeVertices2_buf] pinOutVertices2_origX2X_typepvaluerinOutVertices2_origX2X rinOutVertices2_origX2X_buft inBlendShapeVertices1_typevalueinBlendShapeVertices1 inBlendShapeVertices1_buf inOutVertices1_origX1X_typevalueinOutVertices1_origX1X inOutVertices1_origX1X_buf +inBlendShapeVertices0_type+value-inBlendShapeVertices0 -inBlendShapeVertices0_buf/ BinOutVertices0_origX0X_typeBvalueDinOutVertices0_origX0X DinOutVertices0_origX0X_bufFyu_xlat_precise_vec4|u_xlat_precise_ivec4u_xlat_precise_bvec4u_xlat_precise_uvec4G GGGGH#H# H#@H#`GG"G!GCHD#GE(HFHF#GFGH"GH!G^H_#G` Ha#GaGc"Gc!GH#G(HH#GG"G!GH#G H#GG"G!GH#G(H H #G G""G"!G4H5#G6 H7#G7G9"G9! GH#G(HH#GG"G!GH#G H#GG"G! GH#G(HH#GG"G!GH#G H #G G "G ! GXHY#GZ(H[H[#G[G]"G]!GoHp#Gq Hr#GrGt"Gt! GH#G(HH#GG"G!GH#G H#GG"G! G*H+#G,(H-H-#G-G/"G/!GAHB#GC HD#GDGF"GF!G ! ;     ; +   +   ; ++   & ;&';.+0 7;78+; @;@A+ B C BDCEDFE GF;GH+V[ \[;\]^ _^`_a` ba;bc d;\x {+  B ;  ; B  ! ;!"4 546576 87;89 B ;  ; B ;     ;  X BYXZY[Z \[;\]o poqprq sr;st B ;  ;* B+*,+-, .-;./A BACBDC ED;EF xz {z} ~} + @, 6;xy;{|;~;A = A = ! "!>"=#%#$$A( = )(A*= +*~ ,+ -),>'-= /'A10= 213/2>.3=4.64565= 9'|:9A<;= =<|>=?:>>8?=I8AJH0I00= KJ|LK=M8ANH0M0= ON|PO=Q8ARH0Q0;= SR|TS=U8AWH0U0V= XW|YXPZLPTY>AZAdeA =fe|gfAhc0g00= ih|jiAdkA =lk|mlAnc0m0= on|poAdqA =rq|srAtc0s0;= ut|vuP[wjpv>]w=yAO[zyyA{|V=}|O[~}}[z~=[][>xAdA =|Adx =| Ac000>AdA =|Adx=| Ac00>AdA =|Adx=| Ac00;>66%A = A= >=A = A= ~  >'= 'A0= >.=.= '|A;= |>8=8A000= |=8A00= |=8A00;= |=8A00V= |P>AAdA =|A000= |AdA =|A00= |AdA =|A00;= |P[>]=AO[A{V=O[[=[][>xAdA =|Adx =| A000>AdA =|Adx=| A00>AdA =|Adx=| A00;>A = A= >= jA  =  A =  ~    >'= 'A0= >.=.= '|A;= |>8=#8A$"0#00= %$|&%='8A("0'0= )(|*)=+8A,"0+0;= -,|.-=/8A0"0/0V= 10|21P3&*.2>A3Ad:A =;:|<;A=90<00= >=|?>Ad@A =A@|BAAC90B0= DC|EDAdFA =GF|HGAI90H0;= JI|KJP[L?EK>]L=MAO[NMMA{OV=POO[QPP[RNQ=[S][TRS>xTAdUA =VU|WVAdXx =YX| ZYA[90W00>[ZAd\A =]\|^]Ad_x=`_| a`Ab90^0>baAdcA =dc|edAdfx=gf| hgAi90e0;>ih jAk = lkAm = nmoln>o=prpqqAs = tsAu = vu~ wv xtw>'x= y'Az0 = {z|y{>.|=}.}~~= '|A; = |>8=8A000= |=8A00= |=8A00;= |=8A00V= |P>AAdA =|A000= |AdA =|A00= |AdA =|A00;= |P[>]=AO[A{V=O[[=[][>xAdA =|Adx =| A000>AdA =|Adx=| A00>AdA =|Adx=| A00;>rA = A0= >=<A = A0= ~  >'= 'A00= >.=.= '|A;0= |>8=8A000= |=8A00= |=8A00;= |=8A00V= |P>AAd A =  | A 000= |AdA =|A 00= |AdA =|A 00;= |P[>]=AO[ A{!V0="!O[#""[$ #=[%][&$%>x&Ad'A =('|)(Ad*x =+*| ,+A- 0)00>-,Ad.A =/.|0/Ad1x=21| 32A4 000>43Ad5A =65|76Ad8x=98| :9A; 070;>;:<A= = >=A?0= @?A>@>A=BDBCCAE = FEAG0= HG~ IH JFI>'J= K'AL00= MLNKM>.N=O.QOPQP= R'|SRAT;0= UT|VUWSV>8W=^8A_]0^00= `_|a`=b8Ac]0b0= dc|ed=f8Ag]0f0;= hg|ih=j8Ak]0j0V= lk|mlPnaeim>AnAduA =vu|wvAxt0w00= yx|zyAd{A =|{|}|A~t0}0= ~|AdA =|At00;= |P[z>]=AO[A{V0=O[[=[][>xAdA =|Adx =| At000>AdA =|Adx=| At00>AdA =|Adx=| At00;>QQDA = A0= >=A = A0= ~  >'= 'A00= >.=.= '|A;0= |>8=8A000= |=8A00= |=8A00;= |=8A00V= |P>AAdA =|A000= |AdA =|A00= |AdA =|A00;= |P[>]=AO[A{V0=O[[=[][>xAdA =|Adx =| A000>AdA =|Adx=| A00>AdA =| Ad x=  |  A 0 0;>  A = A0 = >=A = A0 = ~  >'= 'A00 =  >. =!.#!"#"= $'|%$A&;0 = '&|(')%(>8)=08A1/0000= 21|32=48A5/040= 65|76=88A9/080;= :9|;:=<8A=/0<0V= >=|?>P@37;?>A@AdGA =HG|IHAJF0I00= KJ|LKAdMA =NM|ONAPF0O0= QP|RQAdSA =TS|UTAVF0U0;= WV|XWP[YLRX>]Y=ZAO[[ZZA{\V0=]\O[^]][_[^=[`][a_`>xaAdbA =cb|dcAdex =fe| gfAhF0d00>hgAdiA =ji|kjAdlx=ml| nmAoF0k0>onAdpA =qp|rqAdsx=ts| utAvF0r0;>vu##DDrr  %%8@A batchMainComputeBlendShapeCBufferinBlendShapeVertices0inBlendShapeVertices1inBlendShapeVertices2inBlendShapeVertices3inBlendShapeVertices4inBlendShapeVertices5inBlendShapeVertices6inBlendShapeVertices7inOutVertices0inOutVertices1 inOutVertices2 inOutVertices3 inOutVertices4 inOutVertices5 inOutVertices6inOutVertices7#  GLSL.std.450main @mainu_xlatb0 gl_GlobalInvocationID ComputeBlendShapeCBufferg_VertCountsg_BatchOffsetsg_FirstVertsg_Weights'u_xlatu0.u_xlatb58u_xlati0Au_xlat1 DinBlendShapeVertices7_typeDvalueFinBlendShapeVertices7 FinBlendShapeVertices7_bufH]u_xlat0nu_xlat2 qinOutVertices7_origX7X_typeqvaluesinOutVertices7_origX7X sinOutVertices7_origX7X_bufuu_xlat3u_xlat4 inBlendShapeVertices6_typevalueinBlendShapeVertices6 inBlendShapeVertices6_buf (inOutVertices6_origX6X_type(value*inOutVertices6_origX6X *inOutVertices6_origX6X_buf, inBlendShapeVertices5_typevalueinBlendShapeVertices5 inBlendShapeVertices5_buf inOutVertices5_origX5X_typevalueinOutVertices5_origX5X inOutVertices5_origX5X_buf finBlendShapeVertices4_typefvaluehinBlendShapeVertices4 hinBlendShapeVertices4_bufj inOutVertices4_origX4X_typevalueinOutVertices4_origX4X inOutVertices4_origX4X_buf inBlendShapeVertices3_typevalueinBlendShapeVertices3 inBlendShapeVertices3_buf ;inOutVertices3_origX3X_type;value=inOutVertices3_origX3X =inOutVertices3_origX3X_buf? inBlendShapeVertices2_typevalueinBlendShapeVertices2 inBlendShapeVertices2_buf inOutVertices2_origX2X_typevalueinOutVertices2_origX2X inOutVertices2_origX2X_buf yinBlendShapeVertices1_typeyvalue{inBlendShapeVertices1 {inBlendShapeVertices1_buf} inOutVertices1_origX1X_typevalueinOutVertices1_origX1X inOutVertices1_origX1X_buf *inBlendShapeVertices0_type*value,inBlendShapeVertices0 ,inBlendShapeVertices0_buf. NinOutVertices0_origX0X_typeNvaluePinOutVertices0_origX0X PinOutVertices0_origX0X_bufRu_xlat_precise_vec4u_xlat_precise_ivec4u_xlat_precise_bvec4u_xlat_precise_uvec4G GGGGH#H# H#@H#`GG"G!GCHD#GE(HFHF#GFGH"GH!GpHq#GrHs#GsGu"Gu!GH#G(HH#GG"G!G'H(#G)H*#G*G,"G,!GH#G(HH#GG"G!GH#GH#GG"G! GeHf#Gg(HhHh#GhGj"Gj!GH#GH#GG"G! GH#G(HH#GG"G!G:H;#G<H=#G=G?"G?! GH#G(HH#GG"G!GH#GH#GG"G! GxHy#Gz(H{H{#G{G}"G}!GH#GH#GG"G! G)H*#G+(H,H,#G,G."G.!GMHN#GOHP#GPGR"GR!G ! ;     ; +   +   ; ++   & ;&';.+0 7;78+; @;@A+ B C BDCEDFE GF;GH+V[ \[;\]+_+d+i;@n+ op oqprqsr ts;tu v;\;@ +  B ;' o(')(*) +*;+, B ; o ;e Bfegfhg ih;ij o ; B ;: o;:<;=< >=;>? B ; o ;x Byxzy{z |{;|} o ;) B*)+*,+ -,;-.M oNMONPO QP;QR    + @, 6;;;;A = A = ! "!>"=#%#$$A( = )(A*= +*~ ,+ -),>'-= /'A10= 213/2>.3=4.64565= 9'|:9A<;= =<|>=?:>>8?=I8AJH0I00= KJ|LK=M8ANH0M0= ON|PO=Q8ARH0Q0;= SR|TS=U8AWH0U0V= XW|YXPZLPTY>AZ=^8A`H0^0_= a`|ba=c8AeH0c0d= fe|gf=h8AjH0h0i= kj|lkP[mbgl>]mAvwA =xw|yxAzu0y00= {z||{Av}A =~}|~Au00= |AvA =|Au00;= |AvA =|Au00V= |P|>nAvA =|Au00_= |AvA =|Au00d= |P=[O[>=AO[AV=O[[=nO[[=O >Avn=Av>=[]AV=O[[=[O[[>]Av] =Av>AvA =|Av =| Au000>AvA =|Av=| Au00>AvA =|Av=| Au00;>AvA =|Av=| Au00V>AvA =|Av]=| Au00_>AvA =|Av]=| Au00d>66%A = A= >=A = A= ~  >'= 'A0= >.=.= '|A;= |>8= 8A 0 00=  |  = 8A0 0= |=8A00;= |=8A00V= |P >A=8A00_= |=8A00d= |! ="8A#0"0i= $#|%$P[&!%>]&Av-A =.-|/.A0,0/00= 10|21Av3A =43|54A6,050= 76|87Av9A =:9|;:A<,0;0;= =<|>=Av?A =@?|A@AB,0A0V= CB|DCPE28>D>nEAvFA =GF|HGAI,0H0_= JI|KJAvLA =ML|NMAO,0N0d= PO|QPPRKQ=[SO[TSR>T=UAO[VUUAWV=XWO[YXX[ZVY=[nO[\[[[]Z\=^O _^]>_Av`n=a`Avb>ba=[c]AdV=edO[fee[gcf=[hO[ihh[jgi>]jAvk] =lkAvm>mlAvnA =on|poAvq =rq| srAt,0p00>tsAvuA =vu|wvAvx=yx| zyA{,0w0>{zAv|A =}||~}Av=| A,0~0;>AvA =|Av=| A,00V>AvA =|Av]=| A,00_>AvA =|Av]=| A,00d>A = A= >=IA = A= ~  >'= 'A0= >.=.= '|A;= |>8=8A000= |=8A00= |=8A00;= |=8A00V= |P>A=8A00_= |=8A00d= |=8A00i= |P[>]AvA =|A000= |AvA =|A00= |AvA =|A00;= |AvA =|A00V= |P>nAvA =|A00_= |AvA =|A00d= |P=[O[>=AO[AV= O[   [  = nO[   [  =O >Avn=Av>=[]AV=O[[=[O[[>]Av] =Av>AvA = |! Av" =#"| $#A%0!00>%$Av&A ='&|('Av)=*)| +*A,0(0>,+Av-A =.-|/.Av0=10| 21A30/0;>32Av4A =54|65Av7=87| 98A:060V>:9Av;A =<;|=<Av>]=?>| @?AA0=0_>A@AvBA =CB|DCAvE]=FE| GFAH0D0d>HGIAJ = KJAL = MLNKM>N=OQOPPAR = SRAT = UT~ VU WSV>'W= X'AY0 = ZY[XZ>.[=\.^\]^]= _'|`_Aa; = ba|cbd`c>8d=k8Alj0k00= ml|nm=o8Apj0o0= qp|rq=s8Atj0s0;= ut|vu=w8Axj0w0V= yx|zyP{nrvz>A{=|8A}j0|0_= ~}|~=8Aj00d= |=8Aj00i= |P[>]AvA =|A000= |AvA =|A00= |AvA =|A00;= |AvA =|A00V= |P>nAvA =|A00_= |AvA =|A00d= |P=[O[>=AO[AV=O[[=nO[[=O >Avn=Av>=[]AV=O[[=[O[[>]Av] =Av>AvA =|Av =| A000>AvA =|Av=| A00>AvA =|Av=| A00;>AvA =|Av=| A00V>AvA =|Av]=| A00_>AvA =|Av]=| A00d>^^QA = A0= >=A = A0= ~  >'= 'A 00=     >. = . = '|A;0= |>8=8A000= |= 8A!0 0= "!|#"=$8A%0$0;= &%|'&=(8A)0(0V= *)|+*P,#'+>A,=-8A.0-0_= /.|0/=18A2010d= 32|43=58A6050i= 76|87P[9048>]9Av@A =A@|BAAC?0B00= DC|EDAvFA =GF|HGAI?0H0= JI|KJAvLA =ML|NMAO?0N0;= PO|QPAvRA =SR|TSAU?0T0V= VU|WVPXEKQW>nXAvYA =ZY|[ZA\?0[0_= ]\|^]Av_A =`_|a`Ab?0a0d= cb|dcPe^d=[fO[gfe>g=hAO[ihhAjV0=kjO[lkk[mil=nnO[onn[pmo=qO rqp>rAvsn=tsAvu>ut=[v]AwV0=xwO[yxx[zvy=[{O[|{{[}z|>]}Av~] =~Av>AvA =|Av =| A?000>AvA =|Av=| A?00>AvA =|Av=| A?00;>AvA =|Av=| A?00V>AvA =|Av]=| A?00_>AvA =|Av]=| A?00d>A = A0= >=\A = A0= ~  >'= 'A00= >.=.= '|A;0= |>8=8A000= |=8A00= |=8A00;= |=8A00V= |P>A=8A00_= |=8A00d= |=8A00i= |P[>]AvA =|A000= |AvA =|A00= |AvA =|A00;= |AvA =|A00V= |P >n Av A =  |  A 0 0_=  |AvA =|A00d= |P=[O[>=AO[AV0=O[[=nO[ [! ="O #"!>#Av$n=%$Av&>&%=[']A(V0=)(O[*))[+'*=[,O[-,,[.+->].Av/] =0/Av1>10Av2A =32|43Av5 =65| 76A80400>87Av9A =:9|;:Av<==<| >=A?0;0>?>Av@A =A@|BAAvC=DC| EDAF0B0;>FEAvGA =HG|IHAvJ=KJ| LKAM0I0V>MLAvNA =ON|POAvQ]=RQ| SRAT0P0_>TSAvUA =VU|WVAvX]=YX| ZYA[0W0d>[Z\A] = ^]A_0= `_a^`>a=bdbc cAe = feAg0= hg~ ih jfi>'j= k'Al00= mlnkm>.n=o.qopqp= r'|srAt;0= ut|vuwsv>8w=~8A}0~00= |=8A}00= |=8A}00;= |=8A}00V= |P>A=8A}00_= |=8A}00d= |=8A}00i= |P[>]AvA =|A000= |AvA =|A00= |AvA =|A00;= |AvA =|A00V= |P>nAvA =|A00_= |AvA =|A00d= |P=[O[>=AO[AV0=O[[=nO[[=O >Avn=Av>=[]AV0=O[[=[O[[>]Av] =Av>AvA =|Av =| A000>AvA =|Av=| A00>AvA =|Av=| A00;>AvA =|Av=| A00V>AvA =|Av]=| A00_>AvA =|Av ]=  |  A 00d>  qqd A = A0 = >=A = A0 = ~  >'= 'A00 = >.= ." !"!= #'|$#A%;0 = &%|'&($'>8(=/8A0.0/00= 10|21=38A4.030= 54|65=78A8.070;= 98|:9=;8A<.0;0V= =<|>=P?26:>>A?=@8AA.0@0_= BA|CB=D8AE.0D0d= FE|GF=H8AI.0H0i= JI|KJP[LCGK>]LAvSA =TS|UTAVR0U00= WV|XWAvYA =ZY|[ZA\R0[0= ]\|^]Av_A =`_|a`AbR0a0;= cb|dcAveA =fe|gfAhR0g0V= ih|jiPkX^dj>nkAvlA =ml|nmAoR0n0_= po|qpAvrA =sr|tsAuR0t0d= vu|wvPxqw=[yO[zyx>z={AO[|{{A}V0=~}O[~~[|=nO[[=O >Avn=Av>=[]AV0=O[[=[O[[>]Av] =Av>AvA =|Av =| AR000>AvA =|Av=| AR00>AvA =|Av=| AR00;>AvA =|Av=| AR00V>AvA =|Av]=| AR00_>AvA =|Av]=| AR00d>""ddQQ%%8@A batchMainComputeBlendShapeCBufferinBlendShapeVertices0inBlendShapeVertices1inBlendShapeVertices2inBlendShapeVertices3inBlendShapeVertices4inBlendShapeVertices5inBlendShapeVertices6inBlendShapeVertices7inOutVertices0inOutVertices1 inOutVertices2 inOutVertices3 inOutVertices4 inOutVertices5 inOutVertices6inOutVertices7<# / GLSL.std.450main @mainu_xlatb0 gl_GlobalInvocationID ComputeBlendShapeCBufferg_VertCountsg_BatchOffsetsg_FirstVertsg_Weights'u_xlatu0.u_xlatb78u_xlati0Au_xlat1 DinBlendShapeVertices7_typeDvalueFinBlendShapeVertices7 FinBlendShapeVertices7_bufH[u_xlat2su_xlat0u_xlat3 inOutVertices7_origX7X_typevalueinOutVertices7_origX7X inOutVertices7_origX7X_bufu_xlat4u_xlat5u_xlat6 TinBlendShapeVertices6_typeTvalueVinBlendShapeVertices6 VinBlendShapeVertices6_bufX inOutVertices6_origX6X_typevalueinOutVertices6_origX6X inOutVertices6_origX6X_buf QinBlendShapeVertices5_typeQvalueSinBlendShapeVertices5 SinBlendShapeVertices5_bufU inOutVertices5_origX5X_typevalueinOutVertices5_origX5X inOutVertices5_origX5X_buf NinBlendShapeVertices4_typeNvaluePinBlendShapeVertices4 PinBlendShapeVertices4_bufR inOutVertices4_origX4X_typevalueinOutVertices4_origX4X inOutVertices4_origX4X_buf KinBlendShapeVertices3_typeKvalueMinBlendShapeVertices3 MinBlendShapeVertices3_bufO ~inOutVertices3_origX3X_type~valueinOutVertices3_origX3X inOutVertices3_origX3X_buf HinBlendShapeVertices2_typeHvalueJinBlendShapeVertices2 JinBlendShapeVertices2_bufL {inOutVertices2_origX2X_type{value}inOutVertices2_origX2X }inOutVertices2_origX2X_buf EinBlendShapeVertices1_typeEvalueGinBlendShapeVertices1 GinBlendShapeVertices1_bufI xinOutVertices1_origX1X_typexvaluezinOutVertices1_origX1X zinOutVertices1_origX1X_buf| BinBlendShapeVertices0_typeBvalueDinBlendShapeVertices0 DinBlendShapeVertices0_bufF uinOutVertices0_origX0X_typeuvaluewinOutVertices0_origX0X winOutVertices0_origX0X_bufy$u_xlat_precise_vec4'u_xlat_precise_ivec4*u_xlat_precise_bvec4,u_xlat_precise_uvec4G GGGGH#H# H#@H#`GG"G!GCHD#GE(HFHF#GFGH"GH!GH#G(H#GG"G!GSHT#GU(HVHV#GVGX"GX!GH#G(H#GG"G!GPHQ#GR(HSHS#GSGU"GU!GH#G(H#GG"G! GMHN#GO(HPHP#GPGR"GR!GH#G(H#GG"G! GJHK#GL(HMHM#GMGO"GO!G}H~#G(H#GG"G! GGHH#GI(HJHJ#GJGL"GL!GzH{#G|(H}#G}G"G! GDHE#GF(HGHG#GGGI"GI!GwHx#Gy(Hz#GzG|"G|! GAHB#GC(HDHD#GDGF"GF!GtHu#Gv(Hw#GwGy"Gy!G. ! ;     ; +   +   ; ++   & ;&';.+0 7;78+; @;@A+ B C BDCEDFE GF;GH+V;@[+]+b+g+lq rq;rs+u+z ~;@ B ; ;@;r;@ + S BTSUTVU WV;WX B ;P BQPRQSR TS;TU B ;M BNMONPO QP;QR B ;J BKJLKML NM;NO} B~}~ ;G BHGIHJI KJ;KLz B{z|{}| ~};~D BEDFEGF HG;HIw Bxwyxzy {z;{|A BBACBDC ED;EFt Butvuwv xw;xy #% &%( )( ++ -@, .-6;#$;&';)*;+,A = A = ! "!>"=#%#$7$A( = )(A*= +*~ ,+ -),>'-= /'A10= 213/2>.3=4.64565= 9'|:9A<;= =<|>=?:>>8?=I8AJH0I00= KJ|LK=M8ANH0M0= ON|PO=Q8ARH0Q0;= SR|TS=U8AWH0U0V= XW|YXPZLPTY>AZ=\8A^H0\0]= _^|`_=a8AcH0a0b= dc|ed=f8AhH0f0g= ih|ji=k8AmH0k0l= nm|onPp`ejo>[p=t8AvH0t0u= wv|xw=y8A{H0y0z= |{|}|P~x}=qsOq>sAA =|A00V= |AA =|A000= |AA =|A00= |AA =|A00;= |P>AA =|A00]= |AA =|A00b= |AA =|A00g= |AA =|A00l= |P>AA =|A00u= |A>=AOqAV=Oqq=Oqq=O >=O~=O >=[OqAV=Oqq=Oqq=O >A[=As>=O~=qOq>=qsOqAV=Oqq=qq>sA=A>AA =|A =| A000>AA =|A=| A00>AA =|A=| A00;>A A =  |  A =  |  A0 0V>=qsO~=O >AA =|A =| A00]>AA =|A=| A!00b>! A"A =#"|$#A%=&%| '&A(0$0g>('A)A =*)|+*A,=-,| .-A/0+0l>/.A0A =10|21A3s=43| 54A6020u>6566%7A8 = 98A:= ;:<9;><==?=>4>A@ = A@AB= CB~ DC EAD>'E= F'AG0= HGIFH>.I=J.LJKLK= M'|NMAO;= PO|QPRNQ>8R=Y8AZX0Y00= [Z|\[=]8A^X0]0= _^|`_=a8AbX0a0;= cb|dc=e8AfX0e0V= gf|hgPi\`dh>Ai=j8AkX0j0]= lk|ml=n8AoX0n0b= po|qp=r8AsX0r0g= ts|ut=v8AwX0v0l= xw|yxPzmquy>[z={8A|X0{0u= }||~}=8AX00z= |P~~=qsOq>sAA =|A00V= |AA =|A000= |AA =|A00= |AA =|A00;= |P>AA =|A00]= |AA =|A00b= |AA =|A00g= |AA =|A00l= |P>AA =|A00u= |A>=AOqAV=Oqq=Oqq=O >=O~=O >=[OqAV=Oqq=Oqq=O >A[=As>=O~=qOq>=qsOqAV=Oqq=qq>sA=A>AA =|A =| A000>AA =|A=| A00>AA =|A=| A00;>AA =|A =  |  A 00V>  =q sO~  =O >AA =|A =| A00]>AA =|A=| A00b>AA = |! A"=#"| $#A%0!0g>%$A&A ='&|('A)=*)| +*A,0(0l>,+A-A =.-|/.A0s=10| 21A30/0u>32LL?4A5 = 65A7= 87968>9=:<:;1;A= = >=A?= @?~ A@ B>A>'B= C'AD0= EDFCE>.F=G.IGHIH= J'|KJAL;= ML|NMOKN>8O=V8AWU0V00= XW|YX=Z8A[U0Z0= \[|]\=^8A_U0^0;= `_|a`=b8AcU0b0V= dc|edPfY]ae>Af=g8AhU0g0]= ih|ji=k8AlU0k0b= ml|nm=o8ApU0o0g= qp|rq=s8AtU0s0l= ut|vuPwjnrv>[w=x8AyU0x0u= zy|{z=|8A}U0|0z= ~}|~P~{=qsOq>sAA =|A00V= |AA =|A000= |AA =|A00= |AA =|A00;= |P>AA =|A00]= |AA =|A00b= |AA =|A00g= |AA =|A00l= |P>AA =|A00u= |A>=AOqAV=Oqq=Oqq=O >=O~=O >=[OqAV=Oqq=Oqq=O >A[=As>=O~=qOq>=qsOqAV=Oqq=qq>sA=A>AA =|A =| A000>AA =|A=| A00>AA =|A=| A00;>AA =|A=| A 00V> =q sO~   = O    > AA =|A =| A00]>AA =|A=| A00b>AA =|A= | ! A"00g>"!A#A =$#|%$A&='&| ('A)0%0l>)(A*A =+*|,+A-s=.-| /.A00,0u>0/II<1A2 = 32A4 = 54635>6=7978.8A: = ;:A< = =<~ >= ?;>>'?= @'AA0 = BAC@B>.C=D.FDEFE= G'|HGAI; = JI|KJLHK>8L=S8ATR0S00= UT|VU=W8AXR0W0= YX|ZY=[8A\R0[0;= ]\|^]=_8A`R0_0V= a`|baPcVZ^b>Ac=d8AeR0d0]= fe|gf=h8AiR0h0b= ji|kj=l8AmR0l0g= nm|on=p8AqR0p0l= rq|srPtgkos>[t=u8AvR0u0u= wv|xw=y8AzR0y0z= {z||{P~}x|=q~sOq~}>sAA =|A00V= |AA =|A000= |AA =|A00= |AA =|A00;= |P>AA =|A00]= |AA =|A00b= |AA =|A00g= |AA =|A00l= |P>AA =|A00u= |A>=AOqAV=Oqq=Oqq=O >=O~=O >=[OqAV=Oqq=Oqq=O >A[=As>=O~=qOq>=qsOqAV=Oqq=qq>sA=A>AA =|A =| A000>AA =|A=| A00>AA =|A=| A00;>AA =|A=| A00V>=qsO~= O   > A A =  |  A =| A0 0]>AA =|A=| A00b>AA =|A=| A00g>A A =! |"!A#=$#| %$A&0"0l>&%A'A =('|)(A*s=+*| ,+A-0)0u>-,FF9.A/ = 0/A10= 21302>3=4645+5A7 = 87A90= :9~ ;: <8;>'<= ='A>00= ?>@=?>.@=A.CABCB= D'|EDAF;0= GF|HGIEH>8I=P8AQO0P00= RQ|SR=T8AUO0T0= VU|WV=X8AYO0X0;= ZY|[Z=\8A]O0\0V= ^]|_^P`SW[_>A`=a8AbO0a0]= cb|dc=e8AfO0e0b= gf|hg=i8AjO0i0g= kj|lk=m8AnO0m0l= on|poPqdhlp>[q=r8AsO0r0u= ts|ut=v8AwO0v0z= xw|yxP~zuy=q{sOq|{z>s|AA =|A00V= |AA =|A000= |AA =|A00= |AA =|A00;= |P>AA =|A00]= |AA =|A00b= |AA =|A00g= |AA =|A00l= |P>AA =|A00u= |A>=AOqAV0=Oqq=Oqq=O >=O~=O >=[OqAV0=Oqq=Oqq=O >A[=As>=O~=qOq>=qsOqAV0=Oqq=qq>sA=A>AA =|A =| A000>AA =|A=| A00>AA =|A=| A00;>AA =|A=| A00V>=qsO~=O >AA = |  A  =  |  A0 0]> AA =|A=| A00b>AA =|A=| A00g>AA =|A =! | "!A#00l>#"A$A =%$|&%A's=('| )(A*0&0u>*)CC6+A, = -,A.0= /.0-/>0=1312(2A4 = 54A60= 76~ 87 958>'9= :'A;00= <;=:<>.==>.@>?@?= A'|BAAC;0= DC|EDFBE>8F=M8ANL0M00= ON|PO=Q8ARL0Q0= SR|TS=U8AVL0U0;= WV|XW=Y8AZL0Y0V= [Z|\[P]PTX\>A]=^8A_L0^0]= `_|a`=b8AcL0b0b= dc|ed=f8AgL0f0g= hg|ih=j8AkL0j0l= lk|mlPnaeim>[n=o8ApL0o0u= qp|rq=s8AtL0s0z= ut|vuP~wrv=qxsOqyxw>syAA =|A00V= |AA =|A000= |AA =|A00= |AA =|A00;= |P>AA =|A00]= |AA =|A00b= |AA =|A00g= |AA =|A00l= |P>AA =|A00u= |A>=AOqAV0=Oqq=Oqq=O >=O~=O >=[OqAV0=Oqq=Oqq=O >A[=As>=O~=qOq>=qsOqAV0=Oqq=qq>sA=A>AA =|A =| A000>AA =|A=| A00>AA =|A=| A00;>AA =|A=| A00V>=qsO~=O >AA =|A = |  A 00]>  A A =  | A=| A00b>AA =|A=| A00g>AA =|A=| A 00l> A!A ="!|#"A$s=%$| &%A'0#0u>'&@@3(A) = *)A+0= ,+-*,>-=.0./%/A1 = 21A30= 43~ 54 625>'6= 7'A800= 98:79>.:=;.=;<=<= >'|?>A@;0= A@|BAC?B>8C=J8AKI0J00= LK|ML=N8AOI0N0= PO|QP=R8ASI0R0;= TS|UT=V8AWI0V0V= XW|YXPZMQUY>AZ=[8A\I0[0]= ]\|^]=_8A`I0_0b= a`|ba=c8AdI0c0g= ed|fe=g8AhI0g0l= ih|jiPk^bfj>[k=l8AmI0l0u= nm|on=p8AqI0p0z= rq|srP~tos=qusOqvut>svA}A =~}|~A|00V= |AA =|A|000= |AA =|A|00= |AA =|A|00;= |P>AA =|A|00]= |AA =|A|00b= |AA =|A|00g= |AA =|A|00l= |P>AA =|A|00u= |A>=AOqAV0=Oqq=Oqq=O >=O~=O >=[OqAV0=Oqq=Oqq=O >A[=As>=O~=qOq>=qsOqAV0=Oqq=qq>sA=A>AA =|A =| A|000>AA =|A=| A|00>AA =|A=| A|00;>AA =|A=| A|00V>=qsO~=O >AA =|A =| A|00]>A A =  |  A =  |  A|0 0b>AA =|A=| A|00g>AA =|A=| A|00l>AA =| A!s="!| #"A$|0 0u>$#==0%A& = '&A(0 = )(*')>*=+-+,-,A. = /.A00 = 10~ 21 3/2>'3= 4'A500 = 65746>.7=8.:89:9= ;'|<;A=;0 = >=|?>@<?>8@=G8AHF0G00= IH|JI=K8ALF0K0= ML|NM=O8APF0O0;= QP|RQ=S8ATF0S0V= UT|VUPWJNRV>AW=X8AYF0X0]= ZY|[Z=\8A]F0\0b= ^]|_^=`8AaF0`0g= ba|cb=d8AeF0d0l= fe|gfPh[_cg>[h=i8AjF0i0u= kj|lk=m8AnF0m0z= on|poP~qlp=qrsOqsrq>ssAzA ={z||{A}y0|0V= ~}|~AA =|Ay000= |AA =|Ay00= |AA =|Ay00;= |P>AA =|Ay00]= |AA =|Ay00b= |AA =|Ay00g= |AA =|Ay00l= |P>AA =|Ay00u= |A>=AOqAV0=Oqq=Oqq=O >=O~=O >=[OqAV0=Oqq=Oqq=O >A[=As>=O~=qOq>=qsOqAV0=Oqq=qq>sA=A>AA =|A =| Ay000>AA =|A=| Ay00>AA =|A=| Ay00;>AA =|A=| Ay00V>=qsO~=O >AA =|A =| Ay00]>AA =|A =  |  A y00b>  A A = |A=| Ay00g>AA =|A=| Ay00l>AA =|As=| A!y00u>! ::--00336699<<??%%8@ACGlobals  g_FirstVert g_VertCountg_WeightComputeCopyCBuffer@g_BatchOffsets  g_VertCountsComputeBlendShapeCBufferg_BatchOffsets  g_FirstVerts@ g_VertCounts g_Weights`(Internal-RayTracing-AddInstancesIndirectmainInstanceDescTemplateIndirectInstaceParamsIndirectArgsBufferInstanceMatricesBuffer InstanceDescsDXBCHäI'sj#.(,<LISGNOSGNSHEXP$jYF YF pp@@_h@P   >yF~b* qOB *" O  *r@Frr@pr@ Fr@0y V A"  "@@ 6*F6F6*  V   626B*6   @F66b6  @F6*6"  @ F  @0F>@AInstanceDescTemplateInstanceIDAndMaskHitGroupIndexAndFlagsAccelerationStructureGPUVAIndirectInstaceParams RelativeOriginMaxInstanceCountInstanceDescsOffset ArgsOffsetmainInstanceDescTemplateIndirectInstaceParamsIndirectArgsBufferInstanceMatricesBuffer InstanceDescsDXBCHäI'sj#.(,<LISGNOSGNSHEXP$jYF YF pp@@_h@P   >yF~b* qOB *" O  *r@Frr@pr@ Fr@0y V A"  "@@ 6*F6F6*  V   626B*6   @F66b6  @F6*6"  @ F  @0F>@AInstanceDescTemplateInstanceIDAndMaskHitGroupIndexAndFlagsAccelerationStructureGPUVAIndirectInstaceParams RelativeOriginMaxInstanceCountInstanceDescsOffset ArgsOffset#Internal-VT-TranslationTableReplaceReplaceTranslationTablecbReplacementData _input_map _output_bufDXBC~%)4#,<LISGNOSGNSHEX@PPjYF p__ h# @ O   ) @# @ 2 Fp) @ >AcbReplacementDatanumReplacements ReplaceTranslationTablecbReplacementData _input_map _output_bufY#version 310 es #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif UNITY_BINDING(0) uniform cbReplacementData { uint numReplacements; uint pad0; uint pad1; uint pad2; }; layout(std430, binding = 1) readonly buffer _input_map { uint _input_map_buf[]; }; layout(std430, binding = 0) buffer _output_buf { uint _output_buf_buf[]; }; vec2 u_xlat0; int u_xlati0; uint u_xlatu0; bool u_xlatb0; layout(local_size_x = 256, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatu0 = gl_WorkGroupID.x * 256u + gl_LocalInvocationID.x; u_xlatb0 = u_xlatu0> 2) + 0]), uintBitsToFloat(_input_map_buf[(u_xlati0 >> 2) + 1])); u_xlati0 = floatBitsToInt(u_xlat0.x) << (2 & int(0x1F)); _output_buf_buf[(u_xlati0 >> 2)] = uint(floatBitsToUint(u_xlat0.y)); } return; } AcbReplacementDatanumReplacements ReplaceTranslationTablecbReplacementData _input_map _output_buf#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform cbReplacementData { uint numReplacements; uint pad0; uint pad1; uint pad2; }; layout(std430, binding = 1) readonly buffer _input_map { uint _input_map_buf[]; }; layout(std430, binding = 0) buffer _output_buf { uint _output_buf_buf[]; }; vec2 u_xlat0; int u_xlati0; uint u_xlatu0; bool u_xlatb0; layout(local_size_x = 256, local_size_y = 1, local_size_z = 1) in; void main() { u_xlatu0 = gl_WorkGroupID.x * 256u + gl_LocalInvocationID.x; u_xlatb0 = u_xlatu0> 2) + 0]), uintBitsToFloat(_input_map_buf[(u_xlati0 >> 2) + 1])); u_xlati0 = floatBitsToInt(u_xlat0.x) << (2 & int(0x1F)); _output_buf_buf[(u_xlati0 >> 2)] = floatBitsToUint(u_xlat0.y); } return; } AcbReplacementDatanumReplacementsReplaceTranslationTablecbReplacementData _input_map _output_bufDXBC~%)4#,<LISGNOSGNSHEX@PPjYF p__ h# @ O   ) @# @ 2 Fp) @ >AcbReplacementDatanumReplacementsReplaceTranslationTablecbReplacementData _input_map _output_buf # i GLSL.std.450main mainu_xlatu0 gl_WorkGroupIDgl_LocalInvocationIDu_xlatb0cbReplacementDatanumReplacementspad0pad1pad2'u_xlati07u_xlat09_input_map9_input_map_buf;Q_output_buf_origX0X Q_output_buf_origX0X_bufS^u_xlat_precise_vec4au_xlat_precise_ivec4du_xlat_precise_bvec4gu_xlat_precise_uvec4G G H#H#H#H# GG"G!G8H9H9#G9G;"G;!GPHQ#GQGS"GS!Gh ! ;    ; +  +;  ; ; +  &;&'+++04 54 65;67898 :9;:;+=+E K4PQP RQ;RS+V\4 ]\_ `_b cbe fe, hVV6;]^;`a;cd;fgA  =A  =>=A =! "!>"=#%#$%$A ( =)(|*),*+>',A - =.-|/.1/0=2'312>'3=<'><=?>A@;?=A@|4BA=C'DC=FDEAG;F=HG|4IHP5JBI>7JAKL7 =4ML|NMON=>'O=T'UT=AKW7V=4XW|YXAZSU>ZY%%8AcbReplacementDatanumReplacementspad0pad1pad2 $Internal-VT-TranslationTableUpsampleMaincbTranslationTableData _output_buftranslationTableDXBCBvjM?K5I,<LISGNOSGNSHEXPjYF UU_2_2 h # F@ F%U 2@UB* @# *   ) @ P  <B:**># B:* B* )B*@* 2@'" @7  : @': '  : 6"@7 2FF* F> AMaincbTranslationTableData lookupTexture _output_buftranslationTable@ DXBC WNɲ.@ ,<LISGNOSGNSHEX P{jYF 2XpDDUU_2_2 h # 2F@ F U 2F@UB* @# *   ) @ P2F < :># * : ):@:6 -BF| b@'"@7 *  @ : :6"@6@6@0PB:* 6@*UB:@:@(:O @" *:@7 B*@: :@6 FF "*<V <B:* B***6B@6@:@6V6**:6"@7 2FF6@6@6@0P":: 6@U":@ B@@:@O*@ " @ 2F <  *::B*@B*@O*@ " @ 2Fօ <B 6@:@6V6:7 B:*@'*@B*@<B* 'B  6B@7 2 F7 2 F: F> AMaincbTranslationTableData _output_buftranslationTable DXBCR>Ck9݋.I ,<LISGNOSGNSHEXPjYF UU_2_2 h # F@ F%P2 <  ># :*   ) @"  V@'"*@7 *:" @'" 'B @"*7 bV@* FV> AMaincbTranslationTableData lookupTexture _output_buftranslationTablex DXBCr;VNi-\Fx ,<LISGNOSGNSHEX$ PIjYF 2XpDDUU_2_2 h # 2F@ F P2F <  ># *   ) @" 6 -BF| V@'"*@7 *: @ : :6"@6b@6@0P** 6@:U*@*@(B:O r@"*:@7 B@: *@6  FF ":<V <:* *::6"@6@*@6bV6::7 b@6@62@6@0P: 6@:U@ @@@O:@ " @  :<B:* B***:@:@O:@ " @ 2Fօ :< 6@@626*7 B: @'*@B*@<B* 'B @6B@7 2 @f 7 b * FV> AMaincbTranslationTableData _output_buftranslationTableDXBC.qw,<LISGNOSGNSHEXPpjYF UU_2_2 h & : * * @# F@ F%U b@U* @# "*:" )B@"* ) @ P  <B:**># B:* B* )*@:# B* : *)B*@* 2@'B @7 "  @'  ': 6B@7 bVV 2@6B@7 2B @'B* '  B:*6"@7  VV :*:F> AMaincbTranslationTableData lookupTexture _output_buftranslationTableDXBCXSSg/ؚ,<LISGNOSGNSHEXPjYF 2XpDDUU_2_2 h & : * * @# 2F@ F U b@U* @# "*:" )B@* ) @ P2F < :># * : ):@:# * : :):@:6 -Ft b@'"@7 *  @    6"@6@6B@0P:* 6B@:U:@B:@(*O r @":B*@7 B@* *@6  FF ":<V <:* *::6B@6B@:@6V6B:**6"@7 2FF6"6@6@6"@0PB:: 6"@*UB:@ @@:@O:@ " @  *<B:* B***:@:@O:@ " @ V *<B:*6"@:@6V6"*7 B*@'"*@B*@<B* 'B  6B@7 R 7 2V 6" 2@6B@7 2FB @ B* *6"@6@6B@0PB:* 6B@*UB:@B:@(*O r @":B*@7 B@* *@6  FF "*<V <B:* B:**6B@6B@:@6V6B*B**6"@7  VV6b6@62@6"@0PB: 6"@*UB@ B@@@O*@ " @  *<B:* B:**B*@B*@O*@ " @ 2Fօ *< 6"@@626"*7 " @'B@"@<B '"  6B@7 2VF7   V6b*: :FF> AMaincbTranslationTableData _output_buftranslationTableDXBC hi'T,<LISGNOSGNSHEXDPjYF UU_2_2 h # F@ F%P2 <  ># :*   )" @B# * : ) @  2 @'B @7 " *B@'B* '@B:*7 b @V 2@6B@7 V B*@'B* '*@B* 7  @   :F> AMaincbTranslationTableData lookupTexture _output_buftranslationTabletDXBC鉨}zct,<LISGNOSGNSHEX PHjYF 2XpDDUU_2_2 h # 2F@ F P2F <  ># *   )" @B# * : ) @ 6 -Ft  @'"*@7 *:*B @ B* *6"@6@6B@0P:* 6B@:U:@:@(B:O r@"*:@7 B@: *@6  FF ":<V <:* *::6B@6B@:@6V6B:B**7  @6":6@6@6@0P:: 6@ U:@ "@@:@O@ " @   <B:* B***"@"@O@ " @ 2Fօ  <B 6@:@6V6*7 B:*@'B*@B*@<B* 'B @6B@7 2 @f 7  6": 2@6B@7 2FB @ B* *6"@6@6B@0P:* 6B@:U:@:@(" O r@" @7 B@  *@6  FF ":<2<  :::6B@6B@:@6V6B:B**7 2 @66@6@6B@0P:: 6B@:U:@ @@:@O @ " @ b :<"* ": @ @O @ " @ RV :<B* 6B@:@6V6B7 B**@'*@B*@<B* 'B @6B@7 2 @f 7 26 * :F > AMaincbTranslationTableData _output_buftranslationTableDDXBCP '̑Y_D,<LISGNOSGNSHEXPjYF UU_2_2 h & : * *" @# F@ F%U  @U* @# B: *B* )*@":*) V @":"*)"@Pb <"*># ":* " )B@*# * : ) @ ) @ ) @  @'B @7 " ::"@'" '":6B@7 bVVV 2@6B@7 V "@'" 'B"*6B@7 bVVV 2@6B@7 V "@'" 'B "*6"@7 RVV  *  *66@FF> AMaincbTranslationTableData lookupTexture _output_buftranslationTableDDXBCbp UD,<LISGNOSGNSHEXPjYF 2XpDDUU_2_2 h  & : * *" @# 2F@ F U @U* @# B: *B* )*@:*) V @:"*)"@Pb <"*># "* " )B@*# * : ):@:) @ ) @ 6 -rFF~ @'"*@7 *::" @ " 6" @6@6B@0P:* 6B@:U:@:@(:O r @" : :@7 B  @:  * @6    F F ":<V   <:*  ::6"@6B@ :@6V 6B:"*6"@7 2 VFF6" 6 @6@6B@0P:: 6B@:U:@ "@@:@O @ "  @   :<:*  ::"@"@O @ "  @  V :<":*6B@ :@6V 6B:7 "*@'@"@<B  '"  6B@7 V7 2   6"  2@6B@7 V B@ B* *6"@6@6B@0P:* 6B@:U:@:@(:O @" *:@7 B*@: :@6 FF ":<2<  ::6B@6B@:@6V6B:B**6"@7  V 6" *6":6@6@6@0P":: 6@U":@ B@@:@O*@ " @  <": "B*@B*@O*@ " @ bV <B*6@:@6V67 B *@'*@B*@<B* 'B 6B@7  V 7 V 6" 6": 2@6B@7 V B@ B* *6"@6@6B@0P:* 6B@ U:@":@(BO rV@"*"@7 B@ *@6  FF " <2<  *  6B@6B@:@6V6B B**6"@7  V6B :6@6r@0P": 6B@U"@ @@@O:@ " @ 2F <  *  :@:@O:@ " @ V <:6B@@626B 7 * @'" @ @<B  ' 6B@7 V 7 V 6B :**  :  * 6 @FF > AMaincbTranslationTableData _output_buftranslationTablepDXBCWz*%)p,<LISGNOSGNSHEXPjYF UU_2_2 h # F@ F%P2 <  >& : * # ":* " ) R@*# * : ) @  ) @  b@'B@7 "*:"@'" '@":7 bV@V 2@6B@7 V "@'" 'B@"*7 bV@V 2@6B@7 V "@'" 'B@"*7 RV@  *  *66@FF> AMaincbTranslationTableData lookupTexture _output_buftranslationTableDXBC+@gpbeN1,<LISGNOSGNSHEXTPUjYF 2XpDDUU_2_2 h  # 2F@ F P2F <  >& : * # "* " ) R@*# * : ) @  ) @ 6 -F6y @'"*@7 *::B @ B* *6"@6@6"@0P:* 6"@:U:@B:@(*O r @":B*@7 B@* *@6  FF ":<V <:* ::6B@6"@:@6V6":B*7 2 @F6"6@6@6"@0P:: 6"@:U:@ B@@:@O*@ " @  :<:* ::B*@B*@O*@ " @ V :<B:*6"@:@6V6":7 B*@'*@B*@<B* 'B @6B@7  @7 2 6" 2@6B@7 2FB @ B* *6"@6@6"@0P:* 6"@:U:@":@(O rV@":"@7 B@ *@6  FF ":<V <:* *::6B@6"@:@6V6":B*7  @6"*6":6@6@6"@0P:: 6"@:U:@ "@@:@O@ " @  :<:* *::"@"@O@ " @ V :<B:*6"@:@6V6":7 B*@'*@B*@<B* 'B @6B@7  @7 V 6"*6": 2@6B@7 2FB @ B* *6"@6@6"@0P:* 6"@:U:@":@(BO rV@"*"@7 B@ *@6  FF ":<bV<* :::6B@6"@:@6V6":B*7  @V6B:6@6@6"@0PB:: 6"@*UB:@ @@:@O:@ " @ 2F *<  :  :@:@O:@ " @ bV *<"*6"@:@6V6" 7 "@'@"@<B '" @6B@7 bV@ 7  6B:**   *6@FF> AMaincbTranslationTableData _output_buftranslationTableD DXBCo˻bmv:D ,<LISGNOSGNSHEX P|jYF UU_2_2 h  & : * *" @# F@ F%U  @U* @# B: *B* )*@":*):@":)@*:):@":# "@*)"@Pb <"*># ":* " )B@*# * : ) @ ) @:):@:#  @) @  @'B @7 " ::" @'" ' ":6B@7 bVVV  2 @6B @7  V  "@'" 'B"*6B@7 bVVV 2@6B@7 V "@'" 'B"*6B@7 bV   2@6B@7 V "@'" 'B "*6"@7 VV * :* :66"FF> AMaincbTranslationTableData lookupTexture _output_buftranslationTable#DXBCRqbBl#,<LISGNOSGNSHEX@#PjYF 2XpDDUU_2_2 h & : * *" @# 2F@ F U @U* @# B: *B* )*@:*):@:)@*:):@:# "@*)"@Pb <"*># "* " )B@*# * : ):@:) @:):@:#  @) @ 6 - FF~ @'" *@7  *::"  @ " 6" @6@6B@0P:* 6B@:U:@:@(:O r @" : :@7 B  @:  * @6    F F ":<V   <:*   ::6"@6B@ :@6V 6B:"*6"@7 2 VFF 6" 6 @6@6B@0P:: 6B@:U:@ "@@:@O @ "  @   :<:*   ::"@"@O @ "  @  V :<":*6B@ :@6V 6B:7 "*@'@"@<B  '"   6B@7 V 7 2   6"  2@6B@7 V B@ B* *6"@6@6B@0P:* 6B@:U:@:@(:O @" *:@7 B *@:  :@6  F F ":<2<   ::6B@6B@:@6V6B:B**6"@7  V 6" *6":6@6@6@0P":: 6@U":@ B@@:@O *@ "  @   <":* " B*@B*@O *@ "  @ b V <B*6@:@6V67 B *@'*@B*@<B* 'B 6B@7  V 7 V 6" 6": 2@6B@7 V B@ B* *6"@6@6B@0P:* 6B@ U:@":@(BO rV@"*"@7 B@ *@6  FF " <2<  *  6B@6B@:@6V6B B**6"@7  V 6B *6":6@6@6@0P":: 6@U":@ B@@:@O*@ " @ 2F <  *  B*@B*@O*@ " @ bV <B*6@:@6V6 7 B *@'*@B*@<B* 'B 6B@7  V 7 V 6B 6": 2@6B@7 V B@ B* *6"@6@6B@0P:* 6B@ U:@":@(BO rV@"*"@7 B@ *@6  FF " <2<  :  6B@6B@:@6V6B B**6"@7  V6 :6@6r@0P: 6B@ U@ "@@@O@ " @   <B: B: **"@"@O@ " @ 2Fօ  < 6B@@626B*7 * @'" @ @<B  ' 6B@7 V 7 V 6 :**  : :*  : FF > AMaincbTranslationTableData _output_buftranslationTableDXBC W akX,<LISGNOSGNSHEXPjYF UU_2_2 h # F@ F%P2 <  >& : * # ":* " )B@*# * : ) @ )" @")"@#  @) @  @'B*@7 "*::"@'" '@":7 bV@V 2@6B@7 V B@'B* '@B:*7 b @V 2@6B@7 V B@'B* '@B:*7 b @  2@6B@7 V B@'B* '@B:*7  @ * * :66"FF> AMaincbTranslationTableData lookupTexture _output_buftranslationTable!DXBCڅ!5d(ke_!,<LISGNOSGNSHEXD!PQjYF 2XpDDUU_2_2 h  # 2F@ F P2F <  >& : * # "* " )B@*# * : ) @ )" @")"@#  @) @ 6 -FF~ @'"*@7 *::B @ B* *6"@6@6"@0P:* 6"@:U:@B:@(*O r @" : B*@7 B  @*  * @6    F F ":<V   <:*  ::6B@6"@:@6V6":B*7 2 @F6"6 @6@6"@0P:: 6"@:U:@ B@@:@O *@ "  @   :<:*  ::B*@B*@O *@ "  @  V :<B:*6"@ :@6V 6":7 B*@'*@B*@<B * 'B @6B@7  @7 2  6" 2@6B@7 2FB @ B* *6"@6@6"@0P:* 6"@:U:@B:@(*O r @" : B*@7 B  @*  * @6    F F ":<V   <:* ::6B@6"@:@6V6":B*7  @6"*6":6@6@6"@0P:: 6"@:U:@ B@@:@O *@ "  @   :<:* ::B*@B*@O *@ "  @  V :<B:*6"@:@6V6":7 B*@'*@B*@<B* 'B @6B@7  @7 V 6"*6": 2@6B@7 2FB @ B* *6"@6@6"@0P:* 6"@:U:@B:@(*O r @" :B*@7 B @*  *@6  F F ":<V <:* *::6B@6"@:@6V6":B*7  @6B*6":6@6@6"@0P:: 6"@:U:@ B@@:@O*@ " @  :<:* *::B*@B*@O*@ " @ V :<B:*6"@:@6V6":7 B*@'*@B*@<B* 'B @6B@7  @7 V 6B*6": 2@6B@7 2FB @ B* *6"@6@6"@0P:* 6"@:U:@B:@(*O r @":B*@7 B@* *@6  FF ":<V <:* :::6B@6"@:@6V6":B*7  @V6:6@6@6B@0P:: 6B@:U:@ @@:@O:@ " @ 2F :<  :  :@:@O:@ " @ bV :<"*6B@:@6V6B 7 "*@'@"@<B '" @6B@7 V@7   6:**  * :FF> AcbTranslationTableData invLevelwidthheight bufferOffsetLevelbufferOffsetLevelAbovecbTranslationTableData  levelinvLevelwidthheight bufferOffsetLevelbufferOffsetLevelAbovenumEvictedTiles numAddedTiles addedTiles  evictedTiles cbTranslationTableData invLevelwidthheight bufferOffsetLevelcbTranslationTableData  levelinvLevelwidthheight bufferOffsetLevelnumEvictedTiles numAddedTiles addedTiles  evictedTiles  MaincbTranslationTableData _output_buftranslationTable #version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform cbTranslationTableData { uint level; uint invLevel; uint width; uint height; uint bufferOffsetLevel; uint bufferOffsetLevelAbove; uint numEvictedTiles; uint numAddedTiles; uvec4 addedTiles[32]; uvec4 evictedTiles[16]; }; layout(std430, binding = 0) buffer _output_buf { uint _output_buf_buf[]; }; writeonly layout(binding=1) uniform image2D translationTable; uvec4 u_xlatu0; float u_xlat1; int u_xlati1; uvec2 u_xlatu1; int u_xlati2; bool u_xlatb2; int u_xlati4; bvec2 u_xlatb4; bool u_xlatb5; float u_xlat7; uint u_xlatu7; int u_xlati10; layout(local_size_x = 32, local_size_y = 32, local_size_z = 1) in; void main() { u_xlatu0 = gl_WorkGroupID.xyyy * uvec4(32u, 32u, 32u, 32u) + gl_LocalInvocationID.xyyy; u_xlatu1.xy = u_xlatu0.xw >> (uvec2(1u, 1u) & uint(0x1F)); u_xlatu7 = width >> (1u & uint(0x1F)); u_xlati1 = int(u_xlatu1.y) * int(u_xlatu7) + int(u_xlatu1.x); u_xlati1 = u_xlati1 + int(bufferOffsetLevelAbove); u_xlati1 = u_xlati1 << (2 & int(0x1F)); u_xlat1 = uintBitsToFloat(_output_buf_buf[(u_xlati1 >> 2) + 0]); u_xlatb4.xy = greaterThanEqual(u_xlatu0.xwxx, uvec4(width, height, width, width)).xy; u_xlatb4.x = u_xlatb4.y || u_xlatb4.x; if(u_xlatb4.x){ return; } u_xlati4 = int(u_xlatu0.w) * int(width) + int(u_xlatu0.x); u_xlati4 = u_xlati4 + int(bufferOffsetLevel); u_xlati4 = u_xlati4 << (2 & int(0x1F)); u_xlat7 = uintBitsToFloat(_output_buf_buf[(u_xlati4 >> 2) + 0]); u_xlati10 = int(floatBitsToUint(u_xlat7) & 2147483648u); if(u_xlati10 != 0) { u_xlat7 = uintBitsToFloat(floatBitsToUint(u_xlat7) & 2147483647u); } u_xlati2 = int(floatBitsToUint(u_xlat7) & 15u); u_xlatb2 = u_xlati2!=int(invLevel); u_xlatb5 = floatBitsToInt(u_xlat1)!=floatBitsToInt(u_xlat7); u_xlatb2 = u_xlatb5 && u_xlatb2; if(u_xlatb2){ u_xlat7 = u_xlat1; u_xlati1 = int(0xFFFFFFFFu); } else { u_xlati1 = int((u_xlati10!=0) ? 0xFFFFFFFFu : uint(0)); } if(u_xlati1 != 0) { _output_buf_buf[(u_xlati4 >> 2)] = floatBitsToUint(u_xlat7); imageStore(translationTable, ivec2(u_xlatu0.xy), vec4(u_xlat7)); } return; }  AMaincbTranslationTableData lookupTexture lookupTexture _output_buftranslationTable7#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform cbTranslationTableData { uint level; uint invLevel; uint width; uint height; uint bufferOffsetLevel; uint bufferOffsetLevelAbove; uint numEvictedTiles; uint numAddedTiles; uvec4 addedTiles[32]; uvec4 evictedTiles[16]; }; UNITY_LOCATION(0) uniform usampler2D lookupTexture; layout(std430, binding = 0) buffer _output_buf { uint _output_buf_buf[]; }; writeonly layout(binding=1) uniform image2D translationTable; uvec4 u_xlatu0; float u_xlat1; int u_xlati1; uvec2 u_xlatu1; uvec2 u_xlatu2; ivec4 u_xlati3; uint u_xlatu3; bool u_xlatb3; ivec3 u_xlati4; ivec4 u_xlati5; int u_xlati7; bvec2 u_xlatb7; int u_xlati9; uint u_xlatu9; int u_xlati12; bool u_xlatb12; float u_xlat13; uint u_xlatu13; uvec2 u_xlatu14; ivec2 u_xlati15; bool u_xlatb15; int u_xlati18; bool u_xlatb18; int u_xlati19; layout(local_size_x = 32, local_size_y = 32, local_size_z = 1) in; void main() { u_xlatu0.xy = gl_WorkGroupID.xy * uvec2(32u, 32u) + gl_LocalInvocationID.xy; u_xlatu1.xy = u_xlatu0.xy >> (uvec2(1u, 1u) & uint(0x1F)); u_xlatu13 = width >> (1u & uint(0x1F)); u_xlati1 = int(u_xlatu1.y) * int(u_xlatu13) + int(u_xlatu1.x); u_xlati1 = u_xlati1 + int(bufferOffsetLevelAbove); u_xlati1 = u_xlati1 << (2 & int(0x1F)); u_xlat1 = uintBitsToFloat(_output_buf_buf[(u_xlati1 >> 2) + 0]); u_xlatb7.xy = greaterThanEqual(u_xlatu0.xyxx, uvec4(width, height, width, width)).xy; u_xlatb7.x = u_xlatb7.y || u_xlatb7.x; if(u_xlatb7.x){ return; } u_xlati7 = int(u_xlatu0.y) * int(width) + int(u_xlatu0.x); u_xlati7 = u_xlati7 + int(bufferOffsetLevel); u_xlati7 = u_xlati7 << (2 & int(0x1F)); u_xlat13 = uintBitsToFloat(_output_buf_buf[(u_xlati7 >> 2) + 0]); u_xlatu0.zw = uvec2(level); u_xlati12 = int(texelFetch(lookupTexture, ivec2(u_xlatu0.xy), int(u_xlatu0.w)).x); u_xlati18 = int(floatBitsToUint(u_xlat13) & 2147483648u); u_xlati19 = int((u_xlati18!=0) ? 0xFFFFFFFFu : uint(0)); if(u_xlati18 != 0) { u_xlat13 = uintBitsToFloat(floatBitsToUint(u_xlat13) & 2147483647u); } u_xlati18 = int(floatBitsToUint(u_xlat13) & 15u); u_xlatb18 = u_xlati18==int(invLevel); if(u_xlatb18){ u_xlatu2.y = 0u; u_xlatu14.x = uint(0u); u_xlatu14.y = uint(0u); u_xlati18 = 0; while(true){ u_xlatb3 = u_xlatu14.y>=numEvictedTiles; u_xlati18 = 0; if(u_xlatb3){break;} u_xlatu3 = u_xlatu14.y >> (2u & uint(0x1F)); u_xlatu9 = u_xlatu14.y & 3u; u_xlati15.x = 0 - int(u_xlatu9); u_xlati4.xyz = ivec3(uvec3(lessThan(uvec4(u_xlatu9), uvec4(1u, 2u, 3u, 0u)).xyz) * 0xFFFFFFFFu); u_xlati5.y = int(uint(u_xlati15.x) & uint(u_xlati4.y)); u_xlati9 = int(u_xlatu9) + int(0xFFFFFFFDu); u_xlati5.z = (u_xlati4.y != 0) ? 0 : u_xlati9; u_xlati5.w = int((u_xlati4.z==0) ? 0xFFFFFFFFu : uint(0)); u_xlati5.x = u_xlati4.x; u_xlati3 = ivec4(uvec4(u_xlati5) & evictedTiles[int(u_xlatu3)]); u_xlati3.xy = ivec2(uvec2(u_xlati3.yw) | uvec2(u_xlati3.xz)); u_xlati3.x = int(uint(u_xlati3.y) | uint(u_xlati3.x)); u_xlatb3 = u_xlati12==u_xlati3.x; if(u_xlatb3){ u_xlatu14.x = 4294967295u; u_xlati18 = int(0xFFFFFFFFu); break; } u_xlatu2.x = u_xlatu14.y + 1u; u_xlatu14.xy = u_xlatu2.yx; u_xlatb18 = u_xlatb3; } if(u_xlati18 == 0) { u_xlatu14.x = 0u; } if(u_xlatu14.x != uint(0)) { u_xlat13 = u_xlat1; u_xlati19 = int(0xFFFFFFFFu); } } else { u_xlatu2.y = 0u; u_xlatu14.x = uint(0u); u_xlatu14.y = uint(0u); u_xlati18 = 0; while(true){ u_xlatb3 = u_xlatu14.y>=numAddedTiles; u_xlati18 = 0; if(u_xlatb3){break;} u_xlatu3 = u_xlatu14.y >> (1u & uint(0x1F)); u_xlatu9 = uint(int(bitfieldInsert(0, int(u_xlatu14.y), 1 & int(0x1F), 1))); u_xlati4.x = int((u_xlatu9<1u) ? 0xFFFFFFFFu : uint(0)); u_xlati4.y = int((u_xlati4.x==0) ? 0xFFFFFFFFu : uint(0)); u_xlati15.xy = ivec2(uvec2(u_xlati4.xy) & addedTiles[int(u_xlatu3)].xz); u_xlati15.x = int(uint(u_xlati15.y) | uint(u_xlati15.x)); u_xlatb15 = u_xlati12==u_xlati15.x; if(u_xlatb15){ u_xlati9 = int(u_xlatu9) + 1; u_xlatu9 = uint(u_xlati9) + 4294967295u; u_xlati4.x = int((u_xlatu9<1u) ? 0xFFFFFFFFu : uint(0)); u_xlati4.y = int((u_xlati4.x==0) ? 0xFFFFFFFFu : uint(0)); u_xlati3.xy = ivec2(uvec2(u_xlati4.xy) & addedTiles[int(u_xlatu3)].yw); u_xlatu14.x = uint(u_xlati3.y) | uint(u_xlati3.x); u_xlati18 = int(0xFFFFFFFFu); break; } u_xlatu2.x = u_xlatu14.y + 1u; u_xlatu14.xy = u_xlatu2.yx; u_xlatb18 = u_xlatb15; } if(u_xlati18 == 0) { u_xlatu14.x = 4294967295u; } u_xlatb12 = int(u_xlatu14.x)!=int(0xFFFFFFFFu); if(u_xlatb12){ u_xlati12 = int(u_xlatu14.x & 4294967280u); u_xlat13 = uintBitsToFloat(uint(u_xlati12) | invLevel); u_xlati19 = int(0xFFFFFFFFu); } else { u_xlatb12 = floatBitsToInt(u_xlat1)!=floatBitsToInt(u_xlat13); if(u_xlatb12){ u_xlat13 = u_xlat1; u_xlati19 = int(0xFFFFFFFFu); } } } if(u_xlati19 != 0) { _output_buf_buf[(u_xlati7 >> 2)] = floatBitsToUint(u_xlat13); imageStore(translationTable, ivec2(u_xlatu0.xy), vec4(u_xlat13)); } return; }  AMaincbTranslationTableData _output_buftranslationTable #version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform cbTranslationTableData { uint level; uint invLevel; uint width; uint height; uint bufferOffsetLevel; uint bufferOffsetLevelAbove; uint numEvictedTiles; uint numAddedTiles; uvec4 addedTiles[32]; uvec4 evictedTiles[16]; }; layout(std430, binding = 0) buffer _output_buf { uint _output_buf_buf[]; }; writeonly layout(binding=1) uniform image2D translationTable; uvec4 u_xlatu0; int u_xlati1; bvec2 u_xlatb1; bool u_xlatb2; float u_xlat4; int u_xlati7; int u_xlati10; bool u_xlatb10; layout(local_size_x = 32, local_size_y = 32, local_size_z = 1) in; void main() { u_xlatu0 = gl_WorkGroupID.xyyy * uvec4(32u, 32u, 32u, 32u) + gl_LocalInvocationID.xyyy; u_xlatb1.xy = greaterThanEqual(u_xlatu0.xwxx, uvec4(width, height, width, width)).xy; u_xlatb1.x = u_xlatb1.y || u_xlatb1.x; if(u_xlatb1.x){ return; } u_xlati1 = int(u_xlatu0.w) * int(width) + int(u_xlatu0.x); u_xlati1 = u_xlati1 + int(bufferOffsetLevel); u_xlati1 = u_xlati1 << (2 & int(0x1F)); u_xlat4 = uintBitsToFloat(_output_buf_buf[(u_xlati1 >> 2) + 0]); u_xlati7 = int(floatBitsToUint(u_xlat4) & 2147483648u); if(u_xlati7 != 0) { u_xlat4 = uintBitsToFloat(floatBitsToUint(u_xlat4) & 2147483647u); } u_xlati10 = int(floatBitsToUint(u_xlat4) & 15u); u_xlatb10 = u_xlati10!=int(invLevel); u_xlatb2 = floatBitsToInt(u_xlat4)!=int(0x7FFFFFFFu); u_xlatb10 = u_xlatb10 && u_xlatb2; if(u_xlatb10){ u_xlat4 = float(intBitsToFloat(int(0x7FFFFFFFu))); u_xlati10 = int(int(0xFFFFFFFFu)); } else { u_xlati10 = int((u_xlati7!=0) ? 0xFFFFFFFFu : uint(0)); } if(u_xlati10 != 0) { _output_buf_buf[(u_xlati1 >> 2)] = floatBitsToUint(u_xlat4); imageStore(translationTable, ivec2(u_xlatu0.xy), vec4(u_xlat4)); } return; }  AMaincbTranslationTableData lookupTexture lookupTexture _output_buftranslationTable#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform cbTranslationTableData { uint level; uint invLevel; uint width; uint height; uint bufferOffsetLevel; uint bufferOffsetLevelAbove; uint numEvictedTiles; uint numAddedTiles; uvec4 addedTiles[32]; uvec4 evictedTiles[16]; }; UNITY_LOCATION(0) uniform usampler2D lookupTexture; layout(std430, binding = 0) buffer _output_buf { uint _output_buf_buf[]; }; writeonly layout(binding=1) uniform image2D translationTable; uvec4 u_xlatu0; int u_xlati1; bvec2 u_xlatb1; uvec2 u_xlatu2; ivec4 u_xlati3; uint u_xlatu3; ivec3 u_xlati4; ivec4 u_xlati5; float u_xlat7; ivec2 u_xlati9; bool u_xlatb9; int u_xlati12; bool u_xlatb12; int u_xlati13; uvec2 u_xlatu14; int u_xlati18; bool u_xlatb18; int u_xlati19; uint u_xlatu19; bool u_xlatb19; layout(local_size_x = 32, local_size_y = 32, local_size_z = 1) in; void main() { u_xlatu0.xy = gl_WorkGroupID.xy * uvec2(32u, 32u) + gl_LocalInvocationID.xy; u_xlatb1.xy = greaterThanEqual(u_xlatu0.xyxx, uvec4(width, height, width, width)).xy; u_xlatb1.x = u_xlatb1.y || u_xlatb1.x; if(u_xlatb1.x){ return; } u_xlati1 = int(u_xlatu0.y) * int(width) + int(u_xlatu0.x); u_xlati1 = u_xlati1 + int(bufferOffsetLevel); u_xlati1 = u_xlati1 << (2 & int(0x1F)); u_xlat7 = uintBitsToFloat(_output_buf_buf[(u_xlati1 >> 2) + 0]); u_xlatu0.zw = uvec2(level); u_xlati12 = int(texelFetch(lookupTexture, ivec2(u_xlatu0.xy), int(u_xlatu0.w)).x); u_xlati18 = int(floatBitsToUint(u_xlat7) & 2147483648u); u_xlati13 = int((u_xlati18!=0) ? 0xFFFFFFFFu : uint(0)); if(u_xlati18 != 0) { u_xlat7 = uintBitsToFloat(floatBitsToUint(u_xlat7) & 2147483647u); } u_xlati18 = int(floatBitsToUint(u_xlat7) & 15u); u_xlatb18 = u_xlati18==int(invLevel); if(u_xlatb18){ u_xlatu2.y = 0u; u_xlatu14.x = uint(0u); u_xlatu14.y = uint(0u); u_xlati18 = 0; while(true){ u_xlatb19 = u_xlatu14.y>=numEvictedTiles; u_xlati18 = 0; if(u_xlatb19){break;} u_xlatu19 = u_xlatu14.y >> (2u & uint(0x1F)); u_xlatu3 = u_xlatu14.y & 3u; u_xlati9.x = 0 - int(u_xlatu3); u_xlati4.xyz = ivec3(uvec3(lessThan(uvec4(u_xlatu3), uvec4(1u, 2u, 3u, 0u)).xyz) * 0xFFFFFFFFu); u_xlati5.y = int(uint(u_xlati9.x) & uint(u_xlati4.y)); u_xlati3.x = int(u_xlatu3) + int(0xFFFFFFFDu); u_xlati5.z = (u_xlati4.y != 0) ? 0 : u_xlati3.x; u_xlati5.w = int((u_xlati4.z==0) ? 0xFFFFFFFFu : uint(0)); u_xlati5.x = u_xlati4.x; u_xlati3 = ivec4(uvec4(u_xlati5) & evictedTiles[int(u_xlatu19)]); u_xlati3.xy = ivec2(uvec2(u_xlati3.yw) | uvec2(u_xlati3.xz)); u_xlati19 = int(uint(u_xlati3.y) | uint(u_xlati3.x)); u_xlatb19 = u_xlati12==u_xlati19; if(u_xlatb19){ u_xlatu14.x = 4294967295u; u_xlati18 = int(0xFFFFFFFFu); break; } u_xlatu2.x = u_xlatu14.y + 1u; u_xlatu14.xy = u_xlatu2.yx; u_xlatb18 = u_xlatb19; } if(u_xlati18 == 0) { u_xlatu14.x = 0u; } if(u_xlatu14.x != uint(0)) { u_xlat7 = float(intBitsToFloat(int(0x7FFFFFFFu))); u_xlati13 = int(int(0xFFFFFFFFu)); } } else { u_xlatu2.y = 0u; u_xlatu14.x = uint(0u); u_xlatu14.y = uint(0u); u_xlati18 = 0; while(true){ u_xlatb19 = u_xlatu14.y>=numAddedTiles; u_xlati18 = 0; if(u_xlatb19){break;} u_xlatu19 = u_xlatu14.y >> (1u & uint(0x1F)); u_xlatu3 = uint(int(bitfieldInsert(0, int(u_xlatu14.y), 1 & int(0x1F), 1))); u_xlati4.x = int((u_xlatu3<1u) ? 0xFFFFFFFFu : uint(0)); u_xlati4.y = int((u_xlati4.x==0) ? 0xFFFFFFFFu : uint(0)); u_xlati9.xy = ivec2(uvec2(u_xlati4.xy) & addedTiles[int(u_xlatu19)].xz); u_xlati9.x = int(uint(u_xlati9.y) | uint(u_xlati9.x)); u_xlatb9 = u_xlati12==u_xlati9.x; if(u_xlatb9){ u_xlati3.x = int(u_xlatu3) + 1; u_xlatu3 = uint(u_xlati3.x) + 4294967295u; u_xlati4.x = int((u_xlatu3<1u) ? 0xFFFFFFFFu : uint(0)); u_xlati4.y = int((u_xlati4.x==0) ? 0xFFFFFFFFu : uint(0)); u_xlati3.xz = ivec2(uvec2(u_xlati4.xy) & addedTiles[int(u_xlatu19)].yw); u_xlatu14.x = uint(u_xlati3.z) | uint(u_xlati3.x); u_xlati18 = int(0xFFFFFFFFu); break; } u_xlatu2.x = u_xlatu14.y + 1u; u_xlatu14.xy = u_xlatu2.yx; u_xlatb18 = u_xlatb9; } if(u_xlati18 == 0) { u_xlatu14.x = 4294967295u; } u_xlatb12 = int(u_xlatu14.x)!=int(0xFFFFFFFFu); if(u_xlatb12){ u_xlati12 = int(u_xlatu14.x & 4294967280u); u_xlat7 = uintBitsToFloat(uint(u_xlati12) | invLevel); u_xlati13 = int(0xFFFFFFFFu); } else { u_xlatb12 = floatBitsToInt(u_xlat7)!=int(0x7FFFFFFFu); if(u_xlatb12){ u_xlati13 = int(0xFFFFFFFFu); } u_xlat7 = intBitsToFloat(int(0x7FFFFFFFu)); } } if(u_xlati13 != 0) { _output_buf_buf[(u_xlati1 >> 2)] = floatBitsToUint(u_xlat7); imageStore(translationTable, ivec2(u_xlatu0.xy), vec4(u_xlat7)); } return; }  AMaincbTranslationTableData _output_buftranslationTable"#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform cbTranslationTableData { uint level; uint invLevel; uint width; uint height; uint bufferOffsetLevel; uint bufferOffsetLevelAbove; uint numEvictedTiles; uint numAddedTiles; uvec4 addedTiles[32]; uvec4 evictedTiles[16]; }; layout(std430, binding = 0) buffer _output_buf { uint _output_buf_buf[]; }; writeonly layout(binding=1) uniform image2D translationTable; float u_xlat0; int u_xlati0; uvec4 u_xlatu1; vec2 u_xlat2; bool u_xlatb3; int u_xlati4; uvec2 u_xlatu4; bvec3 u_xlatb4; float u_xlat8; int u_xlati8; int u_xlati10; bool u_xlatb10; int u_xlati12; uint u_xlatu12; int u_xlati14; bool u_xlatb14; layout(local_size_x = 32, local_size_y = 32, local_size_z = 1) in; void main() { u_xlati0 = int(height) * int(width); u_xlati0 = u_xlati0 >> (2 & int(0x1F)); u_xlatu1 = gl_WorkGroupID.xyyy * uvec4(32u, 32u, 32u, 32u) + gl_LocalInvocationID.xyyy; u_xlatu4.xy = u_xlatu1.xw >> (uvec2(1u, 1u) & uint(0x1F)); u_xlatu12 = width >> (1u & uint(0x1F)); u_xlati4 = int(u_xlatu4.y) * int(u_xlatu12) + int(u_xlatu4.x); u_xlati4 = u_xlati4 + int(bufferOffsetLevelAbove); u_xlati8 = u_xlati4 << (2 & int(0x1F)); u_xlat8 = uintBitsToFloat(_output_buf_buf[(u_xlati8 >> 2) + 0]); u_xlati0 = u_xlati4 + u_xlati0; u_xlati0 = u_xlati0 << (2 & int(0x1F)); u_xlat0 = uintBitsToFloat(_output_buf_buf[(u_xlati0 >> 2) + 0]); u_xlatb4.xz = greaterThanEqual(u_xlatu1.xxww, uvec4(width, width, height, height)).xz; u_xlatb4.x = u_xlatb4.z || u_xlatb4.x; if(u_xlatb4.x){ return; } u_xlati4 = int(u_xlatu1.w) * int(width) + int(u_xlatu1.x); u_xlati4 = u_xlati4 + int(bufferOffsetLevel); u_xlati12 = u_xlati4 << (2 & int(0x1F)); u_xlat2.x = uintBitsToFloat(_output_buf_buf[(u_xlati12 >> 2) + 0]); u_xlati4 = int(width) * int(height) + u_xlati4; u_xlati4 = u_xlati4 << (2 & int(0x1F)); u_xlat2.y = uintBitsToFloat(_output_buf_buf[(u_xlati4 >> 2) + 0]); u_xlati10 = int(floatBitsToUint(u_xlat2.x) & 2147483648u); if(u_xlati10 != 0) { u_xlat2.x = uintBitsToFloat(floatBitsToUint(u_xlat2.x) & 2147483647u); } u_xlati14 = int(floatBitsToUint(u_xlat2.x) & 15u); u_xlatb14 = u_xlati14!=int(invLevel); u_xlatb3 = floatBitsToInt(u_xlat8)!=floatBitsToInt(u_xlat2.x); u_xlatb14 = u_xlatb14 && u_xlatb3; if(u_xlatb14){ u_xlat2.x = u_xlat8; u_xlati8 = int(0xFFFFFFFFu); } else { u_xlati8 = int((u_xlati10!=0) ? 0xFFFFFFFFu : uint(0)); } u_xlati10 = int(floatBitsToUint(u_xlat2.y) & 2147483648u); if(u_xlati10 != 0) { u_xlat2.y = uintBitsToFloat(floatBitsToUint(u_xlat2.y) & 2147483647u); u_xlati8 = int(0xFFFFFFFFu); } u_xlati10 = int(floatBitsToUint(u_xlat2.y) & 15u); u_xlatb10 = u_xlati10!=int(invLevel); u_xlatb14 = floatBitsToInt(u_xlat0)!=floatBitsToInt(u_xlat2.y); u_xlatb10 = u_xlatb14 && u_xlatb10; if(u_xlatb10){ u_xlat2.y = u_xlat0; u_xlati8 = int(0xFFFFFFFFu); } if(u_xlati8 != 0) { _output_buf_buf[(u_xlati12 >> 2)] = floatBitsToUint(u_xlat2.x); _output_buf_buf[(u_xlati4 >> 2)] = floatBitsToUint(u_xlat2.y); imageStore(translationTable, ivec2(u_xlatu1.xy), u_xlat2.xyxx); } return; }  AMaincbTranslationTableData lookupTexture lookupTexture _output_buftranslationTable*#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform cbTranslationTableData { uint level; uint invLevel; uint width; uint height; uint bufferOffsetLevel; uint bufferOffsetLevelAbove; uint numEvictedTiles; uint numAddedTiles; uvec4 addedTiles[32]; uvec4 evictedTiles[16]; }; UNITY_LOCATION(0) uniform usampler2D lookupTexture; layout(std430, binding = 0) buffer _output_buf { uint _output_buf_buf[]; }; writeonly layout(binding=1) uniform image2D translationTable; float u_xlat0; int u_xlati0; uvec4 u_xlatu1; vec2 u_xlat2; uvec2 u_xlatu3; ivec4 u_xlati4; uint u_xlatu4; bool u_xlatb4; ivec4 u_xlati5; ivec4 u_xlati6; int u_xlati7; uvec2 u_xlatu7; bvec3 u_xlatb7; ivec3 u_xlati11; uint u_xlatu11; float u_xlat14; int u_xlati14; bool u_xlatb14; ivec2 u_xlati15; uint u_xlatu15; bool u_xlatb15; int u_xlati16; uint u_xlatu16; bool u_xlatb16; uvec2 u_xlatu17; ivec2 u_xlati18; bool u_xlatb18; int u_xlati21; uint u_xlatu21; int u_xlati23; layout(local_size_x = 32, local_size_y = 32, local_size_z = 1) in; void main() { u_xlati0 = int(height) * int(width); u_xlati0 = u_xlati0 >> (2 & int(0x1F)); u_xlatu1.xy = gl_WorkGroupID.xy * uvec2(32u, 32u) + gl_LocalInvocationID.xy; u_xlatu7.xy = u_xlatu1.xy >> (uvec2(1u, 1u) & uint(0x1F)); u_xlatu21 = width >> (1u & uint(0x1F)); u_xlati7 = int(u_xlatu7.y) * int(u_xlatu21) + int(u_xlatu7.x); u_xlati7 = u_xlati7 + int(bufferOffsetLevelAbove); u_xlati14 = u_xlati7 << (2 & int(0x1F)); u_xlat14 = uintBitsToFloat(_output_buf_buf[(u_xlati14 >> 2) + 0]); u_xlati0 = u_xlati7 + u_xlati0; u_xlati0 = u_xlati0 << (2 & int(0x1F)); u_xlat0 = uintBitsToFloat(_output_buf_buf[(u_xlati0 >> 2) + 0]); u_xlatb7.xz = greaterThanEqual(u_xlatu1.xxyy, uvec4(width, width, height, height)).xz; u_xlatb7.x = u_xlatb7.z || u_xlatb7.x; if(u_xlatb7.x){ return; } u_xlati7 = int(u_xlatu1.y) * int(width) + int(u_xlatu1.x); u_xlati7 = u_xlati7 + int(bufferOffsetLevel); u_xlati21 = u_xlati7 << (2 & int(0x1F)); u_xlat2.x = uintBitsToFloat(_output_buf_buf[(u_xlati21 >> 2) + 0]); u_xlati7 = int(width) * int(height) + u_xlati7; u_xlati7 = u_xlati7 << (2 & int(0x1F)); u_xlat2.y = uintBitsToFloat(_output_buf_buf[(u_xlati7 >> 2) + 0]); u_xlatu1.zw = uvec2(level); u_xlati15.xy = ivec2(texelFetch(lookupTexture, ivec2(u_xlatu1.xy), int(u_xlatu1.w)).xy); u_xlati16 = int(floatBitsToUint(u_xlat2.x) & 2147483648u); u_xlati23 = int((u_xlati16!=0) ? 0xFFFFFFFFu : uint(0)); if(u_xlati16 != 0) { u_xlat2.x = uintBitsToFloat(floatBitsToUint(u_xlat2.x) & 2147483647u); } u_xlati16 = int(floatBitsToUint(u_xlat2.x) & 15u); u_xlatb16 = u_xlati16==int(invLevel); if(u_xlatb16){ u_xlatu3.y = 0u; u_xlatu17.x = uint(0u); u_xlatu17.y = uint(0u); u_xlati16 = 0; while(true){ u_xlatb4 = u_xlatu17.y>=numEvictedTiles; u_xlati16 = 0; if(u_xlatb4){break;} u_xlatu4 = u_xlatu17.y >> (2u & uint(0x1F)); u_xlatu11 = u_xlatu17.y & 3u; u_xlati18.x = 0 - int(u_xlatu11); u_xlati5.xyz = ivec3(uvec3(lessThan(uvec4(u_xlatu11), uvec4(1u, 2u, 3u, 0u)).xyz) * 0xFFFFFFFFu); u_xlati6.y = int(uint(u_xlati18.x) & uint(u_xlati5.y)); u_xlati11.x = int(u_xlatu11) + int(0xFFFFFFFDu); u_xlati6.z = (u_xlati5.y != 0) ? 0 : u_xlati11.x; u_xlati6.w = int((u_xlati5.z==0) ? 0xFFFFFFFFu : uint(0)); u_xlati6.x = u_xlati5.x; u_xlati4 = ivec4(uvec4(u_xlati6) & evictedTiles[int(u_xlatu4)]); u_xlati4.xy = ivec2(uvec2(u_xlati4.yw) | uvec2(u_xlati4.xz)); u_xlati4.x = int(uint(u_xlati4.y) | uint(u_xlati4.x)); u_xlatb4 = u_xlati15.x==u_xlati4.x; if(u_xlatb4){ u_xlatu17.x = 4294967295u; u_xlati16 = int(0xFFFFFFFFu); break; } u_xlatu3.x = u_xlatu17.y + 1u; u_xlatu17.xy = u_xlatu3.yx; u_xlatb16 = u_xlatb4; } if(u_xlati16 == 0) { u_xlatu17.x = 0u; } if(u_xlatu17.x != uint(0)) { u_xlat2.x = u_xlat14; u_xlati23 = int(0xFFFFFFFFu); } } else { u_xlatu3.y = 0u; u_xlatu17.x = uint(0u); u_xlatu17.y = uint(0u); u_xlati16 = 0; while(true){ u_xlatb4 = u_xlatu17.y>=numAddedTiles; u_xlati16 = 0; if(u_xlatb4){break;} u_xlatu4 = u_xlatu17.y >> (1u & uint(0x1F)); u_xlatu11 = uint(int(bitfieldInsert(0, int(u_xlatu17.y), 1 & int(0x1F), 1))); u_xlati5.x = int((u_xlatu11<1u) ? 0xFFFFFFFFu : uint(0)); u_xlati5.y = int((u_xlati5.x==0) ? 0xFFFFFFFFu : uint(0)); u_xlati18.xy = ivec2(uvec2(u_xlati5.xy) & addedTiles[int(u_xlatu4)].xz); u_xlati18.x = int(uint(u_xlati18.y) | uint(u_xlati18.x)); u_xlatb18 = u_xlati15.x==u_xlati18.x; if(u_xlatb18){ u_xlati11.x = int(u_xlatu11) + 1; u_xlatu11 = uint(u_xlati11.x) + 4294967295u; u_xlati5.x = int((u_xlatu11<1u) ? 0xFFFFFFFFu : uint(0)); u_xlati5.y = int((u_xlati5.x==0) ? 0xFFFFFFFFu : uint(0)); u_xlati4.xy = ivec2(uvec2(u_xlati5.xy) & addedTiles[int(u_xlatu4)].yw); u_xlatu17.x = uint(u_xlati4.y) | uint(u_xlati4.x); u_xlati16 = int(0xFFFFFFFFu); break; } u_xlatu3.x = u_xlatu17.y + 1u; u_xlatu17.xy = u_xlatu3.yx; u_xlatb16 = u_xlatb18; } if(u_xlati16 == 0) { u_xlatu17.x = 4294967295u; } u_xlatb15 = int(u_xlatu17.x)!=int(0xFFFFFFFFu); if(u_xlatb15){ u_xlati15.x = int(u_xlatu17.x & 4294967280u); u_xlat2.x = uintBitsToFloat(uint(u_xlati15.x) | invLevel); u_xlati23 = int(0xFFFFFFFFu); } else { u_xlatb15 = floatBitsToInt(u_xlat14)!=floatBitsToInt(u_xlat2.x); if(u_xlatb15){ u_xlat2.x = u_xlat14; u_xlati23 = int(0xFFFFFFFFu); } } } u_xlati14 = int(floatBitsToUint(u_xlat2.y) & 2147483648u); if(u_xlati14 != 0) { u_xlat2.y = uintBitsToFloat(floatBitsToUint(u_xlat2.y) & 2147483647u); u_xlati23 = int(0xFFFFFFFFu); } u_xlati14 = int(floatBitsToUint(u_xlat2.y) & 15u); u_xlatb14 = u_xlati14==int(invLevel); if(u_xlatb14){ u_xlatu3.y = 0u; u_xlatu17.x = uint(0u); u_xlatu17.y = uint(0u); u_xlati14 = 0; while(true){ u_xlatb15 = u_xlatu17.y>=numEvictedTiles; u_xlati14 = 0; if(u_xlatb15){break;} u_xlatu15 = u_xlatu17.y >> (2u & uint(0x1F)); u_xlatu16 = u_xlatu17.y & 3u; u_xlati4.x = 0 - int(u_xlatu16); u_xlati11.xyz = ivec3(uvec3(lessThan(uvec4(u_xlatu16), uvec4(1u, 2u, 3u, 3u)).xyz) * 0xFFFFFFFFu); u_xlati5.y = int(uint(u_xlati4.x) & uint(u_xlati11.y)); u_xlati16 = int(u_xlatu16) + int(0xFFFFFFFDu); u_xlati5.z = (u_xlati11.y != 0) ? 0 : u_xlati16; u_xlati5.w = int((u_xlati11.z==0) ? 0xFFFFFFFFu : uint(0)); u_xlati5.x = u_xlati11.x; u_xlati4 = ivec4(uvec4(u_xlati5) & evictedTiles[int(u_xlatu15)]); u_xlati4.xy = ivec2(uvec2(u_xlati4.yw) | uvec2(u_xlati4.xz)); u_xlati15.x = int(uint(u_xlati4.y) | uint(u_xlati4.x)); u_xlatb15 = u_xlati15.y==u_xlati15.x; if(u_xlatb15){ u_xlatu17.x = 4294967295u; u_xlati14 = int(0xFFFFFFFFu); break; } u_xlatu3.x = u_xlatu17.y + 1u; u_xlatu17.xy = u_xlatu3.yx; u_xlatb14 = u_xlatb15; } if(u_xlati14 == 0) { u_xlatu17.x = 0u; } if(u_xlatu17.x != uint(0)) { u_xlat2.y = u_xlat0; u_xlati23 = int(0xFFFFFFFFu); } } else { u_xlatu3.y = 0u; u_xlatu17.x = uint(0u); u_xlatu17.y = uint(0u); u_xlati14 = 0; while(true){ u_xlatb15 = u_xlatu17.y>=numAddedTiles; u_xlati14 = 0; if(u_xlatb15){break;} u_xlatu15 = u_xlatu17.y >> (1u & uint(0x1F)); u_xlatu16 = uint(int(bitfieldInsert(0, int(u_xlatu17.y), 1 & int(0x1F), 1))); u_xlati4.x = int((u_xlatu16<1u) ? 0xFFFFFFFFu : uint(0)); u_xlati4.y = int((u_xlati4.x==0) ? 0xFFFFFFFFu : uint(0)); u_xlati4.xy = ivec2(uvec2(u_xlati4.xy) & addedTiles[int(u_xlatu15)].xz); u_xlati4.x = int(uint(u_xlati4.y) | uint(u_xlati4.x)); u_xlatb4 = u_xlati15.y==u_xlati4.x; if(u_xlatb4){ u_xlati16 = int(u_xlatu16) + 1; u_xlatu16 = uint(u_xlati16) + 4294967295u; u_xlati5.x = int((u_xlatu16<1u) ? 0xFFFFFFFFu : uint(0)); u_xlati5.y = int((u_xlati5.x==0) ? 0xFFFFFFFFu : uint(0)); u_xlati11.xy = ivec2(uvec2(u_xlati5.xy) & addedTiles[int(u_xlatu15)].yw); u_xlatu17.x = uint(u_xlati11.y) | uint(u_xlati11.x); u_xlati14 = int(0xFFFFFFFFu); break; } u_xlatu3.x = u_xlatu17.y + 1u; u_xlatu17.xy = u_xlatu3.yx; u_xlatb14 = u_xlatb4; } if(u_xlati14 == 0) { u_xlatu17.x = 4294967295u; } u_xlatb14 = int(u_xlatu17.x)!=int(0xFFFFFFFFu); if(u_xlatb14){ u_xlati14 = int(u_xlatu17.x & 4294967280u); u_xlat2.y = uintBitsToFloat(uint(u_xlati14) | invLevel); u_xlati23 = int(0xFFFFFFFFu); } else { u_xlatb14 = floatBitsToInt(u_xlat0)!=floatBitsToInt(u_xlat2.y); if(u_xlatb14){ u_xlat2.y = u_xlat0; u_xlati23 = int(0xFFFFFFFFu); } } } if(u_xlati23 != 0) { _output_buf_buf[(u_xlati21 >> 2)] = floatBitsToUint(u_xlat2.x); _output_buf_buf[(u_xlati7 >> 2)] = floatBitsToUint(u_xlat2.y); imageStore(translationTable, ivec2(u_xlatu1.xy), u_xlat2.xyxx); } return; }  AMaincbTranslationTableData _output_buftranslationTable #version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform cbTranslationTableData { uint level; uint invLevel; uint width; uint height; uint bufferOffsetLevel; uint bufferOffsetLevelAbove; uint numEvictedTiles; uint numAddedTiles; uvec4 addedTiles[32]; uvec4 evictedTiles[16]; }; layout(std430, binding = 0) buffer _output_buf { uint _output_buf_buf[]; }; writeonly layout(binding=1) uniform image2D translationTable; uvec4 u_xlatu0; int u_xlati1; bvec2 u_xlatb1; vec2 u_xlat2; int u_xlati4; int u_xlati7; bool u_xlatb7; bool u_xlatb8; int u_xlati10; bool u_xlatb10; layout(local_size_x = 32, local_size_y = 32, local_size_z = 1) in; void main() { u_xlatu0 = gl_WorkGroupID.xyyy * uvec4(32u, 32u, 32u, 32u) + gl_LocalInvocationID.xyyy; u_xlatb1.xy = greaterThanEqual(u_xlatu0.xwxx, uvec4(width, height, width, width)).xy; u_xlatb1.x = u_xlatb1.y || u_xlatb1.x; if(u_xlatb1.x){ return; } u_xlati1 = int(u_xlatu0.w) * int(width) + int(u_xlatu0.x); u_xlati1 = u_xlati1 + int(bufferOffsetLevel); u_xlati4 = u_xlati1 << (2 & int(0x1F)); u_xlat2.x = uintBitsToFloat(_output_buf_buf[(u_xlati4 >> 2) + 0]); u_xlati1 = int(width) * int(height) + u_xlati1; u_xlati1 = u_xlati1 << (2 & int(0x1F)); u_xlat2.y = uintBitsToFloat(_output_buf_buf[(u_xlati1 >> 2) + 0]); u_xlati7 = int(floatBitsToUint(u_xlat2.x) & 2147483648u); if(u_xlati7 != 0) { u_xlat2.x = uintBitsToFloat(floatBitsToUint(u_xlat2.x) & 2147483647u); } u_xlati10 = int(floatBitsToUint(u_xlat2.x) & 15u); u_xlatb10 = u_xlati10!=int(invLevel); u_xlatb8 = floatBitsToInt(u_xlat2.x)!=int(0x7FFFFFFFu); u_xlatb10 = u_xlatb10 && u_xlatb8; if(u_xlatb10){ u_xlat2.x = intBitsToFloat(int(0x7FFFFFFFu)); u_xlati10 = int(0xFFFFFFFFu); } else { u_xlati10 = int((u_xlati7!=0) ? 0xFFFFFFFFu : uint(0)); } u_xlati7 = int(floatBitsToUint(u_xlat2.y) & 2147483648u); if(u_xlati7 != 0) { u_xlat2.y = uintBitsToFloat(floatBitsToUint(u_xlat2.y) & 2147483647u); u_xlati10 = int(0xFFFFFFFFu); } u_xlati7 = int(floatBitsToUint(u_xlat2.y) & 15u); u_xlatb7 = u_xlati7!=int(invLevel); u_xlatb8 = floatBitsToInt(u_xlat2.y)!=int(0x7FFFFFFFu); u_xlatb7 = u_xlatb7 && u_xlatb8; if(u_xlatb7){ u_xlat2.y = intBitsToFloat(int(0x7FFFFFFFu)); u_xlati10 = int(0xFFFFFFFFu); } if(u_xlati10 != 0) { _output_buf_buf[(u_xlati4 >> 2)] = floatBitsToUint(u_xlat2.x); _output_buf_buf[(u_xlati1 >> 2)] = floatBitsToUint(u_xlat2.y); imageStore(translationTable, ivec2(u_xlatu0.xy), u_xlat2.xyxx); } return; }  AMaincbTranslationTableData lookupTexture lookupTexture _output_buftranslationTableR(#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform cbTranslationTableData { uint level; uint invLevel; uint width; uint height; uint bufferOffsetLevel; uint bufferOffsetLevelAbove; uint numEvictedTiles; uint numAddedTiles; uvec4 addedTiles[32]; uvec4 evictedTiles[16]; }; UNITY_LOCATION(0) uniform usampler2D lookupTexture; layout(std430, binding = 0) buffer _output_buf { uint _output_buf_buf[]; }; writeonly layout(binding=1) uniform image2D translationTable; uvec4 u_xlatu0; int u_xlati1; bvec2 u_xlatb1; vec2 u_xlat2; uvec2 u_xlatu3; ivec4 u_xlati4; bool u_xlatb4; ivec4 u_xlati5; int u_xlati7; ivec3 u_xlati10; ivec2 u_xlati12; bool u_xlatb12; int u_xlati13; uint u_xlatu13; bool u_xlatb13; uvec2 u_xlatu14; ivec2 u_xlati15; uint u_xlatu15; bool u_xlatb15; int u_xlati19; int u_xlati21; uint u_xlatu21; bool u_xlatb21; layout(local_size_x = 32, local_size_y = 32, local_size_z = 1) in; void main() { u_xlatu0.xy = gl_WorkGroupID.xy * uvec2(32u, 32u) + gl_LocalInvocationID.xy; u_xlatb1.xy = greaterThanEqual(u_xlatu0.xyxx, uvec4(width, height, width, width)).xy; u_xlatb1.x = u_xlatb1.y || u_xlatb1.x; if(u_xlatb1.x){ return; } u_xlati1 = int(u_xlatu0.y) * int(width) + int(u_xlatu0.x); u_xlati1 = u_xlati1 + int(bufferOffsetLevel); u_xlati7 = u_xlati1 << (2 & int(0x1F)); u_xlat2.x = uintBitsToFloat(_output_buf_buf[(u_xlati7 >> 2) + 0]); u_xlati1 = int(width) * int(height) + u_xlati1; u_xlati1 = u_xlati1 << (2 & int(0x1F)); u_xlat2.y = uintBitsToFloat(_output_buf_buf[(u_xlati1 >> 2) + 0]); u_xlatu0.zw = uvec2(level); u_xlati12.xy = ivec2(texelFetch(lookupTexture, ivec2(u_xlatu0.xy), int(u_xlatu0.w)).xy); u_xlati13 = int(floatBitsToUint(u_xlat2.x) & 2147483648u); u_xlati19 = int((u_xlati13!=0) ? 0xFFFFFFFFu : uint(0)); if(u_xlati13 != 0) { u_xlat2.x = uintBitsToFloat(floatBitsToUint(u_xlat2.x) & 2147483647u); } u_xlati13 = int(floatBitsToUint(u_xlat2.x) & 15u); u_xlatb13 = u_xlati13==int(invLevel); if(u_xlatb13){ u_xlatu3.y = 0u; u_xlatu14.x = uint(0u); u_xlatu14.y = uint(0u); u_xlati13 = 0; while(true){ u_xlatb15 = u_xlatu14.y>=numEvictedTiles; u_xlati13 = 0; if(u_xlatb15){break;} u_xlatu15 = u_xlatu14.y >> (2u & uint(0x1F)); u_xlatu21 = u_xlatu14.y & 3u; u_xlati4.x = 0 - int(u_xlatu21); u_xlati10.xyz = ivec3(uvec3(lessThan(uvec4(u_xlatu21), uvec4(1u, 2u, 3u, 3u)).xyz) * 0xFFFFFFFFu); u_xlati5.y = int(uint(u_xlati4.x) & uint(u_xlati10.y)); u_xlati21 = int(u_xlatu21) + int(0xFFFFFFFDu); u_xlati5.z = (u_xlati10.y != 0) ? 0 : u_xlati21; u_xlati5.w = int((u_xlati10.z==0) ? 0xFFFFFFFFu : uint(0)); u_xlati5.x = u_xlati10.x; u_xlati4 = ivec4(uvec4(u_xlati5) & evictedTiles[int(u_xlatu15)]); u_xlati15.xy = ivec2(uvec2(u_xlati4.yw) | uvec2(u_xlati4.xz)); u_xlati15.x = int(uint(u_xlati15.y) | uint(u_xlati15.x)); u_xlatb15 = u_xlati12.x==u_xlati15.x; if(u_xlatb15){ u_xlatu14.x = 4294967295u; u_xlati13 = int(0xFFFFFFFFu); break; } u_xlatu3.x = u_xlatu14.y + 1u; u_xlatu14.xy = u_xlatu3.yx; u_xlatb13 = u_xlatb15; } if(u_xlati13 == 0) { u_xlatu14.x = 0u; } if(u_xlatu14.x != uint(0)) { u_xlat2.x = intBitsToFloat(int(0x7FFFFFFFu)); u_xlati19 = int(0xFFFFFFFFu); } } else { u_xlatu3.y = 0u; u_xlatu14.x = uint(0u); u_xlatu14.y = uint(0u); u_xlati13 = 0; while(true){ u_xlatb15 = u_xlatu14.y>=numAddedTiles; u_xlati13 = 0; if(u_xlatb15){break;} u_xlatu15 = u_xlatu14.y >> (1u & uint(0x1F)); u_xlatu21 = uint(int(bitfieldInsert(0, int(u_xlatu14.y), 1 & int(0x1F), 1))); u_xlati4.x = int((u_xlatu21<1u) ? 0xFFFFFFFFu : uint(0)); u_xlati4.y = int((u_xlati4.x==0) ? 0xFFFFFFFFu : uint(0)); u_xlati4.xy = ivec2(uvec2(u_xlati4.xy) & addedTiles[int(u_xlatu15)].xz); u_xlati4.x = int(uint(u_xlati4.y) | uint(u_xlati4.x)); u_xlatb4 = u_xlati12.x==u_xlati4.x; if(u_xlatb4){ u_xlati21 = int(u_xlatu21) + 1; u_xlatu21 = uint(u_xlati21) + 4294967295u; u_xlati5.x = int((u_xlatu21<1u) ? 0xFFFFFFFFu : uint(0)); u_xlati5.y = int((u_xlati5.x==0) ? 0xFFFFFFFFu : uint(0)); u_xlati15.xy = ivec2(uvec2(u_xlati5.xy) & addedTiles[int(u_xlatu15)].yw); u_xlatu14.x = uint(u_xlati15.y) | uint(u_xlati15.x); u_xlati13 = int(0xFFFFFFFFu); break; } u_xlatu3.x = u_xlatu14.y + 1u; u_xlatu14.xy = u_xlatu3.yx; u_xlatb13 = u_xlatb4; } if(u_xlati13 == 0) { u_xlatu14.x = 4294967295u; } u_xlatb12 = int(u_xlatu14.x)!=int(0xFFFFFFFFu); if(u_xlatb12){ u_xlati12.x = int(u_xlatu14.x & 4294967280u); u_xlat2.x = uintBitsToFloat(uint(u_xlati12.x) | invLevel); u_xlati19 = int(0xFFFFFFFFu); } else { u_xlatb12 = floatBitsToInt(u_xlat2.x)!=int(0x7FFFFFFFu); if(u_xlatb12){ u_xlati19 = int(0xFFFFFFFFu); } u_xlat2.x = intBitsToFloat(int(0x7FFFFFFFu)); } } u_xlati12.x = int(floatBitsToUint(u_xlat2.y) & 2147483648u); if(u_xlati12.x != 0) { u_xlat2.y = uintBitsToFloat(floatBitsToUint(u_xlat2.y) & 2147483647u); u_xlati19 = int(0xFFFFFFFFu); } u_xlati12.x = int(floatBitsToUint(u_xlat2.y) & 15u); u_xlatb12 = u_xlati12.x==int(invLevel); if(u_xlatb12){ u_xlatu3.y = 0u; u_xlatu14.x = uint(0u); u_xlatu14.y = uint(0u); u_xlati12.x = 0; while(true){ u_xlatb13 = u_xlatu14.y>=numEvictedTiles; u_xlati12.x = 0; if(u_xlatb13){break;} u_xlatu13 = u_xlatu14.y >> (2u & uint(0x1F)); u_xlatu15 = u_xlatu14.y & 3u; u_xlati21 = 0 - int(u_xlatu15); u_xlati4.xyz = ivec3(uvec3(lessThan(uvec4(u_xlatu15), uvec4(1u, 2u, 3u, 0u)).xyz) * 0xFFFFFFFFu); u_xlati5.y = int(uint(u_xlati21) & uint(u_xlati4.y)); u_xlati15.x = int(u_xlatu15) + int(0xFFFFFFFDu); u_xlati5.z = (u_xlati4.y != 0) ? 0 : u_xlati15.x; u_xlati5.w = int((u_xlati4.z==0) ? 0xFFFFFFFFu : uint(0)); u_xlati5.x = u_xlati4.x; u_xlati4 = ivec4(uvec4(u_xlati5) & evictedTiles[int(u_xlatu13)]); u_xlati15.xy = ivec2(uvec2(u_xlati4.yw) | uvec2(u_xlati4.xz)); u_xlati13 = int(uint(u_xlati15.y) | uint(u_xlati15.x)); u_xlatb13 = u_xlati12.y==u_xlati13; if(u_xlatb13){ u_xlatu14.x = 4294967295u; u_xlati12.x = int(0xFFFFFFFFu); break; } u_xlatu3.x = u_xlatu14.y + 1u; u_xlatu14.xy = u_xlatu3.yx; u_xlatb12 = u_xlatb13; } if(u_xlati12.x == 0) { u_xlatu14.x = 0u; } if(u_xlatu14.x != uint(0)) { u_xlat2.y = intBitsToFloat(int(0x7FFFFFFFu)); u_xlati19 = int(0xFFFFFFFFu); } } else { u_xlatu3.y = 0u; u_xlatu14.x = uint(0u); u_xlatu14.y = uint(0u); u_xlati12.x = 0; while(true){ u_xlatb13 = u_xlatu14.y>=numAddedTiles; u_xlati12.x = 0; if(u_xlatb13){break;} u_xlatu13 = u_xlatu14.y >> (1u & uint(0x1F)); u_xlatu15 = uint(int(bitfieldInsert(0, int(u_xlatu14.y), 1 & int(0x1F), 1))); u_xlati4.x = int((u_xlatu15<1u) ? 0xFFFFFFFFu : uint(0)); u_xlati4.y = int((u_xlati4.x==0) ? 0xFFFFFFFFu : uint(0)); u_xlati4.xy = ivec2(uvec2(u_xlati4.xy) & addedTiles[int(u_xlatu13)].xz); u_xlati21 = int(uint(u_xlati4.y) | uint(u_xlati4.x)); u_xlatb21 = u_xlati12.y==u_xlati21; if(u_xlatb21){ u_xlati15.x = int(u_xlatu15) + 1; u_xlatu15 = uint(u_xlati15.x) + 4294967295u; u_xlati4.x = int((u_xlatu15<1u) ? 0xFFFFFFFFu : uint(0)); u_xlati4.y = int((u_xlati4.x==0) ? 0xFFFFFFFFu : uint(0)); u_xlati4.xy = ivec2(uvec2(u_xlati4.xy) & addedTiles[int(u_xlatu13)].yw); u_xlatu14.x = uint(u_xlati4.y) | uint(u_xlati4.x); u_xlati12.x = int(0xFFFFFFFFu); break; } u_xlatu3.x = u_xlatu14.y + 1u; u_xlatu14.xy = u_xlatu3.yx; u_xlatb12 = u_xlatb21; } if(u_xlati12.x == 0) { u_xlatu14.x = 4294967295u; } u_xlatb12 = int(u_xlatu14.x)!=int(0xFFFFFFFFu); if(u_xlatb12){ u_xlati12.x = int(u_xlatu14.x & 4294967280u); u_xlat2.y = uintBitsToFloat(uint(u_xlati12.x) | invLevel); u_xlati19 = int(0xFFFFFFFFu); } else { u_xlatb12 = floatBitsToInt(u_xlat2.y)!=int(0x7FFFFFFFu); if(u_xlatb12){ u_xlati19 = int(0xFFFFFFFFu); } u_xlat2.y = intBitsToFloat(int(0x7FFFFFFFu)); } } if(u_xlati19 != 0) { _output_buf_buf[(u_xlati7 >> 2)] = floatBitsToUint(u_xlat2.x); _output_buf_buf[(u_xlati1 >> 2)] = floatBitsToUint(u_xlat2.y); imageStore(translationTable, ivec2(u_xlatu0.xy), u_xlat2.xyxx); } return; }  AMaincbTranslationTableData _output_buftranslationTablej#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform cbTranslationTableData { uint level; uint invLevel; uint width; uint height; uint bufferOffsetLevel; uint bufferOffsetLevelAbove; uint numEvictedTiles; uint numAddedTiles; uvec4 addedTiles[32]; uvec4 evictedTiles[16]; }; layout(std430, binding = 0) buffer _output_buf { uint _output_buf_buf[]; }; writeonly layout(binding=1) uniform image2D translationTable; int u_xlati0; uvec4 u_xlatu1; float u_xlat2; int u_xlati2; uint u_xlatu2; bool u_xlatb2; vec4 u_xlat3; bool u_xlatb4; float u_xlat5; int u_xlati5; int u_xlati7; bvec2 u_xlatb7; int u_xlati10; uvec2 u_xlatu10; bool u_xlatb10; int u_xlati12; float u_xlat15; int u_xlati15; int u_xlati17; bool u_xlatb17; layout(local_size_x = 32, local_size_y = 32, local_size_z = 1) in; void main() { u_xlati0 = int(height) * int(width); u_xlati5 = u_xlati0 >> (2 & int(0x1F)); u_xlatu1 = gl_WorkGroupID.xyyy * uvec4(32u, 32u, 32u, 32u) + gl_LocalInvocationID.xyyy; u_xlatu10.xy = u_xlatu1.xw >> (uvec2(1u, 1u) & uint(0x1F)); u_xlatu2 = width >> (1u & uint(0x1F)); u_xlati10 = int(u_xlatu10.y) * int(u_xlatu2) + int(u_xlatu10.x); u_xlati10 = u_xlati10 + int(bufferOffsetLevelAbove); u_xlati15 = u_xlati10 << (2 & int(0x1F)); u_xlat15 = uintBitsToFloat(_output_buf_buf[(u_xlati15 >> 2) + 0]); u_xlati2 = u_xlati10 + u_xlati5; u_xlati2 = u_xlati2 << (2 & int(0x1F)); u_xlat2 = uintBitsToFloat(_output_buf_buf[(u_xlati2 >> 2) + 0]); u_xlati5 = u_xlati5 << (1 & int(0x1F)); u_xlati5 = u_xlati10 + u_xlati5; u_xlati5 = u_xlati5 << (2 & int(0x1F)); u_xlat5 = uintBitsToFloat(_output_buf_buf[(u_xlati5 >> 2) + 0]); u_xlatb7.xy = greaterThanEqual(u_xlatu1.xwxx, uvec4(width, height, width, width)).xy; u_xlatb10 = u_xlatb7.y || u_xlatb7.x; if(u_xlatb10){ return; } u_xlati10 = int(u_xlatu1.w) * int(width) + int(u_xlatu1.x); u_xlati10 = u_xlati10 + int(bufferOffsetLevel); u_xlati7 = u_xlati10 << (2 & int(0x1F)); u_xlat3.x = uintBitsToFloat(_output_buf_buf[(u_xlati7 >> 2) + 0]); u_xlati12 = int(width) * int(height) + u_xlati10; u_xlati12 = u_xlati12 << (2 & int(0x1F)); u_xlat3.y = uintBitsToFloat(_output_buf_buf[(u_xlati12 >> 2) + 0]); u_xlati0 = u_xlati0 << (1 & int(0x1F)); u_xlati0 = u_xlati10 + u_xlati0; u_xlati0 = u_xlati0 << (2 & int(0x1F)); u_xlat3.z = uintBitsToFloat(_output_buf_buf[(u_xlati0 >> 2) + 0]); u_xlati10 = int(floatBitsToUint(u_xlat3.x) & 2147483648u); if(u_xlati10 != 0) { u_xlat3.x = uintBitsToFloat(floatBitsToUint(u_xlat3.x) & 2147483647u); } u_xlati17 = int(floatBitsToUint(u_xlat3.x) & 15u); u_xlatb17 = u_xlati17!=int(invLevel); u_xlatb4 = floatBitsToInt(u_xlat15)!=floatBitsToInt(u_xlat3.x); u_xlatb17 = u_xlatb17 && u_xlatb4; if(u_xlatb17){ u_xlat3.x = u_xlat15; u_xlati15 = int(0xFFFFFFFFu); } else { u_xlati15 = int((u_xlati10!=0) ? 0xFFFFFFFFu : uint(0)); } u_xlati10 = int(floatBitsToUint(u_xlat3.y) & 2147483648u); if(u_xlati10 != 0) { u_xlat3.y = uintBitsToFloat(floatBitsToUint(u_xlat3.y) & 2147483647u); u_xlati15 = int(0xFFFFFFFFu); } u_xlati10 = int(floatBitsToUint(u_xlat3.y) & 15u); u_xlatb10 = u_xlati10!=int(invLevel); u_xlatb17 = floatBitsToInt(u_xlat2)!=floatBitsToInt(u_xlat3.y); u_xlatb10 = u_xlatb10 && u_xlatb17; if(u_xlatb10){ u_xlat3.y = u_xlat2; u_xlati15 = int(0xFFFFFFFFu); } u_xlati10 = int(floatBitsToUint(u_xlat3.z) & 2147483648u); if(u_xlati10 != 0) { u_xlat3.z = uintBitsToFloat(floatBitsToUint(u_xlat3.z) & 2147483647u); u_xlati15 = int(0xFFFFFFFFu); } u_xlati10 = int(floatBitsToUint(u_xlat3.z) & 15u); u_xlatb10 = u_xlati10!=int(invLevel); u_xlatb2 = floatBitsToInt(u_xlat5)!=floatBitsToInt(u_xlat3.z); u_xlatb10 = u_xlatb10 && u_xlatb2; if(u_xlatb10){ u_xlat3.z = u_xlat5; u_xlati15 = int(0xFFFFFFFFu); } if(u_xlati15 != 0) { _output_buf_buf[(u_xlati7 >> 2)] = floatBitsToUint(u_xlat3.x); _output_buf_buf[(u_xlati12 >> 2)] = floatBitsToUint(u_xlat3.y); _output_buf_buf[(u_xlati0 >> 2)] = floatBitsToUint(u_xlat3.z); u_xlat3.w = intBitsToFloat(int(0x7FFFFFFFu)); imageStore(translationTable, ivec2(u_xlatu1.xy), u_xlat3); } return; }  AMaincbTranslationTableData lookupTexture lookupTexture _output_buftranslationTable;#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform cbTranslationTableData { uint level; uint invLevel; uint width; uint height; uint bufferOffsetLevel; uint bufferOffsetLevelAbove; uint numEvictedTiles; uint numAddedTiles; uvec4 addedTiles[32]; uvec4 evictedTiles[16]; }; UNITY_LOCATION(0) uniform usampler2D lookupTexture; layout(std430, binding = 0) buffer _output_buf { uint _output_buf_buf[]; }; writeonly layout(binding=1) uniform image2D translationTable; int u_xlati0; uvec4 u_xlatu1; float u_xlat2; ivec4 u_xlati2; uint u_xlatu2; bool u_xlatb2; vec4 u_xlat3; ivec4 u_xlati4; uvec2 u_xlatu4; ivec4 u_xlati5; uvec2 u_xlatu5; ivec4 u_xlati6; ivec4 u_xlati7; float u_xlat8; int u_xlati8; int u_xlati10; bvec2 u_xlatb10; int u_xlati16; uvec2 u_xlatu16; bool u_xlatb16; int u_xlati17; int u_xlati18; ivec2 u_xlati21; uvec2 u_xlatu21; float u_xlat24; int u_xlati24; bool u_xlatb24; int u_xlati25; uint u_xlatu25; bool u_xlatb25; int u_xlati26; uint u_xlatu26; bool u_xlatb26; int u_xlati28; bool u_xlatb28; layout(local_size_x = 32, local_size_y = 32, local_size_z = 1) in; void main() { u_xlati0 = int(height) * int(width); u_xlati8 = u_xlati0 >> (2 & int(0x1F)); u_xlatu1.xy = gl_WorkGroupID.xy * uvec2(32u, 32u) + gl_LocalInvocationID.xy; u_xlatu16.xy = u_xlatu1.xy >> (uvec2(1u, 1u) & uint(0x1F)); u_xlatu2 = width >> (1u & uint(0x1F)); u_xlati16 = int(u_xlatu16.y) * int(u_xlatu2) + int(u_xlatu16.x); u_xlati16 = u_xlati16 + int(bufferOffsetLevelAbove); u_xlati24 = u_xlati16 << (2 & int(0x1F)); u_xlat24 = uintBitsToFloat(_output_buf_buf[(u_xlati24 >> 2) + 0]); u_xlati2.x = u_xlati16 + u_xlati8; u_xlati2.x = u_xlati2.x << (2 & int(0x1F)); u_xlat2 = uintBitsToFloat(_output_buf_buf[(u_xlati2.x >> 2) + 0]); u_xlati8 = u_xlati8 << (1 & int(0x1F)); u_xlati8 = u_xlati16 + u_xlati8; u_xlati8 = u_xlati8 << (2 & int(0x1F)); u_xlat8 = uintBitsToFloat(_output_buf_buf[(u_xlati8 >> 2) + 0]); u_xlatb10.xy = greaterThanEqual(u_xlatu1.xyxx, uvec4(width, height, width, width)).xy; u_xlatb16 = u_xlatb10.y || u_xlatb10.x; if(u_xlatb16){ return; } u_xlati16 = int(u_xlatu1.y) * int(width) + int(u_xlatu1.x); u_xlati16 = u_xlati16 + int(bufferOffsetLevel); u_xlati10 = u_xlati16 << (2 & int(0x1F)); u_xlat3.x = uintBitsToFloat(_output_buf_buf[(u_xlati10 >> 2) + 0]); u_xlati18 = int(width) * int(height) + u_xlati16; u_xlati18 = u_xlati18 << (2 & int(0x1F)); u_xlat3.y = uintBitsToFloat(_output_buf_buf[(u_xlati18 >> 2) + 0]); u_xlati0 = u_xlati0 << (1 & int(0x1F)); u_xlati0 = u_xlati16 + u_xlati0; u_xlati0 = u_xlati0 << (2 & int(0x1F)); u_xlat3.z = uintBitsToFloat(_output_buf_buf[(u_xlati0 >> 2) + 0]); u_xlatu1.zw = uvec2(level); u_xlati4.xyz = ivec3(texelFetch(lookupTexture, ivec2(u_xlatu1.xy), int(u_xlatu1.w)).xyz); u_xlati16 = int(floatBitsToUint(u_xlat3.x) & 2147483648u); u_xlati17 = int((u_xlati16!=0) ? 0xFFFFFFFFu : uint(0)); if(u_xlati16 != 0) { u_xlat3.x = uintBitsToFloat(floatBitsToUint(u_xlat3.x) & 2147483647u); } u_xlati16 = int(floatBitsToUint(u_xlat3.x) & 15u); u_xlatb16 = u_xlati16==int(invLevel); if(u_xlatb16){ u_xlatu5.y = 0u; u_xlatu21.x = uint(0u); u_xlatu21.y = uint(0u); u_xlati16 = 0; while(true){ u_xlatb25 = u_xlatu21.y>=numEvictedTiles; u_xlati16 = 0; if(u_xlatb25){break;} u_xlatu25 = u_xlatu21.y >> (2u & uint(0x1F)); u_xlatu26 = u_xlatu21.y & 3u; u_xlati28 = 0 - int(u_xlatu26); u_xlati6.xyz = ivec3(uvec3(lessThan(uvec4(u_xlatu26), uvec4(1u, 2u, 3u, 0u)).xyz) * 0xFFFFFFFFu); u_xlati7.y = int(uint(u_xlati28) & uint(u_xlati6.y)); u_xlati26 = int(u_xlatu26) + int(0xFFFFFFFDu); u_xlati7.z = (u_xlati6.y != 0) ? 0 : u_xlati26; u_xlati7.w = int((u_xlati6.z==0) ? 0xFFFFFFFFu : uint(0)); u_xlati7.x = u_xlati6.x; u_xlati6 = ivec4(uvec4(u_xlati7) & evictedTiles[int(u_xlatu25)]); u_xlati6.xy = ivec2(uvec2(u_xlati6.yw) | uvec2(u_xlati6.xz)); u_xlati25 = int(uint(u_xlati6.y) | uint(u_xlati6.x)); u_xlatb25 = u_xlati4.x==u_xlati25; if(u_xlatb25){ u_xlatu21.x = 4294967295u; u_xlati16 = int(0xFFFFFFFFu); break; } u_xlatu5.x = u_xlatu21.y + 1u; u_xlatu21.xy = u_xlatu5.yx; u_xlatb16 = u_xlatb25; } if(u_xlati16 == 0) { u_xlatu21.x = 0u; } if(u_xlatu21.x != uint(0)) { u_xlat3.x = u_xlat24; u_xlati17 = int(0xFFFFFFFFu); } } else { u_xlatu5.y = 0u; u_xlatu21.x = uint(0u); u_xlatu21.y = uint(0u); u_xlati16 = 0; while(true){ u_xlatb25 = u_xlatu21.y>=numAddedTiles; u_xlati16 = 0; if(u_xlatb25){break;} u_xlatu25 = u_xlatu21.y >> (1u & uint(0x1F)); u_xlatu26 = uint(int(bitfieldInsert(0, int(u_xlatu21.y), 1 & int(0x1F), 1))); u_xlati6.x = int((u_xlatu26<1u) ? 0xFFFFFFFFu : uint(0)); u_xlati6.y = int((u_xlati6.x==0) ? 0xFFFFFFFFu : uint(0)); u_xlati6.xy = ivec2(uvec2(u_xlati6.xy) & addedTiles[int(u_xlatu25)].xz); u_xlati28 = int(uint(u_xlati6.y) | uint(u_xlati6.x)); u_xlatb28 = u_xlati4.x==u_xlati28; if(u_xlatb28){ u_xlati26 = int(u_xlatu26) + 1; u_xlatu26 = uint(u_xlati26) + 4294967295u; u_xlati6.x = int((u_xlatu26<1u) ? 0xFFFFFFFFu : uint(0)); u_xlati6.y = int((u_xlati6.x==0) ? 0xFFFFFFFFu : uint(0)); u_xlati6.xy = ivec2(uvec2(u_xlati6.xy) & addedTiles[int(u_xlatu25)].yw); u_xlatu21.x = uint(u_xlati6.y) | uint(u_xlati6.x); u_xlati16 = int(0xFFFFFFFFu); break; } u_xlatu5.x = u_xlatu21.y + 1u; u_xlatu21.xy = u_xlatu5.yx; u_xlatb16 = u_xlatb28; } if(u_xlati16 == 0) { u_xlatu21.x = 4294967295u; } u_xlatb16 = int(u_xlatu21.x)!=int(0xFFFFFFFFu); if(u_xlatb16){ u_xlati16 = int(u_xlatu21.x & 4294967280u); u_xlat3.x = uintBitsToFloat(uint(u_xlati16) | invLevel); u_xlati17 = int(0xFFFFFFFFu); } else { u_xlatb16 = floatBitsToInt(u_xlat24)!=floatBitsToInt(u_xlat3.x); if(u_xlatb16){ u_xlat3.x = u_xlat24; u_xlati17 = int(0xFFFFFFFFu); } } } u_xlati16 = int(floatBitsToUint(u_xlat3.y) & 2147483648u); if(u_xlati16 != 0) { u_xlat3.y = uintBitsToFloat(floatBitsToUint(u_xlat3.y) & 2147483647u); u_xlati17 = int(0xFFFFFFFFu); } u_xlati16 = int(floatBitsToUint(u_xlat3.y) & 15u); u_xlatb16 = u_xlati16==int(invLevel); if(u_xlatb16){ u_xlatu5.y = 0u; u_xlatu16.x = uint(0u); u_xlatu16.y = uint(0u); u_xlati25 = 0; while(true){ u_xlatb26 = u_xlatu16.y>=numEvictedTiles; u_xlati25 = 0; if(u_xlatb26){break;} u_xlatu26 = u_xlatu16.y >> (2u & uint(0x1F)); u_xlatu4.x = u_xlatu16.y & 3u; u_xlati28 = 0 - int(u_xlatu4.x); u_xlati6.xyz = ivec3(uvec3(lessThan(u_xlatu4.xxxx, uvec4(1u, 2u, 3u, 0u)).xyz) * 0xFFFFFFFFu); u_xlati7.y = int(uint(u_xlati28) & uint(u_xlati6.y)); u_xlati4.x = int(u_xlatu4.x) + int(0xFFFFFFFDu); u_xlati7.z = (u_xlati6.y != 0) ? 0 : u_xlati4.x; u_xlati7.w = int((u_xlati6.z==0) ? 0xFFFFFFFFu : uint(0)); u_xlati7.x = u_xlati6.x; u_xlati6 = ivec4(uvec4(u_xlati7) & evictedTiles[int(u_xlatu26)]); u_xlati4.xw = ivec2(uvec2(u_xlati6.yw) | uvec2(u_xlati6.xz)); u_xlati26 = int(uint(u_xlati4.w) | uint(u_xlati4.x)); u_xlatb26 = u_xlati4.y==u_xlati26; if(u_xlatb26){ u_xlatu16.x = 4294967295u; u_xlati25 = int(0xFFFFFFFFu); break; } u_xlatu5.x = u_xlatu16.y + 1u; u_xlatu16.xy = u_xlatu5.yx; u_xlatb25 = u_xlatb26; } if(u_xlati25 == 0) { u_xlatu16.x = 0u; } if(u_xlatu16.x != uint(0)) { u_xlat3.y = u_xlat2; u_xlati17 = int(0xFFFFFFFFu); } } else { u_xlatu5.y = 0u; u_xlatu16.x = uint(0u); u_xlatu16.y = uint(0u); u_xlati25 = 0; while(true){ u_xlatb26 = u_xlatu16.y>=numAddedTiles; u_xlati25 = 0; if(u_xlatb26){break;} u_xlatu26 = u_xlatu16.y >> (1u & uint(0x1F)); u_xlatu4.x = uint(int(bitfieldInsert(0, int(u_xlatu16.y), 1 & int(0x1F), 1))); u_xlati6.x = int((u_xlatu4.x<1u) ? 0xFFFFFFFFu : uint(0)); u_xlati6.y = int((u_xlati6.x==0) ? 0xFFFFFFFFu : uint(0)); u_xlati21.xy = ivec2(uvec2(u_xlati6.xy) & addedTiles[int(u_xlatu26)].xz); u_xlati28 = int(uint(u_xlati21.y) | uint(u_xlati21.x)); u_xlatb28 = u_xlati4.y==u_xlati28; if(u_xlatb28){ u_xlati4.x = int(u_xlatu4.x) + 1; u_xlatu4.x = uint(u_xlati4.x) + 4294967295u; u_xlati6.x = int((u_xlatu4.x<1u) ? 0xFFFFFFFFu : uint(0)); u_xlati6.y = int((u_xlati6.x==0) ? 0xFFFFFFFFu : uint(0)); u_xlati21.xy = ivec2(uvec2(u_xlati6.xy) & addedTiles[int(u_xlatu26)].yw); u_xlatu16.x = uint(u_xlati21.y) | uint(u_xlati21.x); u_xlati25 = int(0xFFFFFFFFu); break; } u_xlatu5.x = u_xlatu16.y + 1u; u_xlatu16.xy = u_xlatu5.yx; u_xlatb25 = u_xlatb28; } if(u_xlati25 == 0) { u_xlatu16.x = 4294967295u; } u_xlatb24 = int(u_xlatu16.x)!=int(0xFFFFFFFFu); if(u_xlatb24){ u_xlati16 = int(u_xlatu16.x & 4294967280u); u_xlat3.y = uintBitsToFloat(uint(u_xlati16) | invLevel); u_xlati17 = int(0xFFFFFFFFu); } else { u_xlatb16 = floatBitsToInt(u_xlat2)!=floatBitsToInt(u_xlat3.y); if(u_xlatb16){ u_xlat3.y = u_xlat2; u_xlati17 = int(0xFFFFFFFFu); } } } u_xlati16 = int(floatBitsToUint(u_xlat3.z) & 2147483648u); if(u_xlati16 != 0) { u_xlat3.z = uintBitsToFloat(floatBitsToUint(u_xlat3.z) & 2147483647u); u_xlati17 = int(0xFFFFFFFFu); } u_xlati16 = int(floatBitsToUint(u_xlat3.z) & 15u); u_xlatb16 = u_xlati16==int(invLevel); if(u_xlatb16){ u_xlatu4.y = 0u; u_xlatu16.x = uint(0u); u_xlatu16.y = uint(0u); u_xlati25 = 0; while(true){ u_xlatb2 = u_xlatu16.y>=numEvictedTiles; u_xlati25 = 0; if(u_xlatb2){break;} u_xlatu2 = u_xlatu16.y >> (2u & uint(0x1F)); u_xlatu26 = u_xlatu16.y & 3u; u_xlati28 = 0 - int(u_xlatu26); u_xlati5.xyz = ivec3(uvec3(lessThan(uvec4(u_xlatu26), uvec4(1u, 2u, 3u, 0u)).xyz) * 0xFFFFFFFFu); u_xlati6.y = int(uint(u_xlati28) & uint(u_xlati5.y)); u_xlati26 = int(u_xlatu26) + int(0xFFFFFFFDu); u_xlati6.z = (u_xlati5.y != 0) ? 0 : u_xlati26; u_xlati6.w = int((u_xlati5.z==0) ? 0xFFFFFFFFu : uint(0)); u_xlati6.x = u_xlati5.x; u_xlati5 = ivec4(uvec4(u_xlati6) & evictedTiles[int(u_xlatu2)]); u_xlati2.xw = ivec2(uvec2(u_xlati5.yw) | uvec2(u_xlati5.xz)); u_xlati2.x = int(uint(u_xlati2.w) | uint(u_xlati2.x)); u_xlatb2 = u_xlati4.z==u_xlati2.x; if(u_xlatb2){ u_xlatu16.x = 4294967295u; u_xlati25 = int(0xFFFFFFFFu); break; } u_xlatu4.x = u_xlatu16.y + 1u; u_xlatu16.xy = u_xlatu4.yx; u_xlatb25 = u_xlatb2; } if(u_xlati25 == 0) { u_xlatu16.x = 0u; } if(u_xlatu16.x != uint(0)) { u_xlat3.z = u_xlat8; u_xlati17 = int(0xFFFFFFFFu); } } else { u_xlatu4.y = 0u; u_xlatu16.x = uint(0u); u_xlatu16.y = uint(0u); u_xlati25 = 0; while(true){ u_xlatb2 = u_xlatu16.y>=numAddedTiles; u_xlati25 = 0; if(u_xlatb2){break;} u_xlatu2 = u_xlatu16.y >> (1u & uint(0x1F)); u_xlatu26 = uint(int(bitfieldInsert(0, int(u_xlatu16.y), 1 & int(0x1F), 1))); u_xlati5.x = int((u_xlatu26<1u) ? 0xFFFFFFFFu : uint(0)); u_xlati5.y = int((u_xlati5.x==0) ? 0xFFFFFFFFu : uint(0)); u_xlati5.xy = ivec2(uvec2(u_xlati5.xy) & addedTiles[int(u_xlatu2)].xz); u_xlati28 = int(uint(u_xlati5.y) | uint(u_xlati5.x)); u_xlatb28 = u_xlati4.z==u_xlati28; if(u_xlatb28){ u_xlati26 = int(u_xlatu26) + 1; u_xlatu26 = uint(u_xlati26) + 4294967295u; u_xlati5.x = int((u_xlatu26<1u) ? 0xFFFFFFFFu : uint(0)); u_xlati5.y = int((u_xlati5.x==0) ? 0xFFFFFFFFu : uint(0)); u_xlati2.xw = ivec2(uvec2(u_xlati5.xy) & addedTiles[int(u_xlatu2)].yw); u_xlatu16.x = uint(u_xlati2.w) | uint(u_xlati2.x); u_xlati25 = int(0xFFFFFFFFu); break; } u_xlatu4.x = u_xlatu16.y + 1u; u_xlatu16.xy = u_xlatu4.yx; u_xlatb25 = u_xlatb28; } if(u_xlati25 == 0) { u_xlatu16.x = 4294967295u; } u_xlatb24 = int(u_xlatu16.x)!=int(0xFFFFFFFFu); if(u_xlatb24){ u_xlati16 = int(u_xlatu16.x & 4294967280u); u_xlat3.z = uintBitsToFloat(uint(u_xlati16) | invLevel); u_xlati17 = int(0xFFFFFFFFu); } else { u_xlatb16 = floatBitsToInt(u_xlat8)!=floatBitsToInt(u_xlat3.z); if(u_xlatb16){ u_xlat3.z = u_xlat8; u_xlati17 = int(0xFFFFFFFFu); } } } if(u_xlati17 != 0) { _output_buf_buf[(u_xlati10 >> 2)] = floatBitsToUint(u_xlat3.x); _output_buf_buf[(u_xlati18 >> 2)] = floatBitsToUint(u_xlat3.y); _output_buf_buf[(u_xlati0 >> 2)] = floatBitsToUint(u_xlat3.z); u_xlat3.w = intBitsToFloat(int(0x7FFFFFFFu)); imageStore(translationTable, ivec2(u_xlatu1.xy), u_xlat3); } return; }  AMaincbTranslationTableData _output_buftranslationTable#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform cbTranslationTableData { uint level; uint invLevel; uint width; uint height; uint bufferOffsetLevel; uint bufferOffsetLevelAbove; uint numEvictedTiles; uint numAddedTiles; uvec4 addedTiles[32]; uvec4 evictedTiles[16]; }; layout(std430, binding = 0) buffer _output_buf { uint _output_buf_buf[]; }; writeonly layout(binding=1) uniform image2D translationTable; uvec4 u_xlatu0; ivec3 u_xlati1; bvec2 u_xlatb1; vec4 u_xlat2; int u_xlati3; bool u_xlatb3; int u_xlati5; bool u_xlatb5; bool u_xlatb7; int u_xlati13; layout(local_size_x = 32, local_size_y = 32, local_size_z = 1) in; void main() { u_xlatu0 = gl_WorkGroupID.xyyy * uvec4(32u, 32u, 32u, 32u) + gl_LocalInvocationID.xyyy; u_xlatb1.xy = greaterThanEqual(u_xlatu0.xwxx, uvec4(width, height, width, width)).xy; u_xlatb1.x = u_xlatb1.y || u_xlatb1.x; if(u_xlatb1.x){ return; } u_xlati1.x = int(height) * int(width); u_xlati5 = int(u_xlatu0.w) * int(width) + int(u_xlatu0.x); u_xlati1.y = u_xlati5 + int(bufferOffsetLevel); u_xlati1.xz = u_xlati1.xy << (ivec2(1, 2) & int(0x1F)); u_xlat2.x = uintBitsToFloat(_output_buf_buf[(u_xlati1.z >> 2) + 0]); u_xlati13 = int(width) * int(height) + u_xlati1.y; u_xlati13 = u_xlati13 << (2 & int(0x1F)); u_xlat2.y = uintBitsToFloat(_output_buf_buf[(u_xlati13 >> 2) + 0]); u_xlati1.x = u_xlati1.y + u_xlati1.x; u_xlati1.x = u_xlati1.x << (2 & int(0x1F)); u_xlat2.z = uintBitsToFloat(_output_buf_buf[(u_xlati1.x >> 2) + 0]); u_xlati5 = int(floatBitsToUint(u_xlat2.x) & 2147483648u); if(u_xlati5 != 0) { u_xlat2.x = uintBitsToFloat(floatBitsToUint(u_xlat2.x) & 2147483647u); } u_xlati3 = int(floatBitsToUint(u_xlat2.x) & 15u); u_xlatb3 = u_xlati3!=int(invLevel); u_xlatb7 = floatBitsToInt(u_xlat2.x)!=int(0x7FFFFFFFu); u_xlatb3 = u_xlatb7 && u_xlatb3; if(u_xlatb3){ u_xlat2.x = intBitsToFloat(int(0x7FFFFFFFu)); u_xlati3 = int(0xFFFFFFFFu); } else { u_xlati3 = int((u_xlati5!=0) ? 0xFFFFFFFFu : uint(0)); } u_xlati5 = int(floatBitsToUint(u_xlat2.y) & 2147483648u); if(u_xlati5 != 0) { u_xlat2.y = uintBitsToFloat(floatBitsToUint(u_xlat2.y) & 2147483647u); u_xlati3 = int(0xFFFFFFFFu); } u_xlati5 = int(floatBitsToUint(u_xlat2.y) & 15u); u_xlatb5 = u_xlati5!=int(invLevel); u_xlatb7 = floatBitsToInt(u_xlat2.y)!=int(0x7FFFFFFFu); u_xlatb5 = u_xlatb5 && u_xlatb7; if(u_xlatb5){ u_xlat2.y = intBitsToFloat(int(0x7FFFFFFFu)); u_xlati3 = int(0xFFFFFFFFu); } u_xlati5 = int(floatBitsToUint(u_xlat2.z) & 2147483648u); if(u_xlati5 != 0) { u_xlat2.z = uintBitsToFloat(floatBitsToUint(u_xlat2.z) & 2147483647u); u_xlati3 = int(0xFFFFFFFFu); } u_xlati5 = int(floatBitsToUint(u_xlat2.z) & 15u); u_xlatb5 = u_xlati5!=int(invLevel); u_xlatb7 = floatBitsToInt(u_xlat2.z)!=int(0x7FFFFFFFu); u_xlatb5 = u_xlatb5 && u_xlatb7; if(u_xlatb5){ u_xlat2.z = intBitsToFloat(int(0x7FFFFFFFu)); u_xlati3 = int(0xFFFFFFFFu); } if(u_xlati3 != 0) { _output_buf_buf[(u_xlati1.z >> 2)] = floatBitsToUint(u_xlat2.x); _output_buf_buf[(u_xlati13 >> 2)] = floatBitsToUint(u_xlat2.y); _output_buf_buf[(u_xlati1.x >> 2)] = floatBitsToUint(u_xlat2.z); u_xlat2.w = intBitsToFloat(int(0x7FFFFFFFu)); imageStore(translationTable, ivec2(u_xlatu0.xy), u_xlat2); } return; }  AMaincbTranslationTableData lookupTexture lookupTexture _output_buftranslationTable~8#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform cbTranslationTableData { uint level; uint invLevel; uint width; uint height; uint bufferOffsetLevel; uint bufferOffsetLevelAbove; uint numEvictedTiles; uint numAddedTiles; uvec4 addedTiles[32]; uvec4 evictedTiles[16]; }; UNITY_LOCATION(0) uniform usampler2D lookupTexture; layout(std430, binding = 0) buffer _output_buf { uint _output_buf_buf[]; }; writeonly layout(binding=1) uniform image2D translationTable; uvec4 u_xlatu0; ivec3 u_xlati1; bvec2 u_xlatb1; vec4 u_xlat2; ivec3 u_xlati3; uvec4 u_xlatu3; uvec2 u_xlatu4; ivec4 u_xlati5; bool u_xlatb5; ivec4 u_xlati6; int u_xlati8; uint u_xlatu8; bool u_xlatb8; ivec3 u_xlati12; int u_xlati14; bool u_xlatb14; ivec2 u_xlati18; uvec2 u_xlatu18; bool u_xlatb18; int u_xlati21; int u_xlati22; int u_xlati24; uint u_xlatu24; int u_xlati25; bool u_xlatb25; layout(local_size_x = 32, local_size_y = 32, local_size_z = 1) in; void main() { u_xlatu0.xy = gl_WorkGroupID.xy * uvec2(32u, 32u) + gl_LocalInvocationID.xy; u_xlatb1.xy = greaterThanEqual(u_xlatu0.xyxx, uvec4(width, height, width, width)).xy; u_xlatb1.x = u_xlatb1.y || u_xlatb1.x; if(u_xlatb1.x){ return; } u_xlati1.x = int(height) * int(width); u_xlati8 = int(u_xlatu0.y) * int(width) + int(u_xlatu0.x); u_xlati1.y = u_xlati8 + int(bufferOffsetLevel); u_xlati1.xz = u_xlati1.xy << (ivec2(1, 2) & int(0x1F)); u_xlat2.x = uintBitsToFloat(_output_buf_buf[(u_xlati1.z >> 2) + 0]); u_xlati22 = int(width) * int(height) + u_xlati1.y; u_xlati22 = u_xlati22 << (2 & int(0x1F)); u_xlat2.y = uintBitsToFloat(_output_buf_buf[(u_xlati22 >> 2) + 0]); u_xlati1.x = u_xlati1.y + u_xlati1.x; u_xlati1.x = u_xlati1.x << (2 & int(0x1F)); u_xlat2.z = uintBitsToFloat(_output_buf_buf[(u_xlati1.x >> 2) + 0]); u_xlatu0.zw = uvec2(level); u_xlati3.xyz = ivec3(texelFetch(lookupTexture, ivec2(u_xlatu0.xy), int(u_xlatu0.w)).xyz); u_xlati14 = int(floatBitsToUint(u_xlat2.x) & 2147483648u); u_xlati21 = int((u_xlati14!=0) ? 0xFFFFFFFFu : uint(0)); if(u_xlati14 != 0) { u_xlat2.x = uintBitsToFloat(floatBitsToUint(u_xlat2.x) & 2147483647u); } u_xlati14 = int(floatBitsToUint(u_xlat2.x) & 15u); u_xlatb14 = u_xlati14==int(invLevel); if(u_xlatb14){ u_xlatu4.y = 0u; u_xlatu18.x = uint(0u); u_xlatu18.y = uint(0u); u_xlati14 = 0; while(true){ u_xlatb8 = u_xlatu18.y>=numEvictedTiles; u_xlati14 = 0; if(u_xlatb8){break;} u_xlatu8 = u_xlatu18.y >> (2u & uint(0x1F)); u_xlatu24 = u_xlatu18.y & 3u; u_xlati5.x = 0 - int(u_xlatu24); u_xlati12.xyz = ivec3(uvec3(lessThan(uvec4(u_xlatu24), uvec4(1u, 2u, 3u, 3u)).xyz) * 0xFFFFFFFFu); u_xlati6.y = int(uint(u_xlati5.x) & uint(u_xlati12.y)); u_xlati24 = int(u_xlatu24) + int(0xFFFFFFFDu); u_xlati6.z = (u_xlati12.y != 0) ? 0 : u_xlati24; u_xlati6.w = int((u_xlati12.z==0) ? 0xFFFFFFFFu : uint(0)); u_xlati6.x = u_xlati12.x; u_xlati5 = ivec4(uvec4(u_xlati6) & evictedTiles[int(u_xlatu8)]); u_xlati5.xy = ivec2(uvec2(u_xlati5.yw) | uvec2(u_xlati5.xz)); u_xlati8 = int(uint(u_xlati5.y) | uint(u_xlati5.x)); u_xlatb8 = u_xlati3.x==u_xlati8; if(u_xlatb8){ u_xlatu18.x = 4294967295u; u_xlati14 = int(0xFFFFFFFFu); break; } u_xlatu4.x = u_xlatu18.y + 1u; u_xlatu18.xy = u_xlatu4.yx; u_xlatb14 = u_xlatb8; } if(u_xlati14 == 0) { u_xlatu18.x = 0u; } if(u_xlatu18.x != uint(0)) { u_xlat2.x = intBitsToFloat(int(0x7FFFFFFFu)); u_xlati21 = int(0xFFFFFFFFu); } } else { u_xlatu4.y = 0u; u_xlatu18.x = uint(0u); u_xlatu18.y = uint(0u); u_xlati14 = 0; while(true){ u_xlatb8 = u_xlatu18.y>=numAddedTiles; u_xlati14 = 0; if(u_xlatb8){break;} u_xlatu8 = u_xlatu18.y >> (1u & uint(0x1F)); u_xlatu24 = uint(int(bitfieldInsert(0, int(u_xlatu18.y), 1 & int(0x1F), 1))); u_xlati5.x = int((u_xlatu24<1u) ? 0xFFFFFFFFu : uint(0)); u_xlati5.y = int((u_xlati5.x==0) ? 0xFFFFFFFFu : uint(0)); u_xlati5.xy = ivec2(uvec2(u_xlati5.xy) & addedTiles[int(u_xlatu8)].xz); u_xlati5.x = int(uint(u_xlati5.y) | uint(u_xlati5.x)); u_xlatb5 = u_xlati3.x==u_xlati5.x; if(u_xlatb5){ u_xlati24 = int(u_xlatu24) + 1; u_xlatu24 = uint(u_xlati24) + 4294967295u; u_xlati6.x = int((u_xlatu24<1u) ? 0xFFFFFFFFu : uint(0)); u_xlati6.y = int((u_xlati6.x==0) ? 0xFFFFFFFFu : uint(0)); u_xlati12.xy = ivec2(uvec2(u_xlati6.xy) & addedTiles[int(u_xlatu8)].yw); u_xlatu18.x = uint(u_xlati12.y) | uint(u_xlati12.x); u_xlati14 = int(0xFFFFFFFFu); break; } u_xlatu4.x = u_xlatu18.y + 1u; u_xlatu18.xy = u_xlatu4.yx; u_xlatb14 = u_xlatb5; } if(u_xlati14 == 0) { u_xlatu18.x = 4294967295u; } u_xlatb14 = int(u_xlatu18.x)!=int(0xFFFFFFFFu); if(u_xlatb14){ u_xlati14 = int(u_xlatu18.x & 4294967280u); u_xlat2.x = uintBitsToFloat(uint(u_xlati14) | invLevel); u_xlati21 = int(0xFFFFFFFFu); } else { u_xlatb14 = floatBitsToInt(u_xlat2.x)!=int(0x7FFFFFFFu); if(u_xlatb14){ u_xlati21 = int(0xFFFFFFFFu); } u_xlat2.x = intBitsToFloat(int(0x7FFFFFFFu)); } } u_xlati14 = int(floatBitsToUint(u_xlat2.y) & 2147483648u); if(u_xlati14 != 0) { u_xlat2.y = uintBitsToFloat(floatBitsToUint(u_xlat2.y) & 2147483647u); u_xlati21 = int(0xFFFFFFFFu); } u_xlati14 = int(floatBitsToUint(u_xlat2.y) & 15u); u_xlatb14 = u_xlati14==int(invLevel); if(u_xlatb14){ u_xlatu4.y = 0u; u_xlatu3.x = uint(0u); u_xlatu3.w = uint(0u); u_xlati14 = 0; while(true){ u_xlatb8 = u_xlatu3.w>=numEvictedTiles; u_xlati14 = 0; if(u_xlatb8){break;} u_xlatu8 = u_xlatu3.w >> (2u & uint(0x1F)); u_xlatu18.x = u_xlatu3.w & 3u; u_xlati25 = 0 - int(u_xlatu18.x); u_xlati5.xyz = ivec3(uvec3(lessThan(u_xlatu18.xxxx, uvec4(1u, 2u, 3u, 0u)).xyz) * 0xFFFFFFFFu); u_xlati6.y = int(uint(u_xlati25) & uint(u_xlati5.y)); u_xlati18.x = int(u_xlatu18.x) + int(0xFFFFFFFDu); u_xlati6.z = (u_xlati5.y != 0) ? 0 : u_xlati18.x; u_xlati6.w = int((u_xlati5.z==0) ? 0xFFFFFFFFu : uint(0)); u_xlati6.x = u_xlati5.x; u_xlati5 = ivec4(uvec4(u_xlati6) & evictedTiles[int(u_xlatu8)]); u_xlati18.xy = ivec2(uvec2(u_xlati5.yw) | uvec2(u_xlati5.xz)); u_xlati8 = int(uint(u_xlati18.y) | uint(u_xlati18.x)); u_xlatb8 = u_xlati3.y==u_xlati8; if(u_xlatb8){ u_xlatu3.x = 4294967295u; u_xlati14 = int(0xFFFFFFFFu); break; } u_xlatu4.x = u_xlatu3.w + 1u; u_xlatu3.xw = u_xlatu4.yx; u_xlatb14 = u_xlatb8; } if(u_xlati14 == 0) { u_xlatu3.x = 0u; } if(u_xlatu3.x != uint(0)) { u_xlat2.y = intBitsToFloat(int(0x7FFFFFFFu)); u_xlati21 = int(0xFFFFFFFFu); } } else { u_xlatu4.y = 0u; u_xlatu3.x = uint(0u); u_xlatu3.w = uint(0u); u_xlati14 = 0; while(true){ u_xlatb8 = u_xlatu3.w>=numAddedTiles; u_xlati14 = 0; if(u_xlatb8){break;} u_xlatu8 = u_xlatu3.w >> (1u & uint(0x1F)); u_xlatu18.x = uint(int(bitfieldInsert(0, int(u_xlatu3.w), 1 & int(0x1F), 1))); u_xlati5.x = int((u_xlatu18.x<1u) ? 0xFFFFFFFFu : uint(0)); u_xlati5.y = int((u_xlati5.x==0) ? 0xFFFFFFFFu : uint(0)); u_xlati5.xy = ivec2(uvec2(u_xlati5.xy) & addedTiles[int(u_xlatu8)].xz); u_xlati25 = int(uint(u_xlati5.y) | uint(u_xlati5.x)); u_xlatb25 = u_xlati3.y==u_xlati25; if(u_xlatb25){ u_xlati18.x = int(u_xlatu18.x) + 1; u_xlatu18.x = uint(u_xlati18.x) + 4294967295u; u_xlati5.x = int((u_xlatu18.x<1u) ? 0xFFFFFFFFu : uint(0)); u_xlati5.y = int((u_xlati5.x==0) ? 0xFFFFFFFFu : uint(0)); u_xlati5.xy = ivec2(uvec2(u_xlati5.xy) & addedTiles[int(u_xlatu8)].yw); u_xlatu3.x = uint(u_xlati5.y) | uint(u_xlati5.x); u_xlati14 = int(0xFFFFFFFFu); break; } u_xlatu4.x = u_xlatu3.w + 1u; u_xlatu3.xw = u_xlatu4.yx; u_xlatb14 = u_xlatb25; } if(u_xlati14 == 0) { u_xlatu3.x = 4294967295u; } u_xlatb14 = int(u_xlatu3.x)!=int(0xFFFFFFFFu); if(u_xlatb14){ u_xlati14 = int(u_xlatu3.x & 4294967280u); u_xlat2.y = uintBitsToFloat(uint(u_xlati14) | invLevel); u_xlati21 = int(0xFFFFFFFFu); } else { u_xlatb14 = floatBitsToInt(u_xlat2.y)!=int(0x7FFFFFFFu); if(u_xlatb14){ u_xlati21 = int(0xFFFFFFFFu); } u_xlat2.y = intBitsToFloat(int(0x7FFFFFFFu)); } } u_xlati14 = int(floatBitsToUint(u_xlat2.z) & 2147483648u); if(u_xlati14 != 0) { u_xlat2.z = uintBitsToFloat(floatBitsToUint(u_xlat2.z) & 2147483647u); u_xlati21 = int(0xFFFFFFFFu); } u_xlati14 = int(floatBitsToUint(u_xlat2.z) & 15u); u_xlatb14 = u_xlati14==int(invLevel); if(u_xlatb14){ u_xlatu3.y = 0u; u_xlatu4.x = uint(0u); u_xlatu4.y = uint(0u); u_xlati14 = 0; while(true){ u_xlatb8 = u_xlatu4.y>=numEvictedTiles; u_xlati14 = 0; if(u_xlatb8){break;} u_xlatu8 = u_xlatu4.y >> (2u & uint(0x1F)); u_xlatu24 = u_xlatu4.y & 3u; u_xlati18.x = 0 - int(u_xlatu24); u_xlati5.xyz = ivec3(uvec3(lessThan(uvec4(u_xlatu24), uvec4(1u, 2u, 3u, 0u)).xyz) * 0xFFFFFFFFu); u_xlati6.y = int(uint(u_xlati18.x) & uint(u_xlati5.y)); u_xlati24 = int(u_xlatu24) + int(0xFFFFFFFDu); u_xlati6.z = (u_xlati5.y != 0) ? 0 : u_xlati24; u_xlati6.w = int((u_xlati5.z==0) ? 0xFFFFFFFFu : uint(0)); u_xlati6.x = u_xlati5.x; u_xlati5 = ivec4(uvec4(u_xlati6) & evictedTiles[int(u_xlatu8)]); u_xlati18.xy = ivec2(uvec2(u_xlati5.yw) | uvec2(u_xlati5.xz)); u_xlati8 = int(uint(u_xlati18.y) | uint(u_xlati18.x)); u_xlatb8 = u_xlati3.z==u_xlati8; if(u_xlatb8){ u_xlatu4.x = 4294967295u; u_xlati14 = int(0xFFFFFFFFu); break; } u_xlatu3.x = u_xlatu4.y + 1u; u_xlatu4.xy = u_xlatu3.yx; u_xlatb14 = u_xlatb8; } if(u_xlati14 == 0) { u_xlatu4.x = 0u; } if(u_xlatu4.x != uint(0)) { u_xlat2.z = intBitsToFloat(int(0x7FFFFFFFu)); u_xlati21 = int(0xFFFFFFFFu); } } else { u_xlatu3.y = 0u; u_xlatu4.x = uint(0u); u_xlatu4.y = uint(0u); u_xlati14 = 0; while(true){ u_xlatb8 = u_xlatu4.y>=numAddedTiles; u_xlati14 = 0; if(u_xlatb8){break;} u_xlatu8 = u_xlatu4.y >> (1u & uint(0x1F)); u_xlatu24 = uint(int(bitfieldInsert(0, int(u_xlatu4.y), 1 & int(0x1F), 1))); u_xlati5.x = int((u_xlatu24<1u) ? 0xFFFFFFFFu : uint(0)); u_xlati5.y = int((u_xlati5.x==0) ? 0xFFFFFFFFu : uint(0)); u_xlati18.xy = ivec2(uvec2(u_xlati5.xy) & addedTiles[int(u_xlatu8)].xz); u_xlati18.x = int(uint(u_xlati18.y) | uint(u_xlati18.x)); u_xlatb18 = u_xlati3.z==u_xlati18.x; if(u_xlatb18){ u_xlati24 = int(u_xlatu24) + 1; u_xlatu24 = uint(u_xlati24) + 4294967295u; u_xlati5.x = int((u_xlatu24<1u) ? 0xFFFFFFFFu : uint(0)); u_xlati5.y = int((u_xlati5.x==0) ? 0xFFFFFFFFu : uint(0)); u_xlati5.xy = ivec2(uvec2(u_xlati5.xy) & addedTiles[int(u_xlatu8)].yw); u_xlatu4.x = uint(u_xlati5.y) | uint(u_xlati5.x); u_xlati14 = int(0xFFFFFFFFu); break; } u_xlatu3.x = u_xlatu4.y + 1u; u_xlatu4.xy = u_xlatu3.yx; u_xlatb14 = u_xlatb18; } if(u_xlati14 == 0) { u_xlatu4.x = 4294967295u; } u_xlatb14 = int(u_xlatu4.x)!=int(0xFFFFFFFFu); if(u_xlatb14){ u_xlati14 = int(u_xlatu4.x & 4294967280u); u_xlat2.z = uintBitsToFloat(uint(u_xlati14) | invLevel); u_xlati21 = int(0xFFFFFFFFu); } else { u_xlatb14 = floatBitsToInt(u_xlat2.z)!=int(0x7FFFFFFFu); if(u_xlatb14){ u_xlati21 = int(0xFFFFFFFFu); } u_xlat2.z = intBitsToFloat(int(0x7FFFFFFFu)); } } if(u_xlati21 != 0) { _output_buf_buf[(u_xlati1.z >> 2)] = floatBitsToUint(u_xlat2.x); _output_buf_buf[(u_xlati22 >> 2)] = floatBitsToUint(u_xlat2.y); _output_buf_buf[(u_xlati1.x >> 2)] = floatBitsToUint(u_xlat2.z); u_xlat2.w = intBitsToFloat(int(0x7FFFFFFFu)); imageStore(translationTable, ivec2(u_xlatu0.xy), u_xlat2); } return; }  AMaincbTranslationTableData _output_buftranslationTable#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform cbTranslationTableData { uint level; uint invLevel; uint width; uint height; uint bufferOffsetLevel; uint bufferOffsetLevelAbove; uint numEvictedTiles; uint numAddedTiles; uvec4 addedTiles[32]; uvec4 evictedTiles[16]; }; layout(std430, binding = 0) buffer _output_buf { uint _output_buf_buf[]; }; writeonly layout(binding=1) uniform image2D translationTable; int u_xlati0; uvec4 u_xlatu1; float u_xlat2; int u_xlati2; uint u_xlatu2; bool u_xlatb2; vec4 u_xlat3; int u_xlati4; float u_xlat5; int u_xlati5; float u_xlat7; int u_xlati7; int u_xlati9; bool u_xlatb9; int u_xlati10; uvec2 u_xlatu10; bool u_xlatb10; int u_xlati12; bvec2 u_xlatb12; bool u_xlatb14; float u_xlat15; int u_xlati15; int u_xlati17; layout(local_size_x = 32, local_size_y = 32, local_size_z = 1) in; void main() { u_xlati0 = int(height) * int(width); u_xlati5 = u_xlati0 >> (2 & int(0x1F)); u_xlatu1 = gl_WorkGroupID.xyyy * uvec4(32u, 32u, 32u, 32u) + gl_LocalInvocationID.xyyy; u_xlatu10.xy = u_xlatu1.xw >> (uvec2(1u, 1u) & uint(0x1F)); u_xlatu2 = width >> (1u & uint(0x1F)); u_xlati10 = int(u_xlatu10.y) * int(u_xlatu2) + int(u_xlatu10.x); u_xlati10 = u_xlati10 + int(bufferOffsetLevelAbove); u_xlati15 = u_xlati10 << (2 & int(0x1F)); u_xlat15 = uintBitsToFloat(_output_buf_buf[(u_xlati15 >> 2) + 0]); u_xlati2 = u_xlati10 + u_xlati5; u_xlati2 = u_xlati2 << (2 & int(0x1F)); u_xlat2 = uintBitsToFloat(_output_buf_buf[(u_xlati2 >> 2) + 0]); u_xlati7 = u_xlati5 << (1 & int(0x1F)); u_xlati7 = u_xlati10 + u_xlati7; u_xlati7 = u_xlati7 << (2 & int(0x1F)); u_xlat7 = uintBitsToFloat(_output_buf_buf[(u_xlati7 >> 2) + 0]); u_xlati5 = u_xlati5 * 3 + u_xlati10; u_xlati5 = u_xlati5 << (2 & int(0x1F)); u_xlat5 = uintBitsToFloat(_output_buf_buf[(u_xlati5 >> 2) + 0]); u_xlatb12.xy = greaterThanEqual(u_xlatu1.xwxw, uvec4(width, height, width, height)).xy; u_xlatb10 = u_xlatb12.y || u_xlatb12.x; if(u_xlatb10){ return; } u_xlati10 = int(u_xlatu1.w) * int(width) + int(u_xlatu1.x); u_xlati10 = u_xlati10 + int(bufferOffsetLevel); u_xlati12 = u_xlati10 << (2 & int(0x1F)); u_xlat3.x = uintBitsToFloat(_output_buf_buf[(u_xlati12 >> 2) + 0]); u_xlati17 = int(width) * int(height) + u_xlati10; u_xlati17 = u_xlati17 << (2 & int(0x1F)); u_xlat3.y = uintBitsToFloat(_output_buf_buf[(u_xlati17 >> 2) + 0]); u_xlati4 = u_xlati0 << (1 & int(0x1F)); u_xlati4 = u_xlati10 + u_xlati4; u_xlati4 = u_xlati4 << (2 & int(0x1F)); u_xlat3.z = uintBitsToFloat(_output_buf_buf[(u_xlati4 >> 2) + 0]); u_xlati0 = u_xlati0 * 3 + u_xlati10; u_xlati0 = u_xlati0 << (2 & int(0x1F)); u_xlat3.w = uintBitsToFloat(_output_buf_buf[(u_xlati0 >> 2) + 0]); u_xlati10 = int(floatBitsToUint(u_xlat3.x) & 2147483648u); if(u_xlati10 != 0) { u_xlat3.x = uintBitsToFloat(floatBitsToUint(u_xlat3.x) & 2147483647u); } u_xlati9 = int(floatBitsToUint(u_xlat3.x) & 15u); u_xlatb9 = u_xlati9!=int(invLevel); u_xlatb14 = floatBitsToInt(u_xlat15)!=floatBitsToInt(u_xlat3.x); u_xlatb9 = u_xlatb14 && u_xlatb9; if(u_xlatb9){ u_xlat3.x = u_xlat15; u_xlati15 = int(0xFFFFFFFFu); } else { u_xlati15 = int((u_xlati10!=0) ? 0xFFFFFFFFu : uint(0)); } u_xlati10 = int(floatBitsToUint(u_xlat3.y) & 2147483648u); if(u_xlati10 != 0) { u_xlat3.y = uintBitsToFloat(floatBitsToUint(u_xlat3.y) & 2147483647u); u_xlati15 = int(0xFFFFFFFFu); } u_xlati10 = int(floatBitsToUint(u_xlat3.y) & 15u); u_xlatb10 = u_xlati10!=int(invLevel); u_xlatb9 = floatBitsToInt(u_xlat2)!=floatBitsToInt(u_xlat3.y); u_xlatb10 = u_xlatb10 && u_xlatb9; if(u_xlatb10){ u_xlat3.y = u_xlat2; u_xlati15 = int(0xFFFFFFFFu); } u_xlati10 = int(floatBitsToUint(u_xlat3.z) & 2147483648u); if(u_xlati10 != 0) { u_xlat3.z = uintBitsToFloat(floatBitsToUint(u_xlat3.z) & 2147483647u); u_xlati15 = int(0xFFFFFFFFu); } u_xlati10 = int(floatBitsToUint(u_xlat3.z) & 15u); u_xlatb10 = u_xlati10!=int(invLevel); u_xlatb2 = floatBitsToInt(u_xlat7)!=floatBitsToInt(u_xlat3.z); u_xlatb10 = u_xlatb10 && u_xlatb2; if(u_xlatb10){ u_xlat3.z = u_xlat7; u_xlati15 = int(0xFFFFFFFFu); } u_xlati10 = int(floatBitsToUint(u_xlat3.w) & 2147483648u); if(u_xlati10 != 0) { u_xlat3.w = uintBitsToFloat(floatBitsToUint(u_xlat3.w) & 2147483647u); u_xlati15 = int(0xFFFFFFFFu); } u_xlati10 = int(floatBitsToUint(u_xlat3.w) & 15u); u_xlatb10 = u_xlati10!=int(invLevel); u_xlatb2 = floatBitsToInt(u_xlat5)!=floatBitsToInt(u_xlat3.w); u_xlatb10 = u_xlatb10 && u_xlatb2; if(u_xlatb10){ u_xlat3.w = u_xlat5; u_xlati15 = int(0xFFFFFFFFu); } if(u_xlati15 != 0) { _output_buf_buf[(u_xlati12 >> 2)] = floatBitsToUint(u_xlat3.x); _output_buf_buf[(u_xlati17 >> 2)] = floatBitsToUint(u_xlat3.y); _output_buf_buf[(u_xlati4 >> 2)] = floatBitsToUint(u_xlat3.z); _output_buf_buf[(u_xlati0 >> 2)] = floatBitsToUint(u_xlat3.w); imageStore(translationTable, ivec2(u_xlatu1.xy), u_xlat3); } return; }  AMaincbTranslationTableData lookupTexture lookupTexture _output_buftranslationTableL#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform cbTranslationTableData { uint level; uint invLevel; uint width; uint height; uint bufferOffsetLevel; uint bufferOffsetLevelAbove; uint numEvictedTiles; uint numAddedTiles; uvec4 addedTiles[32]; uvec4 evictedTiles[16]; }; UNITY_LOCATION(0) uniform usampler2D lookupTexture; layout(std430, binding = 0) buffer _output_buf { uint _output_buf_buf[]; }; writeonly layout(binding=1) uniform image2D translationTable; int u_xlati0; uvec4 u_xlatu1; float u_xlat2; int u_xlati2; uvec2 u_xlatu2; bool u_xlatb2; vec4 u_xlat3; int u_xlati4; ivec4 u_xlati5; uvec2 u_xlatu5; ivec4 u_xlati6; uvec2 u_xlatu6; ivec4 u_xlati7; ivec4 u_xlati8; float u_xlat9; int u_xlati9; float u_xlat11; int u_xlati11; ivec3 u_xlati13; uvec2 u_xlatu13; bool u_xlatb13; int u_xlati18; uvec2 u_xlatu18; bool u_xlatb18; int u_xlati19; int u_xlati20; bvec2 u_xlatb20; ivec2 u_xlati22; uint u_xlatu22; bool u_xlatb22; ivec2 u_xlati24; bool u_xlatb24; float u_xlat27; int u_xlati27; bool u_xlatb27; int u_xlati28; uint u_xlatu28; bool u_xlatb28; int u_xlati29; int u_xlati31; uint u_xlatu31; bool u_xlatb31; layout(local_size_x = 32, local_size_y = 32, local_size_z = 1) in; void main() { u_xlati0 = int(height) * int(width); u_xlati9 = u_xlati0 >> (2 & int(0x1F)); u_xlatu1.xy = gl_WorkGroupID.xy * uvec2(32u, 32u) + gl_LocalInvocationID.xy; u_xlatu18.xy = u_xlatu1.xy >> (uvec2(1u, 1u) & uint(0x1F)); u_xlatu2.x = width >> (1u & uint(0x1F)); u_xlati18 = int(u_xlatu18.y) * int(u_xlatu2.x) + int(u_xlatu18.x); u_xlati18 = u_xlati18 + int(bufferOffsetLevelAbove); u_xlati27 = u_xlati18 << (2 & int(0x1F)); u_xlat27 = uintBitsToFloat(_output_buf_buf[(u_xlati27 >> 2) + 0]); u_xlati2 = u_xlati18 + u_xlati9; u_xlati2 = u_xlati2 << (2 & int(0x1F)); u_xlat2 = uintBitsToFloat(_output_buf_buf[(u_xlati2 >> 2) + 0]); u_xlati11 = u_xlati9 << (1 & int(0x1F)); u_xlati11 = u_xlati18 + u_xlati11; u_xlati11 = u_xlati11 << (2 & int(0x1F)); u_xlat11 = uintBitsToFloat(_output_buf_buf[(u_xlati11 >> 2) + 0]); u_xlati9 = u_xlati9 * 3 + u_xlati18; u_xlati9 = u_xlati9 << (2 & int(0x1F)); u_xlat9 = uintBitsToFloat(_output_buf_buf[(u_xlati9 >> 2) + 0]); u_xlatb20.xy = greaterThanEqual(u_xlatu1.xyxy, uvec4(width, height, width, height)).xy; u_xlatb18 = u_xlatb20.y || u_xlatb20.x; if(u_xlatb18){ return; } u_xlati18 = int(u_xlatu1.y) * int(width) + int(u_xlatu1.x); u_xlati18 = u_xlati18 + int(bufferOffsetLevel); u_xlati20 = u_xlati18 << (2 & int(0x1F)); u_xlat3.x = uintBitsToFloat(_output_buf_buf[(u_xlati20 >> 2) + 0]); u_xlati29 = int(width) * int(height) + u_xlati18; u_xlati29 = u_xlati29 << (2 & int(0x1F)); u_xlat3.y = uintBitsToFloat(_output_buf_buf[(u_xlati29 >> 2) + 0]); u_xlati4 = u_xlati0 << (1 & int(0x1F)); u_xlati4 = u_xlati18 + u_xlati4; u_xlati4 = u_xlati4 << (2 & int(0x1F)); u_xlat3.z = uintBitsToFloat(_output_buf_buf[(u_xlati4 >> 2) + 0]); u_xlati0 = u_xlati0 * 3 + u_xlati18; u_xlati0 = u_xlati0 << (2 & int(0x1F)); u_xlat3.w = uintBitsToFloat(_output_buf_buf[(u_xlati0 >> 2) + 0]); u_xlatu1.zw = uvec2(level); u_xlati5 = ivec4(texelFetch(lookupTexture, ivec2(u_xlatu1.xy), int(u_xlatu1.w))); u_xlati18 = int(floatBitsToUint(u_xlat3.x) & 2147483648u); u_xlati19 = int((u_xlati18!=0) ? 0xFFFFFFFFu : uint(0)); if(u_xlati18 != 0) { u_xlat3.x = uintBitsToFloat(floatBitsToUint(u_xlat3.x) & 2147483647u); } u_xlati18 = int(floatBitsToUint(u_xlat3.x) & 15u); u_xlatb18 = u_xlati18==int(invLevel); if(u_xlatb18){ u_xlatu6.y = 0u; u_xlatu13.x = uint(0u); u_xlatu13.y = uint(0u); u_xlati18 = 0; while(true){ u_xlatb28 = u_xlatu13.y>=numEvictedTiles; u_xlati18 = 0; if(u_xlatb28){break;} u_xlatu28 = u_xlatu13.y >> (2u & uint(0x1F)); u_xlatu31 = u_xlatu13.y & 3u; u_xlati24.x = 0 - int(u_xlatu31); u_xlati7.xyz = ivec3(uvec3(lessThan(uvec4(u_xlatu31), uvec4(1u, 2u, 3u, 0u)).xyz) * 0xFFFFFFFFu); u_xlati8.y = int(uint(u_xlati24.x) & uint(u_xlati7.y)); u_xlati31 = int(u_xlatu31) + int(0xFFFFFFFDu); u_xlati8.z = (u_xlati7.y != 0) ? 0 : u_xlati31; u_xlati8.w = int((u_xlati7.z==0) ? 0xFFFFFFFFu : uint(0)); u_xlati8.x = u_xlati7.x; u_xlati7 = ivec4(uvec4(u_xlati8) & evictedTiles[int(u_xlatu28)]); u_xlati24.xy = ivec2(uvec2(u_xlati7.yw) | uvec2(u_xlati7.xz)); u_xlati28 = int(uint(u_xlati24.y) | uint(u_xlati24.x)); u_xlatb28 = u_xlati5.x==u_xlati28; if(u_xlatb28){ u_xlatu13.x = 4294967295u; u_xlati18 = int(0xFFFFFFFFu); break; } u_xlatu6.x = u_xlatu13.y + 1u; u_xlatu13.xy = u_xlatu6.yx; u_xlatb18 = u_xlatb28; } if(u_xlati18 == 0) { u_xlatu13.x = 0u; } if(u_xlatu13.x != uint(0)) { u_xlat3.x = u_xlat27; u_xlati19 = int(0xFFFFFFFFu); } } else { u_xlatu6.y = 0u; u_xlatu13.x = uint(0u); u_xlatu13.y = uint(0u); u_xlati18 = 0; while(true){ u_xlatb28 = u_xlatu13.y>=numAddedTiles; u_xlati18 = 0; if(u_xlatb28){break;} u_xlatu28 = u_xlatu13.y >> (1u & uint(0x1F)); u_xlatu31 = uint(int(bitfieldInsert(0, int(u_xlatu13.y), 1 & int(0x1F), 1))); u_xlati7.x = int((u_xlatu31<1u) ? 0xFFFFFFFFu : uint(0)); u_xlati7.y = int((u_xlati7.x==0) ? 0xFFFFFFFFu : uint(0)); u_xlati24.xy = ivec2(uvec2(u_xlati7.xy) & addedTiles[int(u_xlatu28)].xz); u_xlati24.x = int(uint(u_xlati24.y) | uint(u_xlati24.x)); u_xlatb24 = u_xlati5.x==u_xlati24.x; if(u_xlatb24){ u_xlati31 = int(u_xlatu31) + 1; u_xlatu31 = uint(u_xlati31) + 4294967295u; u_xlati7.x = int((u_xlatu31<1u) ? 0xFFFFFFFFu : uint(0)); u_xlati7.y = int((u_xlati7.x==0) ? 0xFFFFFFFFu : uint(0)); u_xlati7.xy = ivec2(uvec2(u_xlati7.xy) & addedTiles[int(u_xlatu28)].yw); u_xlatu13.x = uint(u_xlati7.y) | uint(u_xlati7.x); u_xlati18 = int(0xFFFFFFFFu); break; } u_xlatu6.x = u_xlatu13.y + 1u; u_xlatu13.xy = u_xlatu6.yx; u_xlatb18 = u_xlatb24; } if(u_xlati18 == 0) { u_xlatu13.x = 4294967295u; } u_xlatb18 = int(u_xlatu13.x)!=int(0xFFFFFFFFu); if(u_xlatb18){ u_xlati18 = int(u_xlatu13.x & 4294967280u); u_xlat3.x = uintBitsToFloat(uint(u_xlati18) | invLevel); u_xlati19 = int(0xFFFFFFFFu); } else { u_xlatb18 = floatBitsToInt(u_xlat27)!=floatBitsToInt(u_xlat3.x); if(u_xlatb18){ u_xlat3.x = u_xlat27; u_xlati19 = int(0xFFFFFFFFu); } } } u_xlati18 = int(floatBitsToUint(u_xlat3.y) & 2147483648u); if(u_xlati18 != 0) { u_xlat3.y = uintBitsToFloat(floatBitsToUint(u_xlat3.y) & 2147483647u); u_xlati19 = int(0xFFFFFFFFu); } u_xlati18 = int(floatBitsToUint(u_xlat3.y) & 15u); u_xlatb18 = u_xlati18==int(invLevel); if(u_xlatb18){ u_xlatu6.y = 0u; u_xlatu18.x = uint(0u); u_xlatu18.y = uint(0u); u_xlati28 = 0; while(true){ u_xlatb13 = u_xlatu18.y>=numEvictedTiles; u_xlati28 = 0; if(u_xlatb13){break;} u_xlatu13.x = u_xlatu18.y >> (2u & uint(0x1F)); u_xlatu22 = u_xlatu18.y & 3u; u_xlati31 = 0 - int(u_xlatu22); u_xlati7.xyz = ivec3(uvec3(lessThan(uvec4(u_xlatu22), uvec4(1u, 2u, 3u, 0u)).xyz) * 0xFFFFFFFFu); u_xlati8.y = int(uint(u_xlati31) & uint(u_xlati7.y)); u_xlati22.x = int(u_xlatu22) + int(0xFFFFFFFDu); u_xlati8.z = (u_xlati7.y != 0) ? 0 : u_xlati22.x; u_xlati8.w = int((u_xlati7.z==0) ? 0xFFFFFFFFu : uint(0)); u_xlati8.x = u_xlati7.x; u_xlati7 = ivec4(uvec4(u_xlati8) & evictedTiles[int(u_xlatu13.x)]); u_xlati13.xy = ivec2(uvec2(u_xlati7.yw) | uvec2(u_xlati7.xz)); u_xlati13.x = int(uint(u_xlati13.y) | uint(u_xlati13.x)); u_xlatb13 = u_xlati5.y==u_xlati13.x; if(u_xlatb13){ u_xlatu18.x = 4294967295u; u_xlati28 = int(0xFFFFFFFFu); break; } u_xlatu6.x = u_xlatu18.y + 1u; u_xlatu18.xy = u_xlatu6.yx; u_xlatb28 = u_xlatb13; } if(u_xlati28 == 0) { u_xlatu18.x = 0u; } if(u_xlatu18.x != uint(0)) { u_xlat3.y = u_xlat2; u_xlati19 = int(0xFFFFFFFFu); } } else { u_xlatu6.y = 0u; u_xlatu18.x = uint(0u); u_xlatu18.y = uint(0u); u_xlati28 = 0; while(true){ u_xlatb13 = u_xlatu18.y>=numAddedTiles; u_xlati28 = 0; if(u_xlatb13){break;} u_xlatu13.x = u_xlatu18.y >> (1u & uint(0x1F)); u_xlatu22 = uint(int(bitfieldInsert(0, int(u_xlatu18.y), 1 & int(0x1F), 1))); u_xlati7.x = int((u_xlatu22<1u) ? 0xFFFFFFFFu : uint(0)); u_xlati7.y = int((u_xlati7.x==0) ? 0xFFFFFFFFu : uint(0)); u_xlati24.xy = ivec2(uvec2(u_xlati7.xy) & addedTiles[int(u_xlatu13.x)].xz); u_xlati31 = int(uint(u_xlati24.y) | uint(u_xlati24.x)); u_xlatb31 = u_xlati5.y==u_xlati31; if(u_xlatb31){ u_xlati22.x = int(u_xlatu22) + 1; u_xlatu22 = uint(u_xlati22.x) + 4294967295u; u_xlati7.x = int((u_xlatu22<1u) ? 0xFFFFFFFFu : uint(0)); u_xlati7.y = int((u_xlati7.x==0) ? 0xFFFFFFFFu : uint(0)); u_xlati13.xy = ivec2(uvec2(u_xlati7.xy) & addedTiles[int(u_xlatu13.x)].yw); u_xlatu18.x = uint(u_xlati13.y) | uint(u_xlati13.x); u_xlati28 = int(0xFFFFFFFFu); break; } u_xlatu6.x = u_xlatu18.y + 1u; u_xlatu18.xy = u_xlatu6.yx; u_xlatb28 = u_xlatb31; } if(u_xlati28 == 0) { u_xlatu18.x = 4294967295u; } u_xlatb27 = int(u_xlatu18.x)!=int(0xFFFFFFFFu); if(u_xlatb27){ u_xlati18 = int(u_xlatu18.x & 4294967280u); u_xlat3.y = uintBitsToFloat(uint(u_xlati18) | invLevel); u_xlati19 = int(0xFFFFFFFFu); } else { u_xlatb18 = floatBitsToInt(u_xlat2)!=floatBitsToInt(u_xlat3.y); if(u_xlatb18){ u_xlat3.y = u_xlat2; u_xlati19 = int(0xFFFFFFFFu); } } } u_xlati18 = int(floatBitsToUint(u_xlat3.z) & 2147483648u); if(u_xlati18 != 0) { u_xlat3.z = uintBitsToFloat(floatBitsToUint(u_xlat3.z) & 2147483647u); u_xlati19 = int(0xFFFFFFFFu); } u_xlati18 = int(floatBitsToUint(u_xlat3.z) & 15u); u_xlatb18 = u_xlati18==int(invLevel); if(u_xlatb18){ u_xlatu5.y = 0u; u_xlatu18.x = uint(0u); u_xlatu18.y = uint(0u); u_xlati28 = 0; while(true){ u_xlatb2 = u_xlatu18.y>=numEvictedTiles; u_xlati28 = 0; if(u_xlatb2){break;} u_xlatu2.x = u_xlatu18.y >> (2u & uint(0x1F)); u_xlatu13.x = u_xlatu18.y & 3u; u_xlati22.x = 0 - int(u_xlatu13.x); u_xlati6.xyz = ivec3(uvec3(lessThan(u_xlatu13.xxxx, uvec4(1u, 2u, 3u, 0u)).xyz) * 0xFFFFFFFFu); u_xlati7.y = int(uint(u_xlati22.x) & uint(u_xlati6.y)); u_xlati13.x = int(u_xlatu13.x) + int(0xFFFFFFFDu); u_xlati7.z = (u_xlati6.y != 0) ? 0 : u_xlati13.x; u_xlati7.w = int((u_xlati6.z==0) ? 0xFFFFFFFFu : uint(0)); u_xlati7.x = u_xlati6.x; u_xlati6 = ivec4(uvec4(u_xlati7) & evictedTiles[int(u_xlatu2.x)]); u_xlati13.xy = ivec2(uvec2(u_xlati6.yw) | uvec2(u_xlati6.xz)); u_xlati2 = int(uint(u_xlati13.y) | uint(u_xlati13.x)); u_xlatb2 = u_xlati5.z==u_xlati2; if(u_xlatb2){ u_xlatu18.x = 4294967295u; u_xlati28 = int(0xFFFFFFFFu); break; } u_xlatu5.x = u_xlatu18.y + 1u; u_xlatu18.xy = u_xlatu5.yx; u_xlatb28 = u_xlatb2; } if(u_xlati28 == 0) { u_xlatu18.x = 0u; } if(u_xlatu18.x != uint(0)) { u_xlat3.z = u_xlat11; u_xlati19 = int(0xFFFFFFFFu); } } else { u_xlatu5.y = 0u; u_xlatu18.x = uint(0u); u_xlatu18.y = uint(0u); u_xlati28 = 0; while(true){ u_xlatb2 = u_xlatu18.y>=numAddedTiles; u_xlati28 = 0; if(u_xlatb2){break;} u_xlatu2.x = u_xlatu18.y >> (1u & uint(0x1F)); u_xlatu13.x = uint(int(bitfieldInsert(0, int(u_xlatu18.y), 1 & int(0x1F), 1))); u_xlati6.x = int((u_xlatu13.x<1u) ? 0xFFFFFFFFu : uint(0)); u_xlati6.y = int((u_xlati6.x==0) ? 0xFFFFFFFFu : uint(0)); u_xlati22.xy = ivec2(uvec2(u_xlati6.xy) & addedTiles[int(u_xlatu2.x)].xz); u_xlati22.x = int(uint(u_xlati22.y) | uint(u_xlati22.x)); u_xlatb22 = u_xlati5.z==u_xlati22.x; if(u_xlatb22){ u_xlati13.x = int(u_xlatu13.x) + 1; u_xlatu13.x = uint(u_xlati13.x) + 4294967295u; u_xlati6.x = int((u_xlatu13.x<1u) ? 0xFFFFFFFFu : uint(0)); u_xlati6.y = int((u_xlati6.x==0) ? 0xFFFFFFFFu : uint(0)); u_xlati13.xz = ivec2(uvec2(u_xlati6.xy) & addedTiles[int(u_xlatu2.x)].yw); u_xlatu18.x = uint(u_xlati13.z) | uint(u_xlati13.x); u_xlati28 = int(0xFFFFFFFFu); break; } u_xlatu5.x = u_xlatu18.y + 1u; u_xlatu18.xy = u_xlatu5.yx; u_xlatb28 = u_xlatb22; } if(u_xlati28 == 0) { u_xlatu18.x = 4294967295u; } u_xlatb27 = int(u_xlatu18.x)!=int(0xFFFFFFFFu); if(u_xlatb27){ u_xlati18 = int(u_xlatu18.x & 4294967280u); u_xlat3.z = uintBitsToFloat(uint(u_xlati18) | invLevel); u_xlati19 = int(0xFFFFFFFFu); } else { u_xlatb18 = floatBitsToInt(u_xlat11)!=floatBitsToInt(u_xlat3.z); if(u_xlatb18){ u_xlat3.z = u_xlat11; u_xlati19 = int(0xFFFFFFFFu); } } } u_xlati18 = int(floatBitsToUint(u_xlat3.w) & 2147483648u); if(u_xlati18 != 0) { u_xlat3.w = uintBitsToFloat(floatBitsToUint(u_xlat3.w) & 2147483647u); u_xlati19 = int(0xFFFFFFFFu); } u_xlati18 = int(floatBitsToUint(u_xlat3.w) & 15u); u_xlatb18 = u_xlati18==int(invLevel); if(u_xlatb18){ u_xlatu2.y = 0u; u_xlatu18.x = uint(0u); u_xlatu18.y = uint(0u); u_xlati28 = 0; while(true){ u_xlatb13 = u_xlatu18.y>=numEvictedTiles; u_xlati28 = 0; if(u_xlatb13){break;} u_xlatu13.x = u_xlatu18.y >> (2u & uint(0x1F)); u_xlatu22 = u_xlatu18.y & 3u; u_xlati31 = 0 - int(u_xlatu22); u_xlati5.xyz = ivec3(uvec3(lessThan(uvec4(u_xlatu22), uvec4(1u, 2u, 3u, 0u)).xyz) * 0xFFFFFFFFu); u_xlati6.y = int(uint(u_xlati31) & uint(u_xlati5.y)); u_xlati22.x = int(u_xlatu22) + int(0xFFFFFFFDu); u_xlati6.z = (u_xlati5.y != 0) ? 0 : u_xlati22.x; u_xlati6.w = int((u_xlati5.z==0) ? 0xFFFFFFFFu : uint(0)); u_xlati6.x = u_xlati5.x; u_xlati6 = ivec4(uvec4(u_xlati6) & evictedTiles[int(u_xlatu13.x)]); u_xlati13.xy = ivec2(uvec2(u_xlati6.yw) | uvec2(u_xlati6.xz)); u_xlati13.x = int(uint(u_xlati13.y) | uint(u_xlati13.x)); u_xlatb13 = u_xlati5.w==u_xlati13.x; if(u_xlatb13){ u_xlatu18.x = 4294967295u; u_xlati28 = int(0xFFFFFFFFu); break; } u_xlatu2.x = u_xlatu18.y + 1u; u_xlatu18.xy = u_xlatu2.yx; u_xlatb28 = u_xlatb13; } if(u_xlati28 == 0) { u_xlatu18.x = 0u; } if(u_xlatu18.x != uint(0)) { u_xlat3.w = u_xlat9; u_xlati19 = int(0xFFFFFFFFu); } } else { u_xlatu2.y = 0u; u_xlatu18.x = uint(0u); u_xlatu18.y = uint(0u); u_xlati28 = 0; while(true){ u_xlatb13 = u_xlatu18.y>=numAddedTiles; u_xlati28 = 0; if(u_xlatb13){break;} u_xlatu13.x = u_xlatu18.y >> (1u & uint(0x1F)); u_xlatu22 = uint(int(bitfieldInsert(0, int(u_xlatu18.y), 1 & int(0x1F), 1))); u_xlati5.x = int((u_xlatu22<1u) ? 0xFFFFFFFFu : uint(0)); u_xlati5.y = int((u_xlati5.x==0) ? 0xFFFFFFFFu : uint(0)); u_xlati5.xy = ivec2(uvec2(u_xlati5.xy) & addedTiles[int(u_xlatu13.x)].xz); u_xlati31 = int(uint(u_xlati5.y) | uint(u_xlati5.x)); u_xlatb31 = u_xlati5.w==u_xlati31; if(u_xlatb31){ u_xlati22.x = int(u_xlatu22) + 1; u_xlatu22 = uint(u_xlati22.x) + 4294967295u; u_xlati5.x = int((u_xlatu22<1u) ? 0xFFFFFFFFu : uint(0)); u_xlati5.y = int((u_xlati5.x==0) ? 0xFFFFFFFFu : uint(0)); u_xlati13.xy = ivec2(uvec2(u_xlati5.xy) & addedTiles[int(u_xlatu13.x)].yw); u_xlatu18.x = uint(u_xlati13.y) | uint(u_xlati13.x); u_xlati28 = int(0xFFFFFFFFu); break; } u_xlatu2.x = u_xlatu18.y + 1u; u_xlatu18.xy = u_xlatu2.yx; u_xlatb28 = u_xlatb31; } if(u_xlati28 == 0) { u_xlatu18.x = 4294967295u; } u_xlatb27 = int(u_xlatu18.x)!=int(0xFFFFFFFFu); if(u_xlatb27){ u_xlati18 = int(u_xlatu18.x & 4294967280u); u_xlat3.w = uintBitsToFloat(uint(u_xlati18) | invLevel); u_xlati19 = int(0xFFFFFFFFu); } else { u_xlatb18 = floatBitsToInt(u_xlat9)!=floatBitsToInt(u_xlat3.w); if(u_xlatb18){ u_xlat3.w = u_xlat9; u_xlati19 = int(0xFFFFFFFFu); } } } if(u_xlati19 != 0) { _output_buf_buf[(u_xlati20 >> 2)] = floatBitsToUint(u_xlat3.x); _output_buf_buf[(u_xlati29 >> 2)] = floatBitsToUint(u_xlat3.y); _output_buf_buf[(u_xlati4 >> 2)] = floatBitsToUint(u_xlat3.z); _output_buf_buf[(u_xlati0 >> 2)] = floatBitsToUint(u_xlat3.w); imageStore(translationTable, ivec2(u_xlatu1.xy), u_xlat3); } return; }  AMaincbTranslationTableData _output_buftranslationTable#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform cbTranslationTableData { uint level; uint invLevel; uint width; uint height; uint bufferOffsetLevel; uint bufferOffsetLevelAbove; uint numEvictedTiles; uint numAddedTiles; uvec4 addedTiles[32]; uvec4 evictedTiles[16]; }; layout(std430, binding = 0) buffer _output_buf { uint _output_buf_buf[]; }; writeonly layout(binding=1) uniform image2D translationTable; uvec4 u_xlatu0; int u_xlati1; bvec2 u_xlatb1; vec4 u_xlat2; int u_xlati3; int u_xlati5; bool u_xlatb5; int u_xlati7; bool u_xlatb7; int u_xlati9; bool u_xlatb11; int u_xlati13; layout(local_size_x = 32, local_size_y = 32, local_size_z = 1) in; void main() { u_xlatu0 = gl_WorkGroupID.xyyy * uvec4(32u, 32u, 32u, 32u) + gl_LocalInvocationID.xyyy; u_xlatb1.xy = greaterThanEqual(u_xlatu0.xwxx, uvec4(width, height, width, width)).xy; u_xlatb1.x = u_xlatb1.y || u_xlatb1.x; if(u_xlatb1.x){ return; } u_xlati1 = int(height) * int(width); u_xlati5 = int(u_xlatu0.w) * int(width) + int(u_xlatu0.x); u_xlati5 = u_xlati5 + int(bufferOffsetLevel); u_xlati9 = u_xlati5 << (2 & int(0x1F)); u_xlat2.x = uintBitsToFloat(_output_buf_buf[(u_xlati9 >> 2) + 0]); u_xlati13 = int(width) * int(height) + u_xlati5; u_xlati13 = u_xlati13 << (2 & int(0x1F)); u_xlat2.y = uintBitsToFloat(_output_buf_buf[(u_xlati13 >> 2) + 0]); u_xlati3 = u_xlati1 << (1 & int(0x1F)); u_xlati3 = u_xlati5 + u_xlati3; u_xlati3 = u_xlati3 << (2 & int(0x1F)); u_xlat2.z = uintBitsToFloat(_output_buf_buf[(u_xlati3 >> 2) + 0]); u_xlati1 = u_xlati1 * 3 + u_xlati5; u_xlati1 = u_xlati1 << (2 & int(0x1F)); u_xlat2.w = uintBitsToFloat(_output_buf_buf[(u_xlati1 >> 2) + 0]); u_xlati5 = int(floatBitsToUint(u_xlat2.x) & 2147483648u); if(u_xlati5 != 0) { u_xlat2.x = uintBitsToFloat(floatBitsToUint(u_xlat2.x) & 2147483647u); } u_xlati7 = int(floatBitsToUint(u_xlat2.x) & 15u); u_xlatb7 = u_xlati7!=int(invLevel); u_xlatb11 = floatBitsToInt(u_xlat2.x)!=int(0x7FFFFFFFu); u_xlatb7 = u_xlatb11 && u_xlatb7; if(u_xlatb7){ u_xlat2.x = intBitsToFloat(int(0x7FFFFFFFu)); u_xlati7 = int(0xFFFFFFFFu); } else { u_xlati7 = int((u_xlati5!=0) ? 0xFFFFFFFFu : uint(0)); } u_xlati5 = int(floatBitsToUint(u_xlat2.y) & 2147483648u); if(u_xlati5 != 0) { u_xlat2.y = uintBitsToFloat(floatBitsToUint(u_xlat2.y) & 2147483647u); u_xlati7 = int(0xFFFFFFFFu); } u_xlati5 = int(floatBitsToUint(u_xlat2.y) & 15u); u_xlatb5 = u_xlati5!=int(invLevel); u_xlatb11 = floatBitsToInt(u_xlat2.y)!=int(0x7FFFFFFFu); u_xlatb5 = u_xlatb5 && u_xlatb11; if(u_xlatb5){ u_xlat2.y = intBitsToFloat(int(0x7FFFFFFFu)); u_xlati7 = int(0xFFFFFFFFu); } u_xlati5 = int(floatBitsToUint(u_xlat2.z) & 2147483648u); if(u_xlati5 != 0) { u_xlat2.z = uintBitsToFloat(floatBitsToUint(u_xlat2.z) & 2147483647u); u_xlati7 = int(0xFFFFFFFFu); } u_xlati5 = int(floatBitsToUint(u_xlat2.z) & 15u); u_xlatb5 = u_xlati5!=int(invLevel); u_xlatb11 = floatBitsToInt(u_xlat2.z)!=int(0x7FFFFFFFu); u_xlatb5 = u_xlatb5 && u_xlatb11; if(u_xlatb5){ u_xlat2.z = intBitsToFloat(int(0x7FFFFFFFu)); u_xlati7 = int(0xFFFFFFFFu); } u_xlati5 = int(floatBitsToUint(u_xlat2.w) & 2147483648u); if(u_xlati5 != 0) { u_xlat2.w = uintBitsToFloat(floatBitsToUint(u_xlat2.w) & 2147483647u); u_xlati7 = int(0xFFFFFFFFu); } u_xlati5 = int(floatBitsToUint(u_xlat2.w) & 15u); u_xlatb5 = u_xlati5!=int(invLevel); u_xlatb11 = floatBitsToInt(u_xlat2.w)!=int(0x7FFFFFFFu); u_xlatb5 = u_xlatb5 && u_xlatb11; if(u_xlatb5){ u_xlat2.w = intBitsToFloat(int(0x7FFFFFFFu)); u_xlati7 = int(0xFFFFFFFFu); } if(u_xlati7 != 0) { _output_buf_buf[(u_xlati9 >> 2)] = floatBitsToUint(u_xlat2.x); _output_buf_buf[(u_xlati13 >> 2)] = floatBitsToUint(u_xlat2.y); _output_buf_buf[(u_xlati3 >> 2)] = floatBitsToUint(u_xlat2.z); _output_buf_buf[(u_xlati1 >> 2)] = floatBitsToUint(u_xlat2.w); imageStore(translationTable, ivec2(u_xlatu0.xy), u_xlat2); } return; }  AMaincbTranslationTableData lookupTexture lookupTexture _output_buftranslationTable|H#version 430 #extension GL_ARB_shading_language_420pack : require #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif precise vec4 u_xlat_precise_vec4; precise ivec4 u_xlat_precise_ivec4; precise bvec4 u_xlat_precise_bvec4; precise uvec4 u_xlat_precise_uvec4; UNITY_BINDING(0) uniform cbTranslationTableData { uint level; uint invLevel; uint width; uint height; uint bufferOffsetLevel; uint bufferOffsetLevelAbove; uint numEvictedTiles; uint numAddedTiles; uvec4 addedTiles[32]; uvec4 evictedTiles[16]; }; UNITY_LOCATION(0) uniform usampler2D lookupTexture; layout(std430, binding = 0) buffer _output_buf { uint _output_buf_buf[]; }; writeonly layout(binding=1) uniform image2D translationTable; uvec4 u_xlatu0; int u_xlati1; bvec2 u_xlatb1; vec4 u_xlat2; int u_xlati3; ivec4 u_xlati4; uvec2 u_xlatu4; bool u_xlatb4; ivec4 u_xlati5; uvec2 u_xlatu5; bool u_xlatb5; ivec4 u_xlati6; ivec4 u_xlati7; int u_xlati9; uint u_xlatu9; bool u_xlatb9; uvec2 u_xlatu11; ivec3 u_xlati13; int u_xlati16; bool u_xlatb16; int u_xlati17; int u_xlati20; bool u_xlatb20; ivec2 u_xlati21; bool u_xlatb21; int u_xlati24; int u_xlati25; int u_xlati27; uint u_xlatu27; layout(local_size_x = 32, local_size_y = 32, local_size_z = 1) in; void main() { u_xlatu0.xy = gl_WorkGroupID.xy * uvec2(32u, 32u) + gl_LocalInvocationID.xy; u_xlatb1.xy = greaterThanEqual(u_xlatu0.xyxx, uvec4(width, height, width, width)).xy; u_xlatb1.x = u_xlatb1.y || u_xlatb1.x; if(u_xlatb1.x){ return; } u_xlati1 = int(height) * int(width); u_xlati9 = int(u_xlatu0.y) * int(width) + int(u_xlatu0.x); u_xlati9 = u_xlati9 + int(bufferOffsetLevel); u_xlati17 = u_xlati9 << (2 & int(0x1F)); u_xlat2.x = uintBitsToFloat(_output_buf_buf[(u_xlati17 >> 2) + 0]); u_xlati25 = int(width) * int(height) + u_xlati9; u_xlati25 = u_xlati25 << (2 & int(0x1F)); u_xlat2.y = uintBitsToFloat(_output_buf_buf[(u_xlati25 >> 2) + 0]); u_xlati3 = u_xlati1 << (1 & int(0x1F)); u_xlati3 = u_xlati9 + u_xlati3; u_xlati3 = u_xlati3 << (2 & int(0x1F)); u_xlat2.z = uintBitsToFloat(_output_buf_buf[(u_xlati3 >> 2) + 0]); u_xlati1 = u_xlati1 * 3 + u_xlati9; u_xlati1 = u_xlati1 << (2 & int(0x1F)); u_xlat2.w = uintBitsToFloat(_output_buf_buf[(u_xlati1 >> 2) + 0]); u_xlatu0.zw = uvec2(level); u_xlati4 = ivec4(texelFetch(lookupTexture, ivec2(u_xlatu0.xy), int(u_xlatu0.w))); u_xlati16 = int(floatBitsToUint(u_xlat2.x) & 2147483648u); u_xlati24 = int((u_xlati16!=0) ? 0xFFFFFFFFu : uint(0)); if(u_xlati16 != 0) { u_xlat2.x = uintBitsToFloat(floatBitsToUint(u_xlat2.x) & 2147483647u); } u_xlati16 = int(floatBitsToUint(u_xlat2.x) & 15u); u_xlatb16 = u_xlati16==int(invLevel); if(u_xlatb16){ u_xlatu5.y = 0u; u_xlatu11.x = uint(0u); u_xlatu11.y = uint(0u); u_xlati16 = 0; while(true){ u_xlatb9 = u_xlatu11.y>=numEvictedTiles; u_xlati16 = 0; if(u_xlatb9){break;} u_xlatu9 = u_xlatu11.y >> (2u & uint(0x1F)); u_xlatu27 = u_xlatu11.y & 3u; u_xlati21.x = 0 - int(u_xlatu27); u_xlati6.xyz = ivec3(uvec3(lessThan(uvec4(u_xlatu27), uvec4(1u, 2u, 3u, 0u)).xyz) * 0xFFFFFFFFu); u_xlati7.y = int(uint(u_xlati21.x) & uint(u_xlati6.y)); u_xlati27 = int(u_xlatu27) + int(0xFFFFFFFDu); u_xlati7.z = (u_xlati6.y != 0) ? 0 : u_xlati27; u_xlati7.w = int((u_xlati6.z==0) ? 0xFFFFFFFFu : uint(0)); u_xlati7.x = u_xlati6.x; u_xlati6 = ivec4(uvec4(u_xlati7) & evictedTiles[int(u_xlatu9)]); u_xlati21.xy = ivec2(uvec2(u_xlati6.yw) | uvec2(u_xlati6.xz)); u_xlati9 = int(uint(u_xlati21.y) | uint(u_xlati21.x)); u_xlatb9 = u_xlati4.x==u_xlati9; if(u_xlatb9){ u_xlatu11.x = 4294967295u; u_xlati16 = int(0xFFFFFFFFu); break; } u_xlatu5.x = u_xlatu11.y + 1u; u_xlatu11.xy = u_xlatu5.yx; u_xlatb16 = u_xlatb9; } if(u_xlati16 == 0) { u_xlatu11.x = 0u; } if(u_xlatu11.x != uint(0)) { u_xlat2.x = intBitsToFloat(int(0x7FFFFFFFu)); u_xlati24 = int(0xFFFFFFFFu); } } else { u_xlatu5.y = 0u; u_xlatu11.x = uint(0u); u_xlatu11.y = uint(0u); u_xlati16 = 0; while(true){ u_xlatb9 = u_xlatu11.y>=numAddedTiles; u_xlati16 = 0; if(u_xlatb9){break;} u_xlatu9 = u_xlatu11.y >> (1u & uint(0x1F)); u_xlatu27 = uint(int(bitfieldInsert(0, int(u_xlatu11.y), 1 & int(0x1F), 1))); u_xlati6.x = int((u_xlatu27<1u) ? 0xFFFFFFFFu : uint(0)); u_xlati6.y = int((u_xlati6.x==0) ? 0xFFFFFFFFu : uint(0)); u_xlati21.xy = ivec2(uvec2(u_xlati6.xy) & addedTiles[int(u_xlatu9)].xz); u_xlati21.x = int(uint(u_xlati21.y) | uint(u_xlati21.x)); u_xlatb21 = u_xlati4.x==u_xlati21.x; if(u_xlatb21){ u_xlati27 = int(u_xlatu27) + 1; u_xlatu27 = uint(u_xlati27) + 4294967295u; u_xlati6.x = int((u_xlatu27<1u) ? 0xFFFFFFFFu : uint(0)); u_xlati6.y = int((u_xlati6.x==0) ? 0xFFFFFFFFu : uint(0)); u_xlati6.xy = ivec2(uvec2(u_xlati6.xy) & addedTiles[int(u_xlatu9)].yw); u_xlatu11.x = uint(u_xlati6.y) | uint(u_xlati6.x); u_xlati16 = int(0xFFFFFFFFu); break; } u_xlatu5.x = u_xlatu11.y + 1u; u_xlatu11.xy = u_xlatu5.yx; u_xlatb16 = u_xlatb21; } if(u_xlati16 == 0) { u_xlatu11.x = 4294967295u; } u_xlatb16 = int(u_xlatu11.x)!=int(0xFFFFFFFFu); if(u_xlatb16){ u_xlati16 = int(u_xlatu11.x & 4294967280u); u_xlat2.x = uintBitsToFloat(uint(u_xlati16) | invLevel); u_xlati24 = int(0xFFFFFFFFu); } else { u_xlatb16 = floatBitsToInt(u_xlat2.x)!=int(0x7FFFFFFFu); if(u_xlatb16){ u_xlati24 = int(0xFFFFFFFFu); } u_xlat2.x = intBitsToFloat(int(0x7FFFFFFFu)); } } u_xlati16 = int(floatBitsToUint(u_xlat2.y) & 2147483648u); if(u_xlati16 != 0) { u_xlat2.y = uintBitsToFloat(floatBitsToUint(u_xlat2.y) & 2147483647u); u_xlati24 = int(0xFFFFFFFFu); } u_xlati16 = int(floatBitsToUint(u_xlat2.y) & 15u); u_xlatb16 = u_xlati16==int(invLevel); if(u_xlatb16){ u_xlatu5.y = 0u; u_xlatu11.x = uint(0u); u_xlatu11.y = uint(0u); u_xlati16 = 0; while(true){ u_xlatb9 = u_xlatu11.y>=numEvictedTiles; u_xlati16 = 0; if(u_xlatb9){break;} u_xlatu9 = u_xlatu11.y >> (2u & uint(0x1F)); u_xlatu27 = u_xlatu11.y & 3u; u_xlati4.x = 0 - int(u_xlatu27); u_xlati6.xyz = ivec3(uvec3(lessThan(uvec4(u_xlatu27), uvec4(1u, 2u, 3u, 0u)).xyz) * 0xFFFFFFFFu); u_xlati7.y = int(uint(u_xlati4.x) & uint(u_xlati6.y)); u_xlati27 = int(u_xlatu27) + int(0xFFFFFFFDu); u_xlati7.z = (u_xlati6.y != 0) ? 0 : u_xlati27; u_xlati7.w = int((u_xlati6.z==0) ? 0xFFFFFFFFu : uint(0)); u_xlati7.x = u_xlati6.x; u_xlati6 = ivec4(uvec4(u_xlati7) & evictedTiles[int(u_xlatu9)]); u_xlati21.xy = ivec2(uvec2(u_xlati6.yw) | uvec2(u_xlati6.xz)); u_xlati9 = int(uint(u_xlati21.y) | uint(u_xlati21.x)); u_xlatb9 = u_xlati4.y==u_xlati9; if(u_xlatb9){ u_xlatu11.x = 4294967295u; u_xlati16 = int(0xFFFFFFFFu); break; } u_xlatu5.x = u_xlatu11.y + 1u; u_xlatu11.xy = u_xlatu5.yx; u_xlatb16 = u_xlatb9; } if(u_xlati16 == 0) { u_xlatu11.x = 0u; } if(u_xlatu11.x != uint(0)) { u_xlat2.y = intBitsToFloat(int(0x7FFFFFFFu)); u_xlati24 = int(0xFFFFFFFFu); } } else { u_xlatu5.y = 0u; u_xlatu11.x = uint(0u); u_xlatu11.y = uint(0u); u_xlati16 = 0; while(true){ u_xlatb9 = u_xlatu11.y>=numAddedTiles; u_xlati16 = 0; if(u_xlatb9){break;} u_xlatu9 = u_xlatu11.y >> (1u & uint(0x1F)); u_xlatu27 = uint(int(bitfieldInsert(0, int(u_xlatu11.y), 1 & int(0x1F), 1))); u_xlati6.x = int((u_xlatu27<1u) ? 0xFFFFFFFFu : uint(0)); u_xlati6.y = int((u_xlati6.x==0) ? 0xFFFFFFFFu : uint(0)); u_xlati21.xy = ivec2(uvec2(u_xlati6.xy) & addedTiles[int(u_xlatu9)].xz); u_xlati4.x = int(uint(u_xlati21.y) | uint(u_xlati21.x)); u_xlatb4 = u_xlati4.y==u_xlati4.x; if(u_xlatb4){ u_xlati27 = int(u_xlatu27) + 1; u_xlatu27 = uint(u_xlati27) + 4294967295u; u_xlati6.x = int((u_xlatu27<1u) ? 0xFFFFFFFFu : uint(0)); u_xlati6.y = int((u_xlati6.x==0) ? 0xFFFFFFFFu : uint(0)); u_xlati21.xy = ivec2(uvec2(u_xlati6.xy) & addedTiles[int(u_xlatu9)].yw); u_xlatu11.x = uint(u_xlati21.y) | uint(u_xlati21.x); u_xlati16 = int(0xFFFFFFFFu); break; } u_xlatu5.x = u_xlatu11.y + 1u; u_xlatu11.xy = u_xlatu5.yx; u_xlatb16 = u_xlatb4; } if(u_xlati16 == 0) { u_xlatu11.x = 4294967295u; } u_xlatb16 = int(u_xlatu11.x)!=int(0xFFFFFFFFu); if(u_xlatb16){ u_xlati16 = int(u_xlatu11.x & 4294967280u); u_xlat2.y = uintBitsToFloat(uint(u_xlati16) | invLevel); u_xlati24 = int(0xFFFFFFFFu); } else { u_xlatb16 = floatBitsToInt(u_xlat2.y)!=int(0x7FFFFFFFu); if(u_xlatb16){ u_xlati24 = int(0xFFFFFFFFu); } u_xlat2.y = intBitsToFloat(int(0x7FFFFFFFu)); } } u_xlati16 = int(floatBitsToUint(u_xlat2.z) & 2147483648u); if(u_xlati16 != 0) { u_xlat2.z = uintBitsToFloat(floatBitsToUint(u_xlat2.z) & 2147483647u); u_xlati24 = int(0xFFFFFFFFu); } u_xlati16 = int(floatBitsToUint(u_xlat2.z) & 15u); u_xlatb16 = u_xlati16==int(invLevel); if(u_xlatb16){ u_xlatu4.y = 0u; u_xlatu11.x = uint(0u); u_xlatu11.y = uint(0u); u_xlati16 = 0; while(true){ u_xlatb9 = u_xlatu11.y>=numEvictedTiles; u_xlati16 = 0; if(u_xlatb9){break;} u_xlatu9 = u_xlatu11.y >> (2u & uint(0x1F)); u_xlatu27 = u_xlatu11.y & 3u; u_xlati5.x = 0 - int(u_xlatu27); u_xlati13.xyz = ivec3(uvec3(lessThan(uvec4(u_xlatu27), uvec4(1u, 2u, 3u, 3u)).xyz) * 0xFFFFFFFFu); u_xlati6.y = int(uint(u_xlati5.x) & uint(u_xlati13.y)); u_xlati27 = int(u_xlatu27) + int(0xFFFFFFFDu); u_xlati6.z = (u_xlati13.y != 0) ? 0 : u_xlati27; u_xlati6.w = int((u_xlati13.z==0) ? 0xFFFFFFFFu : uint(0)); u_xlati6.x = u_xlati13.x; u_xlati5 = ivec4(uvec4(u_xlati6) & evictedTiles[int(u_xlatu9)]); u_xlati5.xy = ivec2(uvec2(u_xlati5.yw) | uvec2(u_xlati5.xz)); u_xlati9 = int(uint(u_xlati5.y) | uint(u_xlati5.x)); u_xlatb9 = u_xlati4.z==u_xlati9; if(u_xlatb9){ u_xlatu11.x = 4294967295u; u_xlati16 = int(0xFFFFFFFFu); break; } u_xlatu4.x = u_xlatu11.y + 1u; u_xlatu11.xy = u_xlatu4.yx; u_xlatb16 = u_xlatb9; } if(u_xlati16 == 0) { u_xlatu11.x = 0u; } if(u_xlatu11.x != uint(0)) { u_xlat2.z = intBitsToFloat(int(0x7FFFFFFFu)); u_xlati24 = int(0xFFFFFFFFu); } } else { u_xlatu4.y = 0u; u_xlatu11.x = uint(0u); u_xlatu11.y = uint(0u); u_xlati16 = 0; while(true){ u_xlatb9 = u_xlatu11.y>=numAddedTiles; u_xlati16 = 0; if(u_xlatb9){break;} u_xlatu9 = u_xlatu11.y >> (1u & uint(0x1F)); u_xlatu27 = uint(int(bitfieldInsert(0, int(u_xlatu11.y), 1 & int(0x1F), 1))); u_xlati5.x = int((u_xlatu27<1u) ? 0xFFFFFFFFu : uint(0)); u_xlati5.y = int((u_xlati5.x==0) ? 0xFFFFFFFFu : uint(0)); u_xlati5.xy = ivec2(uvec2(u_xlati5.xy) & addedTiles[int(u_xlatu9)].xz); u_xlati5.x = int(uint(u_xlati5.y) | uint(u_xlati5.x)); u_xlatb5 = u_xlati4.z==u_xlati5.x; if(u_xlatb5){ u_xlati27 = int(u_xlatu27) + 1; u_xlatu27 = uint(u_xlati27) + 4294967295u; u_xlati6.x = int((u_xlatu27<1u) ? 0xFFFFFFFFu : uint(0)); u_xlati6.y = int((u_xlati6.x==0) ? 0xFFFFFFFFu : uint(0)); u_xlati13.xy = ivec2(uvec2(u_xlati6.xy) & addedTiles[int(u_xlatu9)].yw); u_xlatu11.x = uint(u_xlati13.y) | uint(u_xlati13.x); u_xlati16 = int(0xFFFFFFFFu); break; } u_xlatu4.x = u_xlatu11.y + 1u; u_xlatu11.xy = u_xlatu4.yx; u_xlatb16 = u_xlatb5; } if(u_xlati16 == 0) { u_xlatu11.x = 4294967295u; } u_xlatb16 = int(u_xlatu11.x)!=int(0xFFFFFFFFu); if(u_xlatb16){ u_xlati16 = int(u_xlatu11.x & 4294967280u); u_xlat2.z = uintBitsToFloat(uint(u_xlati16) | invLevel); u_xlati24 = int(0xFFFFFFFFu); } else { u_xlatb16 = floatBitsToInt(u_xlat2.z)!=int(0x7FFFFFFFu); if(u_xlatb16){ u_xlati24 = int(0xFFFFFFFFu); } u_xlat2.z = intBitsToFloat(int(0x7FFFFFFFu)); } } u_xlati16 = int(floatBitsToUint(u_xlat2.w) & 2147483648u); if(u_xlati16 != 0) { u_xlat2.w = uintBitsToFloat(floatBitsToUint(u_xlat2.w) & 2147483647u); u_xlati24 = int(0xFFFFFFFFu); } u_xlati16 = int(floatBitsToUint(u_xlat2.w) & 15u); u_xlatb16 = u_xlati16==int(invLevel); if(u_xlatb16){ u_xlatu4.y = 0u; u_xlatu11.x = uint(0u); u_xlatu11.y = uint(0u); u_xlati16 = 0; while(true){ u_xlatb9 = u_xlatu11.y>=numEvictedTiles; u_xlati16 = 0; if(u_xlatb9){break;} u_xlatu9 = u_xlatu11.y >> (2u & uint(0x1F)); u_xlatu27 = u_xlatu11.y & 3u; u_xlati20 = 0 - int(u_xlatu27); u_xlati5.xyz = ivec3(uvec3(lessThan(uvec4(u_xlatu27), uvec4(1u, 2u, 3u, 0u)).xyz) * 0xFFFFFFFFu); u_xlati6.y = int(uint(u_xlati20) & uint(u_xlati5.y)); u_xlati27 = int(u_xlatu27) + int(0xFFFFFFFDu); u_xlati6.z = (u_xlati5.y != 0) ? 0 : u_xlati27; u_xlati6.w = int((u_xlati5.z==0) ? 0xFFFFFFFFu : uint(0)); u_xlati6.x = u_xlati5.x; u_xlati5 = ivec4(uvec4(u_xlati6) & evictedTiles[int(u_xlatu9)]); u_xlati5.xy = ivec2(uvec2(u_xlati5.yw) | uvec2(u_xlati5.xz)); u_xlati9 = int(uint(u_xlati5.y) | uint(u_xlati5.x)); u_xlatb9 = u_xlati4.w==u_xlati9; if(u_xlatb9){ u_xlatu11.x = 4294967295u; u_xlati16 = int(0xFFFFFFFFu); break; } u_xlatu4.x = u_xlatu11.y + 1u; u_xlatu11.xy = u_xlatu4.yx; u_xlatb16 = u_xlatb9; } if(u_xlati16 == 0) { u_xlatu11.x = 0u; } if(u_xlatu11.x != uint(0)) { u_xlat2.w = intBitsToFloat(int(0x7FFFFFFFu)); u_xlati24 = int(0xFFFFFFFFu); } } else { u_xlatu4.y = 0u; u_xlatu11.x = uint(0u); u_xlatu11.y = uint(0u); u_xlati16 = 0; while(true){ u_xlatb9 = u_xlatu11.y>=numAddedTiles; u_xlati16 = 0; if(u_xlatb9){break;} u_xlatu9 = u_xlatu11.y >> (1u & uint(0x1F)); u_xlatu27 = uint(int(bitfieldInsert(0, int(u_xlatu11.y), 1 & int(0x1F), 1))); u_xlati5.x = int((u_xlatu27<1u) ? 0xFFFFFFFFu : uint(0)); u_xlati5.y = int((u_xlati5.x==0) ? 0xFFFFFFFFu : uint(0)); u_xlati5.xy = ivec2(uvec2(u_xlati5.xy) & addedTiles[int(u_xlatu9)].xz); u_xlati20 = int(uint(u_xlati5.y) | uint(u_xlati5.x)); u_xlatb20 = u_xlati4.w==u_xlati20; if(u_xlatb20){ u_xlati27 = int(u_xlatu27) + 1; u_xlatu27 = uint(u_xlati27) + 4294967295u; u_xlati5.x = int((u_xlatu27<1u) ? 0xFFFFFFFFu : uint(0)); u_xlati5.y = int((u_xlati5.x==0) ? 0xFFFFFFFFu : uint(0)); u_xlati5.xy = ivec2(uvec2(u_xlati5.xy) & addedTiles[int(u_xlatu9)].yw); u_xlatu11.x = uint(u_xlati5.y) | uint(u_xlati5.x); u_xlati16 = int(0xFFFFFFFFu); break; } u_xlatu4.x = u_xlatu11.y + 1u; u_xlatu11.xy = u_xlatu4.yx; u_xlatb16 = u_xlatb20; } if(u_xlati16 == 0) { u_xlatu11.x = 4294967295u; } u_xlatb16 = int(u_xlatu11.x)!=int(0xFFFFFFFFu); if(u_xlatb16){ u_xlati16 = int(u_xlatu11.x & 4294967280u); u_xlat2.w = uintBitsToFloat(uint(u_xlati16) | invLevel); u_xlati24 = int(0xFFFFFFFFu); } else { u_xlatb16 = floatBitsToInt(u_xlat2.w)!=int(0x7FFFFFFFu); if(u_xlatb16){ u_xlati24 = int(0xFFFFFFFFu); } u_xlat2.w = intBitsToFloat(int(0x7FFFFFFFu)); } } if(u_xlati24 != 0) { _output_buf_buf[(u_xlati17 >> 2)] = floatBitsToUint(u_xlat2.x); _output_buf_buf[(u_xlati25 >> 2)] = floatBitsToUint(u_xlat2.y); _output_buf_buf[(u_xlati3 >> 2)] = floatBitsToUint(u_xlat2.z); _output_buf_buf[(u_xlati1 >> 2)] = floatBitsToUint(u_xlat2.w); imageStore(translationTable, ivec2(u_xlatu0.xy), u_xlat2); } return; }  AcbTranslationTableData invLevelwidthheight bufferOffsetLevelbufferOffsetLevelAbovecbTranslationTableData  levelinvLevelwidthheight bufferOffsetLevelbufferOffsetLevelAbovenumEvictedTiles numAddedTiles addedTiles  evictedTiles cbTranslationTableData invLevelwidthheight bufferOffsetLevelcbTranslationTableData  levelinvLevelwidthheight bufferOffsetLevelnumEvictedTiles numAddedTiles addedTiles  evictedTiles MaincbTranslationTableData _output_buftranslationTableDXBCBvjM?K5I,<LISGNOSGNSHEXPjYF UU_2_2 h # F@ F%U 2@UB* @# *   ) @ P  <B:**># B:* B* )B*@* 2@'" @7  : @': '  : 6"@7 2FF* F> AMaincbTranslationTableData lookupTexture _output_buftranslationTable@ DXBC WNɲ.@ ,<LISGNOSGNSHEX P{jYF 2XpDDUU_2_2 h # 2F@ F U 2F@UB* @# *   ) @ P2F < :># * : ):@:6 -BF| b@'"@7 *  @ : :6"@6@6@0PB:* 6@*UB:@:@(:O @" *:@7 B*@: :@6 FF "*<V <B:* B***6B@6@:@6V6**:6"@7 2FF6@6@6@0P":: 6@U":@ B@@:@O*@ " @ 2F <  *::B*@B*@O*@ " @ 2Fօ <B 6@:@6V6:7 B:*@'*@B*@<B* 'B  6B@7 2 F7 2 F: F> AMaincbTranslationTableData _output_buftranslationTable DXBCR>Ck9݋.I ,<LISGNOSGNSHEXPjYF UU_2_2 h # F@ F%P2 <  ># :*   ) @"  V@'"*@7 *:" @'" 'B @"*7 bV@* FV> AMaincbTranslationTableData lookupTexture _output_buftranslationTablex DXBCr;VNi-\Fx ,<LISGNOSGNSHEX$ PIjYF 2XpDDUU_2_2 h # 2F@ F P2F <  ># *   ) @" 6 -BF| V@'"*@7 *: @ : :6"@6b@6@0P** 6@:U*@*@(B:O r@"*:@7 B@: *@6  FF ":<V <:* *::6"@6@*@6bV6::7 b@6@62@6@0P: 6@:U@ @@@O:@ " @  :<B:* B***:@:@O:@ " @ 2Fօ :< 6@@626*7 B: @'*@B*@<B* 'B @6B@7 2 @f 7 b * FV> AMaincbTranslationTableData _output_buftranslationTableDXBC.qw,<LISGNOSGNSHEXPpjYF UU_2_2 h & : * * @# F@ F%U b@U* @# "*:" )B@"* ) @ P  <B:**># B:* B* )*@:# B* : *)B*@* 2@'B @7 "  @'  ': 6B@7 bVV 2@6B@7 2B @'B* '  B:*6"@7  VV :*:F> AMaincbTranslationTableData lookupTexture _output_buftranslationTableDXBCXSSg/ؚ,<LISGNOSGNSHEXPjYF 2XpDDUU_2_2 h & : * * @# 2F@ F U b@U* @# "*:" )B@* ) @ P2F < :># * : ):@:# * : :):@:6 -Ft b@'"@7 *  @    6"@6@6B@0P:* 6B@:U:@B:@(*O r @":B*@7 B@* *@6  FF ":<V <:* *::6B@6B@:@6V6B:**6"@7 2FF6"6@6@6"@0PB:: 6"@*UB:@ @@:@O:@ " @  *<B:* B***:@:@O:@ " @ V *<B:*6"@:@6V6"*7 B*@'"*@B*@<B* 'B  6B@7 R 7 2V 6" 2@6B@7 2FB @ B* *6"@6@6B@0PB:* 6B@*UB:@B:@(*O r @":B*@7 B@* *@6  FF "*<V <B:* B:**6B@6B@:@6V6B*B**6"@7  VV6b6@62@6"@0PB: 6"@*UB@ B@@@O*@ " @  *<B:* B:**B*@B*@O*@ " @ 2Fօ *< 6"@@626"*7 " @'B@"@<B '"  6B@7 2VF7   V6b*: :FF> AMaincbTranslationTableData _output_buftranslationTableDXBC hi'T,<LISGNOSGNSHEXDPjYF UU_2_2 h # F@ F%P2 <  ># :*   )" @B# * : ) @  2 @'B @7 " *B@'B* '@B:*7 b @V 2@6B@7 V B*@'B* '*@B* 7  @   :F> AMaincbTranslationTableData lookupTexture _output_buftranslationTabletDXBC鉨}zct,<LISGNOSGNSHEX PHjYF 2XpDDUU_2_2 h # 2F@ F P2F <  ># *   )" @B# * : ) @ 6 -Ft  @'"*@7 *:*B @ B* *6"@6@6B@0P:* 6B@:U:@:@(B:O r@"*:@7 B@: *@6  FF ":<V <:* *::6B@6B@:@6V6B:B**7  @6":6@6@6@0P:: 6@ U:@ "@@:@O@ " @   <B:* B***"@"@O@ " @ 2Fօ  <B 6@:@6V6*7 B:*@'B*@B*@<B* 'B @6B@7 2 @f 7  6": 2@6B@7 2FB @ B* *6"@6@6B@0P:* 6B@:U:@:@(" O r@" @7 B@  *@6  FF ":<2<  :::6B@6B@:@6V6B:B**7 2 @66@6@6B@0P:: 6B@:U:@ @@:@O @ " @ b :<"* ": @ @O @ " @ RV :<B* 6B@:@6V6B7 B**@'*@B*@<B* 'B @6B@7 2 @f 7 26 * :F > AMaincbTranslationTableData _output_buftranslationTableDDXBCP '̑Y_D,<LISGNOSGNSHEXPjYF UU_2_2 h & : * *" @# F@ F%U  @U* @# B: *B* )*@":*) V @":"*)"@Pb <"*># ":* " )B@*# * : ) @ ) @ ) @  @'B @7 " ::"@'" '":6B@7 bVVV 2@6B@7 V "@'" 'B"*6B@7 bVVV 2@6B@7 V "@'" 'B "*6"@7 RVV  *  *66@FF> AMaincbTranslationTableData lookupTexture _output_buftranslationTableDDXBCbp UD,<LISGNOSGNSHEXPjYF 2XpDDUU_2_2 h  & : * *" @# 2F@ F U @U* @# B: *B* )*@:*) V @:"*)"@Pb <"*># "* " )B@*# * : ):@:) @ ) @ 6 -rFF~ @'"*@7 *::" @ " 6" @6@6B@0P:* 6B@:U:@:@(:O r @" : :@7 B  @:  * @6    F F ":<V   <:*  ::6"@6B@ :@6V 6B:"*6"@7 2 VFF6" 6 @6@6B@0P:: 6B@:U:@ "@@:@O @ "  @   :<:*  ::"@"@O @ "  @  V :<":*6B@ :@6V 6B:7 "*@'@"@<B  '"  6B@7 V7 2   6"  2@6B@7 V B@ B* *6"@6@6B@0P:* 6B@:U:@:@(:O @" *:@7 B*@: :@6 FF ":<2<  ::6B@6B@:@6V6B:B**6"@7  V 6" *6":6@6@6@0P":: 6@U":@ B@@:@O*@ " @  <": "B*@B*@O*@ " @ bV <B*6@:@6V67 B *@'*@B*@<B* 'B 6B@7  V 7 V 6" 6": 2@6B@7 V B@ B* *6"@6@6B@0P:* 6B@ U:@":@(BO rV@"*"@7 B@ *@6  FF " <2<  *  6B@6B@:@6V6B B**6"@7  V6B :6@6r@0P": 6B@U"@ @@@O:@ " @ 2F <  *  :@:@O:@ " @ V <:6B@@626B 7 * @'" @ @<B  ' 6B@7 V 7 V 6B :**  :  * 6 @FF > AMaincbTranslationTableData _output_buftranslationTablepDXBCWz*%)p,<LISGNOSGNSHEXPjYF UU_2_2 h # F@ F%P2 <  >& : * # ":* " ) R@*# * : ) @  ) @  b@'B@7 "*:"@'" '@":7 bV@V 2@6B@7 V "@'" 'B@"*7 bV@V 2@6B@7 V "@'" 'B@"*7 RV@  *  *66@FF> AMaincbTranslationTableData lookupTexture _output_buftranslationTableDXBC+@gpbeN1,<LISGNOSGNSHEXTPUjYF 2XpDDUU_2_2 h  # 2F@ F P2F <  >& : * # "* " ) R@*# * : ) @  ) @ 6 -F6y @'"*@7 *::B @ B* *6"@6@6"@0P:* 6"@:U:@B:@(*O r @":B*@7 B@* *@6  FF ":<V <:* ::6B@6"@:@6V6":B*7 2 @F6"6@6@6"@0P:: 6"@:U:@ B@@:@O*@ " @  :<:* ::B*@B*@O*@ " @ V :<B:*6"@:@6V6":7 B*@'*@B*@<B* 'B @6B@7  @7 2 6" 2@6B@7 2FB @ B* *6"@6@6"@0P:* 6"@:U:@":@(O rV@":"@7 B@ *@6  FF ":<V <:* *::6B@6"@:@6V6":B*7  @6"*6":6@6@6"@0P:: 6"@:U:@ "@@:@O@ " @  :<:* *::"@"@O@ " @ V :<B:*6"@:@6V6":7 B*@'*@B*@<B* 'B @6B@7  @7 V 6"*6": 2@6B@7 2FB @ B* *6"@6@6"@0P:* 6"@:U:@":@(BO rV@"*"@7 B@ *@6  FF ":<bV<* :::6B@6"@:@6V6":B*7  @V6B:6@6@6"@0PB:: 6"@*UB:@ @@:@O:@ " @ 2F *<  :  :@:@O:@ " @ bV *<"*6"@:@6V6" 7 "@'@"@<B '" @6B@7 bV@ 7  6B:**   *6@FF> AMaincbTranslationTableData _output_buftranslationTableD DXBCo˻bmv:D ,<LISGNOSGNSHEX P|jYF UU_2_2 h  & : * *" @# F@ F%U  @U* @# B: *B* )*@":*):@":)@*:):@":# "@*)"@Pb <"*># ":* " )B@*# * : ) @ ) @:):@:#  @) @  @'B @7 " ::" @'" ' ":6B@7 bVVV  2 @6B @7  V  "@'" 'B"*6B@7 bVVV 2@6B@7 V "@'" 'B"*6B@7 bV   2@6B@7 V "@'" 'B "*6"@7 VV * :* :66"FF> AMaincbTranslationTableData lookupTexture _output_buftranslationTable#DXBCRqbBl#,<LISGNOSGNSHEX@#PjYF 2XpDDUU_2_2 h & : * *" @# 2F@ F U @U* @# B: *B* )*@:*):@:)@*:):@:# "@*)"@Pb <"*># "* " )B@*# * : ):@:) @:):@:#  @) @ 6 - FF~ @'" *@7  *::"  @ " 6" @6@6B@0P:* 6B@:U:@:@(:O r @" : :@7 B  @:  * @6    F F ":<V   <:*   ::6"@6B@ :@6V 6B:"*6"@7 2 VFF 6" 6 @6@6B@0P:: 6B@:U:@ "@@:@O @ "  @   :<:*   ::"@"@O @ "  @  V :<":*6B@ :@6V 6B:7 "*@'@"@<B  '"   6B@7 V 7 2   6"  2@6B@7 V B@ B* *6"@6@6B@0P:* 6B@:U:@:@(:O @" *:@7 B *@:  :@6  F F ":<2<   ::6B@6B@:@6V6B:B**6"@7  V 6" *6":6@6@6@0P":: 6@U":@ B@@:@O *@ "  @   <":* " B*@B*@O *@ "  @ b V <B*6@:@6V67 B *@'*@B*@<B* 'B 6B@7  V 7 V 6" 6": 2@6B@7 V B@ B* *6"@6@6B@0P:* 6B@ U:@":@(BO rV@"*"@7 B@ *@6  FF " <2<  *  6B@6B@:@6V6B B**6"@7  V 6B *6":6@6@6@0P":: 6@U":@ B@@:@O*@ " @ 2F <  *  B*@B*@O*@ " @ bV <B*6@:@6V6 7 B *@'*@B*@<B* 'B 6B@7  V 7 V 6B 6": 2@6B@7 V B@ B* *6"@6@6B@0P:* 6B@ U:@":@(BO rV@"*"@7 B@ *@6  FF " <2<  :  6B@6B@:@6V6B B**6"@7  V6 :6@6r@0P: 6B@ U@ "@@@O@ " @   <B: B: **"@"@O@ " @ 2Fօ  < 6B@@626B*7 * @'" @ @<B  ' 6B@7 V 7 V 6 :**  : :*  : FF > AMaincbTranslationTableData _output_buftranslationTableDXBC W akX,<LISGNOSGNSHEXPjYF UU_2_2 h # F@ F%P2 <  >& : * # ":* " )B@*# * : ) @ )" @")"@#  @) @  @'B*@7 "*::"@'" '@":7 bV@V 2@6B@7 V B@'B* '@B:*7 b @V 2@6B@7 V B@'B* '@B:*7 b @  2@6B@7 V B@'B* '@B:*7  @ * * :66"FF> AMaincbTranslationTableData lookupTexture _output_buftranslationTable!DXBCڅ!5d(ke_!,<LISGNOSGNSHEXD!PQjYF 2XpDDUU_2_2 h  # 2F@ F P2F <  >& : * # "* " )B@*# * : ) @ )" @")"@#  @) @ 6 -FF~ @'"*@7 *::B @ B* *6"@6@6"@0P:* 6"@:U:@B:@(*O r @" : B*@7 B  @*  * @6    F F ":<V   <:*  ::6B@6"@:@6V6":B*7 2 @F6"6 @6@6"@0P:: 6"@:U:@ B@@:@O *@ "  @   :<:*  ::B*@B*@O *@ "  @  V :<B:*6"@ :@6V 6":7 B*@'*@B*@<B * 'B @6B@7  @7 2  6" 2@6B@7 2FB @ B* *6"@6@6"@0P:* 6"@:U:@B:@(*O r @" : B*@7 B  @*  * @6    F F ":<V   <:* ::6B@6"@:@6V6":B*7  @6"*6":6@6@6"@0P:: 6"@:U:@ B@@:@O *@ "  @   :<:* ::B*@B*@O *@ "  @  V :<B:*6"@:@6V6":7 B*@'*@B*@<B* 'B @6B@7  @7 V 6"*6": 2@6B@7 2FB @ B* *6"@6@6"@0P:* 6"@:U:@B:@(*O r @" :B*@7 B @*  *@6  F F ":<V <:* *::6B@6"@:@6V6":B*7  @6B*6":6@6@6"@0P:: 6"@:U:@ B@@:@O*@ " @  :<:* *::B*@B*@O*@ " @ V :<B:*6"@:@6V6":7 B*@'*@B*@<B* 'B @6B@7  @7 V 6B*6": 2@6B@7 2FB @ B* *6"@6@6"@0P:* 6"@:U:@B:@(*O r @":B*@7 B@* *@6  FF ":<V <:* :::6B@6"@:@6V6":B*7  @V6:6@6@6B@0P:: 6B@:U:@ @@:@O:@ " @ 2F :<  :  :@:@O:@ " @ bV :<"*6B@:@6V6B 7 "*@'@"@<B '" @6B@7 V@7   6:**  * :FF> AcbTranslationTableData invLevelwidthheight bufferOffsetLevelbufferOffsetLevelAbovecbTranslationTableData  levelinvLevelwidthheight bufferOffsetLevelbufferOffsetLevelAbovenumEvictedTiles numAddedTiles addedTiles  evictedTiles cbTranslationTableData invLevelwidthheight bufferOffsetLevelcbTranslationTableData  levelinvLevelwidthheight bufferOffsetLevelnumEvictedTiles numAddedTiles addedTiles  evictedTiles MaincbTranslationTableDatatranslationTable _output_buf#  GLSL.std.450main  main u_xlatu0 gl_WorkGroupIDgl_LocalInvocationIDu_xlatu1u_xlatu7#cbTranslationTableData#level#invLevel#width#height#bufferOffsetLevel #bufferOffsetLevelAbove#numEvictedTiles#numAddedTiles#addedTiles# evictedTiles%-u_xlati1Cu_xlat1E_output_buf_origX0X E_output_buf_origX0X_bufGRu_xlatb4nu_xlati4u_xlat7u_xlati10u_xlati2u_xlatb2u_xlatb5 translationTable_origX1Xu_xlat_precise_vec4u_xlat_precise_ivec4u_xlat_precise_bvec4u_xlat_precise_uvec4G G G G"H##H##H##H## H##H##H##H##H## H# # G#G%"G%!GDHE#GEGG"GG!G"G!GG !  ;     ; + ,;  ;+, ; +!"! # " $#;$%& +&' ( ,&;,-+4+&:A BA;BCDED FE;FG+&HOPO QP;QR+&W_O bO;,n+o+&|;B;,++;,+;b+&;b+&+ A ;&A &  _ , 6;;;;= O  = O > = O>A()%'=*)+*>+A.=/.|&0/=1|&21&302A54=65|&76&837>-8=&9-A(;%:=<;|&=<&>9=>->=&?-&@?'>-@=&I-&JI'&KJHA(LGHK=ML|ANM>CN=S O TSSA(U%'=VUA(X%W=YXA(Z%'=[ZA(\%'=]\P^VY[]_`T^OPa``>RaAbcR=OdcAbeR4=OfeOgdfAbhR4>hgAbiR4=OjiljklklAp o=qp|&rqA(s%'=ts|&ut&vruAw 4=xw|&yx&zvy>nz=&{nA(}%|=~}|&~&{>n=&n&'>n=&n&'&HA(GH=|A>=A||&>=&OH=A||A>=A||&>=&A(%=|&O>=AC|&=A|&O>=O=OO>=O=AC>>-=&OH4|&>-=&-OH=&n&'=A|A(GH>== O|=APc8 AMaincbTranslationTableData lookupTexturetranslationTable _output_buf/#  GLSL.std.450main   GL_EXT_samplerless_texture_functionsmain u_xlatu0 gl_WorkGroupIDgl_LocalInvocationIDu_xlatu1!u_xlatu13%cbTranslationTableData%level%invLevel%width%height%bufferOffsetLevel %bufferOffsetLevelAbove%numEvictedTiles%numAddedTiles%addedTiles% evictedTiles'/u_xlati1Eu_xlat1G_output_buf_origX0X G_output_buf_origX0X_bufITu_xlatb7pu_xlati7u_xlat13u_xlati12lookupTextureu_xlati18u_xlati19u_xlatb18u_xlatu2u_xlatu14u_xlatb3u_xlatu3u_xlatu9u_xlati15u_xlati4u_xlati5u_xlati9u_xlati3u_xlatb15u_xlatb12 translationTable_origX1Xu_xlat_precise_vec4u_xlat_precise_ivec4u_xlat_precise_bvec4u_xlat_precise_uvec4G G G"G$H%#H%#H%#H%# H%#H%#H%#H%#H%# H% # G%G'"G'!GFHG#GGGI"GI!G"G!G"G!GG !  ;     ;  + , ;   ;+,   ; !"+#$# %"$ &%;&'( +() * .(;./+6+(<C DC;DEFGF HG;HI+(JQRQ SR;ST+(YaQ dQ;.p+(};D;.  ;(+;.+;.+++;d+(;;)Q;d+(; +;  ;( ;,6Q, 666, ( ;;.+(;+( +(>+(]+({;d;d+ C ;C   a , 6;;;;=  O  = O  = O > = O  >A*+')=,+-,>!-A 0=10|(21=3!|(43(524A 76=87|(98(:59>/:=(;/A*='<=>=|(?>(@;?>/@=(A/(BA)>/B=(K/(LK)(MLJA*NIJM=ON|CPO>EP=U O VUUA*W')=XWA*Z'Y=[ZA*\')=]\A*^')=_^P`X[]_abV`ORcbb>TcAdeT=QfeAdgT6=QhgQifhAdjT6>jiAdkT6=QlknlmnmnA q =rq|(srA*t')=ut|(vu(wsvA x 6=yx|(zy({wz>p{=(|pA*~'}=~|((|>p=(p()>p=(p()(JA*IJ=|C>A*'J=P = O > == O |A =|(_Q|(>=C||(>=(QJ6|(>=(QJ=C||C>=C||(>=(A*'=|(Q>=QRA >6A 6>6A >6>JA =A*'=Q>>J=QA =>A =>=|((JA.6>=PaO P  |>A.6=(|A.=(||(A.>=|((>A. =(  Q  J=( (  J A.> A.=(QJ6|(A.>A.6=(A.6>=|=|(A'= ! |"!>"=#O$##| %$=&O'&&| (' )%(|*)=+O ,+*>,A.-=(.-|/.A.06=(10|213/2|(43A.56>54=(6A.76=(87Q968>9=Q:<:;<;A =6>=>><A @=A@BAA C6>CB= DO EDD>E=QF>F=(GQHGJJHIJIA K6>K6JJA L6=MLQNM6PNOPO=CQE>Q>>PPRA S>S6A T6>T6A U>U6>JVVXYZZWXWA [=\[A*^']=_^Q`\_>`>J=QacabcbXcA e=fegf>gA h=ih|(ji(kJj|lk>l=mQnmon6|(poA.q6>qpA.r6=(srQtsJut6|(vuA.w>wv=xOyxx| zy=||(}|A~'{}=~O  z|>A.=(|A.6=(||(A.6>=(A.6=(Q>=Q=|((>=(|>=Q6|(A.6>A.6=(QJ6|(A.>=O| =|(A'{=O  |=O >A.=(|A.6=(|A 6>>>XA =A 6>= O >=Q>YYVX=(QJA 6>A 6=|(Q>>=QA 6=|(>=(|A*'=|C>>>=CE|(=C|(Q>=Q=CE>>>=(QJ=(p()=C|A*IJ>== O |=CPc8 AMaincbTranslationTableDatatranslationTable _output_buf#  GLSL.std.450main  main u_xlatu0 gl_WorkGroupIDgl_LocalInvocationIDu_xlatb1cbTranslationTableDatalevelinvLevelwidthheightbufferOffsetLevel bufferOffsetLevelAbovenumEvictedTilesnumAddedTilesaddedTiles evictedTiles!Au_xlati1Yu_xlat4[_output_buf_origX0X [_output_buf_origX0X_buf]eu_xlati7tu_xlati10zu_xlatb10u_xlatb2 translationTable_origX1Xu_xlat_precise_vec4u_xlat_precise_ivec4u_xlat_precise_bvec4u_xlat_precise_uvec4G G GGH#H#H#H# H#H#H#H#H# H # GG!"G!!GZH[#G[G]"G]!G"G!GG !  ;     ; + ,;  ;+   ; !" +"# $+"'/+2 3+6 @";@A+B C+"PW XW;XYZ[Z \[;\]+"^;@e+h+q;@t+w;3z+"|;3+"+"+ W ;"W "  / , 26;;;;= O  = O > = O A$%!#=&%A$(!'=)(A$*!#=+*A$,!#=-,P.&)+-/0.O100>1A342=54A376=87958A3:6>:9A3;6=<;><=>=>ACD B=ED|"FEA$G!#=HG|"IH"JFIACK 6=LK|"ML"NJM>AN="OAA$Q!P=RQ|"SR"TOS>AT="UA"VU#>AV="_A"`_#"a`^A$b]^a=cb|Wdc>Yd=WfY|gfigh|"ji>ej="kelk^nlmnm=WoY|porpq|Wsr>Ysnn=WuY|vuxvw|"yx>ty="{tA$}!|=~}|"~{>z=WY|">=z=>z=z|W>Y>t="e^6|">t="t^="A"#=WY|A$]^>== O|=WYPc8 AMaincbTranslationTableData lookupTexturetranslationTable _output_buf-#  GLSL.std.450main   GL_EXT_samplerless_texture_functionsmain u_xlatu0 gl_WorkGroupIDgl_LocalInvocationIDu_xlatb1"cbTranslationTableData"level"invLevel"width"height"bufferOffsetLevel "bufferOffsetLevelAbove"numEvictedTiles"numAddedTiles"addedTiles" evictedTiles$Du_xlati1[u_xlat7]_output_buf_origX0X ]_output_buf_origX0X_buf_lu_xlati12olookupTexture|u_xlati18u_xlati13u_xlatb18u_xlatu2u_xlatu14u_xlatb19u_xlatu19u_xlatu3u_xlati9u_xlati4u_xlati5u_xlati3u_xlati19ou_xlatb9u_xlatb12 translationTable_origX1Xu_xlat_precise_vec4u_xlat_precise_ivec4u_xlat_precise_bvec4u_xlat_precise_uvec4G G GG!H"#H"#H"#H"# H"#H"#H"#H"#H"# H" # G"G$"G$!G\H]#G]G_"G_!Go"Go!G"G!GG !  ;     ;  + , ;  ;+ !  "! #";#$% +%& '+%*2+5 6+9 C%;CD E+%RY ZY;Z[\]\ ^];^_+%`;Cl m nm;nos%+u;C|+;C+++;6+%  ;;);6+%;E+;E s;% ;,5u9, 999, 555% ;;+% %+% ;C+% +%3+%@+%^;6o;6+ Y ;Y   2 , 56;;;;;=  O  = O  = O > = O A'($&=)(A'+$*=,+A'-$&=.-A'/$&=0/P1),.0231O433>4A675=87A6:9=;:<8;A6=9>=<A6>9=?>A?@A@AAEF 5=GF|%HGA'I$&=JI|%KJ%LHKAEM 9=NM|%ON%PLO>DP=%QDA'S$R=TS|%UT%VQU>DV=%WD%XW&>DX=%aD%ba&%cb`A'd_`c=ed|Yfe>[fA'g$`=hgP ihh=j O kji> k=mpo=q O rqq|strAEv u=wv|%xw_yptxQzy|%{z>l{=Y}[|~}~|%>|=%|`9|%>=%|`=Y[||Y>[=Y[||%>|=%|A'$=|%>=5AE5>9AE9>9AE5>9>|`AE5=A'$=>>|`=AE5=>AE5=u>=|%%`AC9>=P2O P  |>AC9=%|AC5=%||%AC5>=|%%AC9>AC5=%`>`AC9=%>=%AC>AC=%`9|%ACu>AC9=%AC9>=|=|%A$=|>=Os| = Os   |    |s  =O  >AC5=%|AC9=%||%>=%l=%>=AE9>>| AE"5=#"$#5AE%9>%$= &O '&&>'=(>(=%)|*)`,*+,+AE-9>-9,,AE.9=/.0/920121|Y43>[4> 225AE65>69AE79>79AE85>89>|`99;<==:;:AE>5=?>A'A$@=BAC?B>C>|`=DFDEFE;FAEH5=IHJI5>JAEK5=LK|%ML%N`M|ON>O=PQP5RQ9|%SRACT9>TSACU9=%VUWV`XW9|%YXACZ5>ZY=[Os\[[| ]\=_|%`_Aa$^`=baO cbb d]c|sed>eACf5=%gf|hgACi9=%ji|kjlhk|%mlACn9>nm=%plACq9=%rqspr>os=tovtuvu=w|%xw%yxACz9>zyAC{9=%|{|}|~}>~=59|%AC9>AC9=%`9|%AC5>=Os| =|%A$^=O  |s=O >AC=%|AC9=%|AE9>>| ;vAE5=5AE9>= O >=o><<9;=%|`AE9>AE9=|% >=AE9=|%>l=%l|A'$=|Y>[> =Y[|%3>=> |Y3>[=%`=%D%&=Y[|A'_`>== O |s=Y[Pc8 AMaincbTranslationTableDatatranslationTable _output_buf<# >1 GLSL.std.450main"' mainu_xlati0cbTranslationTableDatalevelinvLevelwidthheightbufferOffsetLevel bufferOffsetLevelAbovenumEvictedTilesnumAddedTilesaddedTiles evictedTilesu_xlatu1"gl_WorkGroupID'gl_LocalInvocationID-u_xlatu44u_xlatu128u_xlati4Ju_xlati8Ou_xlat8Q_output_buf_origX0X Q_output_buf_origX0X_bufS`u_xlat0ju_xlatb4u_xlati12u_xlat2u_xlati10u_xlati14u_xlatb14u_xlatb3u_xlatb10 *translationTable_origX1X5u_xlat_precise_vec48u_xlat_precise_ivec4:u_xlat_precise_bvec4<u_xlat_precise_uvec4G GH#H#H#H# H#H#H#H#H# H # GG"G!G" G' GPHQ#GQGS"GS!G*"G*!G*G= !  ;  +  +     ;+  +  ;  ! ;!", % ;!'+  ,+;,-+ 0,+100 3 ;34;8+ ?+E;JM NM;NOP QP RQ;RS+T;N`ghg ih;ijvgxg+ | }g+ +;M ;;+ + ;+ ;}+;}++ ;} (M )(;)*.0M 406 76 9v ; , = 06;45;78;9:;;<A= |A= |>=>= #"O $## &$%= ('O )(( *&)>*= .O+/..+2/1>-2A5= 65 760>47A39-0= :9|;:= <4|=<>;=A3@-?= A@|BAC>B>8C=D8AFE= GF|HGIDH>8I=K8LK>JL=UJVUWVTAXSTW= YX|MZY>OZ=[8=\][\>]=^_^>_=abacbTAdSTc= ed|Mfe>`f= kO lkkAm= nmAo= poAq= rqAs= tsP unprtvwluOxyww=hzjOh{zy>j{A}~j|=g~A}j?=ggA}j?>A}j?=gA3= |A= |A3?= |>8=8A= |>8=8>=TAST= |MAN?>A= |A= |=8>8=8>8=8TAST= |MAN0>AN?=M|  |>=gTAN?=M|  |MAN?>AN?=M|  |>=A= |g>=MO|AN?=M|g>=g=gg>=g=MOAN?>>J=gT ?|>JAN0=M|  |>=gTAN0=M|  |MAN0>>JAN0=M|  |>=A= |g > =M `|  AN 0=M  | g >=g=gg>=g=M`AN0>>J=JgT=AN?=M| A!ST>! ="8#"AN$0=M%$| &%A'ST#>'&=(+*= ,O+-,,|./-=1O 0211c+/28 AMaincbTranslationTableData lookupTexturetranslationTable _output_bufDO# t1 GLSL.std.450main"(  GL_EXT_samplerless_texture_functionsmainu_xlati0cbTranslationTableDatalevelinvLevelwidthheightbufferOffsetLevel bufferOffsetLevelAbovenumEvictedTilesnumAddedTilesaddedTiles evictedTilesu_xlatu1"gl_WorkGroupID(gl_LocalInvocationID/u_xlatu76u_xlatu21:u_xlati7Lu_xlati14Qu_xlat14S_output_buf_origX0X S_output_buf_origX0X_bufUbu_xlat0lu_xlatb7u_xlati21u_xlat2u_xlati15lookupTextureu_xlati16u_xlati23u_xlatb16u_xlatu3u_xlatu17u_xlatb4u_xlatu4u_xlatu11u_xlati18u_xlati5-u_xlati68u_xlati11Su_xlati4u_xlatb18u_xlatb15<u_xlatb14Vu_xlatu15Zu_xlatu16 btranslationTable_origX1Xlu_xlat_precise_vec4nu_xlat_precise_ivec4pu_xlat_precise_bvec4ru_xlat_precise_uvec4G GH#H#H#H# H#H#H#H#H# H # GG"G!G" G( GRHS#GSGU"GU!G"G!Gb"Gb!GbGs !  ;  +  +     ;+  +  ;  ! ;!"# ,#& ;!( .#;./+ 2,#322 5 ;56;:+ A+G;LO PO;PQR SR TS;TU+V;Pbiji kj;klxizi+ ~ i+;O ; ;  ;+ ;+ ;+ + + ;+;.;.)i;+;5;5; ;, !2~A, $AAA, %222);- 7);78+; A;S+V Y +z++;;+ ;<;5V;5Z, d2~ `O a`;abgO kg m ox q , s 26;AB;kl;mn;op;qrA= |A= |>=>= $"O#%$$#'%&= )(O#*))#+'*= ,O -,+>-= 0O#100#413>/4A7= 87 982>69A5;/2= <;|=<= >6|?>@=?A5B/A= CB|DCE@D>:E=F:AHG= IH|JIKFJ>:K=M:NM>LN=WLXWYXVAZUVY= [Z|O\[>Q\=]:=^_]^>_=`a`>a=cdcedVAfUVe= gf|Ohg>bh= mO nmmAo= poAq= rqAs= tsAu= vuP wprtvxynwOz{yy=j|lOj}|{>l}Al~=iAlA=iiAlA>AlA=iA52= |A= |A5A= |>:=:A= |>:=:>=VAUV= |OAPA>A= |A= |=:>:=:>:=:VAUV= |OAP2>AV= P#= O >== O#|A5= |_ O#|>APA=O|  |>=iV A|>=iVAPA=O|  |OAPA>APA=O|  |>=A= |i>=iA52>AA5A>AA52>A>VA52= A= i  > >V=i       A52=  ~>A52=  >= |VAA>= P x" !Oj#"" &#%$P ' (&'|)*(=+O ,+*>,A.A=/.| 0/A12=21| 32 403|54A6-2>65= 9|:9<:;A=8A>=<A>2=?>i@?VD@CEC>BVDEAF8A=GF>BGDD=HBAI-~>IHAJ~=KJiLKV MLA|NMAO->ONAPA=QPAR-A>RQ=T-| UT= W|XWAYZVX= [Z \U[|]\>S]=^SO_^^|#`_=aSObaa|#cb#d`c|ed=fSO gfe>SgAhS2=ih| jiAkSA=lk| ml njm|onApSA>poAqA=rqAsSA=tsiurt>u=ivxvwxwA5yA>y>zxA5|2= }| ~}2A5A>~=#O#>=i>=iVA5A>AA5A= iA=OQAPA>>zA52>AA5A>AA52>A>VA52= A= i>>V=iA52=  2>A52= |V| >= i2 A|AA>AA=iV A|A2>=O|#= |AY= O##|>A2=| AA=|  |AA>AA=AA=i>=i= |A8A>A8A=|  >= i2 A|AA>AA=iV A|A2>=O|#= |AY= O##|=SO >SAS2=| ASA=|  A5A>>zA52=  2A5A>=#O#>=i>=iVA5A>A5A= | i  z> =i     A5A=  |AA>AA=| A=  |OAPA>>z =OQ|APA=O |! i"!>"=i#%#$%$=O&QAP'A>'&>z%%  AP(2=O)(| *) +*|,+>L,=-Li.-V0./0/AP12=O21| 32 43|O54AP62>65>z00AP72=O87| 98 :9|;:>L;==LA>= ?>|@?iA=@><A=iB<DBCCA5E2>EAA5FA>FAA5G2>GA>LVHHJKLLIJIA5M2= NMAO= POiQNP>Q>LV=iRTRSTSJTA5W2= XW YX~>VYA5[2= \[ ]\>Z]= ^Z|_^`V_AaSA>a`= bZP cbbbbxecdOjfee gf%$P h igh|)ji>8jAkSA=lk| mlAn82=on| po qmp|rqAs2>sr= tZ|utvu;>vAw82=xwiyxV=z{yVzA|~>|{A}8~=~}i~V A|A>A8A=AA>=| = V|AYV=  |>S=SO|#=SO|##|=SO >SAS2=| ASA=|  |AA>A2=AA=i>=iA5A>>LzJA52=  2A5A>=#O#>=i><KKHJ=LiVA5A>AA5A= iA=ObAP2>>zDA52>AA5A>AA52>A>LVA52= A= i>>LV=iA52=  2>VA52= |V| >Z= Zi2 A|ASA>ASA=iV A|AS2>=SO|#= V|AY= O##|=SO >SAS2=| ASA=|  |ASA>A2=ASA=i>=i= Z|>=|  >Z= Zi2 A| A A>  A A=  i  V  A|A2>=O|#= V|AY= O##|=)8O)>8A82=| A 8A=! | "! #"A5$A>$#>LzA5&2= '& ('2A5)A>)(=#*O#+**>+=i,><,=-Li.-V0./0/A51A>100A52A= 32|43i54z><5=i6<867D7A59A= :9 ;:|<;>L<==L| >=A?= @? A>@|OBAAPC2>CB>z8D=OEb|FEAPG2=OHG|IHiJFI><J=iK<MKLML=ONbAPO2>ON>zMM88DD=PiQPVSQRSR=TUTAPVA=OWV| XWAYUVU>YX=Z:[ZAP\2=O]\| ^]A_UV[>_^=`cb= dO#edd|fe=hO gihhccfiSS8 AMaincbTranslationTableDatatranslationTable _output_buf# 1 GLSL.std.450main  main u_xlatu0 gl_WorkGroupIDgl_LocalInvocationIDu_xlatb1cbTranslationTableDatalevelinvLevelwidthheightbufferOffsetLevel bufferOffsetLevelAbovenumEvictedTilesnumAddedTilesaddedTiles evictedTiles!Au_xlati1Uu_xlati4[u_xlat2]_output_buf_origX0X ]_output_buf_origX0X_buf_{u_xlati7u_xlati10u_xlatb10u_xlatb8u_xlatb7 translationTable_origX1Xu_xlat_precise_vec4u_xlat_precise_ivec4u_xlat_precise_bvec4u_xlat_precise_uvec4G G GGH#H#H#H# H#H#H#H#H# H # GG!"G!!G\H]#G]G_"G_!G"G!GG !  ;     ; + ,;  ;+   ; !" +"# $+"'/+2 3+6 @";@A+B C+"P;@UX YX ZY;Z[\]\ ^];^_+"` gX;@{++;@+;3+";3+"+"+;3 X ;"X "  / , 26;;;;= O  = O > = O A$%!#=&%A$(!'=)(A$*!#=+*A$,!#=-,P.&)+-/0.O100>1A342=54A376=87958A3:6>:9A3;6=<;><=>=>ACD B=ED|"FEA$G!#=HG|"IH"JFIACK 6=LK|"ML"NJM>AN="OAA$Q!P=RQ|"SR"TOS>AT="VA"WV#>UW="aU"ba#"cb`A$d_`c=ed|XfeAgh[6>hfA$i!#=ji|"kjA$l!'=ml|"nm"okn="pA"qop>Aq="rA"sr#>As="tA"ut#"vu`A$w_`v=xw|XyxAgz[2>zyAg|[6=X}||~}~|">{="{`Ag[6=X||XAg[6>Ag[6=X||">="A$!=|">Ag[6=X|">==>=|XAg[6>>="{`6|">Ag[2=X||">{="{`Ag[2=X||XAg[2>>Ag[2=X||">{="{A$!=|">Ag[2=X|">==>=|XAg[2>>="`="U"#Ag[6=X|A$_`>="A"#Ag[2=X|A$_`>== O|=Y[O c8 AMaincbTranslationTableData lookupTexturetranslationTable _output_bufJ# 91 GLSL.std.450main   GL_EXT_samplerless_texture_functionsmain u_xlatu0 gl_WorkGroupIDgl_LocalInvocationIDu_xlatb1"cbTranslationTableData"level"invLevel"width"height"bufferOffsetLevel "bufferOffsetLevelAbove"numEvictedTiles"numAddedTiles"addedTiles" evictedTiles$Du_xlati1Wu_xlati7]u_xlat2__output_buf_origX0X __output_buf_origX0X_bufau_xlati12lookupTextureu_xlati13u_xlati19u_xlatb13u_xlatu3u_xlatu14u_xlatb15u_xlatu15u_xlatu21u_xlati4u_xlati10u_xlati5u_xlati21u_xlati15u_xlatb4u_xlatb12u_xlatu13u_xlatb21 'translationTable_origX1X1u_xlat_precise_vec43u_xlat_precise_ivec45u_xlat_precise_bvec47u_xlat_precise_uvec4G G GG!H"#H"#H"#H"# H"#H"#H"#H"#H"# H" # G"G$"G$!G^H_#G_Ga"Ga!G"G!G'"G'!G'G8 !  ;     ;  + , ;  ;+ !  "! #";#$% +%& '+%*2+5 6+9 C%;CD E+%R;CWZ [Z \[;\]^_^ `_;`a+%b iZ% ;  ;+;C+;C+++;6+%  ;;);6+%;E+;E% ;% ;,5, 999, 555;;C+%+% ;+%4+%G+%U+%s;6;6+;E,59 6%;6 %Z &%;&',Z 0, 2 42 6, 856;67;01;23;45;67=  O  = O  = O > = O A'($&=)(A'+$*=,+A'-$&=.-A'/$&=0/P1),.0231O433>4A675=87A6:9=;:<8;A6=9>=<A6>9=?>A?@A@AAEF 5=GF|%HGA'I$&=JI|%KJ%LHKAEM 9=NM|%ON%PLO>DP=%QDA'S$R=TS|%UT%VQU>DV=%XD%YX&>WY=%cW%dc&%edbA'fabe=gf|ZhgAij]9>jhA'k$&=lk|%mlA'n$*=on|%po%qmp=%rD%sqr>Ds=%tD%ut&>Du=%vD%wv&%xwbA'yabx=zy|Z{zAi|]5>|{A'}$b=~}P ~~= O > == O |AE =|%_O |>Ai]9=Z||%>=%b9|%>=%bAi]9=Z||ZAi]9>Ai]9=Z||%>=%A'$=|%>=JAE5>9AE9>9AE5>9>bAE5=A'$=>>b=AE5=>AE5=>=|%%bAC9>=P2O P  |>AC9=%|AC5=%||%AC5>=|%%>AC5=%b=%%bAC>AC=%b 9|%  AC >  AC 9=%  AC9> =|=|%A$=|>=O| =O|  |! >!AC"5=%#"|$#AC%9=%&%|'&($'|%)(AC*9>*)AC+9=%,+AC-9=%.-/,.>/=020121AE39>3>42AE65=76875AE99>98= :O ;::>;=<><=%=>=b@>?@?AEA9>A9@@AEB9=CBDC9FDEFE|ZHGAiI]9>IH>4FFJAEK5>K9AEL9>L9AEM5>M9>bNNPQRROPOAES5=TSA'V$U=WVXTW>X>b=Y[YZ[ZP[AE]5=^]_^5>_AE`5=a`|%ba%cbb|dc>d=efe5gf9|%hgACi9>ihACj9=%kjlkbml9|%nmACo5>on=pOqpp| rq=t|%utAv$su=wvO xww yrx|zy={O |{z>|AC}5=%~}|~AC9=%||%AC9>AC9=%AC9=%>==|%%>=%|>=59|%AC9>AC9=%b9|%AC5>=O| =|%A$s=O  |>AC5=%|AC9=%|AE9>>4PAE5=5AE9>= O >=>QQNP=%bAE9>AE9=|%4>=AE9=|%AC9>AC9=%|A'$=|ZAi]9>>4Ai]9=Z|%G>=>4|ZGAi]9>Ai]5=Z||%AC9>AC9=%bAi]5=Z||ZAi]5>>4Ai]5=Z||%AC9>AC9=%A'$=|%>=~AE5>9AE9>9AE5>9AC9>bAE5= A' $=     > AC 9> b=AE5=>AE5=>=|%%b>=P2O  ! P " #!"|$#=%O &%$>&=%'|('AC)5=%*)|+*,(+|%-,AC.5>.-=/|%0/%10AC29>21AC35=%4354b958:8>7b9:AC;9=%<;>7<99=%=7AC>>>=AC?=%@?A@bBA9|%CBACD>DCACE9=%FEACG9>GF=H|IH=J|%KJAL$K=MLNIM|ON>O=POQPP| RQ=SOTSS| UT VRU|WV>WACX5=%YX|ZYAC[9=%\[|]\^Z]|%_^>_AC`5=%a`=%bcab>c=dfdefeAEg9>gACh9>h4fAEj5=kjlk5AEm9>ml= nO onn>o=p>pACq9=%rqsrbustutAEv9>v9uuAEw9=xwyx9{yz{z|Z|GAi}]5>}|>4{{~AE5>9AE9>9AE5>9AC9>bAE5=A'$U=>AC9>b=AE5=5>AE5=|%%b|>=59|%AC9>AC9=%b9|%AC5>=O| =|%A$s=O  |=O >AC5=%|AC9=%||%>AC5=%=%>==|%%AC9>AC9=%|>=59|%AC9>AC9=%b9|%AC5>=O| =|%A$s=O  |=O >AC5=%|AC9=%|AE9>AC9>4AE5=5AE9>= O >=>AC9=%bAE9>AE9=|%4>= AE9=|%AC9>AC9=%|A'$=|Z Ai ]5>  >4 Ai ]5=Z  |% G>=>4|ZGAi]5>=%b=%W%&Ai]9=Z|A'ab>=%D% &Ai!]5=Z"!|#"A'$ab >$#=%('=) O *))|+*=[-]O ,.--c(+.8 AMaincbTranslationTableDatatranslationTable _output_bufl$#  GLSL.std.450main#( mainu_xlati0cbTranslationTableDatalevelinvLevelwidthheightbufferOffsetLevel bufferOffsetLevelAbovenumEvictedTilesnumAddedTilesaddedTiles evictedTilesu_xlati5 u_xlatu1#gl_WorkGroupID(gl_LocalInvocationID.u_xlatu105u_xlatu29u_xlati10Ku_xlati15Pu_xlat15R_output_buf_origX0X R_output_buf_origX0X_bufT\u_xlati2bu_xlat2qu_xlat5{u_xlatb7u_xlatb10u_xlati7u_xlat3u_xlati12u_xlati17u_xlatb17u_xlatb4Ju_xlatb2 ttranslationTable_origX1X}u_xlat_precise_vec4u_xlat_precise_ivec4u_xlat_precise_bvec4u_xlat_precise_uvec4G GH#H#H#H# H#H#H#H#H# H # GG"G!G# G( GQHR#GRGT"GT!Gt"Gt!GtG !  ;  +  +     ;+  +;  ; !  "!;"#, & ;"(,  -,;-.+ 1,,211 4 ;45;9+ @+F;KN ON;OPQ RQ SR;ST+U;\;Ob+j;Oqxyx zy;z{x x;+ +;N ;;+ + + ;+ ;;++ ;J+o rN sr;stx |~ ~   ,! 16;|};;;A= |A= |>=>=!$#O %$$ '%&=!)(O *)) +'*> += / O,0//,302>.3A6= 76 871>58A4:.1= ;:|<;= =5|>=?<>A4A.@= BA|CBD?C>9D=E9AGF= HG|IHJEI>9J=L9ML>KM=VKWVXWUAYTUX= ZY|N[Z>P[=]9=^_]^>\_=`\a`>\a=c\dcedUAfTUe= gf|Nhg>bh=ikij>k=l9=mnlm>n=opo>p=rsrtsUAuTUt= vu|Nwv>qw= | O }||A~= ~A= A= A= P }Oy>{A{1=xA{@=xx>=xA4 = |A= |A4 @= |>9=9A= |>9=9>=UATU= |NAO@>A= |A= |=9>=>=UATU= |NAO1>=j>=9=>=>=UATU= |NAO>AO@=N|  |>9=9xUAO@=N|  |NAO@>AO@=N|  |>=Aj= |x>=NP|AO@=N|x>=x=xx>=x=NPAO@>>K=9xU @| >K AO 1=N  |    | >9=9xUAO1=N|  |NAO1>>KAO1=N|  |>9=9Aj= |! x"!>"=N#b|$#AO%1=N&%|'&x($'>(=x)=x*x+)*>+=x,.,-.-=N/bAO01>0/>K..AO1=N21| 32 43|54>95=69x76U97898AO:=N;:| <; =<|N>=AO?>?>>K99AO@=NA@| BA CB|DC>9D=E9AFj= GF|HGxIEH>I=NKq|LKAOM=NNM|ONxPLO>JP=xQ=xRJxSQR>S=xTVTUVU=NWqAOX>XW>KVV=YKxZYU\Z[\[=]^]AO_@=N`_| a`AbTU^>ba=cdcAOe1=Nfe| gfAhTUd>hg=ijiAOk=Nlk| mlAnTUj>nm|NpoAOq>qp=rut= v O,wvv|xyw=zcuyz\\8 AMaincbTranslationTableData lookupTexturetranslationTable _output_bufj#  GLSL.std.450main#)  GL_EXT_samplerless_texture_functionsmainu_xlati0cbTranslationTableDatalevelinvLevelwidthheightbufferOffsetLevel bufferOffsetLevelAbovenumEvictedTilesnumAddedTilesaddedTiles evictedTilesu_xlati8 u_xlatu1#gl_WorkGroupID)gl_LocalInvocationID0u_xlatu167u_xlatu2;u_xlati16Mu_xlati24Ru_xlat24T_output_buf_origX0X T_output_buf_origX0X_bufV`u_xlati2iu_xlat2yu_xlat8u_xlatb10u_xlatb16u_xlati10u_xlat3u_xlati18u_xlati4lookupTextureu_xlati17u_xlatu5u_xlatu21%u_xlatb250u_xlatu254u_xlatu268u_xlati28<u_xlati6Ku_xlati7Tu_xlati26|u_xlati25u_xlatb28Zu_xlatb26gu_xlatu4u_xlati21Iu_xlatb24u_xlatb2u_xlati5 translationTable_origX1Xu_xlat_precise_vec4u_xlat_precise_ivec4u_xlat_precise_bvec4u_xlat_precise_uvec4G GH#H#H#H# H#H#H#H#H# H # GG"G!G# G) GSHT#GTGV"GV!G"G!G"G!GG !  ;  +  +     ;+  +;  ; !  "!;"#$ ,$' ;") /$;/0+ 3,$433 6 ;67;;+ B+H;MP QP;QRS TS UT;UV+W^ _^;_`;Qi+r;Qy ; ;+;P ;;+ ;_  ;+ + ;+ + + ;/;/)$;%+(;60;64;8;_<, ?3BA,!CBBB,!D333;_K;T+W+j m ;|+++;+ ;Z;/g  ;;I;;_+ P ;  ^   ,! 36;;;;;A= |A= |>=>=!%#O$&%%$(&'=!*)O$+**$,(+= - O .-,> .= 1 O$211$524>05A8= 98 :93>7:A6<03= =<|>== ?7|@?A>@A6C0B= DC|EDFAE>;F=G;AIH= JI|KJLGK>;L=N;ON>MO=XMYXZYWA[VWZ= \[|P]\>R]=a;=bcabAd`B>dcAe`B=fegfAh`B>hgAj`B=kjlkmlWAnVWm= on|Ppo>ip=qsqr>s=t;=uvtu>v=wxw>x=z{z|{WA}VW|= ~}|P~>y= O A= A= A= A= P O>A3=AB=>=A6 3= |A= |A6 B= |>;=;A= |>;=;>=WAVW= |PAQB>A= |A= |=;>=>=WAVW= |PAQ3>=r>=;=>=>=WAVW= |PAQ>AW= P$= O > == O$|A6 = |_ O!|=^O ^>AQB=P|  |>;=;W B|>=;WAQB=P|  |P  AQ B>  AQ B=P  |   |>;=;Ar= |>=A63>BA6B>BA63>B>;W!"##$ ! A6&3= '&A)(= *)+'*>%+>;W=,%.,-.-!.A613= 21 32>03A653= 65 76>47= 94|:9;W:>8;= =4P >====@>?OAB@@!EBDCP!F!GEF|HG=^I<O ^JIH><J=L8| MLAN<3=ON| PO QMP|RQASK3>SR= U4|VUXVW>TXAY<3=ZY[ZW=\T][W\A^K>^]A_<=`_a`W baB|cbAdK>dcAe<B=feAgKB>gf=^hK| ih= k0|lkAmnjl= on pio|^qp><q=^r<Osrr|$ts=^u<Ovuu|$wv$xtw|yx=^z<O ^{zy><{A}<3=~}| ~A<B=|  |>|AB==|>%=%A6B>>;!A63=  3A6B>=$O$>=%>""!=;WA6B>BA6B= B=PRAQB>>A63>BA6B>BA63>B>;W$A63= A= >%>;W=%A63=  3>0A63= |Wrr| >4= 43 B|A<B>A<B=W B|A<3>=^<O|$= 0|Am= O$$|=^<O ^><A<3=| A<B=|  |>8AB==8>== 4|r>T=T|  >4= 43 B|A<B>A<B=W B|A<3>=^<O|$= 0|Am= O$$|=^<O ^><A<3=| A<B=|  A6 B> >;A6 3=    3A6B> =$O$>=>=;WA6B>A6B= |>=*A6B=  ! |"!>;"=#;| $#A%r= &% '$&|P('AQ)B>)(>*=P+R|,+AQ-B=P.-|/.0,/>0=131232=P4RAQ5B>54>33AQ63=P76| 87 98|:9>;:=;;<;W><=>=AQ?3=P@?| A@ BA|PCBAQD3>DC>>>AQE3=PFE| GF HG|IH>;I=J;AKr= LK|MLNJM>N=OQOPPA6R3>RBA6S0B>SBA6T03>TB>|WUUWXYY$VWVA6[03= \[A](= ^]_\^>Z_>|W=`Zb`abaWbA6d03= ed fe>4fA6h03= ih jiA6kgB>kjA6lgB= ml|nmoWn>8o=$pgO qpprq?OAsrr!tsDCP!u!vtu|wv=^x<O ^yxw><y=z8| {zA|<3=}|| ~} {~|AK3>A6gB= |WAB>A<3=W>WAB=>=AK>A<=W B|AK>A<B=AKB>=^K| = 4|Amj=  |^><=^<O|$=^<O|$$|=^O ^>A=| AB=|  |>TA3==T>Z=ZA60B>>|WA603=  3A6B>=$O$>0=Z>%XXUW=|WA60B>BA60B= B=PiAQ3>>QA63>BA60B>BA603>B>|W$A603= A= >Z>|W=ZA603=  3>4A603= |Wrr| A6gB>A6gB= 3 B|A<B>A<B=W B|A<3>=^<O|$= 4|Am= O$$|>A3=| AB= |    |  >8 A 3= =8>=A6gB= |rAB>AB=|  A6gB>A6gB=  3 ! B|"!A#<B>#"A$<B=%$&%W '&B|('A)<3>)(=^*<O+**|$,+= -4|.-Am/.= 0/O$100$2,1|32>3A43=54| 65A7B=87| 98 :69A6;0B>;:>|A6=03= >= ?>3A6@B>@?=$AO$BAA>0B=C>%C=D|EDWGEFGFA6H0B>HGGA6J0B= KJ|LKML>IM=NIPNO\OA6Q0B= RQ SR |TS>;T=U;| VUAWr= XW YVX|PZYAQ[3>[Z>P\=P]i|^]AQ_3=P`_|a`b^a>b=cecded=PfiAQg3>gf>eePPQQAQh=Pih| ji kj|lk>;l=m;nmWpnopoAQq=Prq| sr ts|PutAQv>vu>ppAQw=Pxw| yx zy|{z>;{=|;A}r= ~}|~|>=A6g3>BA60B>BA603>B>|W$A603= A(= >>|W=A603=  >7A603=  >4= 4|W>8= 4P ?OA!DCP!!|=^O ^>=8| A3=|  |A<3>= 4|W>TA3=W=TWA<>A=W B|A<>AB=A<B>=^<| = 7|Amj=  |^>=^O|$=^O|$$|=^`O ^>`A`=| A`B=|  |A`B>A=A`B=>=A60B>>|A603=  3A6gB>=$gO$>0=>%=|WA60B>BA60B= B=PyAQ>>A6g3>BA60B>BA603>B>|W$A603= A=  > >|W=       A603=  3>7A603= |Wrr| >4= 43 B|AB>AB=W B|A 3> =^!O"!!|$#"= $7|%$Am&%= '&O$(''$)#(|*)=^+O ^,+*>,A-3=.-| /.A0B=10| 21 3/2|43>84A5=65=78867>8=9;9:;:= <4|=<>=r>T>=?T| @? A@>4A= B4CB3 DCB|EDAFB>FEAGB=HGIHW JIB|KJAL3>LK=^MONMM|$ON= P7|QPAmRQ= SRO$TSS$UOT|VU=^W`O ^XWV>`XAY`=ZY| [ZA\`B=]\| ^] _[^A6`0B>`_>|;A6b03= cb dc3A6egB>ed=$fgO$gff>0g=h>%h=i|jiWljklkA6m0B>mllA6n0B= on|poqp>Iq=rItrssA6u0B= vu wv |xw>;x=y;| zyA{r= |{ }z||P~}AQ>~>t=Py|AQ=P|>==PyAQ>>tt=W=AQB=P| AVW>=AQ3=P| AVW>=AQ=P| AVW>|PAQ>==  O$|=c8 AMaincbTranslationTableDatatranslationTable _output_bufL# N GLSL.std.450main  main u_xlatu0 gl_WorkGroupIDgl_LocalInvocationIDu_xlatb1cbTranslationTableDatalevelinvLevelwidthheightbufferOffsetLevel bufferOffsetLevelAbovenumEvictedTilesnumAddedTilesaddedTiles evictedTiles!Bu_xlati1Lu_xlati5lu_xlat2n_output_buf_origX0X n_output_buf_origX0X_bufp|u_xlati13u_xlati3u_xlatb3u_xlatb7u_xlatb5 <translationTable_origX1XEu_xlat_precise_vec4Hu_xlat_precise_ivec4Ju_xlat_precise_bvec4Lu_xlat_precise_uvec4G G GGH#H#H#H# H#H#H#H#H# H # GG!"G!!GmHn#GnGp"Gp!G<"G<!G<GM !  ;     ; + ,;  ;+   ; !" +"# $+"'/+2 3+6@" A@;AB J";JL+M N+"[a"+"d,aed#i ji kj;klmnm on;op+"q+r zi;J|++;J+;3;3+"+"+;3 :i ;:;;<> DjF" GF I/ K, M26;DE;GH;IJ;KL= O  = O > = O A$%!#=&%A$(!'=)(A$*!#=+*A$,!#=-,P.&)+-/0.O100>1A342=54A376=87958A3:6>:9A3;6=<;><=>=>A$C!'=DC|"EDA$F!#=GF|"HG"IEHAJKB6>KIANO M=PO|"QPA$R!#=SR|"TS"UQTANV 6=WV|"XW"YUX>LY="ZLA$\![=]\|"^]"_Z^AJ`B2>`_=@bBOacbbafce=@gBO@hgf>BhAJsBr="ts"ut#"vuqA$wpqv=xw|iyxAz{l6>{yA$}!#=~}|"~A$!'=|""AJB2="">|="|"#>|="|"#"qA$pq=|iAzl2>AJB2="AJB6=""AJB6>AJB6=""#AJB6>AJB6=""#"qA$pq=|iAzlr>Azl6=i||">L="LqAzl6=i||iAzl6>Azl6=i||">="A$!d=|">Azl6=i|">==>=|iAzl6>>="Lq6|">Azl2=i||">L="LqAzl2=i||iAzl2>>Azl2=i||">L="LA$!d=|">Azl2=i|">==>=|iAzl2>>Azlr=i||">L="LqAzlr=i||iAz lr> >Az lr=i  |    |" >L="LA$!d=|">Azlr=i|">==>=|iAzlr>>=" ! q#!"#"AJ$Br="%$"&%#Az'l6=i('|)(A$*pq&>*)="+|",+#Az-l2=i.-|/.A$0pq,>0/AJ1B6="21"32#Az4lr=i54|65A$7pq3>76|i8Az9lM>98=:=<=? O>@??|aA@=jBlc=AB##8 AMaincbTranslationTableData lookupTexturetranslationTable _output_bufe#  GLSL.std.450main   GL_EXT_samplerless_texture_functionsmain u_xlatu0 gl_WorkGroupIDgl_LocalInvocationIDu_xlatb1"cbTranslationTableData"level"invLevel"width"height"bufferOffsetLevel "bufferOffsetLevelAbove"numEvictedTiles"numAddedTiles"addedTiles" evictedTiles$Eu_xlati1Ou_xlati8nu_xlat2p_output_buf_origX0X p_output_buf_origX0X_bufr~u_xlati22u_xlati3lookupTextureu_xlati14u_xlati21u_xlatb14u_xlatu4u_xlatu18u_xlatb8u_xlatu8u_xlatu24u_xlati5u_xlati12u_xlati6u_xlati24u_xlatb5u_xlatu33u_xlati25Lu_xlati18u_xlatb25u_xlatb18 ptranslationTable_origX1Xxu_xlat_precise_vec4zu_xlat_precise_ivec4|u_xlat_precise_bvec4~u_xlat_precise_uvec4G G GG!H"#H"#H"#H"# H"#H"#H"#H"#H"# H" # G"G$"G$!GoHp#GpGr"Gr!G"G!Gp"Gp!GpG !  ;     ;  + , ;  ;+ !  "! #";#$% +%& '+%*2+5 6+9C% DC;DE M%;MO P+%]c%+%f,cgf&k lk ml;mnopo qp;qr+%s+t |k;M~;D  ;+;M+;M+++;6  ;;);6+%;P;P% ;;D,5t , 999, 555;;M+%+%2 5+%T+%g+%u+%;6+;;M3,:5t9 Kc;KL U%;6;6 nk on;op wl y {2 }, 56;UV;wx;yz;{|;}~=  O  = O  = O > = O A'($&=)(A'+$*=,+A'-$&=.-A'/$&=0/P1),.0231O433>4A675=87A6:9=;:<8;A6=9>=<A6>9=?>A?@A@AA'F$*=GF|%HGA'I$&=JI|%KJ%LHKAMNE9>NLAPQ 5=RQ|%SRA'T$&=UT|%VU%WSVAPX 9=YX|%ZY%[WZ>O[=%\OA'^$]=_^|%`_%a\`AMbE5>ba=CdEOceddcheg=CiEOCjih>EjAMuEt=%vu%wv&%xwsA'yrsx=zy|k{zA|}n9>}{A'$&=|%A'$*=|%%AME5=%%>~=%~%&>~=%~%&%sA'rs=|kA|n5>AME5=%AME9=%%AME9>AME9=%%&AME9>AME9=%%&%sA'rs=|kA|nt>A'$s=P = O > == O |cAP =|%_O |C>A|n9=k||%>=%s9|%>=%sA|n9=k||kA|n9>A|n9=k||%>=%A'$f=|%>=jAP5>9AP9>9AP5>9>sAP5=A'$=>>s=AP5=t>AP5=>=|%%sAM9>=P2 O        P  |C>AM9=%|AM5=%||%AM5>=|%% > AM!5=%"!#"s=%$%%#s$AM&t>&%AM't=%(')(s*)9|%+*AM,>,+AM-9=%.-AM/9>/.=0|10=3|%43A56$24=76817|98>9=:Oc;::| <;==Oc>==| ?> @<?|cA@=BO CBA>CAMD5=%ED|FEAMG9=%HG|IHJFI|%KJ>OKAML9=%ML=%NOOMN>O=PRPQRQAPS9>S>TRAPV5=WVXW5APY9>YX= ZO [ZZ>[=\>\=%]^]s`^_`_APa9>a9``APb9=cbdc9fdefe|khgA|in9>ih>TffjAPk5>k9APl9>l9APm5>m9>snnpqrropoAPs5=tsA'v$u=wvxtw>x>s=y{yz{zp{AP}5=~}~5>AP5=|%%sff|>=59|%AM9>AM9=%s9|%AM5>=Oc| =|%A5$=O  |c=O >AM5=%|AM9=%||%AM9>AM9=%AM9=%>==|%%f>=%|>=59|%AM9>AM9=%s9|%AM5>=Oc| =|%A5$=O  |c=COC>AM5=%|AM9=%|AP9>>TpAP5=5AP9>= O >=>qqnp=%sAP9>AP9=|%T>=AP9=|%>=%|A'$f=|kA|n9>>TA|n9=k|%g>=>T|kgA|n9>A|n5=k||%>=%sA|n5=k|   |k  A| n5>  >TA| n5=k ||%>=%A'$f=|%>=AP5>9AP9>9AP>9>s !"" AP#=$#A'%$=&%'$&>'>s=(*()*) *AP,=-,.-t>.AP/=0/10AP29>21AP49=54|%65%7s6>37= 8O 9882;9:O <;; =<  P > ?=>|C@?=AO BA@>B=%C3|DCAME5=%FE|GFHDG|%IHAMJ5>JIAPM9=NM|%ON%POAMQL9>QPAMR5=%SRTSsXTWYW>VsXYAMZL9=%[Z>V[XX=%\VAM]t>]\AM^t=%_^`_sa`9|%baAMc>cbAMd9=%edAMf9>fe=g|hg=i|%jiA5k$2j=lkmhl|nm>n=oOcpoo| qp=rOcsrr| ts uqt|cvu>LvAMwL5=%xw|yxAMzL9=%{z||{}y||%~}>O~AM5=%=%O>=AP9>>T AP=5AP9>= O =O >=>!! =%sAP9>9AP9=9|kgA|n5>>TAP5>9AP9>9AP>9>sAP=A'$u=>>s=AP=5>AP=|%%sff|AP9>AP9=59|%AM9>AM9=%s9|%AM5>=Oc| =|%A5$=O  |c=O >AM5=%|AM9=%||%>3AM5=%=%3>=AP9=|%%fAML9>AML9=%|AP9>AP9=59|%AM9>AM9=%s9|%AM5>=Oc| =|%A5$=O  |c=O >AM5=%|AM9=%|AP 9> >TAP =    5AP9> = O =O >=>=%sAP9>AP9=|%T>=+AP 9=! "!|%#">#=%$|%$A'&$f='&(%'|k)(A|*n5>*)>T+A|,n5=k-,|%.-/.g>/=020121>T22|k3gA|4n5>43A|5nt=k65|7687|%98>9=%:;:s=;<=<A|>nt=k?>|@?A@|kBAA|Cnt>CB>T==A|Dnt=kED|FEGF|%HG>H=%IA'J$f=KJ|%LKMIL>M=NPNOOAPQ5>Q9APR9>R9APS5>S9>sTTVWXXUVUAPY5=ZYA'[$=\[]Z\>]>s=^`^_`_V`APb5=cbdct>dAPe5=fegf>g=h|%ih%jsiAMkL9>kj=lPmllll2nm:O onn po  P q rpq|Csr=tO uts>uAMvL9=%wv|xwAMy5=%zy|{z|x{|%}|AM~5>~}=|%%>AM5=%s=%%sAMt>AMt=%s9|%AM>AM9=%AM9>=|=|%A5$2=|>=Oc| =Oc|  |c>LAML5=%|AML9=%||%>OAMt=%=%O>=AP9>>TVAP5=5AP9>=O >=>WWTV=%sAP9>9AP9=9|kgA|nt>>TPAP5>9AP9>9AP5>9>sAP5=A'$u=>>s=AP5=5>AP5=|%%sff|>=59|%AM9>AM9=%s9|%AM5>=Oc| =|%A5$=O  |c>LAML5=%|AML9=%||%AML9>AMt=%AML9=%>==|%%f>=% |    > =   5 9|%AM9>AM9=%s9|%AM5>=Oc| =|%A5$=O  |c =!O "! >"AM#5=%$#|%$AM&9=%'&|(')%(AP*9>*)>TAP,5=-,.-5AP/9>/.=0O 100>1=2>2=%343s64565AP79>766AP89=98|%:9;:T>;=<><=J=AP?9=@?A@|%BA>B=%C|DCA'E$f=FEGDF|kHGA|Int>IH>T>JA|Knt=kLK|%MLNMg>N=OQOPQP>TQQ|kRgA|Snt>SR>>PP=%TUTsWUVWVAMXEt=%YX%ZY&A|[n9=k\[|]\A'^rsZ>^]=%_~%`_&A|an5=kba|cbA'drs`>dcAMeE9=%fe%gf&A|hnt=kih|jiA'krsg>kj|klgA|mn>ml=nqp=r O srr|cts=luncqtuWW8 AMaincbTranslationTableDatatranslationTable _output_buf`*#  GLSL.std.450main#( mainu_xlati0cbTranslationTableDatalevelinvLevelwidthheightbufferOffsetLevel bufferOffsetLevelAbovenumEvictedTilesnumAddedTilesaddedTiles evictedTilesu_xlati5 u_xlatu1#gl_WorkGroupID(gl_LocalInvocationID.u_xlatu105u_xlatu29u_xlati10Ku_xlati15Pu_xlat15R_output_buf_origX0X R_output_buf_origX0X_bufT\u_xlati2bu_xlat2iu_xlati7ru_xlat7u_xlat5u_xlatb12u_xlatb10u_xlati12u_xlat3u_xlati17u_xlati4u_xlati9 u_xlatb9u_xlatb14fu_xlatb2 translationTable_origX1Xu_xlat_precise_vec4u_xlat_precise_ivec4u_xlat_precise_bvec4u_xlat_precise_uvec4G GH#H#H#H# H#H#H#H#H# H # GG"G!G# G( GQHR#GRGT"GT!G"G!GG !  ;  +  +     ;+  +;  ; !  "!;"#, & ;"(,  -,;-.+ 1,,211 4 ;45;9+ @+F;KN ON;OPQ RQ SR;ST+U;\;Ob;i+k;Or;O ; ;+ +;N ;;;+ + + ;+ ; ;++ #;f N ;     ,! 16;;;;A= |A= |>=>=!$#O %$$ '%&=!)(O *)) +'*> += / O,0//,302>.3A6= 76 871>58A4:.1= ;:|<;= =5|>=?<>A4A.@= BA|CBD?C>9D=E9AGF= HG|IHJEI>9J=L9ML>KM=VKWVXWUAYTUX= ZY|N[Z>P[=]9=^_]^>\_=`\a`>\a=c\dcedUAfTUe= gf|Nhg>bh=jljk>il=m9=niomn>io=piqp>iq=sitsutUAvTUu= wv|Nxw>rx=yzy={9|z{>|=}~}>~=UATU= |N>= O A= A= A= A= P O>A1=A@=>=A4 = |A= |A4 @= |>9=9A= |>9=9>=UATU= |NAO@>A= |A= |=9>=>=UATU= |NAO1>=k>=9=>=>=UATU= |NAO>==9>=>=UATU= |NAO>AO@=N|  |>9=9UAO@=N|  |NAO@>AO@=N|  | > = A k=  |  > =NP|AO@=N|>== > =  =NPAO@>>K =!9"!U $"#@|%$>K%AO&1=N'&| (' )(|*)>9*=+9,+U.,-.-AO/1=N0/| 10 21|N32AO41>43>K..AO51=N65| 76 87|98>99=:9A;k= <;|=<>:=>>=N?b|@?AOA1=NBA|CBD@C> D=E=F GEF>G=HJHIJI=NKbAOL1>LK>KJJAOM=NNM| ON PO|QP>9Q=R9SRUUSTUTAOV=NWV| XW YX|NZYAO[>[Z>KUUAO\=N]\| ^] _^|`_>9`=a9Abk= cb|dcead>e=Ngr|hgAOi=Nji|kjlhk>fl=m=nfomn>o=prpqrq=NsrAOt>ts>KrrAOu=Nvu| wv xw|yx>9y=z9{zU}{|}|AO~=N~|  |NAO>>K}}AO=N|  |>9=9Ak= |>=N|AO=N|>f==f>==NAO>>K=KU=AO@=N| ATU>=AO1=N| ATU>=AO=N| ATU>=AO=N| ATU>==  O,|=c8 AMaincbTranslationTableData lookupTexturetranslationTable _output_buf,#  GLSL.std.450main#)  GL_EXT_samplerless_texture_functionsmainu_xlati0cbTranslationTableDatalevelinvLevelwidthheightbufferOffsetLevel bufferOffsetLevelAbovenumEvictedTilesnumAddedTilesaddedTiles evictedTilesu_xlati9 u_xlatu1#gl_WorkGroupID)gl_LocalInvocationID0u_xlatu186u_xlatu2=u_xlati18Ou_xlati27Tu_xlat27V_output_buf_origX0X V_output_buf_origX0X_bufX`u_xlati2fu_xlat2mu_xlati11vu_xlat11u_xlat9u_xlatb20u_xlatb18u_xlati20u_xlat3u_xlati29u_xlati4u_xlati5lookupTextureu_xlati190u_xlatu62u_xlatu13;u_xlatb28Fu_xlatu28Ju_xlatu31Ou_xlati24Tu_xlati7du_xlati8nu_xlati31u_xlati28u_xlatb24ru_xlatb13u_xlatu22u_xlati22u_xlati13'u_xlatb31du_xlatb27u_xlatu5u_xlatb2u_xlati6_u_xlatb22 translationTable_origX1Xu_xlat_precise_vec4u_xlat_precise_ivec4u_xlat_precise_bvec4u_xlat_precise_uvec4G GH#H#H#H# H#H#H#H#H# H # GG"G!G# G) GUHV#GVGX"GX!G"G!G "G !G G !  ;  +  +     ;+  +;  ; !  "!;"#$ ,$' ;") /$;/0+ 3,$433;/6+ : ; ;=+J;OR SR;STU VU WV;WX+Y;`;Sf;m+o;Sv;S ; ;+;R ;;;+ +  ;  ;+ ;+ + + %;/0;/2):;;+>;;F;;J N;NO;T, W3:Y,![:::,!\333`;d;n+q+  ;+++;+ 8;r;;;N  `;;';d;/;;;_ R   ;       ,! 36;;;;;;;A= |A= |>=>=!%#O$&%%$(&'=!*)O$+**$,(+= - O .-,> .= 1 O$211$524>05A7= 87 983A;<6:><9A;>03= ?>|@?A;A6:= BA|CBD@CA;E0:= FE|GFHDG>=H=I=AKJ= LK|MLNIM>=N=P=QP>OQ=ZO[Z\[YA]XY\= ^]|R_^>T_=a==bcab>`c=d`ed>`e=g`hgihYAjXYi= kj|Rlk>fl=npno>mp=q==rmsqr>ms=tmut>mu=wmxwyxYAzXYy= {z|R|{>v|=}~}==~>=>=YAXY= |R>= O A= A= A= A= P O>A3=A:=>=A; 3= |A= |A; := |>===A= |>===>=YAXY= |RAS:>A= |A= |==>=>=YAXY= |RAS3>=o>===>=>=YAXY= |RAS>===>=>=YAXY= |RAS>AY= P$= O > ==  O$|A; = |_ |  > AS :=R  |    |>===Y :|>==YAS:=R|  |R AS!:>! AS":=R#"| $# &$%|'&>='=(=A)o= *)|+*,(+>,=-/-..A;103>1:A;32:>3:A;423>4:>=Y557899:676A;<23= =<A?>= @?A=@>;A>=Y=B;DBCDC7DA;G23= HG IH>FIA;K23= LK ML>JM= PJ|QPRYQASO:>SR= UJP VUUUUXVWOYZXX!]Z\[P!^!_]^|`a_=bTO cba>TcAeO:=fe| gfAhT3=ih| ji kgj|lkAmd3>ml= oJ|porpq>nrAsT3=tsutY=vnwuYvAxd>xwAyT=zy{zY |{:|}|A~d>~}AT:=Ad:>=d| = F|A=  |>T=TO|$=TO|$$|>OAO3=| AO:=|  |>A:==>;=;A;2:>>=7A;23=  3A;0:>=$0O$>2=;>8857==YA;2:>:A;2:= :=RTAS:>>/A;03>:A;2:>:A;23>:>=Y:A;23= A= >;>=Y=;A;23=  3>FA;23= |Yoo| >J= J3 :|AT:>AT:=Y :|AT3>=TO|$= F|A= O$$|>OAO3=| AO:=|  |AO:>A:=AO:=>== J|o>n=n|  >J= J3 :|AT:>AT:=   Y  :|  A T3>  =TO|$= F|A= O$$|=TO >TAT3=| AT:=|  A;!2:>! >=A;#23= $# %$3A;&0:>&%=$'0O$(''>2(=)>)=*=+*Y-+,-,A;.2:>.--A;/2:= 0/|1021>2=3534B4A;62:= 76 978|:9>=:=;=| <;A=o= >= ?<>|R@?ASA:>A@>5B=RCT|DCASE:=RFE|GFHDG>H=IKIJKJ=RLTASM:>ML>KK55//ASN3=RON| PO QP|RQ>=R=S=TSYVTUVUASW3=RXW| YX ZY|R[ZAS\3>\[>VVAS]3=R^]| _^ `_%|a`>=a=b=Aco= dc|edfbe>f=gighhA;j03>j:A;k0:>k:A;l03>l:>Ymmopqq:nonA;s03= tsAu>= vuwtv>rw>Y=xrzxyzyozA;|03= }| ~}A;2:>~A;03=  >= |Y>n= P WOY!\[P!!|`=TO >T=n| AT3=|  |Ad3>= |qA:>AT3=Y>YA:=>=Ad>AT=Y :|Ad>AT:=Ad:>=d| A;2:= |A=  |>T=TO|$=TO|$$|=`O`>A3=| A:=|  |A:>A3=A:=>r=rA;0:>>oA;03=  3A;0:>=$0O$>0=r>;ppmo=YA;0:>:A;0:= :=RfAS3>>iA;03>:A;0:>:A;03>:>Y:A;03= A= >r>Y=rA;03=  3A;2:>A;03= |Yoo| >=   3  :|  A T:>  AT:=Y :|AT3>=TO|$A;2:= |A= O$$|>OAO3= | ! A"O:=#"| $# %!$|&%>n&A(3=)(=*n+)*>'+=,'.,-.-= /|0/10oA2:>21A3:=43| 54 65>6= 7873 98:|:9A;T:>;:A<T:==<>=Y ?>:|@?AAT3>A@=BTOCBB|$DCA;E2:= FE|GFAHG= IHO$JII$KDJ|LK=`MO`NML>NAO3=PO| QPAR:=SR| TS UQTA;V0:>VU>.A;X03= YX ZY3A;[0:>[Z=$\0O$]\\>0]=^'>;^=_`_Yb`abaA;c0:>cbbA;e0:= fe|gfhg>dh=idkijwjA;l0:= ml nm8|on>=o=p=| qpAro= sr tqs|RutASv3>vu>kw=Rxf|yxASz3=R{z||{}y|>}=~~=RfAS3>>kkiiAS=R|  |>===YAS=R|  |RAS>>AS=R|  %|>===Ao= |>=#A;3>:A;0:>:A;03>:>Y:A;03= A>= >>Y=A;03=  A;6:>A;03=  A;2:>A;2:= |YA:>=$2O WOY!\[P!!|`=O >A:=| A3=|  |AT3>A;2:= |qA:>A3=Y>YA:=>=AT>A=Y :|AT>A:=AT:>=T| A;6:= |A=  |>=O|$=O|$$|=`O`>A3=| A:=|  |>`A== `  > =      A;0:>> A;03=  3A;:>=$O$>0=>;=YA;0:>:A;0:= :  =R!vAS">"!>  #A;$3>$:A;%0:>%:A;&03>&:>Y'')*++:()(A;,03= -,A.= /.0-/>0>Y=131232)3A;503= 65 763A;86:>87A;903= :9|;:<Y;oo| =<A;>2:>>=A;?2:= @?A@3 BA:|CBAD:>DCAE:=FEGFY HG:|IHAJ3>JI=KOLKK|$MLA;N6:= ON|POAQP= RQO$SRR$TMS|UT>UAV3=WV| XWAY:=ZY| [Z \X[|]\A^:>^]A`=a`Ab:=cbdac>_d=e_gefgfA;h2:= ih|jikjoAl:>lkAm:=nm| on poA;q2:>qpA;r2:= srts3 ut:|vuAw:>wvAx:=yxzyY {z:||{A}3>}|=~O~~|$A;6:= |A= O$$|=`O`>A=| A:=|  A;0:>>)gA;03=  3A;:>=$O$>0=_>;**')=YA;0:>A;0:= |>d=dA;0:=  8|>===| Ao=  |RAS>>=Rv|AS=R|>==RvAS>>AS=R|  |>===YAS=R|  |RAS>>AS=R|  %|>===Ao= |>=XA;63>:A;0:>:A;03>:>Y:A;03= A>= >r>Y=rA;03=  A;2:>A;03=  >= |Y>n= P WOY!\[P!!|`=O >=n| A3=|  |A3>= | qA :>  A 3=    Y >YA:=>=A>A=Y :|A>A:=A:>=| A;!2:= "!|#"A$#= %$ & %|'&>'=(O)((|$*)=+O,++|$-,$.*-|/.=`0O`10/>1A23=32| 43A5:=65| 76 847|98A::>:9A;=<;A=:=>=?<>>r?=@rB@ABAA;C0:>C>BA;E03= FE GF3A;H6:>HG=$I6O$JII>0J=Kr>;K=LMLYOMNONA;P0:>P:OOA;Q0:= RQSR:USTUT=RVASW>WV>UUXA;Y63>Y:A;Z0:>Z:A;[03>[:>Y\\^_``:]^]A;a03= baAc= dcebd>re>Y=frhfghg^hA;j03= kj lk3A;m2:>mlA;n03= on|poqYpoo| rq>r= sts3 ut:|vuAw:>wvAx:=yxzyY {z:||{A}3>}|=~O~~|$A;2:= |A= O$$|=O >A3=| A:=|  |>nA==n>'='= |oA:>A:=|  >= 3 :|A:>A:=Y :|A3>=O|$A;2:= |A= O$$|=`O`>A3=| A:=|  A;0:>>^A;03=  3A;6:>=$6O$>0='>;__\^=YA;0:>A;0:= |>d=dA;0:=  8|>===| Ao=  |RAS>>=R|AS=R|>==RAS>>=Y=AS:=R| AXY>=AS3=R| AXY>=AS=R| AXY>=AS=R| AXY>=   =  O$  |=c 8 AMaincbTranslationTableDatatranslationTable _output_buf"# v GLSL.std.450main  main u_xlatu0 gl_WorkGroupIDgl_LocalInvocationIDu_xlatb1cbTranslationTableDatalevelinvLevelwidthheightbufferOffsetLevel bufferOffsetLevelAbovenumEvictedTilesnumAddedTilesaddedTiles evictedTiles!Au_xlati1Iu_xlati5]u_xlati9cu_xlat2e_output_buf_origX0X e_output_buf_origX0X_bufgqu_xlati13u_xlati3u_xlati7u_xlatb7u_xlatb11u_xlatb5 ctranslationTable_origX1Xmu_xlat_precise_vec4pu_xlat_precise_ivec4ru_xlat_precise_bvec4tu_xlat_precise_uvec4G G GGH#H#H#H# H#H#H#H#H# H # GG!"G!!GdHe#GeGg"Gg!Gc"Gc!GcGu !  ;     ; + ,;  ;+   ; !" +"# $+"'/+2 3+6 @";@A;@I+J K+"X;@]` a` ba;bcded fe;fg+"h o`;@q;@+"+++;@+;3;3+"+"+;3 a` ba;bceh" lan" on q/ s, u26;lm;op;qr;st= O  = O > = O A$%!#=&%A$(!'=)(A$*!#=+*A$,!#=-,P.&)+-/0.O100>1A342=54A376=87958A3:6>:9A3;6=<;><=>=>A$B!'=CB|"DCA$E!#=FE|"GF"HDG>AHAKL J=ML|"NMA$O!#=PO|"QP"RNQAKS 6=TS|"UT"VRU>IV="WIA$Y!X=ZY|"[Z"\W[>I\="^I"_^#>]_="i]"ji#"kjhA$lghk=ml|`nmAopc6>pnA$r!#=sr|"tsA$u!'=vu|"wv"xtw="yI"zxy>qz="{q"|{#>q|="}q"~}#"~hA$gh=|`Aoc2>="A">="I="">=""#>=""#"hA$gh=|`Aoc>="A"'="I">A="A"#>A="A"#"hA$gh=|`AocJ>Aoc6=`||">I="IhAoc6=`||`Aoc6>Aoc6=`||">="A$!=|">Aoc6=`|">==>=|`Aoc6>>="Ih6|">Aoc2=`||">I="IhAoc2=`||`Aoc2>>Aoc2=`||">I="IA$!=|">Aoc2=`|">==>=|`Aoc2>>Aoc=`||">I="IhAoc=`||`Ao c> >Ao c=`  |    |" >I="IA$!=|">Aoc=`|">==>=|`Aoc>>Ao cJ=`! |"!#"|"$#>I$="%I&%h(&'('Ao)cJ=`*)|+*,+|`-,Ao.cJ>.->((Ao/cJ=`0/|1021|"32>I3="4IA$5!=65|"76847>8Ao9cJ=`:9|";:<;><===>?=>>?=@B@ABA|`CAoDcJ>DC>BB="EFEhHFGHG="I]"JI#AoKc6=`LK|MLA$NghJ>NM="Oq"PO#AoQc2=`RQ|SRA$TghP>TS="U"VU#AoWc=`XW|YXA$ZghV>ZY="[A"\[#Ao]cJ=`^]|_^A$`gh\>`_=adc=f Oegff|hig=ajccdijHH8 AMaincbTranslationTableData lookupTexturetranslationTable _output_buf}#  GLSL.std.450main   GL_EXT_samplerless_texture_functionsmain u_xlatu0 gl_WorkGroupIDgl_LocalInvocationIDu_xlatb1"cbTranslationTableData"level"invLevel"width"height"bufferOffsetLevel "bufferOffsetLevelAbove"numEvictedTiles"numAddedTiles"addedTiles" evictedTiles$Du_xlati1Lu_xlati9_u_xlati17eu_xlat2g_output_buf_origX0X g_output_buf_origX0X_bufisu_xlati25u_xlati3u_xlati4lookupTextureu_xlati16u_xlati24u_xlatb16u_xlatu5u_xlatu11u_xlatb9u_xlatu9u_xlatu27u_xlati21u_xlati6u_xlati7 u_xlati27u_xlatb21u_xlatb47u_xlatu4Ou_xlati5Uu_xlati13u_xlatb5tu_xlati20 u_xlatb20 translationTable_origX1Xu_xlat_precise_vec4u_xlat_precise_ivec4u_xlat_precise_bvec4u_xlat_precise_uvec4G G GG!H"#H"#H"#H"# H"#H"#H"#H"#H"# H" # G"G$"G$!GfHg#GgGi"Gi!G"G!G"G!GG !  ;     ;  + , ;  ;+ !  "! #";#$% +%& '+%*2+5 6+9 C%;CD;CL M+%Z;C_b cb dc;defgf hg;hi+%j qb;Cs;C+%++% ;  ;%;C+;C+++;6  ;;);6+%;M;M ;;, 59 , 999, 555%;;C +%#+%6 9+%V+%i+%w+%;6+;6;7;O T;TU,X5;6;Ct;6  }b ~};~ c  2 , 56;;;;=  O  = O  = O > = O A'($&=)(A'+$*=,+A'-$&=.-A'/$&=0/P1),.0231O433>4A675=87A6:9=;:<8;A6=9>=<A6>9=?>A?@A@AA'E$*=FE|%GFA'H$&=IH|%JI%KGJ>DKAMN 5=ON|%POA'Q$&=RQ|%SR%TPSAMU 9=VU|%WV%XTW>LX=%YLA'[$Z=\[|%]\%^Y]>L^=%`L%a`&>_a=%k_%lk&%mljA'nijm=on|bpoAqre9>rpA't$&=ut|%vuA'w$*=xw|%yx%zvy=%{L%|z{>s|=%}s%~}&>s~=%s%&%jA'ij=|bAqe5>=%D%>=%L=%%>=%%&>=%%&%jA'ij=|bAqe>=%D%*=%L%>D=%D%&>D=%D%&%jA'ij=|bAqe>A'$j=P = O > == O |AM =|%_|>Aqe9=b||%>=%j9|%>=%jAqe9=b||bAqe9>Aqe9=b||%>=%A'$=|%>=lAM5>9AM9>9AM5>9>jAM5=A'$=>>j=AM5=>AM5=>=|%%jAC9>=P2  O       P  |=O >AC9=%|AC5=%||%AC5>=!|%"!%$"#> $AC%5=%&%'&j=%( %)'j(AC*>*)AC+=%,+-,j.-9|%/.AC0>0/AC19=%21AC39>32=4|54=7|%87A9:$68=;:<5;|=<>==>O?>>| @?=AOBAA| CB D@C|ED>EACF5=%GF|HGACI9=%JI|KJLHK|%ML>LMACN9=%ON=%PLQOP>Q=RTRSTSAMU9>U>VTAMX5=YXZY5AM[9>[Z= \O ]\\>]=^>^=%_`_jb`abaAMc9>c9bbAMd9=edfe9hfghg|bjiAqke9>kj>VhhlAMm5>m9AMn9>n9AMo5>o9>jpprsttqrqAMu5=vuA'x$w=yxzvy>z>j={}{|}|r}AM5=5>AM5=|%%j|>=59|%AC9>AC9=%j9|%AC5>=O| =|%A9$=O  |>AC5=%|AC9=%||%AC9>AC9=%AC9=%>==|%%> =% |>=59|%AC9>AC9=%j9|%AC5>=O| =|%A9$=O  |=O >AC5=%|AC9=%|AM9>>VrAM5=5AM9>= O >=>sspr=%jAM9>AM9=|%V>=AM9=|%>=%|A'$=|bAqe9>>VAqe9=b|%i>=>V|biAqe9>Aqe5=b||%>=%jAqe5=b|   |b  Aq e5>  >VAq e5=b ||%>=%A'$=|%>=AM5>9AM9>9AM5>9>j !!AM"5=#"A'$$=%$&#%>&>j=')'()()AM+5=,+-,>-AM.5=/.0/>0=1|%21%3j2AC49>43=5P65555276 O 877 98 P : ;9:|<;==O >=<>>AC?9=%@?|A@ACB5=%CB|DCEAD|%FEACG5>GF=H|%IH%JI#> JACK5=%LKMLj=%N %OMjNACP>POACQ=%RQSRjTS9|%UTACV>VUACW9=%XWACY9>YX=Z|[Z=\|%]\A9^$6]=_^`[_|a`>a=bOcbb| dc=eOfee| gf hdg|ih>iACj5=%kj|lkACm9=%nm|onplo|%qp>LqACr5=%sr=%tLust>u=vxvwxwAMy9>y>VxAM{5=|{}|5AM~9>~}= O >=>  =%jAM9>9AM9=9|biAqe5>>VAM5>9AM9>9AM5>9>jAM5=A'$w=>>j=AM5=5>AM5=|%%j|>=59|%AC9>AC9=%j9|%AC5>=O| =|%A9$=O  |>AC5=%|AC9=%||%AC9>AC5=%AC9=%>==|%%> =% |>=59|%AC9>AC9=%j9|%AC5>=O| =|%A9$=O  |>AC5=%|AC9=%|AM9>>VAM5=5AM9>= O >=>=%jAM9>AM9=|%V>=AM9=|% > =% |  A' $=    |bAqe5>>VAqe5=b|%i>=>V|biAqe5>Aqe=b||%>=% ! j#!"#"Aq$e=b%$|&%'&|b('Aq)e>)(>V##Aq*e=b+*|,+-,|%.->.=%/A'0$=10|%213/2>3=46455AM875>89AM99>99AM:5>:9>j;;=>??<=<AM@5=A@A'B$=CBDAC>D>j=EGEFGF=GAMI5=JIKJ>KAML5=MLNM>N=P|%QP%RjQACSO9>SR=VPWVVVV2YWXO ZYY [Z P \ ][\|^]>U^AC_O9=%`_|a`ACbU5=%cb|dcead|%feACg5>gf=h|%ih%ji#> jACkU5=%lkmlj=%n %omjnACp>poACqU=%rqsrjts9|%utACv>vuACwU9=%xwACy9>yx=z|{z=||%}|A9~$6}=~{|>O=OO| =OO|  |=OO >OACO5=%|ACO9=%||%>LAC=%=%L>=AM9>>V=AM5=5AM79>= 7O >=>>>;==%jAM9>9AM9=9|biAqe>>V6AM75>9AM9>9AM5>9>jAM5=A'$w=>>j=AM5=5>AM5=|%%j|>=59|%ACO9>ACO9=%j9|%ACO5>=OO| =|%A9$=O  |=OO >OACO5=%|ACO9=%||%ACO9>AC=%ACO9=%>==|%%> =% |>=59|%AC9>AC9=%j9|%AC5>=O| =|%A9 $=  O     |  =UO >UACU5=%|ACU9=%|AM9>>VAM5=5AM79>= 7O >=>=% ! j#!"#"AM$9>$##AM%9=&%|%'&('V>(=)+)*7*AM,9=-,.-|%/.>/=%0|10A'2$=32413|b54Aq6e>65>V+7Aq8e=b98|%:9;:i>;=<><=>=>V>>|b?iAq@e>@?++66AqAe=bBA|CBDC|%ED>E=%FGFjIGHIHAqJe=bKJ|LKML|bNMAqOe>ON>VIIAqPe=bQP|RQSR|%TS>T=%UA'V$=WV|%XWYUX>Y=Z\Z[[AM]75>]9AM^9>^9AM_5>_9>j``bcddabaAMe5=feA'g$=hgifh>i>j=jljklkblAMn5=onpo>pAMq5=rqsr>s=u|%vu%wjv>tw=xPyxxxx2zy O {zz |{ P } ~|}|~=OO >O=%t|ACO5=%||%AC5>=|%%#> ACO5=%j=% %jAC>ACO=%j9|%AC>ACO9=%AC9>=|=|%A9$6=|>O=OO| =OO|  |=OO >OACO5=%|ACO9=%||%>LAC=%=%L>=AM9>>VbAM5=5AM79>= 7O >=>cc`b=%jAM9>9AM9=9|biAqe>>V\AM75>9AM9>9AM5>9>jAM5=A'$w=>>j=AM5=5>AM5=|%%j|>=59|%ACO9>ACO9=%j9|%ACO5>=OO| =|%A9$=O  |=OO >OACO5=%|ACO9=%| |%  >t AC =%  =%t > = =|%%> =% |>=59|%ACO9>ACO9=% j! 9|%"!AC#O5>#"=$OO%$$| &%='|%('A9)$(=*)O +** ,&+|-,=.OO /.->O/AC0O5=%10|21AC3O9=%43|54625AM79>76>VAM95=:9;:5AM<79><;= =7O >==>>=? >?=%@A@jCABCBAMD9>DCCAME9=FE|%GFHGV>H=IKIJWJAML9=MLNM|%ON>O=%P|QPA'R$=SRTQS|bUTAqVe>VU>VKWAqXe=bYX|%ZY[Zi>[=\^\]^]>V^^|b_iAq`e>`_KK\\=%abajdbcdc=%e_%fe&Aqge9=bhg|ihA'jijf>ji=%ks%lk&Aqme5=bnm|onA'pijl>po=%q%rq&Aqse=bts|utA'vijr>vu=%wD%xw&Aqye=bzy|{zA'|ijx>|{=}= O |=cecdd8 AcbTranslationTableData  addedTiles bufferOffsetLevelbufferOffsetLevelAbove evictedTiles height invLevellevel numAddedTilesnumEvictedTileswidth.Internal-CreateFoveatedShadingRateTextureArray CreateFoveatedShadingRateTextureCGlobals_Result _ResultYFlip(U#  GLSL.std.450main main u_xlati0 gl_GlobalInvocationIDCGlobals_ShadingRateLevels_HalfWidth_HalfHeight_OffsetX_OffsetY _UpperRightMajorMinorAxes _UpperLeftMajorMinorAxes _LowerRightMajorMinorAxes _LowerLeftMajorMinorAxes  _BorderUpperRightMajorMinorAxes  _BorderUpperLeftMajorMinorAxes  _BorderLowerRightMajorMinorAxes  _BorderLowerLeftMajorMinorAxes!u_xlati4-u_xlati85u_xlati1Ru_xlati5u_xlatb8u_xlatu8u_xlati2u_xlat8u_xlatu1u_xlati9u_xlat9u_xlati10u_xlat10u_xlat3Vu_xlat1au_xlat7Hu_xlat0u_xlat4u_xlatb0u_xlatu0u_xlatb4_Result_origX0X_ResultYFlip_origX1Xu_xlat_precise_vec4u_xlat_precise_ivec4u_xlat_precise_bvec4u_xlat_precise_uvec4G H#H# H#H#H# H#0H#@H#PH#`H #pH #H #H #GG"G!G"G!GG"G!GG !  ;      ; +     ;+  ;!+ "+& ,;,-+./ ;56 + 9,6:"9;<;>;,/@,/A""+ C;R+V W+t u ;;  ;;,+  ; 6;;, ;;;;+# ;V;a+~+ +?+ +F GF;GH+\ ;;+?;;  ! ;;   < 6+ , 96;;;;A = |A= |~A > A# "= $#|%$A'&= ('|)(~*)+%*>!+= 0 O/100|21P3..432>-4= 7 O 6877<=8:O>?==/B?A@P/DCC/EBD|FE=G5OHGF>5HAI-=JI| KJAL5"=ML| NM OKN|POAQ59>QP=S5OTSS|/UTAWXV=YXAWZV"=[ZP\Y[|/]\/^U]|_^=`ROa`_>RaAbR9=cb| dcAeR=fe| gf hdg|ihAj->jiAk-=lkAm =nmolnAp >po=q5Orqq|/srAuvt=wv|/xw/ysx|zy={5O|{z>5|A}5"=~}| ~A5=|  |A->A-==!A ">A =;.>=; A "=;.>=;eA 9= || >A 9= |&A5>= ;" C|A>A=;. C|A">=|/A=O|//|=RO>RAR"=| AR=|  |A->A-=A-=A->A-=o>A5=|  CA>A= ;" C|A5>A5=;. C|A5">=5O|/A=O|//|>A"=| A=|  |A>A=A=A>A =A =A">=o > A "=  =    > A "=A "=>=o>=A=A>=A= > =!|/"!A$#=%$O&%%|/'&/("'|)(>)A*"=+*| ,+A-=.-| /. 0,/|10A2->21A3-=43A5-=65746A8->87A9-=:9o;:>;=<5O=<<|/>=A?#=@?OA@@|/BA/C>B|DC=E5OFED>5FAG5"=HG| IHAJ5=KJ| LK MIL|NMAO5>ONAP5=QPAR5=SRTQSAU5>UTAW5=XWoYX>VYAZ"=[Z=\][\>]=^=_V`^_>V`=b=cVdbc>adeAf 9= gf|hgih| ji>jAk 9= lk|mlnm&onAp5>po= q;rq" srC|tsAu>utAv=wv;xw. yxC|zyA{">{z=||/}|A~=O|//}|=RO>RAR"=| AR=|  |A->A-=A-=A->A-=o>A5=|  CA>A= ;" C|A5>A5=;. C|A5">=5O|/A~=O|//|>A"=| A=|  |A>A=A=A>A =A =A">=o>A"==>A "=A "=>=o>=A=A>=A=>=|/A=O|//|>A"=| A=|  |A->A-=A-=A->A-=o>=5O|/A=O|//|=5O>5A5"=| A5=|   |  A 5>  A 5= A5=A5>A5=o>VA"==>==V>V==V>a A! "="!;#.">#=;$&$%%A' 9= ('|)(*)| +*>+A, 9= -,|.-/.&0/A15>10= 2;32" 43C|54A6>65A7=87;98. :9C|;:A<"><;==|/>=A@?=A@OBAA|/CB/D>C|ED=FROGFE>RGAHR"=IH| JIAKR=LK| ML NJM|ONAP->POAQ-=RQAS-=TSURTAV->VUAW-=XWoYX>YAZ5=[Z| \[ ]\CA^>^]A_= `_;a`" baC|cbAd5>dcAe5=fe;gf. hgC|ihAj5">ji=k5Olkk|/mlAn?=onOpoo|/qp/rmq|sr>sAt"=ut| vuAw=xw| yx zvy|{zA|>|{A}=~}A=~A>A =A =A">=o>A"==>A "=A "=>=o>=A=A>=A=>=|/A=O|//|>A"=| A=|  |A->A-=A-=A->A-=o>=5O|/A=O|//|=5O>5A5"=| A5=|  |A5>A5=A5=A5>A5=o>VA"==>==V>V==V>a&A 9= || >A 9= |&A5>= ;" C|A>A=;. C|A">=|/A=O|//|=RO>RAR"=| AR=|  |  A ->  A -=  A-= A 9>A5=|  CA>A= ;" C|A5>A5=;. C|! A"5">"!=#5O$##|/%$A&='&O(''|/)(/*%)|+*>+A,"=-,| .-A/=0/| 10 2.1|32A4>43A5=65A7=87968A:>:9A;=<;o=<A>>>==? O@??=A OBAAC@B=D OEDC> E=I oFJI>HJAKH=LKAMH9=NMOLN>OAPH"=QPAR=SRTQSAU>UT=VAW=XWYVX>Y=Z|/[ZA]\=^]O_^^|/`_/a[`|ba>bAc"=dc| edAf=gf| hg ieh|jiAk->kjAl-=mlAn-=onpmoAq->qpAr-=srots>t=u5Ovuu|/wvAx\=yxOzyy|/{z/|w{|}|=~5O~}>5A5"=| A5=|  |A5>A5=A5=A5>A5=o>VAH==AH>AH"==V>=AH=>a&&=;>=;A.= >=a;>=;A."= >A.9= >==  |= P6cA&= |>!A-"=| =!|  A">=  O =6O 6>==6O |= P6c8ACGlobals _BorderLowerLeftMajorMinorAxes_BorderLowerRightMajorMinorAxes_BorderUpperLeftMajorMinorAxes_BorderUpperRightMajorMinorAxesp _HalfHeight _HalfWidth _LowerLeftMajorMinorAxes`_LowerRightMajorMinorAxesP_OffsetX_OffsetY _ShadingRateLevels_UpperLeftMajorMinorAxes@_UpperRightMajorMinorAxes00Internal-CreateFoveatedShadingRateTextureNoArray CreateFoveatedShadingRateTexture$Globals_Result _ResultYFlip DXBCҩ*[ODu ,<LISGNOSGNSHEX PjYF DDDD_2h : A" ARV V " 2@ "@&   +&2FF+2F:*&   +":*&   +:*&   +":*7 R"@& 2F F +2F&2FF+2F2FF &   +":*&   +:*&   +2F " 7 R 2@??7 " * 7   ""@:& 2  &+F2 F & 2  +2F2 F" & 2  +2F2 F &  +":*7 2VFF""@:&   +&+:*&   +":*&   +:*&  +":*7 2VFF b@??7 B* * 7 " *T F)" @VVA6 F>A$Globals _ShadingRateLevels _HalfWidth  _HalfHeight_OffsetX_OffsetY _UpperRightMajorMinorAxes0_UpperLeftMajorMinorAxes@_LowerRightMajorMinorAxesP_LowerLeftMajorMinorAxes`_BorderUpperRightMajorMinorAxesp_BorderUpperLeftMajorMinorAxes_BorderLowerRightMajorMinorAxes_BorderLowerLeftMajorMinorAxes CreateFoveatedShadingRateTexture$Globals_Result _ResultYFlip DXBCҩ*[ODu ,<LISGNOSGNSHEX PjYF DDDD_2h : A" ARV V " 2@ "@&   +&2FF+2F:*&   +":*&   +:*&   +":*7 R"@& 2F F +2F&2FF+2F2FF &   +":*&   +:*&   +2F " 7 R 2@??7 " * 7   ""@:& 2  &+F2 F & 2  +2F2 F" & 2  +2F2 F &  +":*7 2VFF""@:&   +&+:*&   +":*&   +:*&  +":*7 2VFF b@??7 B* * 7 " *T F)" @VVA6 F>A$Globals _ShadingRateLevels _HalfWidth  _HalfHeight_OffsetX_OffsetY _UpperRightMajorMinorAxes0_UpperLeftMajorMinorAxes@_LowerRightMajorMinorAxesP_LowerLeftMajorMinorAxes`_BorderUpperRightMajorMinorAxesp_BorderUpperLeftMajorMinorAxes_BorderLowerRightMajorMinorAxes_BorderLowerLeftMajorMinorAxes CreateFoveatedShadingRateTextureCGlobals_Result _ResultYFlipXJ# 0 GLSL.std.450main main u_xlati0 gl_GlobalInvocationIDCGlobals_ShadingRateLevels_HalfWidth_HalfHeight_OffsetX_OffsetY _UpperRightMajorMinorAxes _UpperLeftMajorMinorAxes _LowerRightMajorMinorAxes _LowerLeftMajorMinorAxes  _BorderUpperRightMajorMinorAxes  _BorderUpperLeftMajorMinorAxes  _BorderLowerRightMajorMinorAxes  _BorderLowerLeftMajorMinorAxes"u_xlati4Fu_xlatb1[u_xlati1qu_xlat1u_xlati2u_xlat2u_xlat9u_xlat3u_xlat7~u_xlat0u_xlatb0u_xlatu0u_xlatb4u_xlat4u_xlati9u_xlat5:u_xlat13u_xlat8u_xlatu4u_xlatb8_Result_origX0Xu_xlatu1_ResultYFlip_origX1X'u_xlat_precise_vec4)u_xlat_precise_ivec4+u_xlat_precise_bvec4-u_xlat_precise_uvec4G H#H# H#H#H# H#0H#@H#PH#`H #pH #H #H #GG"G!G"G!GG"G!GG/ !  ;      ; +     ;+    ! ;!"+ #+'+0 1+< =CDC ED;EF+G,HGGGGKC NC;[+\ ]+ ln on po;pqtn xn ;n ;;+ ;x+ ;x++ ++G +h;~+ ;N+n?  ;;N t;;;x;x:;x;;N  ! ;     ;; &o ( *K , + ., /..#6;&';();*+;,-A = |A= |~A >A$ #= %$|&%A('= )(|*)~+*,&+A-">-,=. O/..A120=32A140#=54P6357/6=8 O 987> 9= :"O;::A=><=?>@;?=A O BA@> B=I O JIIKLHJODMLL>FMANOF=CPORPQQAS #=TSCUGTANVF>VUANWF=CXWZXYYA]^\=_^O`__A]a\=baOcbbd`c=e[O fed>[fAg =hgAi =jikhjAm[l>mk=r[O srrotus=ovqO owvu>qwAxyql=nzyAx{q=n|{n}z|Ax~q>~}A #=A #=A>A=onAx>Ax=nAxq=nnAx>Ax=nAxq=nn>A]=OA]=O=[O >[=[Oo=oqO o>qAxql=nAxq=nnAxq>Ax=nAxq=nnAx>Ax=nAxq=nn>ZA]=OA]=O=[O >[A =A =A[l>=[O ot=oqO o>qAxql=nAxq=nnAxq>A #=A #=A>A=onAx>Ax=nAxq=nnAx>Ax=nAxq=nn>A]=OA]=O=[O >[=[Oo=oqO o>qAxql=nAxq=nnAxq>Ax=nAxq=nnAx>Ax =n  Ax q=n  n   > ZZRA #=CGANF>ANF=CgA]=OA]=O=[O  >[ A! ="!A# =$#%"$A&[l>&%='[O (''ot)(=o*qO o+*)>q+Ax,ql=n-,Ax.q=n/.n0-/Ax1q>10A2 #=32A4 #=54635A7>76A8=98on:9Ax;>;:Ax<=n=<Ax>q=n?>n@=?AxA>A@AxB=nCBAxDq=nEDnFCE>FA]HG=IHOJIIA]KG=LKOMLLNJM=O[O PON>[P=Q[ORQQoSR=oTqO oUTS>qUAxVql=nWVAxXq=nYXnZWYAx[q>[ZAx\=n]\Ax^q=n_^n`]_Axa>a`Axb=ncbAxdq=nednfce>fgA]ih=jiOkjjA]lh=mlOnmmokn=p[O qpo>[q=r[Osrrots=ouqO ovut>qv=w Oxww=y Ozyy{xz=| O }|{> }= Oo>~=~=oqO=oqO o>qAxq=nAxq=nn>A]=OA]=O=[O >[=[Oo=oqO o>q=~=oqO>~Ax~#=nAx~=nn>RR=nC>=CAG= >=nC>=CAG#= >AG= >ANF#=C_A l=CG>=CA]\=OA]\=O=[O >[=[Oo=oqO o>qA =A =A">A"=onAx>Ax=nAxq=nnAxq>A l=A l=A>A=onAx>Ax=nAxq#=nn>=nAxq=nnAxq>A]=OA]=O>=o>Ax=nAx=nn Ax >  Ax =n  Ax #=n n Ax>Ax=nAx=nn>A]=OA]=O>=o>A  =! A" =#"$!#A%">%$A&"='&on('Ax)>)(Ax*=n+*Ax,=n-,n.+-Ax/>/.A0 l=10A2 l=32413A5>54A6=76on87Ax9>98Ax;=n<;Ax=#=n>=n?<>>:?=n@:AxA=nBAnC@BAxDq>DCA]E=FEOGFFA]H=IHOJIIKGJ>K=LoML>MAxN=nONAxP=nQPnROQAxS>SRAxT=nUTAxV#=nWVnXUWAxY>YXAxZ=n[ZAx\=n]\n^[]>^_A` l=a`CbGa>b=CcecddA]f=gfOhggA]i=jiOkjjlhk>l=monm>nAo =poAq =rqsprAt">tsAu"=vuonwvAxx>xwAxy=nzyAx{=n|{n}z|Ax~>~}A l=A l=A>A=onAx>Ax=nAx#=nn>:=n:Ax=nnAxq>A]G=OA]G=O>=o>Ax=nAx=nnAx>Ax=nAx#=nnAx>Ax=nAx=nn>eA]h=OA]h=O>=o>= O= O= "O >"= "Oo=tOt>Ax=nAx=nn>Ax=nAx#=nnAx>=nAx=nnAxq>A]=OA]=O>=o>=tO==tOt>Ax#=nAx=nn>eeAxq=nC>=CAG= >=nC>=CAG#= >AG= >= =   &>==  O|= P  c A '=  |   A">= "O | =  O ~  = O >A = A>==  O!  |"!= #P $####c"$8ACGlobals _BorderLowerLeftMajorMinorAxes_BorderLowerRightMajorMinorAxes_BorderUpperLeftMajorMinorAxes_BorderUpperRightMajorMinorAxesp _HalfHeight _HalfWidth _LowerLeftMajorMinorAxes`_LowerRightMajorMinorAxesP_OffsetX_OffsetY _ShadingRateLevels_UpperLeftMajorMinorAxes@_UpperRightMajorMinorAxes0$Internal-YFlipFoveatedShadingTexture YFlipTexture$Globals_Source _DestinationpDXBC s2)p,<LISGNOSGNSHEXPGjYF XpDDDD_2h62F6@-FF~" @VVA6 F>AYFlipTextureRG$Globals_Source _DestinationpDXBC)p+m\dp,<LISGNOSGNSHEXPGjYF XpUUUU_2h62F6@-CU2FF~B @ VA6 FF>AYFlipTextureArray$Globals_Source _DestinationdDXBC%3鎏zd,<LISGNOSGNSHEXPDjYF X@pDD@DD_rh6rF6@-FF~" @"A6 F>AYFlipTextureRGArray$Globals_Source _DestinationdDXBCR(Y{)3d,<LISGNOSGNSHEXPDjYF X@pUU@UU_rh6rF6@-CU2FF~B @"*A6 FF>A$Globals _ImageSize YFlipTexture$Globals_Source _DestinationpDXBC s2)p,<LISGNOSGNSHEXPGjYF XpDDDD_2h62F6@-FF~" @VVA6 F>AYFlipTextureRG$Globals_Source _DestinationpDXBC)p+m\dp,<LISGNOSGNSHEXPGjYF XpUUUU_2h62F6@-CU2FF~B @ VA6 FF>AYFlipTextureArray$Globals_Source _DestinationdDXBC%3鎏zd,<LISGNOSGNSHEXPDjYF X@pDD@DD_rh6rF6@-FF~" @"A6 F>AYFlipTextureRGArray$Globals_Source _DestinationdDXBCR(Y{)3d,<LISGNOSGNSHEXPDjYF X@pUU@UU_rh6rF6@-CU2FF~B @"*A6 FF>A$Globals _ImageSize YFlipTextureCGlobals_Source _Destinationh # \ GLSL.std.450main  GL_EXT_samplerless_texture_functionsmain u_xlatu0 gl_GlobalInvocationIDu_xlati0_Source)u_xlati2*CGlobals*_ImageSize,4u_xlatu1D_Destination_origX0XPu_xlat_precise_vec4Su_xlat_precise_ivec4Wu_xlat_precise_bvec4Yu_xlat_precise_uvec4G G"G!H*#G*G,"G,!GD"GD!GDG[ !  ;     ;  ++ +  ;  ;!;)*! +*;+,+-+. /+2;4 > B! CB;CDM NM ONQ RQTUT VU X+Z, [ZZ.6;OP;RS;VW;XY=  O = O > A >A >== O |!" A# =$#|%$_&"%Q'&|('>(A/0,-.=10312>)3=5)|65P 7666= 8 O 988~ :9 ;7:=<4O =<;>4=A>? =@?AA4>A@=BED=F4O GFF|!HG=I|JIPKJJJJcEHK8AYFlipTextureRGCGlobals_Source _Destination # ^1 GLSL.std.450main  GL_EXT_samplerless_texture_functionsmain u_xlatu0 gl_GlobalInvocationIDu_xlati0_Source-u_xlati4.CGlobals._ImageSize08u_xlatu1H_Destination_origX0XSu_xlat_precise_vec4Uu_xlat_precise_ivec4Yu_xlat_precise_bvec4[u_xlat_precise_uvec4G G"G!H.#G.G0"G0!GH"GH!GHG] !  ;     ;  ++ +  ;   ;') ,;,-. /.;/0+1+2 3+6;8 B F GF;GHM R' TMVWV XW Z+\, ]\\26;RS;TU;XY;Z[=  O = O > A >A >= =! O "!!|#"A$ =%$|&%_'( #&O)*((|+*>+A34012=54756>-7=9-|:9P ;:::= < O =<<~ >= ?;>=@8O A@?>8AABC =DCAE8>ED=FIH=J8O KJJ|LK=NO MONN|'POcILP8AYFlipTextureArrayCGlobals_Source _Destination # X GLSL.std.450main  GL_EXT_samplerless_texture_functionsmain u_xlatu0 gl_GlobalInvocationIDu_xlati0_Source%u_xlati2'CGlobals'_ImageSize)1u_xlatu1@_Destination_origX0XLu_xlat_precise_vec4Ou_xlat_precise_ivec4Su_xlat_precise_bvec4Uu_xlat_precise_uvec4G G"G!H'#G'G)"G)!G@"G@!G@GW !  ;     ; ++   ;  ;;%&'& (';()+*++ ,+/;1 4 >! ?>;?@I JI KJM NMPQP RQ T+V, WVV+6;KL;NO;RS;TU= = O  > A >== O |A = |! _"!Q#"|$#>$A,-)*+=.-0./>%0=2%|32A45 +=65~76837A91+>98= : O ;::=<1O =<;>1==>A@=B1O CBB|DC=E|FEPGFFFFcADG8AYFlipTextureRGArrayCGlobals_Source _DestinationD # Z1 GLSL.std.450main  GL_EXT_samplerless_texture_functionsmain u_xlatu0 gl_GlobalInvocationIDu_xlati0_Source*u_xlati4+CGlobals+_ImageSize-5u_xlatu1D_Destination_origX0XOu_xlat_precise_vec4Qu_xlat_precise_ivec4Uu_xlat_precise_bvec4Wu_xlat_precise_uvec4G G"G!H+#G+G-"G-!GD"GD!GDGY !  ;     ; ++   ;   ;$& );)*+ ,+;,-+.+/ 0+3;5 8 B CB;CDI N$ PIRSR TS V+X, YXX/6;NO;PQ;TU;VW= = O  > A >== O | A! ="!|#"_$% #O&'%%|('>(A01-./=21423>*4=6*|76A89 /=:9~;:<7;A=5/>=<= > O ?>>=@5O A@?>5A=BED=F5O GFF|HG=JO IKJJ|$LKcEHL8ACGlobals _ImageSizeSoftUUUU       !!!!!!    "$&()*+,------,+*)(&$"    #&),.035689:;<<<<;:986530.,)&#   !%),/369DJOTY^chlptwz||zwtplhc^YTOJD>82-(#  "'-3:@GNTZ`flqv{{vqlf`ZTNG@:3-'"  !&-3:BHPW^dksx~~xskd^WPHB:3-&!  %+29AHPX`gov~~vog`XPHA92+%  !(07?HPX`iqz¿zqi`XPH?70(!  %,4GR]hs}Ľ}sh]RG>4,$  %.6@KValxĽxlaVK@6.%  &.8BMXep|û|peXMB8.&  '/9CO[gssg[OC9/'  '/9EP\iwĻwi\PE9/'  &/9EQ^kxȿxk^QE9/&  %/9EQ_ky¸yk_QE9/%  $-8DP^lzĺzl^PD8-$  #,6BO\kyƻyk\OB6,#   *5@M[ixǼxi[M@5*   (2>KYgwǼwgYK>2(  %/;GVesǻseVG;/%  !,8DRapƺpaRD8,!  (4@M]l|ĸ|l]M@4(  $0M^oĵo^M>0$  )5DTevʻveTD5)  !-:IZk~²~kZI:-!  %1?O`rȹr`O?1%  )5DTew̾weTD5)   ,9IYl~ó~lYI9,   #/=M_qȹq_M=/#  &3ARcv̽vcRA3&  )6EVh{{hVE6)   ,9IZlŵlZI9,   ".M^oĵo^M>0$   ,8GWhz˽zhWG8,   '2@P`qĵq`P@2'  !-9HXi{ʽ{iXH9-!  (4AParôraPA4(  ".:HXizȻziXH:."  '4@P`pp`P@4'  "-9GVgvķvgVG9-"  &2?M\m}Ȼ}m\M?2&  !,7DScs˿scSD7,!  $0KYgwǼwgYK>2(   *5@M[ixǼxi[M@5*   #,6BO\kyƻyk\OB6,#  $-8DP^lzĺzl^PD8-$  %/9EQ_ky¸yk_QE9/%  &/9EQ^kxȿxk^QE9/&  '/9EP\iwĻwi\PE9/'  '/9CO[gssg[OC9/'  &.8BMXep|û|peXMB8.&  %.6@KValxĽxlaVK@6.%  $,4>GR]hs}Ľ}sh]RG>4,$  "*2;DNXclw»wlcXND;2*"   (/8@IS]gpyþypg]SI@8/(   %,4DJOTY^chlptwz||zwtplhc^YTOJD>82-(#  "'+05:?DIMRVZ^aegjlmoppqqppomljgea^ZVRMID?:50+'"   $)-159=AEILORUWY[\^^^^^^\[YWUROLIEA=951-)$   !%),/369PcvǾvcP>.  $4F[pƹp[F4$&8LczǸzcL8&':Pi¯iP:' &:RkɶkR:&  $7PlλlP7$   4LiѼiL4  .FcѻcF. '>[zζz[>' 5PpɯpP5 +Dc¥cD+  7TvѸvT7  *DeǩeD* 5RuԹuR5%?`Ʀ`?% -JlгlJ- 4TxپxT4"<]ǧ]<"'CeίeC' +IlӶlI+ /NrػrN/ 2QvڿvQ2 4TyŸyT4 5U{á{U5 5U{á{U5 4TyŸyT4 2QvڿvQ2 /NrػrN/ +IlӶlI+ 'CeίeC'"<]ǧ]<"4TxپxT4 -JlгlJ- %?`Ʀ`?%5RuԹuR5 *DeǩeD*  7TvѸvT7  +Dc¥cD+ 5PpɯpP5 '>[zζz[>' .FcѻcF.  4LiѼiL4   $7PlλlP7$  &:RkɶkR:& ':Pi¯iP:'&8LczǸzcL8&$4F[pƹp[F4$  .>PcvǾvcP>.   '5ETeuueTE5'  *7ES_lxxl_SE7*   *4?JS]elrvyzzyvrle]SJ?4*   %-4\xx\>$2V}ϼ}V2:fؼf::lˡl:2fСf2 $V˕V$ ?}}? %\ؠ\% 7xx7HϏHW۠W%bb%(gg((gg(%bb%W۠WHϏH7xx7 %\ؠ\% ?}}? $V˕V$ 2fСf2:lˡl::fؼf:2V}ϼ}V2$>\xx\>$ %7HWbggbWH7%  %((%  LttL  :lj: :: LLttttLL :: :lj:  LttL HHHH Font Materialu'_MainTexw'??_Color????_MainTex Font Texturewhite_Color Text Color????_MainTex@ A @ A pA ? ? pA ? ? pA ? ? pA ? ? pA ? ? pA ? ? pA ? ? pA ? A A A A C C unity_FogStart unity_FogEndunity_FogDensity unity_FogColor(IGNOREPROJECTORtrue PreviewTypePlaneQUEUE Transparent RenderType Transparent!!!!!!!!!!!!!!!!! !  ! !  IGNOREPROJECTORtrue PreviewTypePlaneQUEUE Transparent RenderType TransparentSTEREO_INSTANCING_ONUNITY_SINGLE_PASS_STEREOSTEREO_MULTIVIEW_ONSTEREO_CUBEMAP_RENDER_ONGUI/Text Shader Uv'*Ua  R8@2LP<y2 lC Sx bh " b  StSST,``S 0Cnu $Globals@ _MainTex_ST(G@P (oColor$0UnityPerDraw,Pu_ObjectToWorldH( LFramep(PMatrixVPL l @<llLcStereoB@,T!vT]TEyeIndexT!X$@\HxW T B /DXBCg-DID{f"S,6WISGNhPHl[YP[_POSITIONCOLORTEXCOORDOSGNlp~\pObpo SV_sSHDR@EF :\!0r S 12(ug e(%  "2 (@hb80"Vj2 "F(`*(p*F0&V hT(/ ( h*(H&FXD2 \F5F :& >[jF  NITY_SINGLE_PASS_STEREO_cG"i^lT =S)h5 C@`h2%  (  00/ 0 0j _INSTANCING_ON> db/C8J " hqw D/SV_InstanceID tz 0 SV_RenderTargetArray !LLL <u`$L(5 ~\E\"@T)"tD6  TTSFI0   MULTIVIEW_ON$ ]Z@;G7æ`YAK7&"0&00 ,D t2SV_ dp*Z+`bXp fUUbD&bD4( EE ~`S88:,:`rh  ^Fsx%D7|x &x x x '   PXSh S<\ bh b S b* nu $Globals _MainTex_ST(8P(oColor$unity_ObjectToWorld,80MatrixVP,@h _`@P 4U4StereoEyeIndex,T ! TO@T*p A$\/?? #ifdef VERTEX #version 300 es #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if$ JTUNITYo #else uniform #endif%SUPPORTShLOCATION& N(x) layout(locat K= x)/wBINDING.pbinding-, std140) jUH vec4 hlslcc_mtx4x4O[4];3.fmediump #a; in highpin_POSI0 4in_COLOR072TEXCOORD0; out8%vs89(vs9-ju_xlat1; void main() { )) =.yyyy *d;1];G3J0] *mfxxxx +Q2QOzzzzQ +[31=!R1=. ^ 1G2G Gsgl_PosiK 3KLwwwwK& =% *$2.xy* *i+"zwIreturn; } FRAGMENT GL_EXT_shader_framebuff etch #exten9+ : enablea preci;mfloat;Oint; A$0)sampler2D ? @/]0) inSV_TargeP:8  &texture(,Q?).w*+%&.w* Wxyz =>?xyz/h  INGLE_PASS_STEREO V  R $ { sXUnusedX _P[8];H0VH4?InvK  /CameraPro ?ionQ4?InvT8T[4N3N SSpace>Oos[2GScaleOffset?B}n1no  texture> using namespace ; struct _Type { float4 ;T; }; F-Jhlslcc_mtx4x4O[4];0 ("To7 0#LODFade=ransformParams'RenderingLayeV glstate_lightmodel_ambienthA?SkyEquator!oGround IndirectSpec[m0@_pro^?iond*?Inv-%VP+Oint xnShadowMtl_VertexInPOSITION0 [[ attribute(0) ]] b[COLOR'1'2 TEXCOORD*2*:Outmtl_PosiHp , invariant ]]Ruser(u),v  (R{constanA&bbbufferN,6 1&>1>&@2@` input(stage_in ]]) {)[outpu_01!" =h.iy.yyyy *. ,1]WOfma(D=0],Txxxx,V)d/2dOzzzzd +31J a.j 1K@%0] Q/1)X+2XEX..d3dOwwwwd_*.4[3.xy,in,Co#zwereturn7}       NITY_SINGLE_PASS_STEREO @ _P[8];0V0 cvCameraP 9?Inv< Cr\ 6-3 _SOos[2[/ScaleOffset' Q !u W 5&a J_&L3 N/i1&2 ci .i << 0x2  .\(\+ 1)]cQXW) /2)j6/2)A 2A |5/3)Y 2Y ?\ )J _INSTANCING_ON X 'X   i*r{_target_array_iH d bool has_base__ !_ic1funf_3"(4{ template  bitFieldInsert(G{width, o Osrc23) { vmask = ((("<_id+WBaseI`x2,o /ifN#  =-;B Kint(P0x1u,/ +u,O0u))H G /1uAx MULTIVIEW_ON"sl / s32_t rp_q_remap_xDCY E(ZB>> 0(F;Fragment\ 5p 7ASV_TKc fH Utsampler=12d<, access::-8 > B.tW  y.(., 9).wq'.w*&4;xyzRH&{PXSh S<\ b, b ST@ S& nu $Globals _MainTex_ST(8P(oColor$unity_ObjectToWorld,840MatrixVP,@h _`@P 4U4StereoEyeIndex,T ! TO@T*p A$\/ #ifdef VERTEX #version 150 #exten GL_ARB_explicit_attrib_locat : require P1shader_bit_encodingW&* : enable #endif #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1$ JTUNITYo #else uniform %SUPPORTShLOCATION& N(x) layout(fK= x)/wBINDING.1binA= x, std140) jUH vec4 hlslcc_mtx4x4PO[4];3). a; in pin_POSI0VCOLOR2TEXCOORD0; out+%vs+2+'ju_xlat1; void main() { )) =.yyyy *=;1];G3J0] *mfxxxx +Q2QOzzzzQ +[31=!+1=. ^ 1G2G Gsgl_PosiK 3KLwwwwK& =% *$2.xy* *B+"zwIreturn; } FRAGMENT A$0) sampler2D.vs 50) /SV_Target texture(,)^'.w6w *-.w,Wxyz ="?xyzO, P l 6INGLE_PASS_STEREOK H g  : 2 { <XUnusedX _P[8];:"V:&8Inv= w !CameraPro?ionC&?InvF* TM&T@3@ sSSpaceNos[2y9ScaleOffset1}1J9  > 9 >9   >9>9>>*P> .*>+. P/ P2]9(H9,9093 M   ""J  "="D4H_/ _ 3_ HRSZ\UZ^ G##@"|Gd    >9>9 w Q>9 >9(N DE>F9G>9Pz0  X9Y>X9[>> nq Pr au$l9o9s9vMU#J"$#A&&PJ0K"2##%6%%@%aBD),)K"LP|4|A" ||^|W%|l|$%&# ,%!&&<&PPH,1X h-XJX K"#fHD?#fHD"3 L NITY_SINGLE_PASS_STEREOeh/Vh3xPֻ+h_/ hT`aikUih dGh[#lxlll%  eaz9uuuu`>91h#2PQ>R9S>9^@11g9h9g9j}  $q{9~99SS(24#$%8B%DF)-N3$$"zU8C; "?wrw)*EH/H.0a0 F0R0V0JD^TCc" g !-g;g3KgUuTPUuTP*p _INSTANCING_ONp4Ռ&;@#_! _)SPV_EXT_shader_viewport_i_layer4T`ahjuUh )o> +G<Y O ,e 59e 939u 1f9g1f9iu9t> "199 >$<9- f!-f;f2Kf P"#z z 7 MULTIVIEW_ON? /0 3qpFά!Xd  @" KHR_multi /2copwyUw4G B"q D:  a?G2R _F !AG59GGGGG19/YS91; 95 BCC:;<=>?@ADE>T._s`>a9bm1u9v1u9x@9p9$Sl""#$ c#"%4>%@B)+J  @&3\"2h#H+J*".<Nw* ">*LFj0W0N0aP h0t0e0jDmcI"!u Q!-u;u3Ku"#c_dc_PL(St bp b,| S"&|/ nu 7 VGlobals2303921221b_Color0@P $MainTex_ST(unity_MatrixVPe@,ObjectToWorld0 H$((UStereoEyeIndex ! TT3969068462@\> .R`P , p/@x/ /!"{ 0K\//Assets/DefaultResources/Font.shader diagnostic(off, derivative_uniformity); alias Arr = array/_1!tstruct  { /* @offset(0) */ hlslcc_mtx4x4 :e,=/64>9+_1;3128<xQ2 : -%44-(} var

e> in_POSITION0&; @group(1) @binding:nP> x_22);Yvs_COLORV z! vs_TEXCOORD$2E$gl_Positionkfn main_1()var u_xlat1_precise_# i$i$b$o)u)u$8= (q.yyyy *. [[1i])M(:Y0i] *P.xxxx) +MY$2YOzzzzY +31C=  8153k .1O2O $O S3SLwwwwSx3*~ 10.xyn!zwQreturn; }1out@builtin(p?) =P@loca8(0)/_1&+1))2dt@vertexf(` e_parame c#&)2))j2f) -> =X=%\(,k,P)<0U : texture_2d818wsampler>!SV_TargeUgl_FragCoord?f320let92 =B44 =S{(,,L .D .w(.wG*x:.w)*" =(#0xyz,P ?)_1 @fragment_s,c _ : Y /e /vs!8-vse =e>K#  H   ( NITY_SINGLE_PASS_STEREO o O h{ /80z a : i32Q 8 2! 3! 4! 5! 6! 7! 8! 9!\3f, 20C"K XLUnusedXZlP"VP2P?256P"4InvS3S.384B?512CameraPro b 0Y"=Inv\6\/76BTcV7 /96" ,_8F?024W SSpace_#osP9P/56PaScaleO20b;*19b5255.d@1@7 "i1Z 2/19%/19D/19M/19if?.v<< bitcast(2i)>25?74.4%[(l+ 1i)]V(HGT2[%?2i)g2gf#?3i)z2z /19z/19z/19z6|*\j_INSTANCING_ONP MULTIVIEW_ON$,P@1 gl LegacyRuntime.oAt'PAw'?F,F.P,P.T,T.T:T;TaTcTeToTsV,V.Y,Y-Y.YeYoYq=L)=>{|g{|RgS>RS)>*)*|g|hSgh>S?*>?*|}h|}ShT?ST*?+*+++?@?T@Thih}i+,+@,@TUTiU,,@A@UA,-,A--UijAUVUjV-ABAVB-.-B..i~ji}~}~}      2121F21EFEZFFZ[Zo[2FGF[G232G3 3    [opopG[\[p\3GHG\H343H4\pqpqH\]\q]   4 4HIH]I]qrqr]r^I]^4I5 45     ^rsrsI^J5IJ 5!  ! ^s_J^_5J6!56 !   _stst!6" !"  " ~~j~jkVjkkVkWBVWklWklBWC.BClWlXCWX.C/./lmXlmCXD/CD/mXmYDXY/D0/000DEDYEYmnmn010E1EYZYnZ11EFEZF 121F2 2   ZnoFZ[Zo[2FGF[G232G3 3non   #"#"7#"676K76JKJ_KK_`_t`7KLK`L#787L8#$#8$$`tutuL`a`ua8LMLaM$898M9auvuvMabavb$%$9%9MNMbNbvwvwbwcNbc9N:%9:%cwxwxNcO:NO%:&%&cxdOcd:O;&:;&dxyxy&;'&''oop[opp[p\G[\pq\pqG\H3GHq\q]H\]3H434qr]qrH]I4HI4  r]r^I]^4I5 45  ! 5!5IJI^J^rsrs !  !565J6J^_^s_ !"!6"6JKJ_K " "676K7"#"7##_stK_`_t`7KLK`L#787L8#$#8$sts$('('<(';<;P<;OPOdPPdedye<PQPeQ(<=<Q=()(=))eyzyzQefezf=QRQfR)=>=R>fz{z{Rfgf{gg{{gRgSSg>RSS?S>S??)>**>?)*+?*?++**+++ttuu`tuvuvwvww`uaauvL`abvwavbcwbwccLaMMab8LMNbcMbNOcNcOO8M99MN$89:NO9N:;O:O;;$9%%9:$%&:;%:&';&;''~%%&&&''~'~ (PRKY%|'F]Sc|1Ea7>ĝX5uxsL={%|?Pmc| Iy?.P4OL=L=?P%|{He|PO?ɱy=L=%F%|JYkEc|WSrxs?s7>L=%|a0 c|* ?Ų*4L>L=%F=%|IYyE=c|OSpxs?37>>L==P=%|yH=c|pO?jy?>L=x>%|;Ps>c|Hy?-j2O?43>L=GY>%|"F^S>c|Ez7>J̌qxs?>L=_0 >%|(* >c|2s͞1?hf>L=GY>%|"F=_S>c|E=|7h3pxs??L=x>%|:P=r>e|H=yO? ?L=:P=%|w>H=e|R>O:Ry??L="F=%|FY>qE=c|MS>qxs+w7>hf&?L=\01%|]0 >e| * >mԲ\'533?L=F%|EY>|Ec|WS>pxs\3|7@?L=8P%|v>Hc|z>OΆyL?L=v%|9P=sc|H=y#4OY?L=EY%|F=]Sc|E=w7 سqxsiff?L=\0 %|** c| !-463s?L=yqxsýs]ysý\7>3uxs=qxs9]ys9y?E3OL==9qxs9]ysO?\ֳy==ýqxsyý]yssqxs?tv7>=qxs7]ys1?M??74L>==qxsy=[ysspxs?-ł7>>=9>qxs9>YysO?!Gy?>=>qxs9>[ys9y?;鳾O?43>=y>qxsýs>[ys1ýv7>7qxs?>=|7>qxs1>[ysGȮ0!?hf>=y>qxs=s>[ys&={74pxs??=>qxs9>>]ys9>yO? ?=9>qxs> 9>[ys>OPN1y??==qxsy> =[yss>qxsgku7>hf&?=z72qxs{7>]ys1>yJ533?= ýqxsy>ý[yss>pxsl3{7@?=9qxs>9[ys>OdTyL?=qxs9>[ys9>yOY?=yqxs =s[ys8=|7X}pxsiff?=z7qxs1[ys2}463s?=ݾdi ݾdϣ]7>P4uxs> drd(y? &P3OL=>rd "dO?~n!y=>hdݾޣd ݾqxs?ubt7>>dyqd*j?eV\m@3L>>h>dݾ>d ݾpxs?y[27>>>p>d *>dO?ܲy?>> >do >d$y?2O?43>>>de$ >dv7>F3qxs?>>vq>d4j>dH1ױ-B[?hf>>>de>% >d>z7#5pxs??> >dn> >d&>yO? ?>n>d >%>d >O33y??>e>d >>d' >qxsj 2w7>hf&?>rqh2dtq>d6j>l JD533?>cd >d% >pxs1}7@?>ld >(d>O8yL?> dm> d->y5OY?> ݾdd>% ݾd>x7K3qxsiff?>rqd0jd9c˄463s?>O9O9\7>Z2vxsL>{xOJ䰾,rO߰y?3OL=L>J䰾Ozx߰O1rO?Hf3y=L>9O9Oqxs?oEu7>L>OyOL>9>O9>Ooxs?߲7>>L>H>Ovx߰>O,rO?y?>L>ux>OF䰾0r>O߰y?%@O?43>L>?O9?O9w7>rvܲqxs?>L>y?OL>?O9>?O9>{7=ݑ3pxs??L>tx>OE>.r>O߰>ycx3O? ?L>E>Osx>߰>O7r>Oҳ3y??L>9>O?9>O?qxsK3v7>hf&?L>y2Oy?O>u? |!}L^533?L>9O?9O?qxsߜrz7@?L>C䰾Orx>߰O7r>O4yL?L>qxOD>2rO߰>y۳OY?L>O9>O9>w7eqxsiff?L>yO>uO4? 563s?L>(,5_%,5_X7>Svxs>r5Ծo5Ծy?3OL=>Ծ5rԾ5oO?I13y=>_5(,)_~5~%,qxs?#1v7>>55~5h5?ܻ3L>>_>5(,7_>}5}%,pxs?gDc7>>>>5r>~5oO?~y?>>r?5Ծo?~5Ծy?^гO?43>>(,?5_~%,?~5/_x7>3*qxs?>>5?5h5?}5(O81G81?hf>>(,?5_>~%,?~5-_>y7vaqxs??>r?5>o?~5>y1O? ?>>5r?>|5o?Oy??>_>5(,?+_>|5%,?qxsА3w7>hf&?>255?|5j5?wh²p²533?>_5(,?5_|5%,?pxsa2|7@?> Ծ5r?Ծ{5o?O0N43yL?>r5>o|5>yĕ1OY?>(,5_>%,|5,_>w7G0qxsiff?>55j5{5,&563s?>Dy D|UY7>vxs>'yzx󾚋'|(uy?!L2OL=>zxy'"u|'O?,Oy=>yD|Drxs?gϾ2s7>>yO|O?B?@; 3L>>>yD>|Dpxs?37>>>wx>y'.u>|'O?UK82y?>>'?yux󾞋'?|%uy?f mO?43>>D?yD?|w7>Lqxs?>>O?yO?|dW$?hf>>D?y>D?|>y7'?ytx>'?|+u>y Z1O? ?>tx>y'?$u>|'?OB2y??>>yD?>|D?qxsI2y7>hf&?>2yO?|O?*HᲨ533?>yD?|D?pxs3~7@?>qxyߍ'?,u|'?OQ2yL?>ߍ'yrx>'|'u>y/ 3OY?>Dy>D|>v78[2qxsiff?>OyO|2 ô5563s?>XrqUXx辝X7>.Gvxs43>8rq辑t8xzy?"2OL=43>rq8vxu8O?@y=43>rqXxOXrxs?2t7>43>rqdx,d?I&rH&2L>43>>rqX>xMXpxs?17>>43>?rq8{?xq8O?4y?>43>8?rq辎u8?xvy?*J1O?43>43>X?rqOX?x辺x7>}qxs?>43>d?rq,d?x&3?hf>43>X?rq>MX?x边>y7'qxs??43>8?rq辎?q8?xz?y3O? ?43>?rq8?w?xu8?O7Ey??43>>rqX?>xPX?qxsKx7>hf&?43>2rqd?x.d?B533?43>rq X?xPX?pxsc|7@?43>rq8?yxu8?O` yL?43>8rq辍?u8xx?y(2OY?43> Xrq>PXx辺>x7l0qxsiff?43>drq.dxkotQ463s?43>gy7y g=kxY7>vxs>Dy7 D=6y?oOL=>y7D2= DO?!3y=>yy7gx=gqxs?Rv7>>y7yxs=ws?T%2L>>y>y7gx>=gpxs?{27>>>?y7D9?=DO?!1y?>>D?y7 D?=3y?$O?43>>g?y7yg?=xy7>͉qxs?>>uxs?y7ws?=mnį?hf>>g?y7y>g?=x>z7Tkqxs??>D?y7? D?<6?yxO? ?>?y7D?4?< D?O 2y??>y>y7g?x><g?qxs]2v7>hf&?>qx2y7sxs?=ws?$I533?>yy7g?x=g?pxsؕ1~7@?>y7D?6= D?O2yL?>Dy7? D<5?yo`1OY?>ߍgy7y>gw7Zqxsiff?>qxsy7ws<4>G463s?>ypU0 Dxpb6 DX7>Cvxshf>LU0 ܞɎLZ6 y?ROL=hf>ܞU0 Lc6 ˎLO?1y=hf>DU0 ypDc6 xpqxs?h1u7>hf>U0 -|^6 |?LcU1L>hf>D>U0 ypD>_6 xpoxs?tݰ7>>hf>ڞ?U0 L?\6 ŎLO?܆2y?>hf>L?U0 ٞʎL?X6 y?tO?43>hf>yp?U0 Dxp?Q6 Dw7>3 ذqxs?>hf>)|?U0 |?E6 GJ"/'0?hf>hf>yp?U0 D>xp?E6 D>{7NPpxs??hf>L?U0 ؞?ɎL?O6 ?y4O? ?hf>؞?U0 L??Z6 ʎL?O41y??hf>D>U0 yp?D>a6 xp?qxs92v7>hf&?hf>%2U0 '|?]6 |?zih533?hf>DU0 yp?D\6 xp?pxsݰ|7@?hf>֞U0 L?Z6 ɎL?OR1yL?hf>LU0 מ?ɎL[6 ?yOY?hf>ypU0 D>xpW6 D>y7kPqxsiff?hf>%|U0 |\6 Xײ)463s?hf>{xs7uxsZ7Z7>vxs?OyOyy?OL=?yOyOO?y=?7yxso7qxsrxs?p7>??L>?7>xxs7>pxspxs?7>>?y?Oy?OO?y?>?O?yO?yy?O?43>?uxs?|7qxs?x7x7>qxs?>????hf>?uxs?|7>qxs?}7>|7pxs???O?y?O?y?yO? ??y?O?y?O?Oy???|7>sxs?s7>qxs?rxss7>hf&??3??533??y7rxs?{7qxs?pxs{7@??yO?yO?OyL??Oy?Oy?yOY??qxsz7>qxs{7>{7pxsiff??63s??ypU0 >Dxpb6 >DZ7>|2vxs ?LU0 >ܞɎLZ6 >y? v1OL= ?ܞU0 >Lb6 >ˎLO?< y= ?DU0 >ypDb6 >xprxs?hcs7> ?U0 >-|_6 >|?\2/1L> ?D>U0 >ypD>_6 >xpoxs?7>> ?ڞ?U0 >L?]6 >ƎLO? y?> ?L?U0 >ٞʎL?X6 >y?1O?43> ?yp?U0 >Dxp?R6 >Dx7>|%n1qxs?> ?)|?U0 >|?F6 >GJ"(0?hf> ?yp?U0 >D>xp?F6 >D>{7f0pxs?? ?L?U0 >؞?ɎL?O6 >?ywP?2O? ? ?؞?U0 >L??X6 >ʎL?O#@y?? ?D>U0 >yp?D>_6 >xp?qxsv7>hf&? ?%2U0 >'|?_6 >|?1͞533? ?DU0 >yp?D]6 >xp?pxsQ~ |7@? ?֞U0 >L?[6 >ɎL?O^yL? ?LU0 >מ?ɎL[6 >?yO1OY? ?ypU0 >D>xpX6 >D>z7#1qxsiff? ?%|U0 >|[6 >.ز*63s? ?gy7>yg=>lx[7><1vxs?Dy7> D=>6y?h;2OL=?y7>D3=> DO? y=?yy7>gx=>gqxs?t7>?y7>yxs=>ws?D2G1L>?y>y7>gx>=>gpxs?'/7>>??y7>D9?=>DO?y?>?D?y7> D?=>3y?$82O?43>?g?y7>yg?=>xw7>U#1qxs?>?uxs?y7>ws?=>mn/?hf>?g?y7>y>g?=>x>z7W0qxs???D?y7>? D?<>6?yWl2O? ???y7>D?5?<> D?OԮy???y>y7>g?x><>g?qxs#;u7>hf&??qx2y7>sxs?=>ws?3&'533??yy7>g?x=>g?pxsj}7@??y7>D?4=> D?OO2yL??Dy7>? D=>6?y>2OY??ߍgy7>y>g<>x>w7}òqxsiff??qxsy7>ws<>pܳ63s??Xrq>SXx>Y7>3vxshf&?8rq>t8x>zy?OL=hf&?rq>8ux>u8O?F1y=hf&?rq>Xx>OXrxs?6`t7>hf&?rq>dx>,d?b+21L>hf&?>rq>X>x>LXpxs?/Pv7>>hf&??rq>8|?x>q8O?Ls2y?>hf&?8?rq>u8?x>vy?CO?43>hf&?X?rq>OX?x>x7>Fg2qxs?>hf&?d?rq>,d?x>1$3?hf>hf&?X?rq>>OX?x>>y7qxs??hf&?8?rq>?r8?x>z?yH^O? ?hf&??rq>8?w?x>t8?O2y??hf&?>rq>X?>x>PX?qxsz1x7>hf&?hf&?2rq>d?x>,d?I13p533?hf&?rq> X?x>OX?pxssH1}7@?hf&?rq>8?xx>u8?OML2yL?hf&?8rq>?t8x>y?yv2OY?hf&? Xrq>>PXx>>x7`1qxsiff?hf&?drq>.dx>)oi63s?hf&?Dy? D|?RX7>M3vxs533?'y?zx󾙋'|?%uy?CpR2OL=533?zxy?'#u|?'O?:y=533?y?D|?Drxs?v"2s7>533?y?O|?O?L33L>533?>y?D>|?Dpxs?7>>533?wx>y?'.u>|?'O?[sy?>533?'?y?ux󾞋'?|?#uy?$533?D?y?D?|?w7>ĂW2qxs?>533?O?y?O?|?d1W$?hf>533?D?y?>D?|?>y7ٱ13qxs??533?'?y?tx>'?|?(u>y'2O? ?533?tx>y?'?$u>|?'?O]My??533?>y?D?>|?D?qxs12y7>hf&?533?2y?O?|?O?gް0533?533?y?D?|?D?pxs9S17@?533?qxy?ߍ'?)u|?'?O^yL?533?ߍ'y?rx>'|?(u>ygJOY?533?Dy?>D|?>v7&qxsiff?533?Oy?O|?ȴ/ 63s?533?(,5?_%,5?_Y7>P3vxs@?r5?Ծo5?Ծy?YгOL=@?Ծ5?rԾ5?oO?.[y=@?_5?(,)_~5?}%,qxs?2v7>@?5?5~5?h5?3 3L>@?_>5?(,6_>}5?~%,pxs?rI37>>@?>5?r>~5?oO?H3y?>@?r?5?Ծo?~5?Ծy?e2O?43>@?(,?5?_~%,?}5?+_w7>qxs?>@?5?5?i5?}5?&O8G81?hf>@?(,?5?_>~%,?~5?/_>z7Wqxs??@?r?5?>o?~5?>yO? ?@?>5?r?>}5?o?OPJy??@?_>5?(,?,_>}5?%,?qxslMv7>hf&?@?25?5?|5?j5?ʐЕ2533?@?_5?(,?5_|5?~%,?pxs]}7@?@? Ծ5?r?Ծ{5?o?OyL?@?r5?>o{5?>y3창OY?@?(,5?_>%,|5?._>x7Z62qxsiff?@?55?j5{5?B<63s?@?O?9O?9\7>ׇuxsL?{xO?J䰾)rO?߰y?\VOL=L?J䰾O?zx߰O?4rO?˳y=L?9O?9O?qxs?n]2v7>L?O?yO?;u?;033L>L?9>O?9>O?oxs?27>>L?H>O?vx߰>O?.rO?3y?>L?ux>O?F䰾0r>O?߰y? ͹3O?43>L??O?9?O?9x7>w93qxs?>L?y?O?L??O?9>?O?9>}7_pxs??L?tx>O?E>.r>O?߰>yTO? ?L?E>O?sx>߰>O?3r>Oe1y??L?9>O??9>O??qxs8;Sw7>hf&?L?y2O?y?O?>u?+2Ӽ533?L?9O??9O??qxs=g3x7@?L?C䰾O?rx>߰O?4r>O2yL?L?qxO?D>5rO?߰>yZڇOY?L?O?9>O?9>x703qxsiff?L?yO?>uO?d>N 63s?L?ݾd?i ݾd?Σ]7>9uxsY? d?rd?-y?8'/OL=Y?rd? "d?O?ry=Y?hd?ݾܣd? ݾrxs?ts7>Y?d?yqd?'j?/53E3L>Y?h>d?ݾ>d? ݾoxs?m7>>Y?p>d? *>d?O?~y?>Y? >d?o >d?"y? ɳO?43>Y?>d?e& >d?w7>01qxs?>Y?vq>d?4j>d?G11,B[?hf>Y?>d?e># >d?>7g30pxs??Y? >d?n> >d?&>yf3O? ?Y?n>d? >&>d? >O2y??Y?e>d? >>d?+ >qxs%Kv7>hf&?Y?rqh2d?tq>d?9j>Y83533?Y?cd? >d?& >pxs%{7@?Y?ld? >)d? >O0yL?Y? d?m> d?+>y`3OY?Y? ݾd?d>& ݾd?>x7 3qxsiff?Y?rqd?0jd?d;^63s?Y?yqxs?ýs]ys?ý\7> uxsiff?qxs?9[ys?9y?(iOL=iff?9qxs?9[ys?O?bky=iff?ýqxs?yý]ys?sqxs? St7>iff?qxs?7]ys?1?03؄4L>iff?=qxs?y=]ys?soxs?d.7>>iff?9>qxs?9>[ys?O?3y?>iff?>qxs?9>]ys?9y?'h>O?43>iff?y>qxs?ýs>[ys?ýv7>3qxs?>iff?|7>qxs?1>[ys?G. ?hf>iff?y>qxs?=s>[ys?B=|7˗pxs??iff?>qxs?9>>[ys? 9>yα3O? ?iff?9>qxs?> 9>[ys?>Oy??iff?=qxs?y> =[ys?s>qxsSu7>hf&?iff?z72qxs?{7>[ys?1>832 533?iff? ýqxs?y>ý[ys?s>pxsL{7@?iff?9qxs?>9[ys?>OH3yL?iff?qxs?9>[ys?9>y𕞲OY?iff?yqxs? =s[ys?#=z7 3qxsiff?iff?z7qxs?1[ys?'vէ63s?iff?KY%|?'F]Sc|?(E\7>?4uxs63s?{%|??Pne|?ZHy?d5OL=63s??P%|?{He|?DO?l4y=63s?%F%|?JYiEc|?bSrxs?Ʋs7>63s?%|?a0 c|?* ?g24L>63s?%F=%|?IYvE=c|?SSpxs?׷7>>63s?=P=%|?yH=e|?NO?ꮓy?>63s?x>%|?;Pr>e|?wHy?T7O?43>63s?GY>%|?"F\S>c|?XEz7>³qxs?>63s?_0 >%|?(* >c|?͞1?hf>63s?GY>%|?"F=]S>c|?E={7*%pxs??63s?x>%|?:P=q>c|?H=y:4O? ?63s?:P=%|?w>H=c|?>Oy??63s?"F=%|?FY>oE=c|?ZS>qxs%Ӥ2v7>hf&?63s?\01%|?]0 >e|? * >+2j)533?63s?F%|?EY>}Ec|?WS>pxsd|7@?63s?8P%|?v>He|?T>O(<yL?63s?v%|?9P=te|?H=y[5OY?63s?EY%|?F=^Sc|?aE=w78Xjqxsiff?63s?\0 %|?)* c|?[ڿ,63s?63s?iq>d????iq>d???yqxsýs]ysý\7>3uxs?=KY%|'F]Sc|1Ea7>ĝX5uxs?L=ݾdi ݾdϣ]7>P4uxs?>O9O9\7>Z2vxs?L>(,5_%,5_X7>Svxs?>Dy D|UY7>vxs?>XrqUXx辝X7>.Gvxs?43>gy7y g=kxY7>vxs?>ypU0 Dxpb6 DX7>Cvxs?hf>{xs7uxsZ7Z7>vxs??ypU0 >Dxpb6 >DZ7>|2vxs? ?gy7>yg=>lx[7><1vxs??Xrq>SXx>Y7>3vxs?hf&?Dy? D|?RX7>M3vxs?533?(,5?_%,5?_Y7>P3vxs?@?O?9O?9\7>ׇuxs?L?ݾd?i ݾd?Σ]7>9uxs?Y?yqxs?ýs]ys?ý\7> uxs?iff?KY%|?'F]Sc|?(E\7>?4uxs?63s?5?5??d?oq??%|?I0 ??$|?k0 >?d?xq>?5?5??kq>d??R0 >%|??a0 $|??tqd??55??doq>?%|T0 >?$|a0 ?dkq?55??}qd??u0 $|??C0 >&|????5?5?????d?oq?????%|?I0 ?????$|?k0 >????d?xq>????5?5?????kq>d?????R0 >%|?????a0 $|?????tqd?????55?????doq>????%|T0 >????$|a0 ????dkq????55?????}qd?????u0 $|?????C0 >&|???4@???@A?Cube$???H     (0@???~0?>???$?>?????~0?@ '??????$?@ '?????>>????<;>??>@ '???@ '?@ '?????>@ '?????<;@ '???>>??@ '?>?><;???>>???@ '?>?@ '?<;?0?>???4~?>???4~?<;?0?<;???><;?????<;<;???????<;>?????>>????=+A pCylinder1|4@???,(-./,01.230452674896:;8<=:>?<@A>BC@DEBFGDHIFJKHLMJNOLPQNRSPT)UUVWWXYYZ[[\]]^__`aabccdeefgghiijkklmmnoopqqrsstuuvwwxyyz{      ! ! !" ""###$$$%%%&&&'''**+| (@{xs7uxsX7Y7>vxs">OyOyy?OL=">yOyOO?y=">7yxss7qxsrxs?s7>">?L>">7>xxs~7>pxspxs?~7>>">y?Oy?OO?y?>">O?yO?yy?O?43>">uxs?|7qxs?v7v7>qxs?>">???hf>">uxs?|7>qxs?{7>{7pxs??">O?y?O?y?yO? ?">y?O?y?O?Oy??">|7>sxs?x7>qxs?qxsx7>hf&?">3??533?">y7rxs?}7qxs?pxs|7@?">yO?yO?OyL?">Oy?Oy?yOY?">qxsz7>qxsx7>x7qxsiff?">63s?">{xs?7uxsX7Y7>vxsDv>O?yOyy?OL=Dv>y?OyOO?y=Dv>7?yxss7qxsrxs?s7>Dv>??L>Dv>7>?xxs~7>pxspxs?~7>>Dv>y??Oy?OO?y?>Dv>O??yO?yy?O?43>Dv>uxs??|7qxs?v7v7>qxs?>Dv>????hf>Dv>uxs??|7>qxs?{7>{7pxs??Dv>O??y?O?y?yO? ?Dv>y??O?y?O?Oy??Dv>|7>?sxs?x7>qxs?qxsx7>hf&?Dv>3???533?Dv>y7?rxs?}7qxs?pxs|7@?Dv>y?O?yO?OyL?Dv>O?y?Oy?yOY?Dv>qxs?z7>qxsx7>x7qxsiff?Dv>?63s?Dv>iq>d????iq>d??"?{xs?7uxsX7Y7>vxs?Dv>{xs7uxsX7Y7>vxs?">Oyy?OL=">{xs7\7>uxs">yOO?y=">5?5??7yxsrxs?t7>">d?oq???3L>">%|?I0 ??7>xxspxs?7>>">$|?k0 >?y?OO?y?>">d?xq>?O?yy?O?43>">5?5??uxs?|7v7>qxs?>">kq>d???p"?hf>">Q0 >%|??uxs?|7>z7pxs??">b0 $|??O?y?yO? ?">sqd??y?O?Oy??">55??|7>sxs?qxsx7>hf&?">doq>?3?;г533?">%|U0 >?y7rxs?pxs|7@?">$|a0 ?yO?OyL?">dkq?Oy?yOY?">55??qxsz7>x7qxsiff?">}qd??X63s?">u0 $|??{xs7\7>uxs?">C0 >&|??{xs?7?\7>uxsDv>O?y?y?OL=Dv>??5?5??"?y?O?O?y=Dv>??d?oq??"?7?yxs?rxs?t7>Dv>??%|?I0 ??"????3L>Dv>??$|?k0 >?"?7>?xxs?pxs?7>>Dv>??d?xq>?"?y??O?O?y?>Dv>??5?5??"?O??y?y?O?43>Dv>??kq>d??"?uxs??|7?v7>qxs?>Dv>??Q0 >%|??"?????hf>Dv>??b0 $|??"?uxs??|7>?z7pxs??Dv>??sqd??"?O??y??yO? ?Dv>??55??"?y??O??Oy??Dv>??doq>?"?|7>?sxs??qxsx7>hf&?Dv>??%|U0 >?"?3???;г533?Dv>??$|a0 ?"?y7?rxs??pxs|7@?Dv>??dkq?"?y?O??OyL?Dv>??55??"?O?y??yOY?Dv>??}qd??"?qxs?z7>?x7qxsiff?Dv>??u0 $|??"???X63s?Dv>??C0 >&|??"?{xs?7?\7>uxs?Dv>4@???CB?pPlane1Xy?%?     + *+**6+)*)*56)5*5A6()()45(4)5@A4@5@LA'('(34'3(4?@3?4@KL?K@KWL&'&'23&2'3>?2>3?JK>J?KVWJVKVbWVabambJUVUaV>IJIUJ2=>=I>&121=2almlxmlwxU`a`lakwl`klkvwITUT`U=HIHTI_k`T_`jvk_jkjuvS_THST<H=1<=^j_S^_iuj^ijituGSH<GHR^SGRS]i^R]^hti]hihstgshgrs\h]\ghQ]RQ\]FRGFQR;G<;FGfrgfqr[g\[fgP\QP[\EQFEPQeqfepqZf[ZefO[POZ[dpedopYeZYdecodcnoXcdXdYMXYNYZMYNNZOBMNBNCCNO7BCCODDOPDPE7C88CD,789DE8D9,8--89!,-9E::EF:F;!-"!"-9..9:"-./:;.:/" ".##./"#/;00;<0<1  # #/$$/0#$%01$0%%1&%&    $$%%  y (???>??=>??L>L>??>=??>???̽???L??333???L?̾??gff?????̤>?=>̤>?==>̤>?L>=L>̤>?>==̤>?>=̤>??=̤̽>??=L̤>?333?=̤>?L?=̤̾>?gff?=̤>??=?>?L>>>?=L>>>?L>L>L>>?>L>=>?>L>>??L>̽>??L>L>?333?L>>?L?L>̾>?gff?L>>??L>?LL>?>>LL>?=>>LL>?L>>L>LL>?>>=LL>?>>LL>??>̽LL>??>LLL>?333?>LL>?L?>̾LL>?gff?>LL>??>?̣=?>>̣=?=>>̣=?L>>L>̣=?>>=̣=?>>̣=??>̣̽=??>Ḷ=?333?>̣=?L?>̣̾=?gff?>̣=??>???>?=?>?L>?L>?>?=?>????̽???L?333???L??̾?gff??????#̽??>#̽?=?>#̽?L>?L>#̽?>?=#̽?>?#̽???̽#̽???L#̽?333??#̽?L??̾#̽?gff??#̽????L$L?333?>L$L?=333?>L$L?L>333?L>L$L?>333?=L$L?>333?L$L??333?̽L$L??333?LL$L?333?333?L$L?L?333?̾L$L?gff?333?L$L??333??$?L?>$?=L?>$?L>L?L>$?>L?=$?>L?$??L?̽$??L?L$?333?L?$?L?L?̾$?gff?L?$??L??$̾?gff?>$̾?=gff?>$̾?L>gff?L>$̾?>gff?=$̾?>gff?$̾??gff?̽$̾??gff?L$̾?333?gff?$̾?L?gff?̾$̾?gff?gff?$̾??gff??%??>%?=?>%?L>?L>%?>?=%?>?%???̽%???L%?333??%?L??̾%?gff??%????%??? polySurface24@?@?qryyxeyxxexdQedxzdxzzQdP=QPdzfPdfz{fz{=P<)=<PfR<PRs{f{gRfg{|g{||RgSg|hSgh|}h|}}>RS<R>(<>)<(S)(ST)US(U(*(>*VU*>S?*>?V*+*?+WV+?STShTW+,XW,+?@?T@+@,Thih}iX,-YX-,@A,A-@TUTiU@UAi}~}~Y-.ZY.Uiji~j-AB-B.AUVUjVAVB~Z./[Z/j~~Vjkjk.BC.C/BVWVkWBWC[/0\[0kWklkl/CD/D0CWXWlXCXDlXlmlmDXYXmY0DEDYEmYmnmntnYnZEYZnoZnooupvppoopp[opZo[FZ[EZF1EF0E1\01]\1]121F2^]2F[G2FG^232G3_^3[p\G[\_34`_43GHG\H3H4\pqpq`45a`54HI4I5H\]\q]H]Iqa56ba6]qrqr5IJ5J6I]^]r^I^Jb67cb7r^rsrs6JK6K7J^_^s_J_Kc78dc8os_ststoontnnm_t`K_`tu`tuummlK`L7KL7L8`uaL`auvvauvwlvwwlk8LMLaMavbbvwMabcwkbwcckj8M9d89ed9MbNNbc9MNOcjNcOOjie9:9N::NOfe:;Oi:O;f:;;ihgf;g;h      !" !"!#$"#$#%&$%&%'Q&'Q'RHIHIwI<HH<=<)=<()()I><>(<(>*(*(*>+*+*I?>?+>+}}~~~,+?,+,                          !  !   " !" #"#'''';;'&&;'&%&%;GG;&::&%G;:%$$$#GP|P:%99%$G:FF:9PGF9$88$#F988#77#"F8EE87PFE7"6E766"!|P{|PEOPO6!55! E6DD65OED5 4D544 OzODNON433D4CNDCC4332C322NMNCM211C2BB21MCB10B100MyMBLML0//B0ALBAA0//.A/..LKLAK.---,A.@@.-@-,KA@@,?J@?K@JJ?IJIKJKx (LOyNx e[y?ҪOL=">O?yNw =e[y?WOL=Dv>zxs?7fHsv =!\7>'Q1uxsDv>zxs7fHsv !\7>'Quxs">yOc[y NO?+y=">y?Oc[y =NO?+0y=Dv>7yxs9w cHsrxs?w/t7>">7?yxs9w =cHsrxs?wt7>Dv>q x?ɝT/L>">?q =x?ɝ2T/L>Dv>}7>wxsD>w aHspxs?7>>">}7>?wxsD>w =aHspxs?17>>Dv>y?Oe[?y NO?-y?>">y??Oe[?y =NO?-0y?>Dv>O?yN?y c[y?!U0O?43>">O??yN?y =c[y?!UO?43>Dv>uxs?}7cHs?u ;v7>Hqxs?>">uxs??}7cHs?u =;v7>H/qxs?>Dv>?Vtx?r ]?hf>">??Vtx?r =].?hf>Dv>uxs?|7>cHs?t B>|70pxs??">uxs??|7>cHs?t =B>|7߰pxs??Dv>O?y?N?v h[?yI1O? ?">O??y?N?v =h[?yIO? ?Dv>y?O?c[?y N?O=y??">y??O?c[?x =N?O=/y??Dv>{7>sxs?=>x cHs?qxsW w7>hf&?">{7>?sxs?:>_ =cHs?qxs˹r1u7>hf&?Dv>hM2?s x?9533?">hM2??@ =x?7F+-533?Dv>{7sxs??w cHs?qxsy7@?">{7?sxs??] =cHs?qxsOy7@?Dv>yO?e[y N?O yL?">y?O?f[y =N?Oe/yL?Dv>Oy?No c[?yOY?">O?y?No =c[?y-OY?Dv>qxsz7>cHs] ;>v7/qxsiff?">qxs?z7>cHs] =<>v7kb0qxsiff?Dv>xc PѰx&363s?">?xc =PѰx&63s?Dv>L ?ܞɎLf6 >y?WOL= ?yp ?Dxpd6 >D]7>T2uxs ?ܞ ?Lf6 >ʎLO?q1y= ?D ?ypDc6 >xprxs?>̱t7> ?P| ?-|`6 >|?d_21L> ?D> ?ypD>`6 >xppxs?.27>> ?ٞ? ?L?]6 >ɎLO?Cڡ1y?> ?L? ?ڞʎL?^6 >y?cO?43> ?yp? ?Dxp?`6 >Dv7>1qxs?> ?)|? ?Tq|?`6 >~0Id?hf> ?yp? ?D>xp?_6 >D>z7$-1pxs?? ?L? ?؞?ǎL?]6 >?y.O? ? ?؞? ?L??_6 >ʎL?Oy?? ?D> ?yp?D>Z6 >xp?qxseݜv7>hf&? ?-K2 ?'|?S6 >|?K!1533? ?D ?yp?DZ6 >xp?pxs$F 2{7@? ?מ ?L?_6 >ɎL?ODJ1yL? ?L ?מ?ʎL_6 >?ypOY? ?yp ?D>xp`6 >D>u7:_vqxsiff? ?%| ?|^6 >{Ųw63s? ?Dލ? D=>6y?{OL=?gލ?yg =>nx]7>u2uxs?ލ?D3=> DO?$y=?yލ?gx=>grxs?zjt7>?@Nsލ?yxs=>ws?+Z3 ̍2L>?y>ލ?gx>=>gpxs? 27>>??ލ?D6?=> DO?#y?>?D?ލ? D?=>5y?{62O?43>?g?ލ?yg?=>xu7>ֱqxs?>?uxs?ލ?`hws?=>ί$0?hf>?g?ލ?y>g?=>x>y7 22qxs???D?ލ?? D?=>8?yR>]O? ???ލ?D?4?=> D?O 5y???y>ލ?g?x>=>g?qxsDyJv7>hf&??C2ލ?sxs?=>ws?BZ!0533??yލ?g?x=>g?pxsX0{7@??ލ?D?6=> D?OMzb2yL??Dލ?? D=>4?y52OY??ߍgލ?y>g=>x>u7R{qxsiff??qxsލ?ws=>|ɳd63s??8\?s8x>yy?ҲOL=hf&?X\?SXx>]7>a3uxshf&?\?8wx>u8O?H2y=hf&?\?Xx>OXrxs?5`t7>hf&?c\?dx>,d? A32L>hf&?>\?X>x>OXpxs?27>>hf&??\?8z?x>s8O?Oy?>hf&?8?\?t8?x>xy?GO?43>hf&?X?\?PX?x>w7>@2qxs?>hf&?d?\?Y,d?x>^/'?hf>hf&?X?\?>PX?x>>z7ݻqxs??hf&?8?\??s8?x>z?y%O? ?hf&??\?8?w?x>v8?O@y??hf&?>\?X?>x>PX?qxssHW1x7>hf&?hf&?I72\?d?x>.d?I52533?hf&?\?X?x>PX?pxs{˱|7@?hf&?\?8?{x>s8?O6r+yL?hf&?8\??v8x>w?y׾OY?hf&? X\?>PXx>>v7#m2qxsiff?hf&?d\?.dx>Yմ63s?hf&?'23uxs533?zx533?N533?>|?Dpxs? _1~7>>533?ux>|?'O?2y?>533?'?533?D?q2qxs?>533?O?533?D?D?|?>{7-%1pxs??533?'?'?|?.u>y:J1O? ?533?tx>|?'?O&.y??533?>|?D?qxsJR2y7>hf&?533?k&2'|?*u>yOY?533?D D|?>v7!;2qxsiff?533?OP_3uxs@?Ծz?rԾ5?oO?y=@?_z?(,%_5?|%,qxs?ȱu7>@?4z?55?f5?S4h4L>@?_>z?(,4_>5?{%,pxs?627>>@?>z?r>5?oO?-2y?>@?r?z?Ծo?5?Ծy?2O?43>@?(,?z?_|%,?5?'_v7>'Zqxs?>@?5?z?,f5?5?n62?hf>@?(,?z?_>|%,?5?._>z7xqxs??@?r?z?>o?5?>y1O? ?@?>z?r?>}5?o?O6y??@?_>z?(,?*_>~5?}%,?qxsDj2w7>hf&?@?@u2z?5?5?g5?t2533?@?_z?(,?3_~5?}%,?pxs|7@?@?Ծz?r?Ծ}5?o?Ok<yL?@?rz?>o}5?>y1_۲OY?@?(,z?_>~%,}5?+_>w7g0qxsiff?@?5z?h5}5?ݣ63s?@?zxލ?J䰾O?o#?l-@3uxsL?J䰾ލ?zx dN?pM?\gu=L?9ލ?<@O?Kju?ȴL?_ލ?y;@O?F?|=GCL>L?9>ލ?r7>@O?>L?F>ލ?vx>@O?pP?|=?>L?ux>ލ?H䰾_>dN?SO?;7O?43>L??ލ?9I ?P|P?7>-YL?y?ލ?q?dN?;|"L??ލ?9>Zx?dN?5>\;gs??L?tx>ލ?E>_>O|P?<>[I-Yލ?sx>">dN?v>Mgt??L?9>ލ??<>@O??Kjuȴhf&?L?01ލ?y?@O?F?|=HC<533?L?9ލ??5dN?]x?gsw;@?L?D䰾ލ?rx>=O|P?_>OAL-YwdN?#>tgMY?L?ލ?9>dN?@>$֝L;Tsiff?L?yލ?O?=Z; 1;63s?L? ?rB}Ud?{dw!?/hLY?=ܕ?R侎w=d?⾭1|?Ƞfff>Y?v>ܕ?v!>^c?;- :?:5/?gf>Y?> ?f>bd? ӝ>s?>Y?R>ܕ?¦=؏>d?K+=3 R9|?53>Y? > ?n>.>bd?E>bܕ?">ŗO>^c?WMk<> ?Y?ܕ?R>P?ed?}>W}K9?Y?m ? >Qe?V>iP|uL?Y? ;ܕ?Q>bоc?U>K;!;Oyiff?]8)?7*~2:ps?{a?MB=:33=iff?SF=?Q&B=Zt?񺖾$Y?-=fff>iff?K`>?H`R>ht?G[*?<>?gf>iff?>?7SF2>LZs?;A?>1WDs{?>iff?H3>?>A>LZs? >76?F3>f~>ht?Y(>c )}> ?iff? 2}t?&>)xtqxt?7>|& =>z[hfV?iff?:m?EE|?ݑV> 63s?#>?s<>}?63s?i<?#>"{v񻫼H>,?63s?1%}?R=xM}?=LhfV?63s?@).?XWJԋA?o7;M'???:mEC|ݑ{>Z'" v%<%x>,?L=#>w<>}<(Fνj L=[K=4:=a}R  d?lC>̌>L=Y⽽%}5aL}xaj?{ż;33=L=%| |^6 Ų463s?hf>yp Dxpd6 D]7>FCluxs?hf>yp D>xp_6 D>v70qxsiff?hf>L מ?ʎL^6 ?ylU:2OY?hf>מ L?_6 ɎL?O`n8yL?hf>D yp?D`6 xp?pxs||ձ{7@?hf>-K2 '|?`6 |?0]N)/533?hf>D> yp?D>b6 xp?qxs.L1w7>hf&?hf>؞? L??_6 ʎL?O.0y??hf>L? ؞?ǎL?]6 ?yF0O? ?hf>yp? D>xp?_6 D>{7pxs??hf>)|? Tq|?_6  #?hf>hf>yp? Dxp?a6 Dv7>ϛ<1qxs?>hf>L? ڞʎL?^6 y?~1O?43>hf>ٞ? L?^6 ɎLO?{ky?>hf>D> ypD>`6 xppxs? 7>>hf>P| -|`6 |?._1L>hf>D ypDd6 xpqxs?_1u7>hf>ܞ Lf6 ʎLO?y=hf>L ܞɎLf6 y?0OL=hf>qxsލws=Qγ85463s?>gލyg =mx\7>$ uxs?>ߍgލy>g=x>u7o!qxsiff?>Dލ? D=5?yFOY?>ލD?6= D?OyL?>yލg?x=g?pxs{{7@?>C2ލsxs?=ws?r533?>y>ލg?x>=g?qxsw7>hf&?>?ލD?4?= D?O2y??>D?ލ? D?=8?y2O? ?>g?ލy>g?=x>{70pxs??>uxs?ލ`hws?=/j?hf>>g?ލyg?=xu7>GX2qxs?>>D?ލ D?=3y?(?1O?43>>?ލD6?= DO??I1y?>>y>ލgx>=goxs?Hv#27>>>@Nsލyxs=ws?[߿2L>>yލgx=gqxs?^)1t7>>ލD3= DO?+bC2y=>Dލ D=5y?OL=>d\.dxZ463s?43>X\SXx辢^7>?uxs?43> X\>PXx辸>v7|0qxsiff?43>8\?v8xw?ya>2OY?43>\8?zxt8?OC8yL?43>\X?xPX?pxs|7@?43>I72\d?x.d? 62J1533?43>>\X?>xPX?qxsypx7>hf&?43>?\8?w?xv8?OcF2y??43>8?\?s8?x{?yz\2O? ?43>X?\>PX?x込>z7t>2qxs??43>d?\Y,d?xr ?hf>43>X?\PX?x辺x7>!qxs?>43>8?\t8?xyy?K۲O?43>43>?\8z?xs8O?ky?>43>>\X>xOXpxs?-17>>43>c\dx,d?<3L>43>\XxOXrxs?2t7>43>\8wxu8O??y=43>8\t8xyy? m2OL=43>O<˿O|C(463s?>D<˿ D|^^7>uxs?>D<˿> D|>v7RC2qxsiff?>ߍ'<˿rx>'|*u>yќOY?>rx<˿ߍ'?,u|'?OXyL?><˿D?|D?pxs |7@?>k&2<˿O?|O?2:V@533?>><˿D?>|D?qxs%Yy7>hf&?>tx><˿'?&u>|'?Oc0y??>'?<˿tx>'?|.u>y ;O? ?>D?<˿>D?|>z7~2qxs??>O?<˿EO?|/q?hf>>D?<˿D?|w7>0Eqxs?>>'?<˿wx󾞋'?|*uy?MfϲO?43>>ux><˿',u>|'O?2y?>>><˿D>|Dpxs?x}7>>>N<˿O|O?ŏNP3L>><˿D| Drxs?2t7>>zx<˿'&u|'O?BPɲy=>'<˿zx󾝋'|*uy?UOL=>5zڿh5}5}~ 463s?>(,zڿ_~%,5_^7>]uxs?>(,zڿ_>%,}5+_>v70qxsiff?>rzڿ>o~5>yF氽OY?>Ծzڿr?Ծ}5o?O#2yL?>_zڿ(,?3_~5~%,?pxs{2|7@?>@u2zڿ5?5g5?,Zg_533?>_>zڿ(,?,_>5}%,?qxsEx7>hf&?>>zڿr?>~5o?O= y??>r?zڿ>o?~5>yWv2O? ?>(,?zڿ_>|%,?5._>z7n8!2pxs??>5?zڿ,f5?5M>>?hf>>(,?zڿ_|%,?5)_w7>邲qxs?>>r?zڿԾo?5Ծy?7O?43>>>zڿr>5oO? y?>>_>zڿ(,5_>5{%,oxs?V97>>>4zڿ55f5?(峎13L>>_zڿ(,$_5|%,qxs?:2u7>>ԾzڿrԾ5oO?Ϊ2y=>rzڿԾo5Ծy?nS2OL=>yލO=Z;ux-<63s?L>ލ翹9O9^7>z*uxs?L>ލ翱9>dN@>k\eg8tiff?L>rxލD>wdN">;NY?L>D䰾ލrx>=O|P_>~Q-Y<L?L>9ލ翾?5dN\x?+rigi@?L>01ލy?@OF?.ȴ9>ލ翾?<>@O?;at|=d>hf&?L>E>ލsx>4>@Oi>%Kȴtx>ލE>f>@O5>}=GIM? ?L>?ލ翳9>?@O<>Cȴy?ލF?@OHC|=?hf>L>?ލ翵9?@Or7+>ȴ<L>ux>ލH䰾p>@O?|=P?43>L>F>ލvx>@OpR?ɴ<<?>L>9>ލr7>@Ot~r?|=>>L>_ލy;@OF/?ȴL>9ލ<@O;at?|= d>L>J䰾ލzx dNpN?1;=L>zxލJ䰾Op#?!1;NL=L>rq辀 6f"%:퍽2=o~63s?>ݾ jwپd y>&;Bs?> ;ܕQ>dоcU>!e`?>m >QeV>W|Rɔ<L?>¦ܕR>P>ed~>&~E<9?>Q>ܕ">BR>QdT>:b ?>&>ܕQ>T>QdBR>54<6e?hf?>R>ܕ򿽦/>Qd琽B0>>v>ܕv>Qd7?<"2?gf>>=ܕR侑w=dK@~?<=fff>>Qܕ&;QT]cѾдk?AAƾ>> rB{Ud{1 ?滩RGL=>d.vý,*sEt/>F<2|y?=/*~)W8>tqxt7>F(JPhfV?=;SF>!2}t&>Opz}kS9?=>F3>2B>8t<> ]9>;>8t1B>EAG`?hf?=>=SF>8t*72Y>9<z?>=K`>H`V>8t][60?A,9?gf>=SF=V&B=Zt񺖾? =I=fff>=]8)6*~2:ps{\?B )r33==zxs7fHsv !\7>'Quxs?">zxs?7fHsv =!\7>'Q1uxs?Dv>O?yNw =e[y?WOL=?zxs?7fHsv =!\7>'Q1uxs?y?Oc[y =NO?+0y=?7?yxs9w =cHsrxs?wt7>??q =x?ɝ2T/L>?}7>?wxsD>w =aHspxs?17>>?y??Oe[?y =NO?-0y?>?O??yN?y =c[y?!UO?43>?uxs??}7cHs?u =;v7>H/qxs?>???Vtx?r =].?hf>?uxs??|7>cHs?t =B>|7߰pxs???O??y?N?v =h[?yIO? ??y??O?c[?x =N?O=/y???{7>?sxs?:>_ =cHs?qxs˹r1u7>hf&??hM2??@ =x?7F+-533??{7?sxs??] =cHs?qxsOy7@??y?O?f[y =N?Oe/yL??O?y?No =c[?y-OY??qxs?z7>cHs] =<>v7kb0qxsiff???xc =PѰx&63s??zxs?7fHsv =!\7>'Q1uxs??yp ?Dxpd6 >D]7>T2uxs? ?gލ?yg =>nx]7>u2uxs??X\?SXx>]7>a3uxs?hf&?D23uxs?533?(,z?_~%,5?_^7>P_3uxs?@?ލ?9O?9]7>@3uxs?L?ݾ ?jwپd? o>hL!;Oyy?iff?:m?EE|?ݑV> ??@).?XWJ%> ;Cp???@).?XWJXzS???@).?XWJ+3gP??@).?XWJtIX???).gWJ+<=gP?).gWJX;zS??).gWJ%> ԻCp??).gWJ$h?/>?).gWJՋA?c7L'??:mEC|ݑ{>Z''Quxs??xc PѰx&363s??qxsz7>cHs] ;>v7/qxsiff??Oy?No c[?yOY??yO?e[y N?O yL??{7sxs??w cHs?qxsy7@??hM2?s x?9533??{7>sxs?=>x cHs?qxsW w7>hf&??y?O?c[?y N?O=y???O?y?N?v h[?yI1O? ??uxs?|7>cHs?t B>|70pxs????Vtx?r ]?hf>?uxs?}7cHs?u ;v7>Hqxs?>?O?yN?y c[y?!U0O?43>?y?Oe[?y NO?-y?>?}7>wxsD>w aHspxs?7>>?q x?ɝT/L>?7yxs9w cHsrxs?w/t7>?yOc[y NO?+y=?OyNx e[y?ҪOL=?yp Dxpd6 D]7>FCluxshf>zxs7fHsv !\7>'Quxs?gލyg =mx\7>$ uxs>X\SXx辢^7>?uxs43>D<˿ D|^^7>uxs>(,zڿ_~%,5_^7>]uxs>ލ翹9O9^7>z*uxsL>ݾ jwپd y>&;Bs>d.vý,*sEt/>F<2|=4@?@?EA?CylinderX3??? *+*    ! ! !" ""###$$$%%%&&&'',-.,./V)WU)VW)DT)UD)ES)TE)FR)SF)GQ)RG)HP)QH)IO)PI)JN)OJ)KM)NK)LL)MC(B1(CB(A0(1A(@2(0@(?3(2?(>4(3>(=5(4=(<6(5<(;7(6;(:8(7:(99(8X (0@{x7uxsY7[7>vxsL=9k9{l=g*;yϾyOO?yxϙ>9΀=g*;7yxs7qxsrxs?s7I>9b >g*;??9S>g*;7>xx~7>pxspxs?~7>?9҂>g*;y>Ͼy?OO?y?X53?9R#>g*;>yO?yy?O?L?9t>h*;ux>|7qxs?u7v7>qxs? \f?9>h*;????9k>g*;ux>|7>qxs?{7>{7pxs?=9?g*;>y>O?y?yO?0QM>9e[ ?g*;y>>y?O?Oy?jϙ>9?g*;|7>sx>x7>qxs?qxsx7>8>9&?g*;2???9QT3?g*;y7rx>|7qxs?pxs|7?9??g*;y>yO?OyO53?9L?g*;Ͼy>Oy?yOL?9MMY?g*;qxz7>qxsx7>x7qxs\f?9e?g*;}?9 r?g*;{x?7uxsY7Z7>vxs%=?<~"?Ͼ?yOyy?OAQM>?{l=~"?y?ϾyOO?yxϙ>?΀=~"?7?yxs7qxsrxs?s7I>?b >~"?????S>~"?7>?xx~7>pxspxs?~7>??҂>~"?y>?Ͼy?OO?y?Y53??R#>~"?>?yO?yy?O?L??t>~"?ux>?|7qxs?u7u7>qxs?$\f??>~"???????w>~"?ux>?|7>qxs?{7>y7qxs?0=??~"?>?y>O?y?yO?5QM>?e[ ?~"?y>?>y?O?Oy?jϙ>??~"?|7>?sx>x7>qxs?qxsx7>8>?&?~"?2?????QT3?~"?y7?rx>|7qxs?pxs|7????~"?y?>yO?OyN53??L?~"?Ͼ?y>Oy?yOL??MMY?~"?qx?z7>qxsx7>x7qxs\f??e?~"??y?? r?~"??۴?> ?S???*&3?>3>S????t5:9k>g*;????5:?w>~"?5:9 r?g*;?p5:? r?~"?{x?7uxsY7Z7>vxs%=?mF?~"?{x7uxsY7[7>vxsL=9mF?g*;ϾyX?}u=GJ?>.xm?{x79?0<;'?.q>Na?yϾmn?mОU>Mf?%>w?7yx {?<䞱>x?<?WR}??2?~? ?u?7>xx {?<>M'?x?5?WR}?y>Ͼmn?m>J?Kf?B_'?w?>yX??f?AJ?1?+xm?ux>|79?0?x?;'?i97?Na??W? ?+?>*\9?S?ux>|7>?}͇x?5z>i97?UF?>y>?k^f?UU>1?+:?y>>?J?=;_'?E0?|7>sx>?/ʹM'?E<5?Q*?2??`,X?z; ?.(?y7rx>?t؞>ZF<<?Q*?y>?9ОU><=%>F0?Ͼy>?)u=UU>>+:?qxz7>?3T4q>UF?W? @;>+>S?{x?7?x?;'?>Na?Ͼ?y??[7f?GJ?6>.xm?y?Ͼ?!oJ?Mf?bΌ>w?7?yx?v܇M'?x? h>WR}???ϳ?~?3>u?7>?xx?5>x?&=WR}?y>?Ͼ? 65U>Kf?t՘=w?>?y? 5u=CJ?W4=(xm?ux>?|7? 5L<;'?!P;S?ux>?|7>?90?<7z>!P?y>?X?u=UU>4=+:?y>?>?mnm>U>=՘=E0?|7>?sx>? {=>>E<&=Q*?2???2?z;3>.(?y7?rx>? {<M'?E< h>Q*?y?>?mnmJ?=ZΌ>C0?Ͼ?y>?Xf?UU>0>+:?qx?z7>?90x?;z>>UF???W 1?>2Ȱ>S?3????K ASphere ???llmmmldd0/0//011k1kklk.lkklcdcbcbb..-bbcbcdc--,dgdggfffeee"""!!!   jmjjjiijjihihiihh(h(h+++***)),),'('&'&&###$$$%%%y yppxyxHGHGG22HI23IwwxIw334wFxwwopo4non4nFFEn7nonopo7766655858989:9::qq=qrrq=qqr<=srpsps<;<rrs;;>ss>>???@vvvuuut@t@tADADEDBAEBCBCCxyxyyJJKJKLKLLzz}O}}zzO} NO z{{z~} }~{~N MN{{||{~| ~    ~SSST||  |    TTU UU     R    MM    RRQ   Q  QP PPVVWV"" W"  XW%"% !X!X"# %#"#! %![#$!$!%&#&%&$#[.Z[.&$.&'$'&'$Z.+YZ+'''./+.//  /00   0 ,/0+/,336639996-0,0-(+,Y+(Y(((,)()),-))*)-**-*-9**98889678778657855637475445324522324142112111<<<;<;<?;?<?:;::;>?:>;?B>B?B =::=>=>AB=A>B AB @==@A@]]A@A]@@]\\]ZZ\]ZWZWW\[[[\ZYYZW[\YVWYWVV[X[YXXYVXUVXVUXUUUU\C\CC]\FCFCD]FDCD^]IFIIDE^E^FGDIGFGEDJIIJGJEaGHEJHGHEKJJKHKaR`aRHKHRKK`RO_`ORSSORSTSTT_OL_LLOSPPSTLOPQTPTQQLMLPMMPQMNQMQNMNNNNgggjgjghjhghmjmhiijkhmkjkihmiklilimnknmnlk``vvn`lvnolonol_`_vss`c_c`ocoovwsvww^_^^_bc^b_a^^abacfbfc f wxx dadaebbefadef efddeed x twxswt{{~~{~uxtxupstspppptqpqqtuqqrqurrururr~~}}}~{|}||}{z|}zz{z|y|zyyzyyy (0p^>^^:?:; 4?L˺75?b>>&:>.:>^>^^>:?:;?;5_ۺ4??>&:>b'?^^^::;;5?ECۺ 4 =>b'?.:>^^^>;::?4^˺75_?>b'?b'?=>g>=⓾ƹ??ƹg/5?ȩa4?b>/?":1?>=>g>=>ƹ??ƹ?4`cú55??/?":1?4=⓾g>=⓾ƹ?ƹ4?Pú55 =/??>=⓾g>=>ƹ?ƹ?g/5Ʃb4_?/??4yEx?5>9< ? ?31? ף?`u{?@B>x?X?ċ>?30\?RD滟ou:xT;?jV>:?>>3{#?H޻~?  t??:?>>31\G滆oìu::X̒?:?>>pQ*LBD?Oӷ E4~>:?X?>`e||55?L2;M2~>> ?.:>||55m::m:q>b'? ?u3||>55?B2;?2;??> ?b'?|>| #35?577?jV>>&:> ? >>m 5?z4?0Q0Q;T?jV>9?":1?ċ>u3> >z4?m 5?Ѻ:??9?X?4 >m 5z4?Q;Q;T̒?9??ċ>(> z4?m 5?6Ѻ/Ѻ~>9?X?>> >5?*5?5ϑ>85??:?> >g 5?t#55?.=85?b>:?>> .>5*5?5 >85_?:?>4 +g 5t#55?r>85 =:?>&:>u>R(R(C >ſſE?PJ"??>>>.:>9.>ffi>)*)*cf?8<>@>Ĕ>>.:>X=.5>)2)2x?|"z<m>竓>>N>.:>uR(R(X ˿PI?[\;;>>$?.:>9.ffq)*)*b?D<֌̜1>Ĕ>h?.:>X-5)2)2`x?*6qzcV>> ?.:>R(R(uſſC g?nP]I`=>b'?>ff9.)*)*i#>b b=Ĕ>b'?.>X)2)2.5 p>@Pb'?N>R(R(u>˿X > "^ =ENd?>b'?=?ff9.>)*)*q>N߾c}мFfBl?Ĕ>b'?~?X=)2)2-5> oa`xDtu?>b'? ?uR(R(>C ſſ?EJ"}Z?>$?b'?9.ff>c)*)*?cf8<޾8R?Ĕ>h?b'?X>-5)2)2?x!z<mI?> ?b'?u>R(R(>X >˿?RIKZ;?$?>>b'?9.>ff>j>)*)*?b<ό>N,?Ĕ>>b'?X=>-5>)2)2?`xl6q>v5?>N>b'?R(>R(u>ſ?ſC >awlT]I??>&:>=?f>f9.>)*?)*i>#}b b?k?Ĕ>&:>~?>X=)2?)2 .5> p@P&:> ?R(>R(uſ?ſC "?z =E?p>>&:>>f>f9.)*?)*iN>|мFf?>Ĕ>&:>.>>X)2?)2 .5o>|`x?U>>&:>N>뱞>@>v?m??S*c< L?p>m2?":1?Vډ>9>é>\."*?&*?@ˮ>&6?":1?Ql>=>DZ>3j02?z$2?E58u>}n;Sx?U>~8?":1?D>뱞>@>v>?m?>QF}K??m2?":1?=9>é>\.>"*?&*?Gˮ>A澝ud?k?6?":1? ==>DZ>3=g02?$2?H5>z?x? ?~8?":1?R=v>@>뱞>>m??K6<?$?m2?;?4\.>é>9>Gˮ>&*?"*?dK N,?6?D?43=DZ>=>M5>~$2?g02?oXxy;x>v5?~8?RN?4v@>뱞>m??)LXs.f}Z?m2?4'v?4\.é>9>Gˮ&*?"*?6dHP8R?6?Nl?43󴽮DZ>=>I5$2?g02?sxvI?~8?ub?4뱞@>v>m?>*c< LPd?m2??=9é>\.>"*&*?Gˮ> F&3=h02$2?M5>8um;RxDtu?~8??R=뱞@>vm??SF~K`=m2??Vډ>9é>\."*&*?Gˮ?>'ud=6??Ql>=DZ>3h02$2?M5z>×?x"=~8??D>v@>뱞m?K?6<;>m2?4'v?>\.é>9:ˮ&*?"*d? <z̜1>6?Nl?>3󴽮DZ>=>5$2?h02oXx?hy;xzcV>~8?ub?>v>@>뱞>m?)L?Ys-f??>m2?;?>\.>é>9@ˮ>&*?"*8d?GP>@>6?D?>3=DZ>=>5>{$2?k02sx?v>髓>~8?RN?>R(>uR(>?m ?;4W:5??(e>8=f>9.f>)*?z)*?74ū9 5??)>w=>X>1?a<1?58A5??>aQ=뱞>u>뱞>?O6>?"5f.:4??kC'?Zډ>9>R->9>$*? ˮ>$*? 59Q4?? ?uQl>=>6==>292?

(92?538H5??r?sD>뱞>u>뱞?O6>4?.˚:"5?b>kC'?Zډ>>9>R->9$*? ˮ>$*\4?9 5?b> ?vQl>>=>6==*2?5>*25?G9:5?b>r?tD>>R(>uR(?m 5?`:<4?b>(e><=>f>9.f)*?z)* 5?984?b>)>y=>>X{1?$?|1|5?wo69j5?b>>cQ=>R(uR(>ſC ſ?5`:.4_?(e>>4f9.f>)*i)*? 5b59;4_?)>>4X>1a<1?>5/ 85_?>N>4뱞u>뱞>e6>?4ܚ:"5_?kC'?:?49R->9>$*ˮ>$*?U4 9 5_? ?l?4=6==>.92H3>.92?C5$85_?r? ?4R(uR(ſC ſ.4?n:5 =(e>ȋ=&:>f9.f)*i)*:4??9 5 =)>s=&:>Xy1Q$?y1n5?49x5 =>{Q=&:>뱞u>뱞e6>"5?Tݚ:4 =kC'?Gډ>&:>9R->9$*ˮ>$* 5?9U4 = ?wQl>&:>=6==*25>*295?t{ 95 =r?fD>&:>¥G!Ӿp )TC_?gZ<ۡ~>G.o> ?>'LHkn'Ǿ~?!=Yſ~>2> ?.>G)Kpmνz"P'z?D0=U~>= ?N>pG!Ӿ ף2C )TS$? ?LH ѯ|'ǾkT= q1>h? ?mν"Pzi>ڼ}q5= ? ?L3G!Ӿp> )TC?uu$ ?=?RLH>kn'>LI=5=??2> ?~?Rpm=z"P>~7G!Ӿ #3C? )Tܰc?jV>G.o>> ?LH>2n'>kd׽5S~?jV>i->> ?pm= #"P>zC$|?jV>=N> ?>b>\³4?2T?k$;P?jV>=C?;?ċ>{H>\>>rk?ch<8?jV>FP?D?ċ> =K>p= GN>|z?">f?RN?ċ>L3b>>2T?4?PsZ;??=C?X?=3\>{H>wk?>L92ڒ=??FP?X? =2K>R =|z?GN>^|.>??f?X?R=򏾏b>42T?;H;P̒?=C?4'v?ċ>{H\>ƾwk?=R ϽK>GN~z?Rk;>.=}{s?+f?ub?ċ>b>2T?4P?w~>=C?X?Vډ>Q\>{Huk?ƾ8? ~>FP?X?Ql>p=K>R Ͻ|z?GN~?jx̼1~>f?X?D>G!>p #)T?Cӵ:F:?jV>h><=>>LHk?}'Ǿc{̡?jV>>x=>>mν #pz?xCT갹9c?jV>>bQ=>3>-9>T?H? ?܉5T? ?:?>@=3>. C>Kl? >ľsE7CMl??:?>={>-=z?1nmI>9oIv& z? ?:?>R=>Gy>)\4ET?V?rH:?jV>-?Zډ>>p>f&H> #k?>N8v?jV> ?vQl>>{>Rh={.z?CM>9P:?jV>9?tD>>>g<T?>:?>;ډ>p>g{Hk?8 cƾ,>)!k?>:?>Ql>{>ΤgR Ͻz?[PL L>X;Pz?>:?>D>)\3pG!>C )T?w F::??h>>>=3LH>'Ǿk?f }??>>>B3mν>Tlz?R??>N>>9p= .3>H? T?T5܉W?:?>= C{3>ľ Kl?CMluE7ľl P?:?>`=ǽ .{>mIoz?~z& >oIG?:?>S=)\3Gy>>V?4ET?lI:??-?:?> ף3f&H>p>>k?w* 78?? ?j?> ף3h={>M>[z?5[>47??9? ?>9>p= 3>?H? T?TGN܉?,S'?:?>Rډ> C>{-3>> Kl?CMl~ >4/?:?>Ql>=\{>nI>nz?~z_5AoI>U7?:?>D>G!Ӿp #3)TCXF:̒?h>̋=>LHz%3kn'Ǿ 83̒?>t=>pmν #3pzgCTݰt:̒?>|Q=>Ӿ g<T{=:?>>pǡg{Hk8 cƾ+>8"kHp=:?>.>{ˡgR Ͻz\JLL>YPz=:?>N>ӾGy>4ETV?: I:q-?Gډ>>pf&H>k>q ?xQl>>{h=zCM>E(:B/q9?gD>>3Ծ˭9>TH? ?܉NTFg?:?>5?3쾙 C>Kl >ľ!CMlb(o?:?>x?{=zomI>:oIe5zHw?:?> ?2pG!ӾC )T?F:9~>h>;?>-LH}'Ǿk?áޙ8~>>D?>-3mνSuz?qќr9~>>ZN?>>gӾK!?^<T?^8"?~>:?X?~>{H>gp`>8 k"k?臟8)>C>:?X?">R =Tg{JL>[zPz? YL>>:?X?N>\BGy>ӾW?2ET?I::~>-?D'v?>Gaf&H>p>k?7dB~> ?Nl?>kh={L>Kz?5s:F9~>9?ub?>agӾK!i^<T?Dg"P>:?X?8?{Hgpaƾ8 k"k?+ƾ3=>:?X?z?R Ͻg{ULw\zOz?HX;L]>:?X? ?w~>G w~!>T6!5?ϛ35?b>>>>33>=žOϲ>MFh}T? ?>h>>>G=RϾ r8>VP 9w? 7= m>H3>s>N>>>=ž33?MFOϲ<?]u<%R?(>h>>.>[<>پ[<>Z黾6@? =(?b>.\[>>.>=澅DBA>΂gľi?Mt<>>>>N>.> >RϾG ?VPr8b>M"y?>s>>N>D>>΂gBA>*:D=e?>Wy3>>N>>= >ʽJ>uJ@?ȟ+>N>N>w~G w~!T6!5?J5 =>$?>=ž33MFOϲ ?+;Vռ=h>$?.> RϾG VPu8 ">Y=5v]J=s>$?N>33=žOϲMFV?+޻ ">h>h?>[<پ[<黾Z黾x"4?A;5 =`V>h?.>Dľ͂gBA>qp<h,=a>>h?N>GRϾ u8VP v?(U TK>s> ?>澅DBA΂gľ"ci?2†9Ҿ`4>>=> ?.>>ʽ >ʽJuJ,?Z<4=5>g> ?N>w~G w~>!T6!>5Z 5_?>$?=?33=ž>OϲMF?cWNIh?=?GRϾ >u8VP ?7jxe=p ?=?=ž33>MFOϲ>qr@Xg?h>$?~?[<پ[<>黾Z>~0ke 9_?`V>h?~?澅D>BA΂g>%h(p]<"վh>R?7:> ?~? RϾG= VPu8>d+Swr?s>$? ?D=ľ͂gBA><5ӾM}u+ifl?a>>h? ?>ʽ >=JuJ>ΰ5d6:gX4a?> ? ?w~>G w~>!>T6!>5=5??>>=?>=ž33>?MFOϲ>f QgU?V?h>>~? >RϾG= ?VPu8>H-B> ?33>=ž>Oϲ>MF?gU<9f ?'?h>>=?[<>پ[<>>Z>6GYP3??.\[>>~?D>=>΂gBA>޾"g;sf?J?9>> ?G=RϾ >v8>VP ?uȼڐ>Ƽ2?s>N>=?=澅D>BA>΂g>=iȓ>,?y;>N>~?>= >=J>uJ>?NWj)?u?mG>N> ?7>->7>T`6?5?S35?b>9?;?Vډ>\>=r>3?IF?1g(?^R?(>n>?;?Ql>>>=bQ ?%P?%8y>FRM=Ow?>#B?;?D>3>=r>\1>IF?R?]n>?D?Vډ> <>> <Ի>Z?Ի5?K5?b>;WE?D?Ql>=BE>>1½>8g?AZ>&O?D?D>=b=>8>'P?R Ow?:RMy>H3>#B?RN?Vډ>1=>=BEuA>:g?þkqj?'tZ>>O?RN?Ql>f=Y>fʽI>u?"In5?wm4?b>^?RN?D>7>->7>>T`6?>5  5??9?;?=3>=r>\>1>IF??V1x;~ ?'?n>?D?==b=>>%8>%P?Q ?٨r+>Ƽ2?#B?RN?=\>=r>3>?IF?1>~ *xV?V?n>?;? = <>> <>Ի>Z?Ի>5mq5??;WE?D? =1=>=BE>yA>:g?>\g3 ;>,?O?RN? =>>=b=R ?'P?#8>,;٨r?p ?#B?;?R==BE>>1=>8g?A>۾ \g?J?O?D?R=f=Y>f=I>u?I>58x94??^?RN?R=7->7>T`6?>535_?9?4'v?=\=r>3>IF?1>i(Y^Rg?n>?4'v? =>=b=R 'P?&8>y1RM=Nwr?#B?4'v?R=3=r>\>1IF??RL^?Nl?= <> <>ԻZ?Ի>5Jo5_?;WE?Nl? ==BE>1=þ:g?yA>լ#=(nfl?O?Nl?R==b>>#8'P?R ?Ow@RM y=BE>xA:g?>mJh>R?O?ub? =fʽY>f=Iu?I>q{2a;7_?k`?ub?R=7->7T`6?5?*5 =9?4'v?Vډ>3=r>\"IF?V?x;~ ">n>?Nl?Vډ>a>8'P?R ߨr?'TK>#B?ub?Vډ>\=r>3IF?1~ ?xVռ=n>?4'v?Ql> <> <ԻZ?Ի5?25 =;WE?Nl?Ql>1½>=BEoA8g?þ\g?;۾`4>O?ub?Ql>>=bR 'P?#8>-;بr]J=#B?4'v?D>=BE>1½þ:g?yA> \g,=O?Nl?D>fʽY>fʽIu? I5?E15 =^?ub?D>G >w~w~|T6?#"!y?b֣R?pt>><=;ډ>=>33MF?7ϲ>> i?>><=Ql>R> GVP? v8K \>Afz?%>><=D>=>3MF?jϲ?S?u>>y=;ډ>>[<[Rk?>k>y=Ql>>D͂g?ľBA{P>[y٠z?}>>x=D>R>G =P?~aBM T?>~T?>$>cQ=;ډ>>Dy"g?I[þ {>B?Nk?M>>cQ=Ql> >>ʽ>ʽu?P2HZM>~:z?>]>bQ=D>G >w~w~>|T6?#"!>'!b;wR?1?>8=@==>3>MF?jϲ?^:ҷS??>w=@=R>G >=P?F@ ? %7*NT??$>aQ=@==>33>MF?6ϲ>оW;i??>8==>[<[<>Z?껾> ɾ`:Nk?I?k>x==>D>]g?,IU>ƾ1k?C?>bQ==R> G=VP? r8>-[D h;z?X?><=R=>D=͂g?ľBA>P{:ˠz??>x=R= >>ʽ>=u?DDQiG>KoY5z?#?]>bQ=R=롵>w~>7>h6?(>>S$R?2?$(?Zډ>@={> >3>8`F??1ɲ>,оi??+?Zډ>=^>>=b=P? ?8>0[- uz?X?-?Zډ>R={>2>\>#hF?> ?BS??6?uQl>@=^> '<> <>Z?g>G>].ɾhk?I?H?uQl>=1>=rD>1=g?J>,A>xP'mz??{n?uQl>R=^>=>NP?۱7>; ?,nxoT???sD>@=1>y==BE>jg?gA>> ƾ~Il?C??sD>=̼>0=f=u?uNJ>MG>KFz?#?R=롵>w~>7h6?(>?ַ;UR?nt>$(?Zډ>;ډ>{>2>\#hF?> ?U:S?u>6?vQl>;ډ>^>=OP?8> %?q;:?tD>;ډ>{> >3;`F??#ɲ>s;xi?>+?Zډ>Ql>^> '<> ?7>θ;fk?>H?vQl>Ql>1>y==BEJg?A>tþ>:qk?M>?tD>Ql>^>>aP? ?8`[>y-?Zډ>D>1>=rD>1½g?T>,AuP>:z?}>{n?vQl>D>̼>0=fʽ u?A=I>ZQIN@M>"ҷ9z?>D>w~>w~G >">"pT6?£RF_y?&?>>Rډ>3>=>@ϲ>MF? i>E.?>>Ql>= R>$8> ZP?zn \>޵6?>>D>>3=>?OϲMF? S⺱?.'?>>Rډ>[<>[<>>黾Z?Rk>=/?k>>Ql>=D>BA>ľ΂g?۠zvQP>27?>>D> >GR> ?F@=P?NTe˸P ?T'?$>N>Rډ>D>>V>)I]g?k>5/?>N>Ql>>=>ʽ >iG>DDQu?zpz6_K>V7?]>N>D>w~w~G >!!T6?vRmN;7X?>>=33=>OϲMF?ַSw:bX?>>= GR> 4G@;P?,NTI7 W?$>N>=33=>Bϲ"MF?!iR;оqP?>>`=[<[<>黾껾Z?Nko:ɾ=P?k>>`=D>c¾HI]g?ke1*ƾP?>N>`= R>\8 VP?z"h;,[$H?>>S=D>BAľ˂g?ˠz:PZ H?>>S=>ʽ>ʽ >iGDDQu?z^Q5KG?]>N>S=7w~>롵>)>h6? RSX?$(?:?=3 >{>ɲ?7`F?izоqP?+?:?`==b>^>8 ?P?uz% .[$H?-?:?S=\R2>{> +> hF?BS{bX?6?l?= < '<>^>p>Z?hkQIs.ɾ=P?H?l?`=1½=rD>1>,AQ>g?mz=xPZ H?}n?l?S==^>; 7>RP?oTfy'W?? ?==BEy=1>¾fgA>og?Jl | ƾP?? ?`=fʽ0=̼>bGNJ>u?FzKG?w~>롵>>)>h6?aRˡ;֡?&?$(?:?Rډ>\>R2>{> ?+> hF?S =:?.'?6?j?Rډ>>=^>< ?7>QP?oT}9?T'?? ?Rډ>3> >{>ɲ>?7`F?si~;>E.?+?:?Ql> <> '<>^>!>p>Z?fk];7>=/?H?j?Ql>=BE>y=1>>fgA>og?l'9>5/?? ?Ql>=b=>^>8> ?P?QzP4b;[>޵6?-?:?D>1==rD>1>,A>R>g?zñ:uP>27?}n?j?D>f=0=̼>iG>NJ>u?&z8~K>V7?G w~w~>|T6!#">ychɣRΡf?>̋=5?=ž3>MFjϲ>о⽱i\9n?>̋=x?RϾ G=YP :8> \gzv?>̋= ?=ž33>MF6ϲ? Sl"g?>u=5?پ[<[<>Z黾>ɾiRk n?k>u=x?澅D=ӂgľBA>_P"\۠zt&w?>t= ?RϾG >;P4G@ ?V yȸNTGg?$>}Q=5?D>]gHIc>ƾmk)o?>}Q=x? >ʽ>=u:DQwiG>fK6zIw?]>|Q= ?G w~w~T6!!9?TL;vRؤ=>ȋ=>=ž33MFOϲ?x:ַS=>s=>RϾG =PaBJ [T?:ZTs=$>{Q=>=ž33MFOϲ>a;ih=>ȋ=.>پ[<[:Nk=k>t=.>Dt"gIfþz>'*A:Tk\e=>|Q=.>RϾ GVP r8-[>wh;z =>̋=N>澅D΂gľBAP>:ˠzp=>t=N> >ʽ>ʽuPH$M>H9gz=]>|Q=N>롵w~>7h6)>S? Rܤ=$(?Gډ>>{ž >37`F?ɲ!>Ezih=+?Gډ>.>^о>=bP ?8,[>n uz =-?Gډ>N>{žR2>\ hF+> ?NBS=6?wQl>>^ھ '<> t.>$Hhk=H?wQl>.>1=rD>1½gQ>,AxP>? mzp=}n?wQl>N>^о=SPd8> .&?>1y==BEOgA>tþI>Ykk\e=?fD>.>̼0=fʽuL=I>gQIL>ê׺Rz=N>롵w~>7>h6)>>֡ˡ;aRΡf?$(?Gډ>5?{žR2>\> hF+> ?::Sl"g?6?xQl>5?^о=>QP7>< ?6}9oTGg??gD>5?{ž >3>7`F?ɲ>о;ti\9n?+?Gډ>x?^ھ '<> <>Zp>!>7ɾ];fk n?H?xQl>x?1y==BE>ogfgA>>ƾ[9l)o??gD>x?^о>=b=P ?8>[o1b;Qzv?-?Gډ> ?1=rD>1=gQ>,A>uP;ı:zt&w?}n?xQl> ?̼0=f=uNJ>fG>{K8&zIw? ?w~w~G #"!|T6ɣR?^hy>>;?8?3=žjϲMFi?оw9>>;?z?G RϾ98 YPz?Gi \9[>>;? ?33=ž6ϲMF S?⺱ >>D?8?[<[<پ껾黾ZRk?iɾb<>k>D?z?D澯BAľ҂g۠z?{yUPB,]>>D? ? GRϾJ aB=PT?!T >$>ZN?8?DfþIt"gMk??{Ǿl9=>>ZN?z?>ʽ>ʽ 0HPuz?:ZM]>]>ZN? ?w~>w~G !>#"|T6 wR?c;&?P>>;?~>>3=ž?jϲMFҷS?qa:?O>>D?~> >GRϾM ?~aB=PWT?&:`T?>$>ZN?~>33>=ž6ϲ>MFi?߳;>!>>;?">[<>[<پ>껾ZNk? : >\>k>D?">D>Y>Iy"gXk?%A:z>@>>ZN?">G= RϾu8> VPz?Th;-[>A>>;?N>=DBA>ľ͂gˠz?:P>G>>D?N>>=>ʽ .H>Pugz?9$M>>]>ZN?N>7>w~>롵>)>h6 R?wS?P>$(?D'v?~>3> >{žɲ>?9`Fi?&{ >!>+?D'v?">a=>^о8> ?Pwz?Й [>A>-?D'v?N>\>R2>{ž ?+> hFBS??O>6?Nl?~> <> '<>^ھ>z>Zhk?Go.>\>H?Nl?">1==rD>1羫,A>Z>gmz?, xP>G>}n?Nl?N>>=^о ?b8>SP?ub?~>=BE>y=1t>A>Ogk?lI>@>?ub?">f=0=̼_QI>L=I>uRz? ׺L>>7w~>롵)>h6aR?̡;֡>$(?D'v?7?\R2>{ž +> hFS?<: >6?Nl?7?=^о c8>TP?ub?8?3 >{žɲ?9`Fxi?;оw9>+?D'v?z? < '<>^ھz>Zfk?];7ɾb<>H?Nl?z?=BEy=1tþA>Ogtk?m:ƾl9=>?ub?z?a>^о8 ?PSz?:7b;o[9[>-?D'v? ?1½=rD>1羺,A]>gz?⿱:uPB,]>}n?Nl? ?fʽ0=̼pQIN=I>uz?7:9A@M]>z}#m4?jV>=N> ?o v?d?5>9< ? ?n+?Z>h=9< ? ?||55m::m:̒?>b'? ?pG!Ӿ ף2C )TS$? ?LH ѯ|'ǾkT= ̒?1>h? ?mν"Pzi>ڼ}̒?= ? ?x">|_?6< ? ?& |?3>_?6< ? ??e\*?V?j< ? ?pm= #"P>z+mD x?jV>=N> ?31? ף?U]z?B>x?X?ċ>31? ף?u2&7?>?y?X?ċ>31? ף?/$x{>B`?y?X?ċ>31? ף?*m>(yB`?y?X?ċ> >m 5z4?Q;Q;Tq9??ċ>򏾏b>42T?;H;Pq=C?4'v?ċ>{H\>ƾwk?=R ϽK>GN~z?Rk;>.=}{qf?ub?ċ>31? ף?LD;?f.t>x?X?ċ>^>^^:?:; 4?L˺75?b>>2>R(>R(uſ?ſC "?z =E?p>>2;ډ>f>f9.)*?)*iN>|мFf?>Ĕ>2Ql>>X)2?)2 .5o>|`x?U>>2D>|>| #35?577?jV>>2>R(>R(u>ſ?ſC >awlT]I??>@=^>^^>:?:;?;5_ۺ4??>f>f9.>)*?)*i>#}b b?k?Ĕ>=>X=)2?)2 .5> p@PR==>g>=>ƹ??ƹ?4`cú55??/?>뱞>@>v>?m?>QF}K??m2?>@=9>é>\.>"*?&*?Gˮ>A澝ud?k?6?>==>DZ>3=g02?$2?H5>z?x? ?~8?>R= >>m 5?z4?0Q0Q;T?jV>9?>>뱞>@>v?m??S*c< L?p>m2?>;ډ>=>g>=⓾ƹ??ƹg/5?ȩa4?b>/?>>9>é>\."*?&*?@ˮ>&6?>Ql>=>DZ>3j02?z$2?E58u>}n;Sx?U>~8?>D>^>^^>:?:;?;5_ۺ4??> :>>R(>uR(>?m ?;4W:5??(e>>>u>R(R(>X >˿?RIKZ;?$?> :>Rډ>9.>ff>j>)*)*?b<ό>N,?Ĕ> :>Ql>X=>-5>)2)2?`xl6q>v5?> :>D>u3||>55?B2;?2;??> :>>f>9.f>)*?z)*?74ū9 5??)>>>>X>1?a<1?58A5??>N>>> >5?*5?5ϑ>85??:?>>uR(R(>C ſſ?EJ"}Z?> :>=^^^>;::?4^˺75_?> :>49.ff>c)*)*?cf8<޾8R?Ĕ> :>`=X>-5)2)2?x!z<mI?> :>S==⓾g>=>ƹ?ƹ?g/5Ʃb4_?/?b'?4v@>뱞>m??)LXs.f}Z?m2?b'?=\.é>9>Gˮ&*?"*?6dHP8R?6?b'?`=3󴽮DZ>=>I5$2?g02?sxvI?~8?b'?S=u3> >z4?m 5?Ѻ:??9?b'?>v>@>뱞>>m??K6<?$?m2?b'?Rډ>뱞>u>뱞>?O6>?"5f.:4??kC'?:?>=>g>=>ƹ??ƹ?4`cú55??/?b'?>9>R->9>$*? ˮ>$*? 59Q4?? ?j?>=>6==>292?

(92?538H5??r? ?>\.>é>9>Gˮ>&*?"*?dK N,?6?b'?Ql>3=DZ>=>M5>~$2?g02?oXxy;x>v5?~8?b'?D>^^^>;::?4^˺75_?>3b'?R(uR(>ſC ſ?5`:.4_?(e>̋=b'?R(R(u>˿X > "^ =ENd?>35?ff9.>)*)*q>N߾c}мFfBl?Ĕ>3x?X=)2)2-5> oa`xDtu?>3 ?||55m::m:̒?>3>f9.f>)*i)*? 5b59;4_?)>u=b'?X>1a<1?>5/ 85_?>}Q=b'? .>5*5?5 >85_?:?>b'?R(R(uſſC g?nP]I`=>2>^^^::;;5?ECۺ 4 =>2&:>ff9.)*)*i#>b b=Ĕ>2.>X)2)2.5 p>@P2N>||55m::m:q>3>G!Ӿp #3)TCXF:qh>̋=>LHz%3kn'Ǿ 83q>t=>pmν #3pzgCTݰt:q>|Q=>31\G滆oìu::Xq:?>>=⓾g>=⓾ƹ?ƹ4?Pú55 =/?>&:>뱞@>vm??SF~K`=m2?>>9é>\."*&*?Gˮ?>'ud=6?>.>=DZ>3h02$2?M5z>×?x"=~8?>N> >m 5z4?Q;Q;Tq9?>>뱞@>v>m?>*c< LPd?m2?>4?뱞u>뱞>e6>?4ܚ:"5_?kC'?Gډ>b'?=⓾g>=>ƹ?ƹ?g/5Ʃb4_?/?>b'?9R->9>$*ˮ>$*?U4 9 5_? ?xQl>b'?=6==>.92H3>.92?C5$85_?r?gD>b'?9é>\.>"*&*?Gˮ> F&x?=DZ>3=h02$2?M5>8um;RxDtu?~8?> ? >m 5z4?Q;Q;T̒?9?>>ӾGy>4ETV?: I:̒?-?Gډ>>pf&H>k>̒? ?xQl>>{h=zCM>E(:B/̒?9?gD>>^^^::;;5?ECۺ 4 =>*:1?b'?R(uR(ſC ſ.4?n:5 =(e>;?b'?uR(R(X ˿PI?[\;;>>*:1?8?9.ffq)*)*b?D<֌̜1>Ĕ>*:1?z?X-5)2)2`x?*6qzcV>>*:1? ?`e||55?L2;M2~>>*:1?>f9.f)*i)*:4??9 5 =)>D?b'?Xy1Q$?y1n5?49x5 =>ZN?b'? +g 5t#55?r>85 =:?X?b'?u>R(R(C >ſſE?PJ"??>>*:1?~>R(>uR(?m 5?`:<4?b>(e>;?&:>^>^^:?:; 4?L˺75?b>>*:1?&:>f>9.f)*?z)* 5?984?b>)>D?&:>>X{1?$?|1|5?wo69j5?b>>ZN?&:> >g 5?t#55?.=85?b>:?X?&:>9.>ffi>)*)*cf?8<>@>Ĕ>*:1?">X=.5>)2)2x?|"z<m>竓>>*:1?N>=>g>=⓾ƹ??ƹg/5?ȩa4?b>/??&:>뱞>u>뱞?O6>4?.˚:"5?b>kC'?D'v?&:>v>@>뱞>m?)L?Ys-f??>m2??~>\.>é>9@ˮ>&*?"*8d?GP>@>6??">3=DZ>=>5>{$2?k02sx?v>髓>~8??N>(> z4?m 5?6Ѻ/Ѻ~>9??>9>R->9$*? ˮ>$*\4?9 5?b> ?Nl?&:>=>6==*2?5>*25?G9:5?b>r?ub?&:>v@>뱞m?K?6<;>m2??7?뱞u>뱞e6>"5?Tݚ:4 =kC'?D'v?b'?=⓾g>=⓾ƹ?ƹ4?Pú55 =/??b'?9R->9$*ˮ>$* 5?9U4 = ?Nl?b'?=6==*25>*295?t{ 95 =r?ub?b'?\.é>9:ˮ&*?"*d? <z̜1>6??z?3󴽮DZ>=>5$2?h02oXx?hy;xzcV>~8?? ????Ҡ@@Capsule &???mmddlml0/0//011kkl1kk.lkkcdcbcbb..-bbcbcdcdgdggfffeee"""!!!   %%$%$#$##&&&'''(jj(h(hijiihh+hihiji++*jmjmmll*-*)-,),),y yppxyxHGHGG22HI23IwwxIw334wFxwwopo4non4nFFEn7nonopo7766655858989:9::qq=qrrq=qqr<=srpsps<;<rrs;;>ss>>???@vvvuuut@t@tADADEDBAEBCBCCxyxyyJJKJKLKLLzzzz}O}z{{z}{O} NO {{||{|}~ }~~SSST|||~TTUUU  ~ ~       N MNR     MM        RRQ   Q  QP PPVVWV"" W"  XW%"% !X!X"# %#"#! %!#$!$!%&#&%&$#[&$&'$'&'$[.Z[.'''.  /./ 0 /0+./Z.+YZ+33 0 6639996+/,,/0Y+((+,Y((()(,)),0--0),-)*)-**-*-9**98889678778657855637475445324522324142112111<<<;<;<?;?<?:;::;>?:>;?B>B?B=::=>=>AB=A>BAB@==@A@A@A@@]]]]\\]ZZ\]ZWZWW\[[[\ZYYZW[\YVWYWVV[X[YXXYVXUVXVUXUUUU\C\CC]\FCFCD]FDCD^]IFIIDE^E^FGDIGFGEDJIIJGJEGHEJHGHEKJJKHKaHKHKKaR`aRR `RO_`ORSSORST STT _OL_LLOSPPSTLOPQTPTQQLMLPMMPQMNQMQNMNNNN  gg gjgjghjhghmj mhiijkhmkjkih m iklilimnknmnlk``n`lnolonol_`_vv`c_c`ocoov^_^^_bc^b_a^^ab acfbfcf da  daebbefadefef d  deed  wvw  # x wxsvwvss{#{#" x ~~{~swttwxsppstpppqptqqtxuuxqtuqrqurrururr~%~}}}~{%|}|%|$}{z|}zz{"z"!$|y|zyyz!$yy!y & (0PxI><5=?N4&Ls45޿>=>J?I>87;5?ں4 ?=>t?>I>;?9<?;5ں4?Y=ؑ=>J?>I:?7?U4?;l45?6`?ؑ=>t?I?><:?9?t45~WL4޿>mc?c>?I?<;?94?{ں;5 ?mc?c>}J?>I?>;?9?;?4Kں;5?Y=mc??>I?<?9?;o45?:R4?6`?mc?}J?&3n3ꧯ:*V>_[Lz?<}>:>A-?V>?J?|>Tcz>2?=`-? ?2O=8?8c :???=!? =?WP=*?|ش$@???ۼ> =? ?2?O=ݐ8!S7~???\c? = ??O=?ն4`t>??=bv=&3gZ>55?WO;O;\t>.=>J?>gZn35?5~M: `?.=>A-?&3&Z55W?O;yO$@?.=>t?gZn355M::hL?.=>A-?iZ?255?O;O;W?"k?c>`-?iZ?5?5?ѺѺ$@?"k?=}J?>iZ?25?5?į˯;X?o?"k?`-?iZ?>5?5?nѺk:\t>"k?=??4 8=45?R65 ???? = ?>48="4?5m;65޿>??=? =>?4?48=45?>65?6`???%> => ?>!4?8=4?5?65?Y=??F? =ƛvSO5> ?n Lhc<>D=>J?V.UT>)*)*?CdV%<w>=n>J?Ӵ+YW>+5)2)2?x~ ;Tɨ=x@>J?˛v>SO5> >?K~jGh?f>D=F>J?`.>UT>>)*)*?dﻨ>`1>=>J?!Ӵ=+YW>+5>)2)2?>xC)z>V>Tɨ=>J?5>SOɛv>? >8]C?S>U^.>)*?)*>hL澯@ %+YӴ=)2?)2,5>%x;Wx? =Tɨ=>k4?5>YeOśv?} m?xq$L?%Le?D=>> ?S>i(UY.)*?)*>_d?!l?=>lE?U>*Y Ӵ22?224sx>L#Yx?"v?Tɨ=>}&?˛v>XeO3 >p L?3ic<?![?D=F>t?`.>i(UR>)*)*=d?GW%<>S?=>t?!Ӵ=*YU ,5>)2)2x? ; =u>KJ?Tɨ=>t?ƛvYeO3 K?jGf6(%?D=>t?V.i(UR)*)* d?Cﻛ4,?=n>t?Ӵ*YU ,5)2)2>x?JE*z5?Tɨ=x@>t?2YeOśv ?8> ?Ti(UY.)*)*oL>fA lE?W*Y Ӵ22224,x>8;Vx-' ?Tɨ=>}&?2SOɛv> >mQxq$L>D=>]C?TU^.>)*)*>G]dD>=>%v~rx>Tɨ=>k4?4SO?˛v>? >icnf?c>^?TU?a.>)*)*?ä>W%<h?c>,?U/Y?Ӵ=)2)2?+5>=u;x>j?c>d&?4SO?Ǜv? f?rjGK?nf?c>DC?TU?[.)*)*?ä>d_?h?c> .A>x-' ?j?c>4?ƛvSO?4~ ?K?8<6(%?nf?.G>}J?].U?S)*?)*`d?< }J?Ӵ/Y?W,5)2?)2Wx?* ;x5?j?d>}J?Λv>SO?4 >?$L?yqm?![?nf?o<}J?b.>U?S>)*?)*d?_>S?h?c=}J?Ӵ=/Y?W+5>)2?)2}rx?칻v>KJ?j?=}J?6>SO?Ǜv??x ?fc

U?[.)*?)*?>W%/Y? Ӵ)2?)2?,5v>;hsx?"v?j?4?6>SO?˛v>??x >]jGK?<=nf?^?W>U?a.>)*?)*?>d?L=h?,?Y>/Y?Ӵ=)2?)2?,5>)z>H>x? =j?d&?Λv>SO?7> >??K8<?f>nf?o<?b.>U?W>>)*?)*?ad&< `1>h?c=?Ӵ=/Y?Y>+5>)2?)2?Wx^;x>V>j?=?ƛvSO?7> ??$Lvq m>nf?.G>?].U?W>¤)*?)*?dH^w>h?*>?Ӵ/Y?Y>+5)2?)2?}rx)ﹻv>j?d>?4=3 Q4?2F:5 ?[ >?R<>T+S)*)*;4?Ѓ9 5 ?P->?>W!W)2+5)25?95 ? ?W>?>4=?4 >5?3:T4 ?i]??)* 5?a964 ?,T??^m=Yd?W(2N5>(2,5?Y95 ?90J??p=4=?7> >?U4M:5޿>i]?=?)*ä>)*??4Ep9 5޿>,T?=?^m=Yd?Y>)2+5>)2?5 9 5޿>90J?=?p=4=5> ?5P9:R4޿>[ >=?R<>Tص+W>)*)*? 5s944޿>P->=?>WbY>)2+5)2?5y95޿> ?W>=?>5>=3?y 5?q=:T4?6`?[ >%>R<>T>+S)*?)* 5?t9;4?6`?P->%>>X>!W)2? ,5)2 5?$95?6`? ?W>%>>6>=?4?| >P4?E:5?6`?i]?%>ٵ+?S)*?>)*34?x9 5?6`?,T?%>^m=Y>d?W(2?N5>(25?905?6`?90J?%>p=5>=5>? ?S47:5?Y=[ >F?R<>T>ص+W>)*?)*?64l9 5?Y=P->F?>X>bY>)2?+5)2?5S95?Y= ?W>F?>6>=?7>? >?5F:T4?Y=i]?F?ٵ+?W>)*?>)*? 5Av9>4?Y=,T?F?^m=Y>d?Y>)2?+5>)2?5I 95?Y=90J?F?p=&3iя>E)TB?;J.<\t>_M=>]C?&3u{H>k'> 5<>%f/}C<c>Tt>O<>k4?я>in3A? *Tf1:nZR?_M=F>A-?wH>uak3C$>k:v BqX?<>A-?^=u[} n3eL>z:ujHwi?O<>A-?&3iяF)TB?;.$@?_M=>> ?&3utHk'Ǿ?Y<5$@?<>lE?&34m}DνZzK|?K<1e$@?P<>}&?яin3A *TT1:lm/<?_M=>A-?yHuHp3B$Ǿk :"B=xq=?A-?;νu[} n3eLz:޻x=`݀?OA-?яi?2BH)T?4<5;0?*s?.G>`-?wHu?G2'Ǿk?`-?Nνx[}?2'kLz?*=n<.¼>|?d>`-?i?яF)T?B4?{4$@?*s?=DC?u?uHk?'Ǿ?48ּ??y?= ?|?=4?я>i?2B?F)T?Y<?o?*s?o<`-?|H>u?2'>k?ީq<?o?y?c=`-?K=x[}?2kL>z?Z1QF)T?B?*-<\t>*s?=^?u?{H>k?'>Yэ=\t>y?=,?x[}?S=z?"kL>|mUJ{>\t>|?=d&?!ӾGn3)TBmY: 98?$R==!?R<>;f?2ak3(k&ǾXA:7;º? >=!?>&n3zLS9 7"ƺ?P>=!?>$Ӿ?яBSg <=Hn? ӷ T$_??? ? =;f뾿?uHvkPC=qǾQ>pkw???? =?DνpwzB)L=MM>%:jz-Q???!? =$ӾG?2D)TB?:sF:?ub?=!?<=f?2?2k'>2jΠ?W?=!?^m='?2gzL>8䇸6?K?=!?p=$Ӿ ?я>S};=/H?n.7 TE>??'6? =;f ?{H>vkPC=q>Ǿ7.k~>??{/? = ?R=Uwz(K=M>M^(6za>??d(? =&3H$ӾBB)T?RF:5$@?$R=ۼ>R<>3P29f'Ǿk?Vu8$@? >ۼ>>3Lz?F!J8$@?P>ۼ>>я>?$ӾH? <=BS T?ӷn?X???0> =|H>?9fq>|C= vkk?K>P???i> =O=?ËM>'ML=vzz?P/M>uH???> =G?$ӾB?F)T?ZOF:_:$@?ub?ۼ><?2?9f'>k?֠$@?W?ۼ>^m='?3L> z?( $@?K?ۼ>p=я?$ӾH <=BS T?8n'???<> =wH?9fqǾC= vkk?* 8LǾ./???W> =Jν?ċMML=vzz?7?M7???)> =">Gn3)T?BY:2X):?o?R=\c?R<>9f>?2Ds3+k?&ǾA: צ8?o? >\c?>>&n3z?.L9\c?>!> ?я>S?d};=(H?n"Ʒ T?D=??N? =8f> ?{H>vk?*PC=p>Ǿz.k?=??#U? => ?R=Uwz?bK=M>M z?(=??@\? =!>G?2H)T?B?׺v;?ub?\c?<=f>?2?G2k?'>ZZk:?W?\c?^m=>,?2gz?L> 8 Acd9?"K?\c?p=!>?яFS? <=Hn? 8 T?g???%x? =8f>?uHvk?uC=qǾR> 8k?o???q? =>?Dνpwz?w)L=MM>=z?w???Ӄj? =&3G$>BD)T?XF::\t>$R==ir>3?2=f>'Ǿk?.\t> >=>3&> Lz?5!|\t>P>=>я ?$>0H};=S? T>@Ʒnnv>??opǾYPC=vk?0k(Ǿ>??c=bv=Iν ?>yMK=Wwz?z MZ>??=bv=G?$>B?H)T?IF:`t>ub?=7<?2?=f>'>k?_$8`t>W?=g='?>L>z?Q2!8`t>K?=TI=я> ?$>1H?j};=S? Tl{7n?>??.G>bv=|H> ?=f>p>OPC=vk?0kw7>F=>??*>bv=P= ?>yM>$K=Wwz?z&6M>3^>??d>bv=$Z$>"T6">5#25޿>h=>]C?3b`>#ϲMMFx?6Vy;x R>T=n>]C?>e$h=m>8Pq ?It<>>([=x@>]C?`b3>qOMF)ϲ>x 1V/>T=>%r黾Zp>55޿>C3=n>%BAڂg>SgC =x@>%=k P8>jIt0*>([=>k4? E`s5=ľڂg BA>uپ9Pg2>0=n>k4?nʽ`z|=/Iu/I>E//N:޿>Pk4? $>Z$>">T6">5E5?Y=h=F>]C? `>b3>?GMF$ϲ>j _m;9 V?=L=F>%e$h+>=r ?P8>goY8Fs?xQJ=([=F>k4?3>b`>&ϲ>DMF?: V_mj ?>T=>]C?<>2m<>u>Zp>545?Y=C3=>%`s5=>݂gAA>ᾚ:e?4=0=>k4?+>=c$h=m>8>Pv ?Fsrf>K>0[=>]C?@=as E>AA>܂g>eH@>4> =>%u.I><3>9;6?z><>k4? $>Z $">T6"5?45?6`?h=F>> ?3>^b `(ϲ>FMF>V?Z;w ?X?T=>> ?+>="6h:m8>Pr It?=<4>M?0[=>> ? `>`b3?GMF#ϲw ?W>V?_h?L=F>lE?<>~DmZp黾5?5?6`?C3=>lE?@= s EAA>܂gľg?lbR? =>lE?=m>#6h>R ?eP7>4Ի<#t?\s?([=F>}&? E>s&½ >kg?ŀ>?rݻg?wm?0=>}&?=znʽ,7I>uGP,0? ٻ?9?6`?p<>}&?$Z $"T6"5?^߲5 ?h=>> ?`^b3qOMF&ϲj ?`m;3 V?T=>lE?=m#6h>L hP7l>赺Fs ?([=>}&?3^b `!ϲNMFt6 V?`mj ;(?T=n>> ?lE? Es&½ ľhgR?U>7eq?0=n>}&?>#6h:m8Pn Fs?¬g93?([=x@>> ?&½ s EBAڂgľe?& w-? =x@>lE?nʽznʽ37IuG25?g4 ?P}&? $Z?$>"T6?">5K5޿>Լk?.G>^?`b?3>DMF?)ϲ>w >;?V/>o?.G>,?:mf$h?+>=s P?m8>Nr?.G>d&?3b?`>1ϲCMF??:Vx T>o?*>^?<2m?<>x黾Z?k>5y45޿>t?*>,? Ebs?8=ľڂg?AA>X۾J;]Og3>w?*>d&?%>f$h??m>u8P?u ?It>Nr?d>^?/½cs? E>AAڂg?>]g"tپ>w?d>,?wʽaz?=.Iu?.I>o2jl;y7޿>v{?d>d&? $Z? $"T6?"5?\5 ?Լk?.G>DC?3b?`.ϲDMF?8 V?cm;j ;(?o?*>DC?&>f$h?:ms8P?u Fs?'8f93?Nr?d>DC?`b?3DMF?*ϲj ?cm: V?o?.G> s P?m8`>>Gs ?Nr?.G>4? Ebs?)½ľڂg?AAZ>3غf?}w?*>4?xʽaz?pʽ.Iu?.I`5?Qj848?{?d>4?$>Z? $">T6?"5?/35?6`?Լk?ob?3?FMF?(ϲw ?;m>f$h?>s ?P?u8#>7b?`+ϲ>FMF?~2m?Z?j黾p4?ϫ9u5?6`?t?c= cs?)½>݂g?AAG>6;YSg?vm?w?c=4?+>=f$h?=mh8>P?r uCt?*z->M?Nr?=DC?5=bs? EAA>݂g?ľg?,U>`R?w?= u?.I +?{<[>?<^?`{?=4?$>Z?$>">T6?">5A45?Y=Լk?o<^?3>b?`>%ϲ>HMF?}?; VTdm;j ?>o?c=^?">=f$h?=m>e8>P?r ?Fs}8g>K>Nr?=^?`>b?3>?CMF?-ϲ>j am8 V?=o?o<,?<>2m?<>g>Z?p>T5K5?Y=t?c=,?7=bs? E>AA>܂g?>e !:D>4>-w?=,?@m>f$h?.>=u ?P?u8>f Fs?xQJ=Nr?ocs?8=>݂g?AA>>`(]e?4=w?c=d&?~=`z?=.I>u?.I>>5ӌ5?Y=v{?=d&?Ń?$>T6"">z/]R>(>'6?R<>BžC3>BMF+ϲ>oоaұ i5>={/?R<>4оF+>=P{ k8>\<z\">=d(?R<>Dž!,`>DMF*ϲ?o7S}>d^+>'6?>~Qھ@/<>Z}黾>wɾfDRk|>&>{/?>$.R17=؂gľAA>Pg1z>&">d(?>4о1=m>P_8z ?q[M$ٹTG>(V>'6?>$L E>ڂgAA>Ǿ "kk;>S>{/?>b=u\^Ik^I>JM&zc>Q>d(?>Ń? $T6""Ƽ?@;vR?(> ?R<>Dž,`DMF)ϲ?M:S˃?d^+> ?>4оC:mPa8w Z?M:&T0^?(V> ?>BžC3BMF+ϲ>׳; ig?=?R<>~Qھ{R/_:OkM?&>?>$] EڂgAAľ >%:$knv?S>?>4о\F>3PG 8Z9[>m;hz?=!?R<>$c1'½ogľ@̯P>nzs?&">!?>toʽ0u4`IIyOM>J1z0P?Q>!?>ƒ?? $T6">"~z?.^R?u^? ?ձig?a`??<4оF?>Py ?8/\> :z?a?!?~p?6S˃?j(U? ?^m=~Qھ@/?z黾p> G RkM?MV??^m=$/R1?'½ڂg>AAP>'7zs?7RW?!?^m=4о1? 7[?u{빹T0^?uJ? ?p=$L? Eþ>ޯ.knv?K??p=b?oʽuxI>TIRM> pz0P?K?!?p=ƒ??$>T6">">ʼ#<;vR>u^?'6?BMF8ϲ>~?<:S}>j(U?'6?^m=4о1?>m>Pg8>z ?Zi:$TG>uJ?'6?p=Bž C?3>@MF?5ϲ>о~ҳ;i5>a`?{/?<~Qھ@/?<>Z|>|>.ɾ:Ok|>MV?{/?^m=$L? E>ڂgAA>>Ǿ(:%k;>K?{/?p=4оF?.>=Px ?8>*[g;z\">a?d(?<$/R1?7=܂g>AA>P:ޠz>7RW?d(?^m=b?=uk^I>q^I>pNMe9Gzc>K?d(?p=$?ă""T6`R?}1{z0!'?(><>R<>3C>ž$ϲDMF#i?Աaоv.?=W>R<>>\F4о|8{ Pz?:*\57?=)>R<>`,>ž(ϲDMF7S?n,'?d^+><>><{R/}Qھy黾|黾ZRk?@sɾy/?&>W>>!½c1$AAľ܂gz?3PE7?(">)>>;mC4оw 8PT?)ٹo['?(V><>> E]$ľAAڂgmk? "Ǿ/?S>W>>nʽtj^Iy^Iuz?JM7?Q>)>> $>?ƒ">"T6vR?EA;?(Y?(>0>R<>`>,>ž?3ϲCMFS?J:?X?d^+>0>>=m>C4оy ?8P#T?:Z?X?(V>0>>3>C>ž8ϲ>@MFi?rճ;>rQ?=i>R<><>{R/}Qھ>黾ZNk?:D>i>> E>]$>AA؂g%k?8:>^P?S>i>>0>=[F4о8>{ Pz?)g;*[>I?=>R<>;=c1$AA>ľڂgޠz?q:P>H?&">>>=tu^I>q^IuFz?蔽9tNM>tH?Q>>>$>??ă">">T6aR?0yz?(Y?u^?0><3> C?>ž*ϲ>?DMF"i?Աg>rQ?a`?i>=F?4о8>v ?Pz?"89\>I?a?><`>&,?>ž?0ϲ>DMF7S?o?X?j(U?0>^m=<>@/?{Qھx>}>Z Rk?Eo>^m=5=/R1?$AA>>܂gz?N7P>H?7RW?>^m=@m>1?4о ?9>;PT?y7[?X?uJ?0>p= E>L?$>dA>\P?K?i>p=x=b?]I>uI>uz?;HM>tH?K?>p= $??ă"">T6vR?\=;0!'?u^?<><`&,?>žz5ϲ>GMFS?D:,'?j(U?<>^m=;m1?4о 9>=P]T?:BZ'?uJ?<>p=3 C?>ž0ϲ?DMF i?dس;оv.?a`?W><<@/?{Qھ~黾>ZOk?:3ɾy/?MV?W>^m= EL?$þdA>9gMk?|:EǾ/?K?W>p=&>F?4о8t ?Pz?6g;*[57?a?)><+½/R1?$AA>ڂgޠz?:#PE7?7RW?)>^m=xʽb?]IyI>uSz?Ҽ9|MM7?K?)>p=ă>? $T6?""rz?0fR? Eg?(>%x?R<>=>C3IMF?}"ϲ\>4Ա$i?dn?=q?R<>4>\F>3P?C 8v]>^:]y? Yw?=Ӄj?R<>=>,`LMF?$ϲxe?=S?g?d^+>%x?>{Q>{R/hBRk?o?&>q?>$>c1'½og?ľE@'Q>]:Rz?2w?&">Ӄj?>4>C:mP?8q j[?+ٹT?g?(V>%x?>$>] Eׂg?AAľ> "ik?zo?S>q?>>toʽ,u?c`IIiM>e:z?w?Q>Ӄj?>ă>?$>T6?"">#@;vR?h=(>N?R<>=>!,`>JMF?#ϲy?MO:S?=d^+>N?>4>1=m>P?8r ?Z:)T?=(V>N?>=>C3>HMF?}%ϲ>оֳ;#i?@==#U?R<>{Q>@/<>Z?z黾>6ɾ:Ok?#=&>#U?>$>L E>ׂg?AA>Ǿc#:"k?t=S>#U?>4>F+>=P?w 8>+[g;z? ==@\?R<>$>.R17=؂g?ľAA>=P4:ܠz?=&">@\?>>b=u?^Iy^I>yNM9Fz?P=Q>@\?>ǃ>??$>T6?">">nz0iR?d=u^?N?<=>C?3>IMF?z?&ϲ>]оtձ$i?@=a`?#U?<4>F?+>=P?r ?8>K\9z? =a?@\?<=>&,?`>JMF?%ϲ>w?g.@/?<>Z?}>z>qɾBF Rk?#=MV?#U?^m=$>/R1?7=؂g?>AA>Pn3z?=7RW?@\?^m=4>1?>m>P?y8>r ?k[/ ٹT?=uJ?N?p=$>L? E>ڂg?AA>>Ǿ "lk?t=K?#U?p=>b?=u?q^I>^I>,JM~z?P=K?@\?p=ǃ>?? $ T6?">"?=;vR? Eg?u^?%x?<=>&,?`JMF?)ϲ>v?D>:S?g?j(U?%x?^m=4>1? ?Z?j:_T?g?uJ?%x?p==>C?3LMF?x?#ϲ>'Գ;"i?dn?a`?q?<{Q>@/?v黾+><:Ok?o?MV?q?^m=$>L? E:g?dA>þE>L:Mk?zo?K?q?p=4>F?>P?q ?8F4\>v.;z? Yw?a?Ӄj?<$>/R1?'½ׂg?>AA./Q>f7z?2w?7RW?Ӄj?^m=>b?oʽu?xI>UI7hM>`Оz?w?K?Ӄj?p=$>?Ń>">"T6?^R'/~z?Re>(>.G>ir>3>CB>"ϲ>FMF?#iӱb>j9>=*>ir>0>=F4>u8>y P?z;\>[>=d>ir>`>!,B>}?ϲIMF?:Sk?Fi>d^+>.G>><>@/}Q>~>s黾Z?Rk^Bw>><>&>*>>;=.R1$>AA>ľ؂g?z9˨P>]>&">d>>=m>14>t ?8P?T@ٹm[?>(V>.G>> E>L$>>AA؂g?jk ">=>S>*>>=b>s^I>q^Iu?zJM>7^>Q>d>>$?ă>""T6?vRe>;ļ>(>o`!,B>z"ϲIMF?SQ:>d^+>o<>;m14>s 8P?(T:Zt>(V>o<>3CB>ϲHMF?%iֳ;о+>=c=ir><@/}Q>u黾u黾Z?Ok:'ɾ>&>c=> EL$>ľAA؂g?%kS:Ǿ>S>c=>>F4>q8y P?zg;*[ޙ>==ir>!½-R1$>AAľڂg?ޠz7:)P>(">=>nʽb>k^Iy^Iu?Gzѻ9gNMX>Q>=> $??Ń>"">T6?dRc.vz>u^?o<7<3 C?B>+ϲ~?FMF?!iaӱjо+>a`?c=7<%>F?4>8s ?P?zW:3\ޙ>a?=7<`&,?B>z/ϲ>HMF?:SUk>j(U?o<g=<@/?}Q>z黾|>Z? Rk Ioɾ>MV?c=g=*½/R1?$>AA>؂g?z{4̨P>7RW?=g=;m1?4>u o8>P?Tٹm[t>uJ?oľAA>ڂg?kkR"Ǿ>K?c=TI=wʽb?>m^Ij^I>u?zvJMX>K?=TI=$>??Ń>">">T6?vR;;Ƽ?Re>u^?.G>7<`>&,?B>{?+ϲ>HMF?S;:?Di>j(U?.G>g=@m>1?4>w ?l8>P?&T:Z?>uJ?.G>TI=3> C?B>%ϲ>}?HMF?!iҳ;>h9>a`?*>7<<>@/?}Q>s>w>Z?OkS:$>@<>MV?*>g= E>L?$>>AA>ڂg?&k2$:>=>K?*>TI=->=F?4>}8>q ?P?z+h;*[>[>a?d>7<7=/R1?$>AA>>ڂg?ޠz7:$P>]>7RW?d>g=y=b?>m^I>j^I>u?Gz9lNM>7^>K?d>TI= n3O8񚜺?P>=!?T?>r2WO?޶մ4$@?P>ۼ>T?>? 2?@Ox8JDW:?o?P>\c?T?>r2 ?O?]޶'\t>P>=iu>"47845?͹65 ?P>?T?> >4;84?565޿>P>=?T?>>&4?S845?1 k65?6`?P>%>T?>> >!4?Y84?5 65?Y=P>F?T?>!ӾяS[};+Hn?B,7 T$_?P> ?T?>8f뾿tHvkOCqǾ>[7.kw?P>?T?>Dν;xzSKzMM>z-Q?P>!?T?>!Ӿ я>SZ};-H?nVƷ TE>P>'6?T?>8f {H>vkOCq>Ǿx-k~>P>{/?T?> R=UwzKM>MP za>P>d(?T?>я>$Ӿ.H?};S T?27n?X?N>0>T?>xH>9fp>VPCvk/k?7>P?P>i>T?>Y=M>vKUwzz?#V6M>uH?P>>T?>я$Ӿ-H};S T?JƷn'?P><>T?>wH9fpǾVPCvk0k?lǾ./?P>W>T?>@νMyKUwzz?o M7?P>)>T?>"> я>S?};(H?n@ 7 T?D=P>N?T?>9f> {H>~vk?PCq>Ǿ7-k?=P>#U?T?>> R=Uwz?KM>Ml6z? =P>@\?T?>">яS?};'Hn?1Ʒ T?g?P>%x?T?>9f>tH~vk?PCqǾ>s-k?o?P>q?T?>>Dν;xz?K)zM5M>(:z?w?P>Ӄj?T?>я $>/H ~;S? T!7nnv>P>owH =f>pǾPCvk?0kt7Ǿ>P>c=iu>@ν >uMVKWwz?z6MZ>P>=iu>я> $>/H?~;S? T;%Ʒn?>N>.G>iu>xH> =f>p>PCvk?/k>F=>P>*>iu>Y= >}M>WKWwz?z M>3^>P>d>iu>&3n3ꧯ:t|Fh9)><}>:>A-?&3n3ꧯ: :L?<}>:>A-?>gZn35?5~M: `?o?.=>A-?я>in3A? *Tf1:nZR?o?_M=F>A-?wH>uak3C$>k:v BqX?o?<>A-?^=u[} n3eL>z:ujHwi?o?O<>A-?&3n3ꧯ:Z~#:yw??tn@?:>A-?&3n3ꧯ:ݶ|?bk`ۈ#tn@?:>A-?&3n3ꧯ:0?tQtn@?:>A-?V>?J?~|>x?Tcz>2?=`-?V>?J?S?~M -??-?=`-?V>?J?*}? -??-?=`-?V>?J?NzNz?? -??-?=`-?>iZ?25?5?į˯;X?"k?`-?я>i?2B?F)T?Y<?*s?o<`-?|H>u?2'>k?ީq<?y?c=`-?K=x[}?2kL>z?Z1Q?J?S?Tcz>2?=`-?I><5=?N4&Ls45޿>==??2SOɛv> >mQxq$L>D='6??TU^.>)*)*>G]dD>={/??W+YӴ=)2)2,5>v~rx>Tɨ=d(??gZn355M::hL?.==!??2YeOśv ?887;5?ں4 ?=??Ti(UY.)*)*oL>fA 8;Vx-' ?Tɨ=!??I?<;?94?{ں;5 ?mc??x:4SO?Ǜv? f?rjGK?nf? ?x:TU?[.)*)*?ä>d_?h??x:U/Y? Ӵ)2)2?+5*z>.A>x-' ?j?!?x:iZ?255?O;O;W?"k?=!?x:4SO?˛v>? >icnf?'6?x:I?><:?9?t45~WL4޿>mc?=?x:TU?a.>)*)*?ä>W%<h?{/?x:U/Y?Ӵ=)2)2?+5>=u;x>j?d(?x:I>87;5?ں4 ?=>?4=3 Q4?2F:5 ?[ >>R<>ƛvYeO3 K?jGf6(%?D=<>?V.i(UR)*)* d?Cﻛ4,?=W>?Ӵ*YU ,5)2)2>x?JE*z5?Tɨ=)>?&3&Z55W?O;yO$@?.=ۼ>?T+S)*)*;4?Ѓ9 5 ?P->>>W!W)2+5)25?95 ? ?W>>>"47845?͹65 ?P>>T?>˛v>XeO3 >p L?3ic<?![?D=0>?>I:?7?U4?;l45?6`?ؑ=%>?`.>i(UR>)*)*=d?GW%<>S?=i>?!Ӵ=*YU ,5>)2)2x? ; =u>KJ?Tɨ=>?>I?<?9?;o45?:R4?6`?mc?%>x:Λv>SO?4 >?$L?yqm?![?nf?0>x:b.>U?S>)*?)*d?_>S?h?i>x:Ӵ=/Y?W+5>)2?)2}rx?칻v>KJ?j?>x:iZ?5?5?ѺѺ$@?"k?ۼ>x:ƛvSO?4~ ?K?8<6(%?nf?<>x:4=?4 >5?3:T4 ?i]?>x:Tٵ+?S)*Ȥ>)* 5?a964 ?,T?>^m=Yd?W(2N5>(2,5?Y95 ?90J?>p=?4 8=45?R65 ???> =].U?S)*?)*`d?< x:Ӵ/Y?W,5)2?)2Wx?* ;x5?j?)>x:>I:?7?U4?;l45?6`?ؑ=}??5>=3?y 5?q=:T4?6`?[ >}?R<>5>YeOśv?} m?xq$L?%Le?D=%x??S>i(UY.)*?)*>_d?!l?=q??U>*Y Ӵ22?224sx>L#Yx?"v?Tɨ=Ӄj??>gZn35?5~M: `?o?.=\c??T>+S)*?)* 5?t9;4?6`?P->}?>X>!W)2? ,5)2 5?$95?6`? ?W>}?>>&4?S845?1 k65?6`?P>}?T?>5>SOɛv>? >8I>;?9<?;5ں4?Y=ؑ=F??S>U^.>)*?)*>hL澯@ +YӴ=)2?)2,5>%x;Wx? =Tɨ=@\??>gZn35?5~M: `?.=\c??">Gn3)T?BY:2X):?R=\c?R<>9f>?2Ds3+k?&ǾA: צ8? >\c?>>&n3z?.L9\c?>? 2?@Ox8JDW:?P>\c?T?>>I?>;?9?;?4Kں;5?Y=mc?F?x:6>SO?˛v>??x >]jGK?<=nf?N?x:W>U?a.>)*?)*?>d?L=h?#U?x:Y>/Y?Ӵ=)2?)2?,5>)z>H>x? =j?@\?x:>iZ?25?5?į˯;X?"k?\c?x:6>SO?Ǜv??x ?fc

=?4?| >P4?E:5?6`?i]?}?<>I?<?9?;o45?:R4?6`?mc?}?x:T>ٵ+?S)*?>)*34?x9 5?6`?,T?}?^m=Y>d?W(2?N5>(25?905?6`?90J?}?p=>?4?48=45?>65?6`???}? =W>U?[.)*?)*?>W%/Y? Ӵ)2?)2?,5v>;hsx?"v?j?Ӄj?x:>iZ?25?5?į˯;X?o?"k?\c?x:!>G?2H)T?B?׺v;?o?ub?\c?<=f>?2?G2k?'>ZZk:?o?W?\c?^m=>,?2gz?L> 8 Acd9?o?"K?\c?p=? ?2?O=ݐ8!S7~?o???\c? =>I>;?9<?;5ں4?Y=ؑ=c>?5>=5>? ?S47:5?Y=[ >c>ir>˛v>SO5> >?K~jGh?f>D=.G>?`.>UT>>)*)*?dﻨ>`1>=*>?!Ӵ=+YW>+5>)2)2?>xC)z>V>Tɨ=d>?&3gZ>55?WO;O;\t>.==?T>ص+W>)*?)*?64l9 5?Y=P->c>>X>bY>)2?+5)2?5S95?Y= ?W>c>>> >!4?Y84?5 65?Y=P>c>iu>ƛvSO5> ?n Lhc<>D=o<?4=5> ?5P9:R4޿>[ >ir>I><5=?N4&Ls45޿>=?Tص+W>)*)*? 5s944޿>P->>WbY>)2+5)2?5y95޿> ?W>> >4;84?565޿>P>iu>V.UT>)*)*?CdV%<w>=c=?Ӵ+YW>+5)2)2?x~ ;Tɨ==?I?><:?9?t45~WL4޿>mc?4=?7> >?U4M:5޿>i]?7<ƛvSO?7> ??$Lvq m>nf?o<].U?W>¤)*?)*?dH^w>h?c=Ӵ/Y?Y>+5)2?)2?}rx)ﹻv>j?=iZ?>5?5?nѺk:\t>"k?=Tٵ+?W>)*ä>)*??4Ep9 5޿>,T?g=Yd?Y>)2+5>)2?5 9 5޿>90J?TI= ?>48="4?5m;65޿>??bv=Λv>SO?7> >??K8<?f>nf?.G>6>=?7>? >?5F:T4?Y=i]?c>7<>I?>;?9?;?4Kں;5?Y=mc?c>T>ٵ+?W>)*?>)*? 5Av9>4?Y=,T?c>g=Y>d?Y>)2?+5>)2?5I 95?Y=90J?c>TI=> ?>!4?8=4?5?65?Y=??c>bv=b.>U?W>>)*?)*?ad&< `1>h?*>Ӵ=/Y?Y>+5>)2?)2?Wx^;x>V>j?d>???@?2>3?JK>J?KVWJVKVbWVabambJUVUaV>IJIUJ2=>=I>&121=2almlxmlwxU`a`lakwl`klkvwITUT`U=HIHTI_k`T_`jvk_jkjuvS_THST<H=1<=^j_S^_iuj^ijituGSH<GHR^SGRS]i^R]^hti]hihstgshgrs\h]\ghQ]RQ\]FRGFQR;G<;FGfrgfqr[g\[fgP\QP[\EQFEPQeqfepqZf[ZefO[POZ[dpedopYeZYdecodcnoXcdXdYMXYNYZMYNNZOBMNBNCCNO7BCCODDOPDPE7C88CD,789DE8D9,8--89!,-9E::EF:F;!-"!"-9..9:"-./:;.:/" ".##./"#/;00;<0<1  # #/$$/0#$%01$0%%1&%&    $$%%  y (@@?@@?=@@@?L>?@?>?@?>@??@??@?333?@@?L?@?gff?@??@̤@?=@̤@?==@@̤@?L>=?̤@?>=?̤@?>=̤@??=̤@??=̤@?333?=@̤@?L?=̤@?gff?=̤@??=@@@?L>@@@?=L>@@@@?L>L>?@@?>L>?@@?>L>@@??L>@@??L>@@?333?L>@@@?L?L>@@?gff?L>@@??L>@L??>@L??=>@@L??L>>?L??>>?L??>>L???>L???>L??333?>@L??L?>L??gff?>L???>@̣??>@̣??=>@@̣??L>>?̣??>>?̣??>>̣???>̣???>̣??333?>@̣??L?>̣??gff?>̣???>@??@?=?@@?L>???>???>????????333??@?L???gff?????@#??@#?=?@@#?L>??#?>??#?>?#???#???#?333??@#?L??#?gff??#???@L$?333?@L$?=333?@@L$?L>333??L$?>333??L$?>333?L$??333?L$??333?L$?333?333?@L$?L?333?L$?gff?333?L$??333?@$@?L?@$@?=L?@@$@?L>L??$@?>L??$@?>L?$@??L?$@??L?$@?333?L?@$@?L?L?$@?gff?L?$@??L?@$?gff?@$?=gff?@@$?L>gff??$?>gff??$?>gff?$??gff?$??gff?$?333?gff?@$?L?gff?$?gff?gff?$??gff?@%??@%?=?@@%?L>??%?>??%?>?%???%???%?333??@%?L??%?gff??%???@%@B?Quad??11 $  (11 ??11 ???11 $????11 $?????11 $?? Icosphere*2:???                  !!! ""# #$$!#$!% !$%& &"%& '"&'"' (# (('#)$$)%%)&#())(')'&* {1^h????,h??Ww<??>@^h??{1?^h??>@>^h??ah>?<>ލ]<??tk>?Ww<???@ C]?2:W@?툿?2:W@>?^*F?b>?h???@ ?C]?2:?W@?^*Fb?<ލ]<?a>h?h?Ww^h?@^h?2:?W@>?t?k??,h?툿?@>^h?^*Fb??Ww?^h?^*F?b?>?@ C]??<ލ]?<?a>h??@ ?C]??<>ލ]?<??ah?>???2:????? icosahedron< ???x          _𱾊鈿??????h:;)?h?:;)??_>鈿?h:;)??_𱾊??????h?:;)???_>???????pyramid????$ x???????????????????EscToExit_backJGRR     !"######"!   "%),.013344443310.,)%" vvvvvvvvvvvvvvvvvv #(-3,,,G;;;SJJJ`TTTjVVVn]]]ubbbzbbbzbbbzbbbzbbbzbbbzbbbzbbbz^^^uWWWnUUUjKKK`<<>>oLLL{[[[~}qqqzdddr;;;I'  !5YYYfoooy}TTTAAAq%%%^MMMMMMMMMMMMMMMMMMMMMMMMMO***aCCCsTTT~|pppy[[[f 5!  #<<>>nMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMBBBqmmm}|||yaaaV JJJ@zzzx~|||CCCrMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM QHHHvyyy}|||xNNN@  ,,,*vvvs}HHHv QMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMTOOO}|{{{s...* jjj_|OOO}TMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMYRRR{qqq_  QQQ>>  nnnD{@@@nMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMFFFszuuuD _~"""[MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM///c}_teeeNMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMSeeesbbb*yCCCpMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMJJJwxjjj+ uuu<{333eMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM???mz~~~< L}$$$\MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM222e{M ]~UMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM$$$\}] fsssOMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMVttt~h kcccMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMTlll~n pWWW|MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM Q```s vOOOzMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMPUUUu pWWW|MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM Q```pkeeeMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMSmmm~jeuuuOMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMVvvv~e[~UMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM$$$\}[H}$$$\MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM333d{H6{444eMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM@@@my6!xEEEpMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLLvw!RRR rhhhNMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMShhhqXXX X~!!![MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM000b|X:zAAAmMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMGGGrx:t```NMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMV```sW}333dMMMMMMMMMMMMMMMMMM M M M M M M M M M M M M M M M M M M M M M M M MMMMMMMMMMMMMMMMMMM>>>k{W-xJJJtMMMMMMMMMMMM M M M M M M MMMMMMMMMMMMMMMMMMMMMMM M M M M M M MMMMMMMMMMMMRSSS|v-iiig~111cMMMMMMMM M M MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM M M MMMMMMMMM>>>k|gppp2x€RRRvNMMMM M M MMMMMMMMMMMM M M M!!M!!M!!M!!M!!M!!M!!M!!M!!M!!M!!M!!M!!M!!M M M MMMMMMMMMMMM M M MMMMMTZZZ~v2h}AAAlMM M M MMMMMM M""M##M %%M"&&M"''M#((M$((M$))M$))M%))M%))M%**M%**M%**M%**M%**M%**M%**M%**M%**M%**M%**M%**M%))M%))M$))M$))M$((M#((M"''M"&&M %%M##M""M MMMMMM M M MMMGGGp{h'viii$%%Z M MMMMM!!M $$M"''M%))M&++M(--M)..M*//M+00M+11M+11M,22M,22M,22M,22M,22M,22M,22M,22M,22M,22M,22M,22M,22M,22M,22M,22M,22M,22M,22M,22M+11M+11M+00M*//M)..M(--M&++M%))M"''M $$M!!MMMMM M M444biii~u(RzSSSzTMMM $$M#((M',,M*//M,22M.44M066M188M299M3::M3::M4;;M4;;M4;;M4;;M5<>M9@@M;AAM;BBM>M6==M4::M177M-33M)..M%))M ##M'**TTTTz{m&t~NOOp*//M/55M4::M8??MEEM@HHMBIIMCJJMCKKMDLLMDLLMDLLMEMMMEMMMEMMMEMMMEMMMEMMMEMMMEMMMEMMMEMMMEMMMEMMMEMMMEMMMEMMMEMMMEMMMEMMMEMMMEMMMEMMMEMMMEMMMEMMMDLLMDLLMDLLMCKKMCJJMBIIM@HHM>EEMFFMBKKMENNMGQQMIRRMJTTMKTTMKUUMKUUMLVVMLVVMLVVMLVVMLVVMLVVMLVVMLVVMLVVMLVVMLVVMLVVMLVVMLVVMLVVMLVVMLVVMLVVMLVVMLVVMLVVMLVVMLVVMLVVMLVVMLVVMLVVMLVVMKUUMKUUMKTTMJTTMIRRMGQQMENNMBKKM>FFM9AAMQSSpyyy|tDQvrrrTVVmIQQMLVVMOXXMQZZMR\\MS]]MS]]MT^^MT^^MT^^MT^^MT^^MT^^MT^^MT^^MT^^MT^^MT^^MT^^MT^^MT^^MT^^MT^^MT^^MT^^MT^^MT^^MT^^MT^^MT^^MT^^MT^^MT^^MT^^MT^^MT^^MT^^MT^^MT^^MS]]MS]]MR\\MQZZMOXXMLVVMIRRNTVVnqqq|uQ[wzzzXZZnV``NWbbMYddMZddMZeeM[ffM[ffM[ffM[ffM[ffM[ffM[ffM[ffM[ffM[ffM[ffM[ffM[ffM[ffM[ffM[ffM[ffM[ffM[ffM[ffM[ffM[ffM[ffM[ffM[ffM[ffM[ffM[ffM[ffM[ffM[ffM[ffM[ffM[ffMZeeMZddMYddMWbbMV__QWYYq}v[Yv~Z\\s_ffTbllMbllMcmmMcmmMcmmMcmmMcmmMcmmMcmmMcmmMcmmMcmmMcmmMcmmMcmmMcmmMcmmMcmmMcmmMcmmMcmmMcmmMcmmMcmmMcmmMcmmMcmmMcmmMcmmMcmmMcmmMcmmMcmmMcmmMcmmMcmmMcmmMcmmMbllMbllM^ddYZ\\v}uZRu~ZZZ~`eedittMittMittMittMittMittMittMittMittMittMittMittMittMittMittMittMittMittMittMittMittMittMittMittMittMittMittMittMittMittMittMittMittMittMittMittMittMittM^aakYYY}uRCt{ppp^``sekk_pzzMpzzMpzzMpzzMpzzMpzzMpzzMpzzMpzzMpzzMpzzMpzzMpzzMpzzMpzzMpzzMpzzMpzzMpzzMpzzMpzzMpzzMpzzMpzzMpzzMpzzMpzzMpzzMpzzMpzzMpzzMpzzMpzzMpzzMdhhb]^^tpppztC%mw|fff^``qjpp\vMvMvMvMvMvMvMvMvMvMvMvMvMvMvMvMvMvMvMvMvMvMvMvMvMvMvMvMvMvMhmm_^``sfff{wm%Qty|````bbqott[|M|M|M|M|M|M|M|M|M|M|M|M|M|M|M|M|M|M|M|M|M|M|M|M|M|Mlqq^`aar```zxsQ'fty}hhh_``vgiijtyyYMMMMMMMMMMMMMMMMMMMNsxxZdggm]^^yhhh{xtg'1gty|lll[[[}cddqhiijorrawzzYy}}W{~~VMMMMMNy}}Wy}}Wuyy[orraghhlbccsZZZlll{ytg1,Usvz}ŀyyyZZZZZZZZZZZZZZZZZZZZZZZZyyy}zusU, 8Tqtwy{}}}}}|{xwtqT8 0EU\dssssssssd\UE0EscToExit_Text ))K)                     00                    JJ fFݍ:\| \| In~H  fF~Hn HD4  |mw7 l*ϪJD4U%U% fFj}ϪJ\|  |]I j~f& fFݍ:ϪJJI I HwwwIn~w7 Z n [w7 ~* 033MϙIU%U%| }ϙI wI | Hf& ϙIII I H lfm Hψ8wm Hϙ)I ~~w7  ]oo\ϪJD$~) || D$~~]ݍ00nϙIU%}U%U%}: }ϙIm Hψ8 |.IHݍD4 } H lf& ϙIII I l00  ϻ; ϻ;I  }}U%\lϙI Ϫj00 Ϫj|ϙIU%U%U%U%w7 }ϙI Ϫ: }I ݍ̌00  l00  ϙIII00 I ϻ{00000  k kI  33ݍnݍ [llw700000 D$D$ϙID$D$D$U%U%[}ϙI kw7w7I UE0000 ݍϻ{00000  ψHII000  I U% k) k)I00 D4mݍ [ ϻ[  ݍm:~ jݍ ϙID4 D4D4D$U%[}ϙI k)JD4 I U% ψH HIݍfF H0 U%}l}lI00 U%ݍD$ݍ k l m;~ w7ϙI D4 D433 D$U%\}ϙI}l;fF I0 U% ψX HIϪj Iϻk m} 00 | | Iψm33 n33  jݝ0 m M 00 |]}KϙI 330 333C U%U%\}ϙI| ݍ Iϻk ϪZ 00Zn} 00  YI \ψH I}fϻ[ ϪZ D$nϪZ D$nIϙn mH D$~n j0 w D4~ IϪ*KϪ*~nϪ: D40 333C U%f]}ϙIϪZ D$n~} m:}]w7 D4^ϻ[ w7 I ݍ :^,ooI +^n~N,^+ϻ;m~wϙN}ϙIo<^,]I ݍ<N-ooooI ----o>ϻ;n~ϻO}ϙIoooN.oN-=<J0000ݍJ0 MU%33 }ϪJ; }; Of&D4 mϪ:<,<=l nϻ;....n<o.UnityWatermark-trial-big^xx        00000     00000000   00000000   000000000    0000000  0000000  0000000  0000@@@@000  0000000  0000000  0000000000  00000@@@@@@@@000000  0000000  000000@@@@@@@00000  0000000  0000@@@@@@@@00000  0000000  0000000  00@@@@@@@00  00@@@@@@00  0@@@@@@00  00@@@@@@@@@@@00 000@@@@@@0  00@@@@@@00  00@@@@@@@@00  000@@@@@@@@@@@@@@@@@@0000  0@@@@@@00  000@@@@@@@@@@@@@@@@@@00  0@@@@@@00  000@@@@@@@@@@@@@@@000  0@@@@@@00  00@@@@@@00  0@@@@@@@@@0  0@@@@@@@@@0  0@@@@@@@@@0  00@@PPPPPPPPP@@@00000@@@@@@@@@@0  00@@@@@@@@0  0@@@@@@@@@@@@0  00@@@@@PPPPPPPPPPPPPP@@@@@00  0@@@@@@@@@0  00@@@@PPPPPPPPPPPPPP@@@@00  0@@@@@@@@@0  00@@@@PPPPPPPPPPPPP@@@000  0@@@@@@@@@0  00@@@@@@@@0  0@@PPPPPPP@@0  00@PPPPPP@@0  0@PPPPPPP@0  00@@PPPPPPPPPPPP@@@@@@@@PPPPPPP@0  0@@PPPPPP@@0  0@@PPPPPPPPPP@00  00@@@@PPPPPPPPPPPPPPPPPPPPP@@0  0@PPPPPPP@0  0@@PPPPPPPPPPPPPPPPPPPP@@@00  0@PPPPPPP@0  00@@PPPPPPPPPPPPPPPPPP@@@00  0@PPPPPPP@0  0@@PPPPPP@00  0@@PPPPPPP@@0  00@PPPPPP@@0  0@PPPPPPP@0  00@PPPPPPPPPPP@@@@@@@@@@PPPPPPPP@0  0@@PPPPPP@@0  0@PPPPPPPPPPP@@0  00@@PPPPPPPPPPPPPPPPPPPPPPPPP@@0  0@PPPPPPP@0  0@@PPPPPPP@@@@@@@@PPPPPPPP@@00  0@PPPPPPP@0  0@@@PPPPPPPPP@@@PPPPPPPPP@@00  0@PPPPPPP@0  0@@PPPPPP@00  0@@PPPPPPP@@0  00@PPPPPP@@0  0@PPPPPPP@0  0@PPPPPPPPQA@@@@@@@@@@@PPPPPPPPP@0  0@@PPPPPP@@0  0@PPPPPPPPPPPP@0  00@@PPPPPPPP@@@@AAAAA@@@@PPPPP@@0  0@PPPPPPP@0  0@@PPPP@@@@@@AAA@@@@@PPPPPP@@00  0@PPPPPPP@0  0@@PPPPPPPP@AA"B"B"BAA@PPPPPPP@@00  0@PPPPPPP@0  0@@PPPPPP@00  0@@PPPPPPP@@0  0@PPPPPP@@0  0@PPPPPPP@0  0@@PPPDTXklmmm][YUE000@@@@PPPPPPPPP@0  0@@PPPPPP@@0  0@@PPPPPPPPPPPP@00  00@@PPPPPPPDTwWZ[\\]mmm]\[ZwWDD@@PP@@0  0@PPPPPPP@0  0@@P@@3CfVY[\]]]n]]\\ZwWDTPPPPPP@@0  0@PPPPPPP@0  00@PPPPPPDTX[lmnoonnmlZwW3SPPPPP@@00  0@PPPPPP@@0  0@@PPPPPP@00 3#^nmmmmmmmmmn]U%3#]nmmmmmmmmnn9""\nnmmmmmmmnnK 0@@P3Sjooooooooooo]8 000wWnmmmmmmmmnnL8nnmmmmmmmnn^D$ 0DDmmmmmmmmmmmmmkA0  0@@PPPPQfVknoooooooooooooooon[X3S@@0 \nmmmmmmmmnnK 0@ADTYmoooooooooooooooomY3SPPPP@@0 !\nnmmmmmmmnnK 0@@PPP"RYmoooooooooooooonmwWQPPP@@0 3#\nmmmmmmmmnnJ8nnmmmmmmmmn]D$D$ooooooooooooof&3#ooooooooooooK3#^oooooooooooL 0@PXooooooooooooooo^w7 0Yoooooooooo]9ooooooooooooD$ 00YooooooooooooooUE0  0@@PPPDTYnooooooooooooooooooooooolY33 ^ooooooooooo] f6ZnoooooooooooooooooooooolfVPPP@0 !]ooooooooooo] 0@@PP"RYnooooooooooooooooooomXQPP@@0 3#^oooooooooooL9oooooooooooD$D$ooooooooooooof&3#ooooooooooooK3#]oooooooooooL 0@Yoooooooooooooooooo9 Iooooooooooo]9ooooooooooooD$ 0AlooooooooooooooZ00  00@PPPYooooooooooooooooooooooooooooo8]ooooooooooo\8oooooooooooooooooooooooooooj"RP@0 !]ooooooooooo] 00@PPUUmooooooooooooooooooooooom3SP@@0 3#^oooooooooooL9ooooooooooonD$D$ooooooooooooof&3#ooooooooooooK3#]oooooooooooL 00YooooooooooooooooooooLKooooooooooo]9ooooooooooooD$ 0DDooooooooooooooonA0  0@@PDTmooooooooooooooooooooooooooooo:]ooooooooooo\:oooooooooooooooooooooooooooomDT@@0 !]ooooooooooo] 0@@PXoooooooooooooooooooooooooonUUP@00 3#^oooooooooooL9ooooooooooonD$D$ooooooooooooof&3#ooooooooooooK3#]oooooooooooL UEoooooooooooooooooooooooooooooooooo]9ooooooooooooD$ 00XoooooooooooooooofV0  0@PfVoooooooooooooooooooooooooooooooo;]ooooooooooo\*ooooooooooooooooooooooooooooonUU@0 !]ooooooooooo] 0@PiooooooooooooooooooooooooooooofV@@0 3#^oooooooooooL9ooooooooooonD$D$ooooooooooooof&3#ooooooooooooK3#]oooooooooooL 0]oooooooooooooooooooooooooooooooooo]9ooooooooooooD$ 0@moooooooooooooooo[@0  0@@wWooooooooooooooooooooooooooooooooo,]ooooooooooo\,oooooooooooooooooooooooooooooonDD0 !]ooooooooooo] 00@YoooooooooooooooooooooooooooooooUU@0 3#^oooooooooooL9ooooooooooonD$D$ooooooooooooof&3#ooooooooooooK3#]oooooooooooLw7ooooooooooooooooooooooooooooooooooo]9ooooooooooooD$ 0UEooooooooooooooooon"B0  0@UUoooooooooooooooooooooooooooooooooo.]ooooooooooo\-ooooooooooooooooooooooooooooooo\1 !]ooooooooooo] 0@UUoooooooooooooooooooooooooooooooom"B0 3#^oooooooooooL9ooooooooooonD$D$ooooooooooooof&3#ooooooooooooK3#]oooooooooooLLoooooooooooooo_N>?O_ooooooooooooooo]9ooooooooooooD$ 00ZoooooooooooooooooofV0  0Amoooooooooooooooooo____oooooooooooo.]ooooooooooo\/oooooooooo^LJIIIZ]ooooooooooooooH !]ooooooooooo] 0"Bmoooooooooooooo_OOO_oooooooooooooo[@0 3#^oooooooooooL9ooooooooooonD$D$ooooooooooooof&3#ooooooooooooK3#]oooooooooooL^oooooooooooo^w73#"-_ooooooooooooo]9ooooooooooooD$ 0Amoooooooooooooooooo[@0  0Yooooooooooooooo^<)wfUUfw)<^oooooooo-]ooooooooooo\ooooooo^JD4"200000@A3CYoooooooooooo]!]ooooooooooo] 0YoooooooooooooO/_oooooooooooooDD0 3#^oooooooooooL9ooooooooooonD$D$ooooooooooooof&3#ooooooooooooK3#]oooooooooooLU_ooooooooooon"B0 3#Koooooooooooo]9ooooooooooooD$ 0UEooooooooooooooooooon"B0  3CnoooooooooooooLf& U%:]ooooo<]ooooooooooo\oooooKf6 000@@@@@@@PPfVooooooooooooU%!]ooooooooooo] "2noooooooooooo? Ooooooooooooo[0 3#^oooooooooooL9ooooooooooonD$D$ooooooooooooof&3#ooooooooooooK3#]oooooooooooLooooooooooooY@000 0Zooooooooooo]9ooooooooooooD$ 0@ZoooooooooooooooooooowW0  ZoooooooooooooH 000000000000 1H]ooo:]ooooooooooo\oooMD$ 00@@@@@PPPPPPP"Roooooooooooo*!]ooooooooooo] HooooooooooooODDDDDDDDDD _ooooooooooooD4 3#^oooooooooooL9ooooooooooonD$D$ooooooooooooof&3#ooooooooooooK3#]oooooooooooLoooooooooooofV@@@@0000000Xooooooooooo]9ooooooooooooD$ 0Anoooooooooooooooooooo\@0  "2mooooooooooooUE00@@@@@@@@@@@@@@@00@wGn:]ooooooooooo\/o_8 00@@@@PPPPPPPPPPDToooooooooooo=!]ooooooooooo] ]oooooooooooo!]ooooooooooo]33ooooooooooooNU_ooooooooooo\ 3#^oooooooooooL8ooooooooooonD$D$ooooooooooooof&3#ooooooooooooJ3#]oooooooooooL_ooooooooooowWPPPPPPP@@@@Xooooooooooo]9ooooooooooooD$ 0@[oooooooooooooooooooooowW0  Jooooooooooon3SPPPPPPPPPPPPPPPPPPPPPP@00 ]ooooooooooo\ 00@@PPPPPPPPPPPDTXmooooooooooooo/!]ooooooooooo]Hoooooooooooo9Mooooooooooon""3#^oooooooooooL8ooooooooooonD$D$ooooooooooooof&3#ooooooooooooJ3#]oooooooooooL_oooooooooook@@PPPPPPPPPXooooooooooo]9ooooooooooooD$ 0"Bnooooooooooooooooooooool@0  ]oooooooooook@PPPPPPPPPPPPPPPPPPPPPP@00 ]ooooooooooo\ 0@@PPPPPPP"RDTXkmoooooooooooooooo/!]ooooooooooo]Koooooooooooof&9oooooooooooof63#^oooooooooooL8ooooooooooonD$D$ooooooooooooof&3#ooooooooooooJ3#]oooooooooooLOoooooooooooowW@@@@@@@@@@Xooooooooooo]9ooooooooooooD$ 0fVoooooooooooooooooooooooo3C0 ^oooooooooooX@@@@@@@@@@@@@@@PPPPPPPP@0 ]ooooooooooo\ 00@PPPP"RwWjmooooooooooooooooooooo!]ooooooooooo]]ooooooooooo^3#f6oooooooooooo:3#^oooooooooooL8ooooooooooonD$D$ooooooooooooof&3#ooooooooooooJ3#]oooooooooooL/ooooooooooooo[3C0000@@@@Xooooooooooo]9ooooooooooooD$ 0@[ooooooooooooooooooooooooX00 oooooooooooofF0000000000000@@@PPPPPPP@0 ]ooooooooooo\ 0@@PP3Sjnooooooooooooooooooooooo_!]ooooooooooo]]ooooooooooo]!""ooooooooooooK3#^oooooooooooL8ooooooooooonD$D$ooooooooooooof&3#ooooooooooooJ 3#]oooooooooooL_oooooooooooooo]KHU5"2000Xooooooooooo]9ooooooooooooD$ 0"Booooooooooooo_oooooooooool@0 D$oooooooooooo]\\\\\\\\\\\\\\[[kkkkkkk[\\""]ooooooooooo\  0@P"Rkoooooooooooooooooooooooooo/!]ooooooooooo]"^ooooooooooo] !ooooooooooooL3#^oooooooooooL8ooooooooooonD$D$ooooooooooooof&3#ooooooooooooI 3#]oooooooooooLooooooooooooooooooo^]\mooooooooooo]9ooooooooooooD$ 0XooooooooooooO=ooooooooooooDD0 f&ooooooooooooooooooooooooooooooooooooooo3#]ooooooooooo\  0@UUnoooooooooooooooooooooooooo_ !]ooooooooooo]D^ooooooooooo\  !noooooooooooM3#^oooooooooooK HooooooooooooD$D$ooooooooooooof&3#ooooooooooooI0 3#]oooooooooooL?ooooooooooooooooooooooooooooooooo]9ooooooooooooD$ 0@looooooooooooooooooooooooX00 (oooooooooooooooooooooooooooooooooooooooD$]ooooooooooo[0  00fVooooooooooooooooooooooooooo_!]ooooooooooo]U_ooooooooooo\  1noooooooooooN3#^oooooooooooK  HooooooooooooD$D$ooooooooooooof&3#ooooooooooooX000 3#]oooooooooooL3>oooooooooooooooooooooooooooooooo]9ooooooooooooD$ 03Cooooooooooooo_ooooooooooom@0 foooooooooooooooooooooooooooooooooooooooD]ooooooooooo[@00  03Cnoooooooooooooooooooooooooo_(!]ooooooooooo]U_ooooooooooo\0  1ooooooooooooN3#^oooooooooooZ  HooooooooooooD$D$ooooooooooooof&3#ooooooooooooX@@@00000000 3#]oooooooooooL)^oooooooooooooooooooooooooooooo^9ooooooooooooD$ 0wWooooooooooooOOooooooooooooDD0 DoooooooooooooooooooooooooooooooooooooooD]oooooooooooZ@@@000000000 0\ooooooooooooooooooooooooooLD$!]ooooooooooo]U^ooooooooooo\00  0AooooooooooooM3#^oooooooooooZ0  0HooooooooooooD$D$ooooooooooooof&3#oooooooooooowWP@@@@@@@@@@0 3#]oooooooooooL3#Knoooooooooooooooooooooooooooo^9ooooooooooooD$ 0@loooooooooooo>ooooooooooooZ00 _ooooooooooooooooooooooooooooooooooooooU]ooooooooooojP@@@@@@@@@@00 U5ooooooooooooooooooooooooo]f60 !]ooooooooooo]Noooooooooool@0  00"Boooooooooooo=3#^oooooooooooY000 000XooooooooooooD$D$ooooooooooooof&3#oooooooooooowWPPPPP@@@@@@@0 3#]oooooooooooL 001wG\nooooooooooooooooooooooooo^9ooooooooooooD$ 03Coooooooooooo_ _ooooooooooomA0 3_ooooooooooooooooooooooooooooooooooooo_D]ooooooooooojPPPPP@@@@@@@0 Kooooooooooooooooooooo^LHD400000 !]ooooooooooo]OooooooooooomA@00 00@DToooooooooooo-3#^oooooooooooY@@0000000@@XooooooooooooUD$ooooooooooooof&3#oooooooooooowW@PPPPPPPPPP@0 3#]oooooooooooL 0@@@0033UEI[^noooooooooooooooooooo^9ooooooooooooD$ 00YooooooooooooO>ooooooooooooUE0 Oooooooooooomm]]^^^^^^^^]]mooooooooooo_U]oooooooooooZ@PPPPPPPPPP@00 ^oooooooooooooooon]KIU5"2000@@@@0 !]ooooooooooo]?oooooooooooo3S@@000000000@@fVoooooooooooo 3#^oooooooooooY@@@@@@@@@@@Yooooooooooo_UD$ooooooooooooof&3#oooooooooooowW@@@PPPPPPPP@0 3#]oooooooooooL 0@@@@@@@00013CDDfFwWXYZkmoooooooooooN9ooooooooooooD$ 0Amoooooooooooo- -ooooooooooooY@0 /oooooooooooDT@@000000000@@3SoooooooooooODDD]oooooooooooZ@@@PPPPPPPP@0 ""oooooooooooooomYfF100000@@@@PP@0 !]ooooooooooo]/ooooooooooooUUP@@@@00@@@@@PYooooooooooo_ 3#^oooooooooooY@PPP@@@@PPPkooooooooooo_fD$ooooooooooooof&3#oooooooooooomwW"B@@@PPPPP@@0 3#]oooooooooooL 0@PPP@@@@@@@@@@@@@PPXoooooooooooN9ooooooooooooD$ 0DDooooooooooooo f_ooooooooooon@0 ooooooooooowWP@@@@@00@@@@@UUooooooooooo?]ooooooooooonY3C@@@PPPPPP@0 3oooooooooooooXA@@@@@@@@@@PPPP@0 !]ooooooooooo]oooooooooooojPPP@@@@@@@PPPmoooooooooooO 3#^oooooooooooY@@@PPPPPPPPmooooooooooo_UD$ooooooooooooof&3#ooooooooooooooo\YUU"RPPPQ"RUEH83#]oooooooooooL 0@PPPPPPPPPPPPPPPPPPYoooooooooooO9ooooooooooooD$ 00Xoooooooooooo>OoooooooooooofV0 _ooooooooookPPP@@@@@@@@PPXooooooooooo/]oooooooooooooo]YfV3SQPPPQDDwGIDooooooooooookPPPPPPPPPPPPPPPP@wGI!]ooooooooooo]_ooooooooooonQPPPPPPPPPPPUUoooooooooooo/3#^oooooooooooZ@@@@PPPPPPUUoooooooooooo_3D$ooooooooooooof&3#oooooooooooooooooonnmnnnooL3#]oooooooooooLD4"2@@PPPPPPPPPPPPPPPP"Rmooooooooooo?9ooooooooooooD$ 0@moooooooooooo.oooooooooooo[00 ?oooooooooon3SPPPPPPPPPPPPlooooooooooo^ooooooooooooooooonnmmnnno^!3_oooooooooooXPPPPPPPPPPPPPP@"BZo^"!]ooooooooooo]?ooooooooooooXPPPPPPPPPPPloooooooooooo3#^ooooooooooooZ"B00@@PPPQloooooooooooo_D$ooooooooooooof&3#ooooooooooooooooooooooooooM3#]oooooooooooM"oo[fV@@@@@PPPPPPPPPPQkoooooooooooo?9ooooooooooooD$ 0UEoooooooooooo_ _ooooooooooon"B0 _oooooooooo[@@PPPPPPPPPUUooooooooooo_^ooooooooooooooooooooooooo^_oooooooooook@PPPPPPPPP@@@"BYnoo^"]ooooooooooo]ooooooooooooofV@PPPPPPPPYooooooooooooO3#^ooooooooooooon[wG3CAA3SwWmoooooooooooooOD$ooooooooooooof&DooooooooooooooooooooooooooM3^oooooooooooM"_ooomZUE"B@@@@@@@@@AfVlooooooooooooo9ooooooooooooD$ 00Zoooooooooooo_>oooooooooooofV0 ?oooooooooooY@@@@@@@@@Alooooooooooo?^ooooooooooooooooooooooooo^?ooooooooooooYA@@@@@@@@@3CYnoooo^"^oooooooooooMOooooooooooooowWA@@@@@"BZooooooooooooo/D^ooooooooooooooooonnoooooooooooooooo?D$oooooooooooooU%DooooooooooooooooooooooooooMD^oooooooooooM3_oooooon][ZYXXYZ\noooooooooooooo_9ooooooooooooD$ 0Amoooooooooooo.-ooooooooooooZ@0 _ooooooooooo\UE000000fFmoooooooooooo^ooooooooooooooooooooooooo^ooooooooooooon[HfFUEfFwGX[]ooooooo_3^oooooooooooNoooooooooooooom[ZZZ[noooooooooooooOU^ooooooooooooooooooooooooooooooooooo33oooooooooooooU5f_oooooooooooooooooooooooooNf^oooooooooooNU_ooooooooooooooooooooooooooooooo?9ooooooooooooD$ 0UEooooooooooooo _ooooooooooooA0 /ooooooooooooo][JJ[]ooooooooooooo?_ooooooooooooooooooooooooo_" OoooooooooooooooooooooooooooooOf"NoooooooooooN?ooooooooooooooooooooooooooooooooof_oooooooooooooooooooooooooooooooooo_ 33oooooooooooooD4  _oooooooooooooooooooooooooO _oooooooooooO _oooooooooooooooooooooooooooooo_9ooooooooooooD$ 0@ZooooooooooooO OoooooooooooowW0 ?oooooooooooooooooooooooooooooo__ooooooooooooooooooooooooo_D_ooooooooooooooooooooooooooooO DOoooooooooooOOooooooooooooooooooooooooooooooo/ _oooooooooooooooooooooooooooooooooo? 0"2oooooooooooonDD0  _ooooooooooo??oooooooooooo? Oooooooooooo?_oooooooooooooooooooooooooooooo/9ooooooooooooD$ 0@noooooooooooo.-oooooooooooo\@0 Oooooooooooooooooooooooooooooo/OoooooooooooO/oooooooooooo_ooooooooooooooooooooooooooooOfOoooooooooooO_ooooooooooooooooooooooooooooo?_ooooooooooooooooooooooooooooooooo_ 000000000000"Boooooooooooon3C000000000000 _ooooooooooo?/_oooooooooo?_oooooooooooO_ooooooooooooooooooooooooooooo?9ooooooooooooD$ 0fVooooooooooooo _ooooooooooon3C0 Oooooooooooooooooooooooooooo/OoooooooooooO_oooooooooo__ooooooooooooooooooooooooooODOoooooooooooOOooooooooooooooooooooooooooo?_oooooooooooO?oooooooooooooooooooo/ 0@@@@@@@@@@@@"Boooooooooooon3C@@@@@@@@@@@@0 _ooooooooooo?Oooooooooo?f^oooooooooooN_oooooooooooooooooooooooooooo/9ooooooooooooD$ 00[oooooooooooo_U>oooooooooooofV0 ?ooooooooooooooooooooooooo/OoooooooooooO?ooooooooo__ooooooooooooooooooooooooo_"NoooooooooooN?ooooooooooooooooooooooooo/_ooooooooooo?/ooooooooooooooooooO 0@@@@@@@@@@@@@"Roooooooooooon3S@@@@@@@@@@@@@0 _ooooooooooo?/_ooooooo?D^oooooooooooM_ooooooooooooooooooooooooooO9ooooooooooooD$ 0"Bnoooooooooooo>-ooooooooooool@0 OoooooooooooooooooooooOOoooooooooooOOooooooo_/_oooooooooooooooooooooo_/^oooooooooooN/_oooooooooooooooooooooO_ooooooooooo?Oooooooooooooooo? 0@@PPPPPPPPPPP"Roooooooooooon3SPPPPPPPPPPPP@0 _ooooooooooo//O_oooo?3]oooooooooooM/O_ooooooooooooooooooooo_O/9ooooooooooooD$ 0fVooooooooooooo _oooooooooooo"B0 Oooooooooooooooooo_/OoooooooooooOO_ooooO/_ooooooooooooooooo_O/^oooooooooooM/_oooooooooooooooooOOooooooooooo?/_ooooooooooo_/ 0@@PPPPPPPPPPP"Roooooooooooon3SPPPPPPPPPPPP@0  U5UEUEDTDTDTDTDTDTDDUEfFU5/?O__ooooooooo_O??9ooooooooooooD$ 0@[ooooooooooooO OooooooooooooX00 /?Oooooooooo_O//?O_ooooooo_O?/U5UEUEDTDTDTDTDTDTUEUEfFU5/?_ooooooooo_?/?_ooooo_O/ 0@@PPPPPPPPPPPQoooooooooooon"RPPPPPPPPPPP@@0  0@PPPPPP@@0 9ooooooooooooD$ 0Aooooooooooooo>-ooooooooooool@0 /// 0@@PPPPP@@0 //!33"B"R"R"R"R"R"R"R"R"R"R"R"RDToooooooooooonUU"R"R"R"R"R"R"R"R"R"R"R"R"B33! 0@@PPPPPPP@0 9ooooooooooooD$ 0Xooooooooooooo oooooooooooooDD0  0@@PPPPPPP@00 :onnnnnnnnnnnnnnooooooooooooonnnnnnnnnnnnnno: 0@@PPPPPPP@0 9ooooooooooooD$ 0\oooooooooooo_OooooooooooooH0  0@@PPPPPPP@00 <ooooooooooooooooooooooooooooooooooooooooooL 00@PPPPPP@@0 9ooooooooooooD$ D4ooooooooooooo>-oooooooooooo^!  00@PPPPPPP@0 ooooooooooooooooooooooooooooooooooooooooooo?(oooooooooooo_D;oooooooooooofooooooooooooo//oooooooooooo_DUoooooooooooo_U/ooooooooooooooooooooooooooooooooooooooooooo?oooooooooooo_U,oooooooooooo?oooooooooooooooooooooooooowoooooooooooo_f /ooooooooooooooooooooooooooooooooooooooooooo?oooooooooooo_.ooooooooooooOoooooooooooo_Ooooooooooooo?oooooooooooo_ /ooooooooooooooooooooooooooooooooooooooooooo?oooooooooooo_ /ooooooooooooooooooooooooo?/oooooooooooo_ oooooooooooo_ /oooooooooooooooooooooooooooooooooooooooooo?oooooooooooo_/oooooooooooo/ooooooooooooooooooooooooooooooooooooo_/___________________________________________/oooooooooooo_/ooooooooooooO____________OO____________?oooooooooooo_oooooooooooo_/oooooooooooooooooooooooo_oooooooooooo_/oooooooooooooooooooooooo_UnityWatermark-trialLPP       0pp00`` ``0@``p` `` `P0`pp`0 `` Ppp`0 `` PpppP `` `` `p00 0Ppp0 0@0`p`@00@``@@Pp`pP@0 0 U~0 0P0 0`P "@0U@P""@0 0 _0 0@0 0 f` ۪ʪʙ@0ͻ˻0PP0 0 00@00ߙ 0@̬ ʪ@P p0P@@@P@ @`0@p0@0̜ 0PY@ @@0̌0@p`p@ Pp@0"b000@`p 0fv@pp w@ `0 ppp ppy[~}ݝ 0^\ݝ~ݝ  O  `` `` UnityWatermark-eduP` `@             P ``0`pp`0 `` 0`pp`0 @ppppP0@pppp` 0`p`@@```pP@p`0 `` 0`pp`0 `` ``0@``p` `` PppppP0Ppp`00`pp`@0`pp`0 `` `` `` D 0  `pp`@0 pp`@0ppp@p0 `pPPppp p` 0@`pp` 0 0Ppp0 0 p@@``0`pp@ `pp`@0 0 0@00  UUP0 U@wP0 UݍU ^0PUU 0 0P0 0 ݽ0U@"̼ UUP0 0 0`P0@0 0P00ʪʪʙPP00n 0/0P00 0@0 00@ͻ˻0ۻ˪ڪ 0P0 0 0 f`0p`@0@@PP ʪP0@P0 0 @ 000P@@ 0@@0ߙ 00 0Pp ʪ  @@PP@ 0@̬ 0p`P00pp@@ 0ppP0 0 pP@h0PP 0@pp 00̜ 00 0P̌  pp@ @PY@0pp w@ppp@  p`@@`pp `p00 pp pp @`p 0  0`0pppp pp @fv@0ݭnݝ̬0}\ݝ9}ݝ 0ݝ~ 0^\0p``@???o ?/ ??o ??? O pppP  ``  ݝݝݝݍUnityWatermark-devsFF PP p  00     0@     000      `ppp` 0`pp`0 `P0`p`@ `` 0`pp`00p`0 `` `` `` 0`pp`@0`` `` 0pp0 `ppp`0 PppppP ``0`` @ppppP0p`P0`p`@ @0 pp@0@`pp` 0pp`@ 0 0@`pp@@0 0`p00p`p`@p 0P0 ppp 0"@"0`P U̼0PUU 03P 0 0P"̼@0 0 U~03Pݽ 0P0 w 0P۪ʪʙPf`0ʪڪ 0P00P 0 0Pۻ˪ڪP0 0 _0̬ݭ̼@ 0P00 0 wG@ʪ`̬ 0˪ʪ 0P@@ 0@@P@@@@@ʪPP@0 000 0 0P0 0@ 0 0@pY@ 0@pp 0pp@0@0@`00ppU0 0 0P0 pp 0 00ppfv@p00pp pp pp`ppp pp0Pp@0Y   @0p 00 @ ݍ^\ݝ0 y[0ݭݭ 00ݝ̬ 0p`O?? ??/o?0pp  @ o  pp3  pp ``0 ݝݝݝݝ WarningSign@@    0000000000000000000000000000000000000000000000000000000 0@@PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP@@00QaqqaQ0`p000E0E0`p##@@@@@f@g@@@0       D D    ` ` ` ` ` ` ``"ݰ"00000000f@g@@@@@@pp`p`pp         3 4       a a a a a a a a a aPP P P P P P P P P `00000000000V000V000000000q00p300 4          PPPPPPPPPPPPPw 0PxPPPPPPPPPPP 00000000000000V 0V000000000000q `#2!3@@@@@@@@@@@@@@@@w2"""2@x@@@@@@@@@@@@@@2""""                 D""""" E               a"""""a"""""""@@@@@@@@@@@@@@@@@@@g""""q@g@@@@@@@@@@@@@@@@@qq""""q                    4q""""q D                  QQQQQQQQQQQQQQQQQQQQQq""""qQ"q""""q"0000000000000000000000V0f00000000000000000000qq                       4 4                     PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP0000000000000000000000000U0V00000000000000000000000aq#3@@@@@@@@@@@@@@@@@@@@@@@@@@@g@w@@@@@@@@@@@@@@@@@@@@@@@@@                            E E                          aa##000000000000000000000000000000f0f0000000000000000000000000000q                               4 D                             P P P P P P P P P P P P P P P P P P P P P P P P P P P P P P P PyQQ Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q @XP @Q        @       P P P P P P P P P P P P P P @Q Q Q Q Q Q Q Q Q Q Q Q Q Q @@@@@@@P @Q                @               UnityWatermark-protoW             `` `` PpppP 0pp0`` 0`pp` `` ``0`pp`0 `` 0`pp`@ 0```pP0@`pp@ 0`pp`@0 P@Pp`pP0`p0 0 `ppP@00 `p`@0@`pp@0`pp0@Ppp@`pp@0 0p@""@U~ 0 U"@00 "@P"̼0f0P"̼00PPP_ 00P00 ۪ʪʙ@Pۻ˪ڪ00ݭ@ۻ˪ڪ 0Pp@@@P0 00@@@P0@0ʪ@Pʪ0@`30ʪ 0p̬@p`p``0@`00pp@@0pP@@ Y0ݭ 0fV0ppp`p@Pp@ pp w@ "b@pp00pp0`pp"r@pp0f0 ݝy[yj~ 0\ݝݝݝ00 ? ?/?? pP >ݍ?_MainTexblack? ? pA ? ? pA ? ? pA ? ? pA ? ? pA ? ? pA ? ? pA ? ? pA ? A A A A C C unity_FogStart unity_FogEndunity_FogDensity unity_FogColor#!!!!! ! ! ! ! !!!!!! ! ! ! ! ! ! ! ! ! !!!!!!!!!!! !! !! !!#!! ! ! ! ! !!!!! ! ! ! ! !!! ? ? ? ? pA ? ? pA ? ? pA ? ? pA ? ? pA ? ? pA ? ? pA ? ? pA ? A @@ A A _StencilMaskC _StencilMaskunity_FogStart unity_FogEndunity_FogDensity unity_FogColor!!!!! !! !! STEREO_INSTANCING_ONUNITY_SINGLE_PASS_STEREOSTEREO_MULTIVIEW_ONSTEREO_CUBEMAP_RENDER_ON _TEX2DARRAY_CUBEMAP_MSAA_2_MSAA_4_MSAA_8 'Hidden/FrameDebuggerRenderTargetDisplay 0b7%O90U   8ؐHmtjdEb b` & Sp Sx & b  S( c`R b T"<C'0S0,0S820S 6tS6nu  UnityPerDraw3Pu_ObjectToWorldL LPFrame (PMatrixVPL l HW40 /DXBC>,Ab@N,ISGNLfv8Hz[APPOSITIONTEXCOORDOSGNPTTToSV_W SHDR@iYF H_r ug e Rh2$"Vl4j2 p"F(`*(p*F0|&V hT(6/ ( hj(D6<"F>#*$Globals`&_UndoOutputSRGB4@x_ShouldYFlip($b(eLevels$P0 $TChann&(@_MainTexWidth,xPL,oHeight,T4 [0@`2`0`  0hX?DepXX   @ )챔 / g8&@ S@ &D ,( @rTarget " F bXpUUb2  d#@TAt?7 "  4$H 2D~L S6 .@M-D ~`  Z AT#   & h&  d(F(?W " @,D,<8 T6 r |DQ>DĢ.?< <0D,M<40d%r d*Fd(:  lSAA_2N(蔃l8/((h((/ (. (*@$L%@Yp@ (? ?4΄ Yw`[Gb8$ |@d &(> O8Ss'X"N8/:S@)@,@,@,B(> Lf_TEX2DARRAYϝݧ4ٶ)H7=?" Z;`H.X@rTRE8p/`xx B-^ԨmtݪRyI"\/Hv`r  |m| ˆV=DŽ8T`$8܈| 1~rX7/HG@,,,|'CUBEMAP“M$N0,+tencilMask8\+  VH l⁵0 %:C"/0P<P?p,P (\V:X83LH;P&P S4 S &b b| S<$ S3 bA| bDN$ Sh]( Sl, S{t0S0SbЈ nu $Globals8W_UndoOutputSRGB@w_ShouldYFlip(X_Levels $d $TChann&(@ K_MainTexWidth,xW0,oHeight,4,unity_MatrixVP0@@`\l^,0D49 4,<X?DepX8< !4 /?W #ifdef VERTEX #version 300 es #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if$ JTUNITYo #else uniform #endif%SUPPORTShLOCATION& N(x) layout(locat K= x)/wBINDING.pbinding-, std140) jUH vec4 hlslcc_mtx4x4JObjectToWorld[4];3}.in highp .pin_POSI03TEXCOORD0; out(vsLju_xlat1; void main() { )) =.yyyy *;1];G3J0] *mfxxxx +Q2QOzzzzQ +[31=!1=. ^ 1G2G Gsgl_PosijK 3KLwwwwKxB.xyzE )return; } \FRAGMENTQprecimfloat;Oint;4Kint ;cmedium!*  +; $0) osampler2D<90) 4 SV_TargetuDu0; 16_183283; .s6; bool/b6 y.x = (-zy) + 1.M .y)! !?K:(-y;k H c *:)2(,)CuD! u9iQ)-Quint(-0u!w! atexelFetch(, y ),?w))#(-  )( =" yT/(D~*g#2$do"0,RY1.0,  66U8%b6]6==1.((-)2P:2czgclamp(4, 003O>3(0.305306017, .682171106, {[0125228781, )(^-0( !IIwwQ/ PMSAA_2 g /MS c U $in )i293 4 7 E1y+(0 ?1.yzwGfor(Q_loop ;0 ;-<21++)F w S[61 +!}1y4(0.5, )404"-.x6" 1/6)1 11 1Y{)1^ '16?442 H?881 >8;|2DARRAYD N9_ArrayP9zZz8Gture x 8,| 8 Ta#extensGL_OES__storage_multi[ Q_2d_a\ : require_-P$ \_  {  ,z3(3( /0u*9(3(/+9$4$$4$A9(8((8(A99tCUBEMAP?9i OCube9/h  texture> using namespace ; struct _Type { float4 hlslcc_mtx4x4O[4];0 ("To7 0#LODFade=ransformParams'RenderingLayer; };  glstate_lightmodel_ambienthA?SkyEquator!oGround IndirectSpecColor[m@_pro^?ion*?Inv-%VP+3intStereoEyeIndexcShadowMtl_VertexInPOSITION0 [[ attribute(0) ]] b3 TEXCOORD*1*n:Outomtl_PosicHp , invariant ]]xUuser({zvo z (Rconstan&jbbuffer ,> &@1@` input(stage_in ]]) {)[outpuE_01!" =h.y.yyyy *.,1]WOfma(D=0],Txxxx,V)d/2dOzzzzd +31J a. 1K@%0] Q/1)X+2XEX.d3dOwwwwdE.xyz 0ereturn3S} p\0 FGlobals8_UndoOYESRGB _ShouldYFlip(_Levels $P $TChann&( _TexWidth,x0, He,&4 4 T 0@`2`,0`  ,<hX?DepX8  ȸt uint32_t rp_9_remap_mask 1fun _3 C I Ee (Z>> 0) & 0xFFM`V )     p] FragmentQ   I , SV_TargetKc J fH U  o& Q12d<, access::sample >2@.I 7  |)u0@  24Cbool)b44 .x- y) + 1.0,y,V.0 !=?W: yz #r *2-,  ; uXQint2(c)+z*\(0x0uw(g.read(},B &(-  * yn/P?xxx&*R }4dotR,i(1.0,  j48`C%b4<4==&(-)+ :)yzzgclamp(a, 0.0ff22Z 0(0.305306017, )/682171106, )0125228781, /))6*` 7e * hYY ww^  MSAA_2Q <_ms  $in /i2M36 5`66 S@y yzwsi2 = 0xwhile(true)\6Si2>=0x2;"$ifT6){break;}?3 $in2 $i2L:1 +  C+ 0x}N[ Y0.5, /),  H )1 J 5 $ 1 >\)  ?4U 4 2  ?8Y 8 1  )_TEX2DARRAY(sa X(rM  _array(z(3z'(41y, 9 /z)'' XwG4x 3J'!3(}) (=&(  4 { 4 CZ(  8  8 C(( pQCUBEMAP(Ocube(zs(\Zh0ZtencilMaskXZ tY/Wu0)'* =J F0) *0039215688_)pP&P S4 S &b  S b$< b3 ctD $CQ0S4`h0So0T| 0B r( nu $Globals8c_UndoOutputSRGB@ ,ShouldYFlip(X_Levels $ $TChann&(@ _MainTexWidth,xW0,oHeight,4,unity_MatrixVP0@@`\l^,0D49 4,<X?DepX8< !4 / #ifdef VERTEX #version 150 #exten GL_ARB_explicit_attrib_locat : require P1shader_bit_encodingW&* : enable #endif #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1$ JTUNITYo #else uniform %SUPPORTShLOCATION& N(x) layout(fK= x)/wBINDING.1binA= x, std140) jUH vec4 hlslcc_mtx4x4ObjectToWorld[4];3.Ain )pin_POSI03TEXCOORD0; out(vsAju_xlat1; void main() { )) =t.yyyy *;1];G3J0] *mfxxxx +Q2QOzzzzQ +[31=!1=. ^ 1G2G Gsgl_PosiZK 3KLwwwwKxB.xyzE )return; } L0FRAGMENT Kint ;  ifloat k ] +; $0) sampler2D5 30) 4 SV_Targetuu322; s4; bool/b4.y.x = (-zy) + 1.n .y)! !?K:I-y;k i c * )2(,)CuD! u9iQ)-|uint(0uwvtexelFetch(, m0), @R/))#(-0 )1! yS/>?xxx&*) s$do!0,i(1.0,  46U8%b4]4==1.((-)u/ :!1Rzgclamp(4, 002O>3(0.305306017, .682171106, {[0125228781,  a^ -0( IIwwaO  MSAA_2Lx/MSZ4m10U'1GN  Y0.5, )O442'12\&2'38/2/ <>O8|<<\]H\4\H5\H6'7Q1 4=2DARRAY w_ArrayzD@<zkz Gture  ;) ; e;US} ;     , z 3 (3( /0u(3(i; <;d4/#42,< ]2E%;h8h/hV]I]4]I5]I6%<tjxCUBEMAP<:OCube<tencilMaskH ,$/ u U  0 +(i): " =Z 5)r0039215688Q )E P& &, &H bd  S( H&p & &0bp b4h &% S/p bt8 S<@&I STS S\0Sd0xbe nu PGlobals27476456488c_Channels4_D@ D_Lev& $P$MainTexHeightP,W4 ,oWidth,P0 ,ShouldYFlip((UndoOutputSRGB, VSunity_MatrixVPlTU@,ObjectToWorld0oH/ /3789575649q$871530345$22071862u84118575878t9Tq d096657092<9?Dep8(HHq ($H1786846359H,HH H144222823H-HHH$H29697716qd $/5`&xů{3yܹ Y?vru5s,LOMS GLSL.std.45¥ UTvs_TEXCOORD*G### #"!n"  >9 > 9   >? i> >96P> "  @ 0?9@  m y|B(O>P9Q*>  9d]2b 9>!9~>09dQ> fĢ.?S ,M<> 9> >>! >?9#>99L 99/ ?K "!  4"E"    "."R-154@58  1J1hD"jr7 DF?D?$ KAJ"nKAM"rP ?&-F8<DKAM  O  Y"^]M?K"#5]2Q#5]@Ker A"_p^r_qJ"BC%  " !"!B Dm"  "i0=P"P R   | +"Z ^J K "4lCJ Qx "| <D "̏s P":M(ضM"j/T  3o HTVUT G@Gd   `>9  Qо>9Abc 9?2(LDE>F9G>_PR9SgR9U>> 3`c Pd agC^9a9e9hsU#"$#B&J`0K2##%6%%@%BD)",}"LP|4|A" ||^|W%|l|$%&# ,%!&&<&PH"R "#XHDXHD" p MSAA_2! |&}|/|;6` 1]|.LK(4|9/||,#}}09@0> c#0p`>a9b?8>#$2 >!99p>( 9/  T9×ڗݗ`>9puUUd99` @ 9ۤ/AOpO"JOM""h !  aH$ ` P@h"Z8`<&%(0"20+.BJt @ "  O if  _& ct !Om zB"   R    V|"%  / P<<#<E TG L $GZ+b (3A#v Vh Oh 4h RhH 㰑h h h :9` t_>`9a` $>` D h R  `h Fh E" _h gh 6h :$#&.h "0.),@h ?suh sh sh 38)h h h <۰F9|h 9h -h p "p p p "p p p pp p p9p p k p fOutp p tp tp hp wup up p p p p p p  p n <p p p p Zp p p p Op &2DARRAY~t &t *$<D,6b?4t 9/$t t t n 6m m ?m k  y$q3>495y$ y$C# }$"}$^}$C}$! @ j&>    v$`c9$Pc 9 $Mp F-."2P "R4 J! bEod=<&vr#E<%IE<%D% $%v=R$ $C% $ $F $)iNR#T $ Pnpq"\$`$n$z$~$$$A $ 8HHH<kamFY<59\H H K$H#KLLT2C9DTWTTL1 />$$Tc>d9e$$"LLL"L6LCLpLLQXj9L3 L/Dg2TQ65D69 2<\RJ pr_zA0 H_JCDC$OEN"vQWQW`QU"N" "nWdCF=Js4HWcWkW:W>WWDWOw`/$#6`2  2 Q2 W _WwW&QWWWWWWT _WhWWNoN  +4 bC~ %9@+3  H$ b>c9dH$  4VS$ c D E" b jS$S$Owv v v 8 @   <g\e`P`Ȃ 9l 0 l$l$"   "ǔ ޔ  p ǔ l$̔ 3 g$  qOxw  w w j wx x         < ” Ҕ  Z ֔   OȔ ICUBEMAPp$Qb/tx¢)X)+͢p$3p$T333232634Q`RtencilMaskSL4RUS$R"_&/ ;faqTJ9( hG#A9p >e 5` `93r;$4.P" Q%C-099#9&-   W1JP& & & b  & b  b$P &t1 &D cX`Ci Sy0Tbzl nu sPGlobals2590317728 _Channels4_D T_Lev& $0_MainTexHeightP,W4 ,oWidth,P0 ,ShouldYFlip((UndoOutputSRGB, VSunity_MatrixVPlTU@,ObjectToWorld0noH/ / `4050521034Xq8 446274238u8 $81229578166888$p637932206Um_ d$03079713qd $/!PH T <b//Assets/DefaultResources/PerformanceTools/FrameDebuggerRenderTargetDisplay.shader diagnostic(off, derivative_uniTity); alias Arr = array/_1!tstruct  { /* @offset(0) */ hlslcc_mtx4x4 :e,=/64>&9_1, } var in_POSITION0 : ; @group(1) @binding :P> x_22;Yvs_TEXCOORDY>3f;}$gl_Positionfn main_1()Mvar u_xlat1_precise_# i$i$b$o)u)u$8= (q.yyyy *n.  [[1i])M(:Y0i] *.xxxx) +MY$2YOzzzzY +31C=  8153k .1O2O $O S3SLwwwwS =return; }v1outv@builtin(p?) P@loca;(0)y$_1t@vertex(: Ie_paramec)1))j3f) -> =d /in+%=j(,)aiP xk : i324-! *%16+p 0(%32( *%48*R M : f~,52, -}*0*V7 : P*505 : texture_2d2SV_ <FragCoord$const x_116 =o(1.0f)YBx_35- (u0 3`4Db@m?1282X^x_165m .x(-(^ .yB if*7.Sb!= 0i) =W:j} else! i&1y =) 6xA(uxsTvec2f*, uv))).xy,wAufu(bitcast^ @2u>(iy FuGy.z = 0uwlyULoad((, }5i>(C6xy)7i32/w)-B8 ' ye/K]&*O^ 4dot.,9#4! E)&b4vJ4 ==$= %0" =! /zSclamp"1,? (0 2 B*330530601739883422852f)"68217110633850097656[ D01252287812530994415f) C U  X&16Y1.65V&.$,.Qw  ] J&_1*[ fragment] /vs4 , _ c i /vs>  =`c T 8hDMSAA_2 / multisampledG/37` mai_loopiK33+b1 _x_149/96'yzw '6< 2  break;Y# z*s3T$continuing V+ 1i) r 4(37[).x=,371m%49C)t/49 *49 S)/ 1P '*H_.%  NJ(96/yz/96N/96NX/P+;4 PP*4P2QP+;8 PP^8P/50P7P8P1Q8Q/8Q /50Q/50Q /50Q7Q7Q79 PTEX2DARRAYT/ T'Ky_>D rD*>/91)AJK-/03/400 le -47z*&.x1y, &w)W6h2S ,Gs,*u(round(,z)JcJ/91J/91J)/03J/03A /03J-/40J /40/407Z<$"\CUBEMAPOcube,n147328386mntencilMaskpnLqUq $Tn*2 />C : uP5I*12I3  ~0f32 )2._,); (u/)10039215688593685627  G ( VPBt"p Kx) FrameDebuggerRenderTargetDisplay*_MainTex??.GameSkinv'box*L?L?L?????????button*fff?fff?fff??*????*fff?fff?fff??????*f?f?f??*????*fff?fff?fff???toggle +!d?!d?!d??+????+?????+c?c?c??+???? +?????labelfff?fff?fff??fff?fff?fff??fff?fff?fff??fff?fff?fff??fff?fff?fff??fff?fff?fff??fff?fff?fff??fff?fff?fff?? textfield+L?L?L??+fff?fff?fff???+????+???????textarea+f?f?f??+L?L?L????+???????window+???????+???????  horizontalslider+????????@Ahorizontalsliderthumb+?+?+??????@Averticalslider +????????@Averticalsliderthumb+?+?+??????@Ahorizontalscrollbar+???????? pAhorizontalscrollbarthumb*????????PAhorizontalscrollbarleftbutton????????horizontalscrollbarrightbutton????????verticalscrollbar +???????? pAverticalscrollbarthumb +????????pAverticalscrollbarupbutton????????verticalscrollbardownbutton???????? scrollview????????thumb???????? leftbutton???????? rightbutton?????????????Š>333?box  PPp````pP````````P````````````````````````````````````````````````````````````P````````Pp````pPP button active @@2̒̒2^tttBBB666666666666BBBttt^2sss000555555555555555666///rrr0333///666555666555666555000333$$$...666555555555555555...###’̒  ̒   2kkkjjj0^jjjjjj^2̒̒2 button hover  w7wwwwwww7wWU333333UwWw7f33333333Uw7w3333333333ww3333333333wwwwwwDDDDDDDDDDwwffffffffffww7www7wWwwwWw7wwwwwww7button on hover  w7wwwwwww7wWffUUUUffwWw7fUUUUUUUUfw7wfUUUUUUUUfwwUUUUUUUUUUwwDDDDDDDDDDwwDDDDDDDDDDwwwwwwwwwwwwwwww7w7wWwWw7wwwwwww7 button on  00P"UUUUUU"P0UUUUUUUU"0UUUUUUUUUUUUUUUUUUUUDDDDDDDDDDDDDDDDDDDDwwwwwwwwww0330PDDP00button  00P"3333"P0333333330"33333333"3333333333DDDDDDDDDDDUUUUUUUUD0"ffffffff"0P"fwwwwf"P00horizontal scrollbar thumb  00p333333p0333333330""""""""""3333333333DDDDDDDDDD0"UUUUUUUU"0p"UffffU"p00horizontal scrollbar`` PPPPPP PPPPPPPPPP `PPPPPPPPPP``PPPPPPPPPPPP`pPPPPPPPPPPPPppPPPPPPPPPPPPppPPPPPPPPPPPPp`PPPPPPPPPP`pPPPPPPPPPPp`pPPPPPPPPp`p`PPPP`p pppp 00pphorizontalsliderpp```pPPp`pPPPPppPPPPpppslider thumb active D3U%əəəəf&əəəəəɈəəəəəəəəəəəəəəəəəɈȈȈȈșəəəəɪʪʪʙəəɪʪʪʪʪʪʙəɻ˻˻˻˻˻˙Ɉʻ˻˻˻˪ʈU̻˙f&DD slider thumb  DwwD DwwwwDwwwwwwwffffwwUfffwwLjȈȈȈwȈȈȈȈȈəəəəəfƪʪʪʪffƻ˻f slidert humb hover wwwwwwwww'wwwwwww'wwwwwwwwwLjwwwwLjwwwffffwwwwffffwwwwLjȈȈȈȈwwLjȈȈȈȈȈwwǪʙəəəɪwwɪʪʪʪʙwww̙ww'wwwwwwww toggle active9əəə9YwD33333DwY9w333333333w933333333333"333333333""""""""""""9ff9YffY9əəə9 toggle hoverw7wwwwwwww7wWUD33333DUwWw7U333333333Uw7wD333333333Dww33333333333ww"""""""""""wwwwwwDDDDDDDDDDDwwfffffffffffww7ffw7wWffwWw7wwwwwwww7toggle on hoverw7wwwwwwww7wWUD33333DUwWw7U333333333Uw7wD3333Dww33"͙"33ww""Ι""wwݽݽwwݽݽwwUUΪUUwwwwwͻwwwww7ffw7wWffwWw7wwwwwwww7 toggle on00P3333333P0333333333033333333"͙"33""Ι""ݽݽݽݽUUΪUUfwwͻwwf0330P33P00toggle on active9əəə9Yf""fY9ff9""͙͙""ݽݽ"""3ݽݽ3""Ι"""ݽݽݽ""9ff9Yf""fY9əəə9toggle00P3333333P033333333303333333333333333333333"""""""""""DDDDDDDDDDDDUUUUUUUUUD0"fffffffff"0P"fwwwwwf"P00vertical scrollbar thumb  00p"D3"p0"UD3"30UUD3"33fUD3"33fUD3"33fUD3"33fUD3"33UUD3"330"UD3"30p"D3"p00vertical scrollbar`` 0ppp p`PPPP`ppPPPPPPPP`pPPPPPPPPP`PPPPPPPPPPpPPPPPPPPPPPpPPPPPPPPPPPpPPPPPPPPPPPpPPPPPPPPPPP`PPPPPPPPPPpPPPPPPPPPppPPPPPPPP`p`PPPP`0ppp ``verticalsliderpp`pp`pPPppPPPpPPPpPPpp`p`` window on.~~.nn̜DDD̜wDDDDDDDw.wDDDDDDDDDw.̜DDDDDDDDDDD̜DDDDDDDDDDDUDDDDDDDDDDDUDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDwDDDDDDDDDDDwDDDDDDDDDDDĪ~.fDDDDDDDDDf.fDDDDDDDfwDDDwתnn.~~.windowppPP"rDtDtDt"rp3sDtDtDtDtDtDtDt3sp 3sDtDtDtDtDtDtDtDtDt3s pDtDtDtDtDtDtDtDtDtDtDtp3sDtDtDtDtDtDtDtDtDtDtDt3sDtDtDtDtDtDtDtDtDtDtDtDtDtDtDtDtDtDtDtDtDtDtDtDtDtDtDtDtDtDtDtDtDtDtDtDtDtDtDtDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD3DDDDDDDDDDD3p"DDDDDDDDDDD"p 3DDDDDDDDD3 p3DDDDDDD3p"3DDD3"PPpp textfield  :ʪʪ:ZwwZ:ww:ʪʪʪʪ:ww:ZwwZ:ʪʪ: textfield on  >>^""^>>>>^""^>>textfield hover  =ݍݽݽݍ=]]==ݝݝݝݝ==]""]=ݍݽݽݍ=#UnitySplash-HolographicTrackingLoss  UUUU_UU5 "+ cUb"zꠀUU^Xc*9bU9UU9bUUAbU`_U"`BՕ5-kB5R r)JU)JWf1( BB^Z\V"VVVV9-c!bZ5ZUV؋jJ-f)BTWWW!\\TVAUU !"mk!)UU{UUIBfܻeIJc^WU`!VUUU 5U -_xp\WUA5UUUUU_UUA\UUU